RSI Boot
PYPI · RSI-BOOT
Repo-bound memory and self-improving harness for AI coding agents — zero API keys.
Available components
Last scanned (23 hours ago)
Scores higher than 63% of PyPI servers
Category Memory and Knowledge
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security50
- Malware scan not yet available for this package.Unverified
- No known CVEs affecting this package version or its production dependencies.Pass
- Runs hatchling.build at install time, a recognised build step with no custom scripting around it. View diagnostics → Pass
- 2 of 42 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency100
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to Apollo-lwx/rsi-boot). View diagnostics → Pass
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 1 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability56
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 4143 tokens (~258/item across 16 items; 16 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management43
- Stability observed for 13 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage98
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 95% of tool parameters carry a description.Partial
Tool Safety75
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "rsi_knowledge_delete" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
- An AI judge read all 17 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Nov 26 0
- Malware scan: unverified → pass ▲ security
- Package version: 0.1.6 → 0.1.7 functional
- 2 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 27 to 30. That category is still filling its 30-day observation window: 8 days of observed history at the previous scan, 9 at this one. The score rises as the window fills, whether or not the server changes.
- 30 Oct 26 −15
- Malware scan: pass → unverified ▼ security
- 29 Oct 26 +16
- Malware scan: unverified → pass ▲ security
- 27 Oct 26 +1
- Package version: 0.1.5 → 0.1.6 functional
- 26 Oct 26 0
- Package version: 0.1.3 → 0.1.5 functional
- Package version: 0.1.3 → 0.1.4 functional
- 25 Oct 26 −13
- Malware scan: pass → unverified ▼ security
- Stability: unverified → 0.10 ▲ functional
- Package version: 0.1.2 → 0.1.3 functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 4 Nov 2026 · Analysed pypi/rsi-boot@0.1.7
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | pypi |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | Apollo-lwx/rsi-boot |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/Apollo-lwx/rsi-boot/.github/workflows/release.yml@refs/tags/v0.1.7 |
| Rekor log index | 3664158917 |
| Predicate type | PyPI publish attestation https://docs.pypi.org/attestations/publish/v1 |
| Subject digest | sha256:03822117d3ce82f82ec426a72081c78a4afdb6796c05353a5873827ea4c918a4 |
Background: How many MCP packages publish verified provenance →
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| build_backend | allowlisted | hatchling.build |
Background: Why install scripts are a supply-chain risk →
Dependencies 42 packages
| Packages resolved | 42 |
|---|---|
| Stale | 1 |
| No linked repository | 1 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
rsi_conflicts ~561
List or resolve suspected conflicts. Three kinds: (1) learned memory vs handwritten rules (contradiction/stale/overlap) — user_wins keeps your rule (learned memory no longer injected), memory_wins keeps learned memory (edit the rule file yourself), coexist keeps both and stops reminding; (2) knowledge pairs (version/doc_code/incoherent) — keep_item keeps item_id and archives the peer source_url, keep_peer keeps the user_rule_path side, coexist keeps both; (3) explain (conflict_id required) expands both sides read-only. Call explain first when the user wants detail; do not close the card. 查询疑似冲突并对冲突做出裁决。三类:① 学习记忆 vs 手写规则(contradiction/stale/overlap)——user_wins=以你的规则为准(学习记忆不再注入)、memory_wins=以学习记忆为准(返回规则文件位置请手动修改)、coexist=两者共存不再提醒;② 知识对(version/doc_code/incoherent)——keep_item=保留 item_id 侧并归档对侧 source_url、keep_peer=保留 user_rule_path 侧、coexist=两侧转/保持可用且不再提醒;③ explain(conflict_id 必填)=只读展开两侧摘录与各 option 影响,不改库。用户要展开说明时先 explain,不要关掉抉择卡。
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | list=查询冲突(默认) resolve=裁决 scan=立即扫描 explain=只读展开 |
| bootstrap_run_id | string | – | list 过滤:只列该 bootstrap run 的冲突(item 侧或 user_rule_path 侧条目 tags 含 bootstrap_run_id:<id>) |
| conflict_id | string | – | resolve/explain 必填:冲突 id |
| decisions | array | – | resolve 批量:逐条裁决,存在时忽略 conflict_id/resolution |
| limit | integer | – | list 分页:每页条数(夹到 [1, 200]) |
| note | string | – | resolve 可选:裁决备注 |
| offset | integer | – | list 分页:起始偏移 |
| resolution | string | – | resolve 必填:规则冲突用 user_wins/memory_wins/coexist;version/doc_code/incoherent 用 keep_peer/keep_item/coexist |
| status | string | – | list 过滤:open/user_wins/memory_wins/keep_peer/keep_item/coexist/closed/all |
No output schema declared.
No examples provided.
rsi_explore ~225
Navigate the knowledge tree by domain module. Empty path lists top-level modules with counts; pass a path (e.g. backend or backend/api) to drill down and list member items (title/brief/id), plus graph edges (related / conflicts) touching this node's items. Use rsi_recall to pull full content after you find the node you want. 按领域板块浏览知识树:空 path 列顶层板块与计数;传 path(如 backend 或 backend/api)下钻列出成员条目(标题/简述/id)并附本节点条目的图谱关联(related)与冲突(conflicts);需要正文用 rsi_recall。
| Name | Type | Req | Description |
|---|---|---|---|
| depth | integer | – | 返回的子树层级深度(默认 2) |
| limit | integer | – | 最多列出成员条目数(默认 50) |
| path | string | – | 知识树节点路径;空 = 列顶层板块,如 backend 或 backend/api = 下钻该板块 |
No output schema declared.
No examples provided.
rsi_feedback ~217
Submit feedback on a recall: explicit rating or IDE implicit action (accepted/applied/modified/copied/referenced/ignored/rejected). On rejected, a comment is extracted as a prohibition. 对召回结果提交反馈:显式评分或 IDE 隐式行为(accepted/applied/modified/copied/referenced/ignored/rejected);rejected 时填 comment 将提炼为禁止项。
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | accepted/applied=采纳应用 modified=修改后采纳 copied=复制 referenced=参考 ignored=忽略 rejected=拒绝 |
| comment | string | – | 可选评语;action=rejected 时填写将提炼为禁止项(§4.4) |
| feedback_token | string | yes | rsi_recall 返回的反馈令牌 |
| modified_content | string | – | action=modified 时的修改后内容(用于 diff 比例计算) |
| rating | integer | – | 可选 1-5 评分(与 action 可叠加,分别生效) |
No output schema declared.
No examples provided.
rsi_impact ~359
Value/impact panel for evangelism: injected cost (chars + est tokens), recall value (hit rate + on-demand exposure vs full corpus), behavioral gains (adoption, compliance, proposal pass), a time curve, and an A/B token-savings calculator. Honesty: RSI cannot see the host's real token usage, so 'tokens saved' is ONLY produced from a user-supplied before/after comparison (ab={baseline:{tokens,tasks},treatment:{tokens,tasks}}); without it no savings number is invented. export=true writes a one-page markdown to ~/.rsi/exports/. 价值/影响力面板(供宣讲):注入成本(字符+token 估算)、召回价值(命中率与按需暴露 vs 全库)、行为收益(采纳/合规/提案通过率)、时间曲线,以及一个 A/B 省 token 计算器。诚实原则:RSI 看不到宿主真实 token 用量,‘省了多少’只在用户喂入用前/用后对照(ab 参数)时才产出,否则不编造任何省量;export=true 导出一页纸 markdown。
| Name | Type | Req | Description |
|---|---|---|---|
| ab | object | – | 用前/用后对照输入(数字来自宿主自己报的 token 用量,本工具只做差,不估算) |
| export | boolean | – | true 时导出一页纸 markdown 到 ~/.rsi/exports/ 并返回路径 |
| period | string | – | 统计窗口(默认 week) |
| snapshot | boolean | – | true 时顺带把当前窗口聚合落一条日快照(攒长期曲线) |
No output schema declared.
No examples provided.
rsi_knowledge_add ~219
Add a knowledge item (title + content required). 添加知识条目(title + content 必填)。
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | yes | 条目正文 |
| content_type | string | – | prohibition/convention/skill/documentation 或案例类型 |
| domain | string | – | 领域 |
| expiry_condition | string | – | 失效条件:什么情况下该记忆应视为过时(如「迁移到 JPA 后作废」) |
| pack_id | string | – | 阅读包 id;蒸馏时必填,写入 pack_id: 标签 |
| roles | array | – | 适用角色,空=通用 |
| source_url | string | – | 来源(文档路径/signal),带来源的 active 落正式 |
| tags | array | – | 标签 |
| title | string | yes | 条目标题 |
| trigger_condition | string | – | 前提条件:这条记忆在什么前提下成立(如「仅当使用 MyBatis 时」) |
No output schema declared.
No examples provided.
rsi_knowledge_delete ~42
Delete a knowledge item (deletion right). 删除指定知识条目(删除权)。
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | 知识条目 ID |
No output schema declared.
No examples provided.
rsi_knowledge_review ~307
Approve pending norms: approve moves to official dirs and injects prohibitions; reject archives. Does not create new bodies. Approved conventions are recall-only (no rsi-convention rule files). 审批 pending 规范:approve 搬到正式目录并注入禁止项,reject 搬到 archive。不新建正文。约定获准后只进召回,不会写成 rsi-convention 规则文件。
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | approve/reject=审批;skip=抑制决策卡(不审批) |
| all_pending | boolean | – | true = 审批 tags 不含 bootstrap_run_id 的 pending(日常 auto-extract 等);不含本轮 bootstrap 抽取,除非同时传 bootstrap_run_id |
| bootstrap_run_id | string | – | 只审批该 bootstrap 轮次的抽取(与 all_pending 联用,或单独表示本轮全部) |
| content_type | string | – | 批量审批时按内容类型过滤(convention/architecture/faq/documentation) |
| id | string | – | 待审知识条目 ID;action=skip 时为决策卡 id(extract:<run_id> 或冲突 id) |
| ids | array | – | 批量审批的条目 ID 列表 |
| include_archived | boolean | – | 批量审批时包含 archived(bootstrap 限量溢出)条目 |
No output schema declared.
No examples provided.
rsi_knowledge_search ~87
Search the knowledge base (FTS5 + CJK bigram by default; embedding is optional). 搜索知识库(默认纯 FTS5 + CJK bigram;embedding 为可选增强)。
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | 检索查询 |
| role | string | – | 角色过滤 |
| top_k | integer | – | 返回条数上限 |
No output schema declared.
No examples provided.
rsi_knowledge_update ~352
Update an existing memory in place by id (title/content/tags/roles/domain/description/trigger_condition/expiry_condition) — prefer updating over re-adding duplicates. action=merge combines near-duplicates: keep the more complete one, archive the rest (recoverable, not hard-deleted) and record a supersedes edge. Preserves id and location. 按 id 原地更新已有记忆(改 title/content/tags/roles/domain/description/前提与失效条件),改优于新建重复。action=merge 合并近重复:保留更完整者、其余归档(可恢复非硬删)并写 supersedes 边;保留 id 与所在目录。
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | – | update=按 id 原地改字段(默认);merge=合并近重复 |
| content | string | – | 新正文(短知识≤1500,案例类≤20000) |
| description | string | – | 一句话简述 |
| domain | string | – | 领域/板块 |
| expiry_condition | string | – | 失效条件 |
| id | string | – | update 必填:目标条目 id |
| ids | array | – | merge 必填:待合并的条目 id(≥2) |
| keep_id | string | – | merge 可选:指定保留者;缺省自动取正文最长/最新的一条 |
| roles | array | – | 适用角色(整体替换) |
| tags | array | – | 标签(整体替换) |
| title | string | – | 新标题(≤120 字) |
| trigger_condition | string | – | 前提条件 |
No output schema declared.
No examples provided.
rsi_learn ~501
Teaching / audit / closeout learn / promote / reading-pack actions. The host agent writes the lesson (Catch→Teach→Fix) then teach_record; RSI does not write the lesson. pack_list / pack_open / pack_done walk reading packs. Unavailable actions return not_in_phase — follow message. 教学/审计/收工学习/晋升/阅读包。Agent 自己 Catch→Teach→Fix 后 teach_record;不要让 RSI 代写 lesson。pack_list / pack_open / pack_done 串联阅读包。未开放的 action 返回 not_in_phase,按 message 改用其它工具。
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | – | teach_catch / teach_record / skip / rubric / audit_start / audit_probes / audit_report / audit_finish / extract / promote / pack_list / pack_open / pack_done |
| changed_files | array | – | host ATS file list for audit_start |
| disclaimer_partial | boolean | – | – |
| draft_id | string | – | alias of id |
| findings | array | – | host findings for audit_report |
| globs | array | – | host ATS globs for audit_start |
| id | string | – | teach-draft id or reading-pack id |
| items | array | – | classified closeout items for extract |
| lane | string | – | pack_list filter: skills_rules / teaching / docs / code / git / conversation / cursor / other |
| lang | string | – | explicit locale override |
| lesson | object | – | host-written lesson; correct_fix required for teach_record |
| low_confidence | boolean | – | – |
| overall | string | – | pass or fail |
| pack_id | string | – | alias of id for pack_open / pack_done |
| payload | object | – | – |
| probe_results | array | – | uploaded probe results; RSI does not exec |
| probe_summary | object | – | – |
| promote_to_pattern | boolean | – | – |
| reason | string | – | skip reason |
| reopen_skipped | boolean | – | pack_list: true = 把不允许 skip 的 skipped 包改回 pending |
| scope | string | – | audit/extract scope: session or full |
| scope_id | string | – | required when scope=full |
| status | string | – | pack_done: done / skipped / pending |
| system_attempts | array | – | teach_catch attempts |
| trigger | object | – | teach_catch trigger |
No output schema declared.
No examples provided.
rsi_memory ~136
Open or search memory files. index lists entries, open reads one id, reindex rebuilds cache, graph returns mermaid text, rules lists what is injected into the host. 打开或检索记忆文件。index 列目录,open 按 id 读全文,reindex 重建缓存,graph 返回 mermaid 文本,rules 列出当前注入宿主的记忆。
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | – | index / open / reindex / graph / rules |
| id | string | – | exact 32-hex document id for open |
| lang | string | – | explicit locale override |
No output schema declared.
No examples provided.
rsi_memory_health ~249
Memory health findings: scan/list/explain/resolve. scan attributes a rejected or low-rated recall to every retrieved id, opens incorrect when comment polarity contradicts the memory, and opens stale_source when a changed source file no longer contains the title phrase. resolve is archive, revise, keep, or snooze. Scan never archives by itself. 记忆健康发现:scan/list/explain/resolve。scan 把拒绝或低分记到本次召回的每一条记忆上;评语极性与记忆相反时开 incorrect,来源已变且标题短语不在文件中时开 stale_source。resolve 取 archive、revise、keep、snooze。扫描本身不会归档。
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | scan=立即扫描 list=列出发现 explain=只读展开 resolve=裁决 |
| finding_id | string | – | explain / resolve 必填 |
| note | string | – | resolve 可选备注 |
| resolution | string | – | resolve 必填:archive / revise / keep / snooze |
| status | string | – | list 过滤;缺省为 open 与 awaiting_edit |
No output schema declared.
No examples provided.
rsi_recall ~202
Call before any coding, adaptation, debugging, or design task. Returns prohibitions you must follow, related items, and a skill catalog (name/description/path only). Use feedback_token with rsi_feedback before you wrap up. If decisions is non-empty, call rsi_conflicts / rsi_knowledge_review immediately; do not ask the user to run rsi in a terminal. 任务开始前调用。返回必须遵守的 prohibitions、相关 items,以及技能目录。用 feedback_token 在收工前调用 rsi_feedback。有 decisions 时立刻调 rsi_conflicts / rsi_knowledge_review,不要让用户去终端跑 rsi。
| Name | Type | Req | Description |
|---|---|---|---|
| role | string | – | 调用方角色(如 developer/test/pm) |
| task | string | yes | 即将开始的任务描述(自然语言) |
| top_k | integer | – | 返回条数上限(缺省由召回策略臂决定) |
No output schema declared.
No examples provided.
rsi_review ~143
Harness improvement proposals: list/approve/reject/rollback/generate and config snapshots snapshot_list/snapshot_switch/snapshot_export. Harness 改进提案:list/approve/reject/rollback/generate 及配置快照 snapshot_list/snapshot_switch/snapshot_export。
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | 操作类型 |
| out_dir | string | – | bundle 导出目录(snapshot_export) |
| proposal_id | string | – | 提案 ID(approve/reject/rollback) |
| reason | string | – | reject/rollback 理由 |
| status | string | – | list 状态过滤 |
| version | integer | – | 快照版本(snapshot_switch/export) |
No output schema declared.
No examples provided.
rsi_stats ~179
Memory usage stats: period=day/week/month summaries of reach, adoption, prohibition follow-through, and proposal pass rate. 记忆使用统计:period=day/week/month 汇总触达/采纳/禁止项遵循/提案通过率。
| Name | Type | Req | Description |
|---|---|---|---|
| export | boolean | – | true 时导出到 ~/.rsi/exports/ 并返回路径 |
| format | string | – | 导出格式(默认 json) |
| group_by | string | – | 分组维度:intent 或召回臂 arm |
| include_stale | boolean | – | true 时附失活候选(长期未召回且未编辑的正式条目,只读) |
| period | string | yes | 统计周期(必填) |
| stale_days | integer | – | 失活判定天数(默认 30) |
No output schema declared.
No examples provided.
rsi_web_ui ~225
Open or close the local memory dashboard. action=open (default) binds 127.0.0.1 and returns url (path /dashboard) plus snapshot_url (/api/snapshot). action=close stops the listener so the page is unreachable. action=status only reports whether it is listening. Do not change rsi serve startup args; the page stays down until this tool is opened. Show the returned url to the user. 开关本机记忆大屏。action=open(默认)只绑 127.0.0.1,返回 url(路径 /dashboard)和 snapshot_url(/api/snapshot)。action=close 关掉监听,页面即不可访问。action=status 只查询是否在听。不要改 rsi serve 的启动参数;没调用 open 之前没有页面。把返回的 url 告诉用户。
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | – | open 开启本机页面(默认);close 关闭后地址不可访问;status 只查询是否在听。不要改 rsi serve 的启动参数。 |
No output schema declared.
No examples provided.
How do I install the RSI Boot MCP server?
RSI Boot runs locally as a PyPI package, launched with uvx rsi-boot. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
pypi · rsi-boot
claude mcp add apollo-lwx-rsi-boot -- uvx rsi-boot
What is the RSI Boot MCP server?
RSI Boot is an MCP server listed in the public MCP registry as io.github.Apollo-lwx/rsi-boot. Repo-bound memory and self-improving harness for AI coding agents, zero API keys. This page covers its PyPI package (rsi-boot).
Is the RSI Boot MCP server safe to use?
RSI Boot scores 67 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 4 November 2026. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the RSI Boot MCP server expose?
RSI Boot exposes 16 tools: rsi_recall, rsi_explore, rsi_feedback, rsi_knowledge_add, rsi_knowledge_search, and 11 more. Their descriptions and schemas cost roughly 4,004 tokens of context every time the server is loaded.
Is the RSI Boot MCP server still maintained?
RSI Boot is still listed as active in the MCP registry. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the RSI Boot MCP server under?
RSI Boot declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.