文档

怎么装、有哪些命令、接口长什么样,以及笔记究竟存在哪。

快速开始

三步:注册、装插件、跑一次 /keepnow。安装引导页会把 API 密钥直接填进命令里,复制粘贴即可。

1. 拿一个 API 密钥

注册后打开 /dashboard/install,选你的环境,页面会生成一个密钥并嵌进安装命令。密钥明文只显示这一次——服务端只存它的 SHA-256。

2. 装插件

# Claude Code
claude plugin install keepnow@keepnow

# Codex
curl -fsSL https://keepnow.app/plugin/codex/install.sh | bash

# pi
mkdir -p ~/.pi/agent/extensions
curl -fsSL https://keepnow.app/plugin/pi/keepnow.ts \
  -o ~/.pi/agent/extensions/keepnow.ts
curl -fsSL https://keepnow.app/plugin/pi/prompt.md \
  -o ~/.pi/agent/extensions/prompt.md

3. 配置密钥并自检

export KEEPNOW_API_KEY=kn_live_...

# 然后在任意会话里 / then in any session:
/keepnow status

命令

三个环境暴露同一组命令、同样的措辞、同样的输出格式。换环境不需要重新学。

命令作用
/keepnow整理当前对话并保存。主题由 agent 自行归纳。
/keepnow <主题>只抽取与该主题相关的内容。主题同时是这篇笔记的身份标识。
/keepnow find <词>搜索并列出候选,带编号。
/keepnow open <n|id>取回全文并读入当前上下文。
/keepnow recent最近 10 篇。
/keepnow status登录邮箱、套餐、用量。装完后的自检。

同一会话里重复保存

主题就是笔记的身份。在同一个会话里,跑 /keepnow d1 迁移,聊别的,再跑 /keepnow r2 预签名,会得到两篇;回头再跑一次 /keepnow d1 迁移,agent 认出这是本会话已经写过的主题,会取回原文融合后整篇重写,而不是新建一篇重复的。

匹配只看本会话建过的笔记,绝不会去改历史笔记。同一主题在不同日子有多篇是正常的——这是刻意的设计,不是缺陷。

REST API

插件就是调这套接口。你也可以直接调,做自己的集成。认证走 Authorization: Bearer <key>,也接受 X-API-Key。

接口说明
GET /api/v1/me校验密钥,返回套餐与用量。
POST /api/v1/notes创建笔记。返回 id、slug 和 webUrl。
GET /api/v1/notes列表 / 搜索。不返回正文。
GET /api/v1/notes/:id单篇详情,含完整 Markdown。
PATCH /api/v1/notes/:id局部更新。传了 content 就产生一个新版本。
DELETE /api/v1/notes/:id删除笔记及其全部版本。
GET /api/v1/tags全部 tag 及各自笔记数。
curl -X POST https://keepnow.app/api/v1/notes \
  -H "Authorization: Bearer $KEEPNOW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Remote D1 migration says table already exists",
    "summary": "drizzle-kit migrations fail on remote D1 ...",
    "keywords": "d1, drizzle-kit, migration, table already exists",
    "content": "# ...markdown...",
    "tags": ["cloudflare-d1", "drizzle"],
    "source": "claude-code"
  }'

错误码

失败时返回 { error, code }。code 是稳定的,可以拿来做分支。

状态code含义
401invalid_key密钥无效或已撤销。
402quota_notes笔记数达上限。
402quota_storage存储达上限,通常是历史版本占的。
404not_found笔记不存在。
413too_large笔记超过 256 KB。
429rate_limited请求过于频繁。

存储与版本

笔记正文存在对象存储里,数据库只放元数据和可检索字段。每次编辑都会写一个新版本,旧版本永久保留——agent 重写错了能翻回去。

两个配额维度算的不是同一样东西:笔记数按逻辑笔记算,一篇改十次仍然是一篇;存储按对象存储上的实际字节算,十个版本的体积都算在内。

删除笔记会连同它的全部历史版本一起删掉,不可恢复,没有回收站。版本保留是为了「改错了能翻回去」,不是为了「删错了能捞回来」。

隐私与凭据

笔记默认私有。单篇可以生成公开链接,正文由服务端渲染输出,存储地址不会暴露。

开发者的工作对话天然会带上密钥。三层防护:整理 prompt 要求 agent 逐行打码;服务端写入时扫一遍常见凭据模式并给笔记打标;把笔记切为公开时,如果带标就弹窗二次确认并高亮行号。

扫描命中不会阻断写入——丢掉你的笔记比存下一个密钥更糟。唯一强拦的是公开这一步,因为它收不回来。

每个设备用独立的密钥,泄露时可以单独撤销。撤销即时生效。