DSH Immune System:把「踩坑又修好」变成可检索的抗体规则

前言

在用 DSH 或其它编码智能体做开发时,同一次工具调用失败、换参数或改命令后又成功的情况并不少见。若没有结构化记忆,下一轮对话里模型仍可能重复同一种错误,浪费回合与 token。手工把教训写进 AGENTS.md 或项目文档能缓解问题,但维护成本高,且难以按当前任务自动匹配注入。

下面介绍社区插件 agent-immune(npm 包名 dsh-immune-system):在「失败→成功」成对出现时提炼规则,存入本机 SQLite + FTS5,在后续运行中于犯错前把匹配到的规则注入上下文。维护者为 meat-daemon-404,在 DSH 插件目录中归类为 记忆;源码仓库 meat-daemon-404/agent-immune 当前约 5 stars,许可证 MIT,运行时 零第三方依赖(README 自述)。

这是什么

DSH Immune System 面向 Claude Code、Codex、Cursor、ZCode、DSH 等编码智能体,核心动作是:捕获「工具调用失败、下一次尝试成功」的片段,沉淀为抗体式规则;当后续工作场景与某条规则匹配时,在智能体重复同类失误之前把规则注入上下文。

同一套 core/ 引擎:DSH、ZCode 走原生插件安装;对 Claude Code、Codex CLI 可通过 immune connect 以普通 hooks 接入,无需对方自带插件体系。

核心功能

失败—成功配对与注入

工具调用失败且紧接着的尝试修复成功后,插件将该配对保存为规则。之后若当前任务与已有规则匹配,会在运行早期把对应内容注入上下文(README 中示意块名为 <immune_memory>),避免重复调试已解决过的问题。

存储与检索

规则落在本机 SQLite + FTS5 抗体库。DSH 安装时,插件说明写明默认路径在 $DSH_HOME/storages/dsh-immune-system/ 下按项目隔离;仅在显式配置 IMMUNE_LLM_BASE_URL 与 IMMUNE_LLM_MODEL 时才会向该 LLM 端点发起请求。

历史审计与入门包

  • immune audit:回放本机已有会话历史中的失败—修复配对(如 ZCode 会话库、Codex rollout、Claude Code 转录等),可 --dry-run 只出报告不写库。
  • Starter packs:手写入门规则包(与内置通用课程同级信任),通过 seed 子命令安装或移除,与已有规则合并而非简单叠加重复项。

其它宿主

README 提供 npx dsh-immune-system@latest connect 系列命令,将同一引擎写入固定目录 ~/.dsh-immune/ 并合并各宿主 hooks 配置;Codex 需在会话内执行 /hooks 以信任命令后方可触发。

基准与版本

README 称在 20,100 条真实工具调用回放上测得 97.54% 一致、0 false negatives,并指向文档中的基准说明;package.json 中插件版本为 1.1.4,Node 要求 ^22.19.0 || >=24.0.0。与 DSH 的兼容记录在 package.json 的 dsh.compatibility.dshReleases 中(含 0.2.0-rc.2 至 0.2.2-rc.1 等条目)。

安装与启用

插件以 DSH 当前进程权限 运行:会读取工具调用结果与斜杠命令输入,在本机写入 SQLite;不读取其它插件配置,不执行任意命令。安装前应自行查阅源码与 MIT 许可证。

DSH(npm 预构建,推荐)

dsh plugin --profile <profile> add dsh-immune-system

也可从本地打包的 tgz 或 GitHub 源安装(后者安装时经 prepare 构建;README 提示 pnpm 需 allowlist,npm 或 tgz 可绕过):

cd dsh-immune-system && npm pack
dsh plugin --profile <profile> add ./dsh-immune-system-<version>.tgz
dsh plugin --profile <profile> add github:meat-daemon-404/agent-immune

安装后需重启 DSH;插件 bundle 在启动时组装。

不写盘的快速体验

整条流水线在内存中运行,不安装、不写库:

npx dsh-immune-system@latest demo

若本机已有历史,可用只读预览:

npx dsh-immune-system@latest audit --dry-run

典型用法

审计并可选蒸馏规则

npx dsh-immune-system@latest audit --dry-run   # 报告,不写入
npx dsh-immune-system@latest audit             # 报告 + 蒸馏(配置了 IMMUNE_LLM 时使用)

安装入门规则包

npx dsh-immune-system@latest seed
npx dsh-immune-system@latest seed git-safety
npx dsh-immune-system@latest seed git-safety --remove

为 Claude Code / Codex 接 hooks(非 DSH 场景)

npx dsh-immune-system@latest connect
npx dsh-immune-system@latest connect claude-code
npx dsh-immune-system@latest connect codex

连接后需重启对应宿主会话;可用 connect --status、immune doctor 查看状态与修复提示。

适用场景与注意

适合谁:长期在单一或多项目中使用编码智能体、且反复遇到同类工具调用失误的团队或个人;希望把「已修过的坑」自动带入上下文,而不是每次靠人工复述。

注意:

  1. 新装时抗体库为空,可先 audit 或 seed 补种子规则。
  2. 可选 LLM 蒸馏依赖 IMMUNE_LLM_BASE_URL 与 IMMUNE_LLM_MODEL,未配置时行为以 README 与本地逻辑为准。
  3. DSH 生态强调「一切皆插件」;SkillHub 目录页 与 dsh-plugin.org listing 为社区收录,与 DeepSeek / 幻方无官方从属关系。

结尾

agent-immune 把编码智能体中可重复的「失败—修复」片段固化为可检索、可注入的本机规则,减少在同坑上反复调试。若要在 DSH 中启用,以 npm 包 dsh-immune-system 安装并重启进程即可。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜