Context7
Up-to-date docs for AI agents
제작자가 쓴 설명(영어 원문)
Repo-bound memory and self-improving harness for AI coding agents — zero API keys.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
RSI_PROJECT_ROOT필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"rsi-boot": {
"command": "uvx",
"args": [
"rsi-boot",
"serve"
],
"env": {
"RSI_PROJECT_ROOT": "your-value"
}
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add rsi-boot --env RSI_PROJECT_ROOT=your-value -- uvx rsi-boot serve실행하기 전에 빈 값을 채워 주세요.
프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"rsi-boot": {
"command": "uvx",
"args": [
"rsi-boot",
"serve"
],
"env": {
"RSI_PROJECT_ROOT": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"rsi-boot": {
"type": "stdio",
"command": "uvx",
"args": [
"rsi-boot",
"serve"
],
"env": {
"RSI_PROJECT_ROOT": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
RSI_PROJECT_ROOT env이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검
레지스트리 이름이 GitHub 계정 Apollo-lwx 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.1.9)은 그저께 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Python (uv)도 있어야 해요.
같은 카테고리에는: Context7, Codebase Memory, Exa
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
简体中文 | English
Agent 的工程记忆,不是对话记忆:约定和禁止项落在仓库里,换一个宿主读到的还是这一份。
Cursor 在 2.1 删掉了 Memories,新会话对你的项目一无所知;Claude Code 的记忆锁在本机、不跟 git,换一个同事就对不上;云记忆要 Key、要服务,记忆还跟账号走。同一个人换着 Cursor、Claude Code、Codex、DeepSeek Harness 写同一个仓库,或者团队里各用各的工具,写法、禁止项和修 bug 的经验也各记各的。
RSI Boot 把约定、禁止项、修复经验和 harness 槽位落在仓库的 .rsi/,跟仓库走:装一次,Cursor / Claude Code / Codex / Qoder / DeepSeek Harness 通用。主链路零 API Key,不调用模型。
环是固定的:召回 → 干活 → 蒸馏成待审条目 → 人批准后才留下 → 下一轮召回读到留下的条目。 负反馈另外进失败桶,只改可写槽位(提示词 / 技能 / 召回策略 / 意图规则 / 知识)。提案过静态门禁和人工确认才晋升,观察 7 天,采纳率掉就回滚。这是软件自己的写法。公开结果还没有和别人的答题分放在同一列。召回主榜的表在 benchmark/results/recall-20261028/SUMMARY.md。
rsi-harness(Harness-RSI) 负反馈进失败桶,只改可写槽位(提示词 / 技能 / 召回策略 / 意图规则 / 知识)。提案过静态门禁和人工确认才晋升,观察 7 天,采纳率掉就回滚。留下的是槽位版本。这条环已经在软件里;公开基准还没有量过「下一轮是否更好」。
跟随项目迁移 记忆按仓库隔离,不跟账号、不跟 IDE。仓库拷走、换机器、换目录,.rsi/ 一起走;打开另一个仓库就是另一份,不会串。Harness 基因组可导出 bundle,跨项目备份或迁槽位。
跨 AI 工具、多人共用一份项目记忆 同一套 MCP(rsi serve)接 Cursor、Qoder、Codex 和 DeepSeek Harness;状态栏同时吃 Claude Code 与 Cursor CLI。要共用的是这个仓库的项目记忆:函数名怎么写、支付日志里不能打卡号、上次空指针是怎么修的。聊天记录不在这里面。
核准后的约定写进仓库根的 AGENTS.md 托管块,也写进 .cursor/rules。Cursor、Claude Code、Codex、Qoder、DeepSeek Harness 打开同一份仓库,都会读到这段托管块。接上 MCP 之后,召回读的是同一份 .rsi/:上午在 Cursor 里记下的禁止项,晚上换 DeepSeek Harness、或者同事换 Codex 打开这个仓库,读到的是同一条。
同事要拿到召回用的全文,仓库里得有同一份 .rsi/。学习默认把 .rsi/ 写进 .gitignore,日志和缓存留在本机。交给同事时,把核准过的 .rsi/memory 纳入版本库;Git 一旦忽略了整个 .rsi/ 目录,里面的文件需要改忽略规则才能再提交。AGENTS.md 在仓库根,提交后大家拉下来就能读到托管块。
| 宿主自带记忆 | 云端记忆(Mem0 一类) | 通用本地记忆 MCP | RSI Boot | |
|---|---|---|---|---|
| 数据跟谁走 | 跟账号 / 跟宿主 | 跟云端用户 | 看实现 | 跟当前仓库 |
| 换 AI 工具、换同事 | 重学,各记各的 | 对方接得上才有 | 多数只做存取 | 同一份 `.rsi/` 与 `AGENTS.md` |
| Harness 自改进 | 无 | 无 | 无或弱 | 提案 → 门禁 → 观察 → 回滚 |
| 主链路 API Key | 绑宿主 | 要 | 常要 | 不要 |
| 写入闸门 | 模型自觉 | 服务端策略 | 少 | 审批 + 禁止项 + 冲突裁决 |
主榜是召回。冷启动默认 5 条。分母是有标准证据的题数。MRR 是第一条命中的名次倒数(0 到 1)。token 记 null。协议和分项在 benchmark/results/recall-20261104/SUMMARY.md。
| 数据集 | 有证据的题 | Hit@5 | Recall@5 | MRR | Hit@10 | Recall@10 | 该空时空了 |
|---|---|---|---|---|---|---|---|
| LoCoMo | 1536 | 62.0% | 56.4% | 0.422 | 70.3% | 64.0% | 0/450 |
| LongMemEval-S | 500 | 96.6% | 90.2% | 0.908 | 98.4% | 94.8% | — |
这是检索命中,不是模型答题分。LoCoMo 类别标签以官方评测代码为准(1=多跳、2=时间、3=开放域、4=单跳),与论文 §4.1 的叙述顺序不一致(上游 issue #29 / EACL 2026 附录 A 已确认)。
同一批题、同一指标,三个系统同机跑。vanilla-rag 是 512 字符切块 + 向量:LoCoMo/EngMem 用本地 bge-large-en-v1.5(fastembed/ONNX,无需 Key),LME 因 512 字符切 11.5 万 token 会话会产生约 56 万向量、离线不可行而退为 hashing 词袋下界;full-context 是「全量塞上下文」参照,不参与胜负判定。完整表在 benchmark/results/baselines-emb-20261104/SUMMARY.md。
| 数据集 | 系统 | Hit@5 | Recall@5 | MRR |
|---|---|---|---|---|
| LoCoMo | rsi | 62.0% | 56.4% | 0.422 |
| LoCoMo | vanilla-rag | 68.6% | 60.4% | 0.500 |
| LoCoMo | full-context | 2.3% | 1.4% | 0.009 |
| LongMemEval-S | rsi | 96.6% | 90.2% | 0.908 |
| LongMemEval-S | vanilla-rag | 69.2% | 55.4% | 0.520 |
| LongMemEval-S | full-context | 17.6% | 8.6% | 0.080 |
自建基准:21 个真实开源仓库(钉死 commit),315 道人工编写题锚定仓库真实文档节,分规范 / 禁令 / 历史修复三类。标注质量经三模型核验团审计(Kimi K3 / Claude Haiku / GLM 5.2 独立核验 87 题分层样本,Fleiss' κ=0.738,作者仲裁后修复 5 处锚点/版本缺陷)。方法学见 benchmark/engmem/README.md,完整表(含按题型、按难度)在 benchmark/results/engmem-emb-20261105/SUMMARY.md。
| 系统 | 题数 | Hit@5 | Recall@5 | MRR |
|---|---|---|---|---|
| rsi | 315 | 93.0% | 92.9% | 0.817 |
| vanilla-rag | 315 | 87.3% | 87.1% | 0.744 |
| full-context | 315 | 25.4% | 25.4% | 0.096 |
公开列来自论文里的检索数字,这次列就是上面的主榜。差值 = 这次 − 公开,单位是百分点。LoCoMo 论文的口径是对话 recall accuracy,这次 k=5 用 Hit@5、k=10 用 Hit@10。论文总平均含对抗题,这次的总平均是 1536 道可答题。ECHO 写明 LoCoMo 的 Hit@10 是开发测量,查询扩展可能沾了题面。
| 对照 | 分项 | 公开 | 这次 | 差值 |
|---|---|---|---|---|
| LoCoMo 论文,对话 k=5 | 单跳 | 68.0 | 72.2 | +4.2 |
| LoCoMo 论文,对话 k=5 | 多跳 | 35.4 | 39.4 | +4.0 |
| LoCoMo 论文,对话 k=5 | 时间 | 70.4 | 64.5 | −5.9 |
| LoCoMo 论文,对话 k=5 | 开放域 | 33.1 | 30.4 | −2.7 |
| LoCoMo 论文,对话 k=5 | 总平均,论文含对抗题 | 56.7 | 62.0 | +5.3 |
| LoCoMo 论文,对话 k=10 | 总平均,论文含对抗题 | 66.2 | 70.3 | +4.1 |
| ECHO,LoCoMo 1536 题 | Hit@10,开发测量 | 96.29 | 70.3 | −26.0 |
| ECHO,LongMemEval-S 500 题 | Hit@10 | 97.60 | 98.4 | +0.8 |
| ECHO,LongMemEval-S | 会话 Recall@5 | 88.71 | 90.2 | +1.5 |
| 对照 | 这次 | 公开 | 差值 |
|---|---|---|---|
| LongMemEval-S Hit@10 | 98.4 | 97.60 | +0.8 |
| LongMemEval-S 会话 Recall@5 | 90.2 | 88.71 | +1.5 |
| LoCoMo 总平均 k=5 | 62.0 | 56.7 | +5.3 |
| LoCoMo 总平均 k=10 | 70.3 | 66.2 | +4.1 |
| LoCoMo 单跳 k=5 | 72.2 | 68.0 | +4.2 |
| LoCoMo 多跳 k=5 | 39.4 | 35.4 | +4.0 |
| LoCoMo 开放域 k=5 | 30.4 | 33.1 | −2.7 |
| LoCoMo 时间题 k=5 | 64.5 | 70.4 | −5.9 |
| LoCoMo Hit@10 对 ECHO | 70.3 | 96.29 | −26.0 |
两项测量,口径不同,不要混列:
2026.10.22,ask 模式,模型 Auto):同一套关于本仓库的问题各答一遍,用它报出的 token 相减。token 是输入、输出、缓存读、缓存写四项之和。六组合计:关记忆 1637977,开记忆 423973,省 1214004,74.1%。协议和分项在 benchmark/results/token-20261029/SUMMARY.md。同一份 .rsi 种子,RSI 两次自读、Cursor CLI、Claude Code CLI 各自通过自己的 MCP 链路读同一组查询:六组宿主对平均 Jaccard@5 = 1.000、首位一致率 100%——召回是确定性的,换宿主不掉链子。见 benchmark/results/cross-host/SUMMARY.md。
检索命中不等于答对,所以补了漏斗末端:LoCoMo 同批 80 题三臂(full / rsi / rag)× 两台生成器(Kimi K3、Claude Haiku),每份答案由两家模型交叉互判(一致率 87.5%,双判全对才算对)。结果:词面 rsi 与向量基线答题无显著差异(McNemar p=0.70 / 1.00),全量上下文仍最强(这是 98.8% 上下文削减的代价,如实报告),不可答题拒答词面 rsi 最可靠(64% vs full 50% vs rag 39%)。见 benchmark/results/answer-acc-20261105/SUMMARY.md。
两个实验开关(默认关,RSI_ENABLE=vector|multihop 或 rsi-boot.yaml enable: 打开):本地 fastembed/ONNX 向量通道(bge-large,与 vanilla-rag 臂同模型)在门禁后与词面幸存者 RRF(k=60) 融合;首跳桥接词二跳级联。LoCoMo 全量四臂对照:向量通道 Hit@5 62.0%→68.2%(配对 McNemar 98 对 3,p=1.4e-25),multi-hop 分项 39.4%→48.9%,与向量版 vanilla-rag(68.6%)达到统计平价;多跳级联为中性(如实记录为负结果)。答题准确率复测(rsi 臂换混合检索重生成,其余两臂原样复用):Claude 生成 52.5%→56.2%、Kimi 生成 46.3%→47.5%,multi-hop 答题 5%→23%;代价是不可答题拒答 64%→50%,如实披露。见 benchmark/results/ablation-hybrid-20261105/SUMMARY.md 与 benchmark/results/answer-acc-vec-20261105/SUMMARY.md。
需要 Python 3.10+:
pip install rsi-boot
rsi init
要改源码则克隆本仓库,按开发一节用可编辑安装。
rsi init 只写用户配置 ~/.rsi/config.yaml。项目记忆在各仓库的 .rsi/,第一次启动 MCP 或 bootstrap 时创建。
在要用记忆的那个项目的 .cursor/mcp.json 加:
{
"mcpServers": { "rsi-boot": { "command": "rsi", "args": ["serve"], "env": { "RSI_PROJECT_ROOT": "${workspaceFolder}" } } } }
然后 Settings → MCP 确认 rsi-boot 已启用。
不要把这段配进用户级 mcp.json。那里的 ${workspaceFolder} 经常不展开,记忆会串到别的仓库。要记哪个项目,就写在那个项目里。
插件市场方式(推荐,可随仓库更新):
/plugin marketplace add Apollo-lwx/rsi-boot
/plugin install rsi-boot@rsi-boot
或一条命令直接装 MCP:
claude mcp add rsi-boot -- uvx --from rsi-boot rsi serve
在要记的那个仓库目录里打开 Claude Code。状态栏是可选项,见下文。
qoder mcp add rsi-boot -- rsi serve
或在项目根 .mcp.json 加与 Cursor 相同的 mcpServers 片段。同样要写在这个项目里,不要写进用户级配置。
一行命令接入(推荐):
codex mcp add rsi-boot -- uvx --from rsi-boot rsi serve
或手写 TOML 配置:用户级 ~/.codex/config.toml,或项目级 .codex/config.toml(需目录已被信任):
[mcp_servers.rsi-boot]
command = "rsi" args = ["serve"]
从项目根目录启动 codex。要钉死目录,在上面的表里加一行:env = { RSI_PROJECT_ROOT = "/绝对/路径" }。
在要记的那个仓库目录里打开桌面端。插件页安装 dsh-rsi-boot,或在已经能用 dsh 的终端里执行:
dsh plugin --profile web add dsh-rsi-boot
本机需要 Python 3.10+,并且终端里能运行 rsi serve。装完重启一次。工具名多一层前缀,例如 mcp__rsi-boot__rsi_recall。不要从用户主目录启动,否则 .rsi/ 可能写进主目录。
rsi statusline 给宿主 CLI 渲染底部状态栏:模型、上下文余量、token 统计(in/out/cache)、花费、RSI 今日召回与采纳率,外加一条定期轮换的随机文案。Claude Code 与 Cursor CLI 通用(两家的 statusLine 都会把会话 JSON 从 stdin 喂进来,本命令解析后单行输出,带 ANSI 颜色与 emoji)。
Claude Code(~/.claude/settings.json):
{
"statusLine": { "type": "command", "command": "rsi statusline" } }
Cursor CLI(~/.cursor/cli-config.json):
{
"statusLine": { "type": "command", "command": "rsi statusline" } }
效果示例:
🧠 Kimi K3 │ 📊 上下文余 71% │ ⛽ in 12.3k · out 1.8k · cache 96k │ 💰 $0.42 │ 🐾 RSI 召回 3 · 采纳 92% │ 给你比个心❤
三种配法并列,按场景任选(优先级:--style > 环境变量 > 项目级 > 用户级):
// ① 跟着宿主走:直接写进 statusLine 的 command(最直观,不动任何 config.yaml)
{ "statusLine": { "type": "command", "command": "rsi statusline --style buddy" } }
# ② 项目级(按仓库定风格,跨宿主共享):<工作区>/.rsi/config.yaml
statusline_style: buddy
六档预设:mixed 混搭(默认)、buddy 陪伴、serious 严肃、healing 治愈、geek 极客、lucky 好运。改完下一次刷新就生效。
风格写在 st
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요