Khorsheed/dsh-ankh-guard

Khorsheed★ 0TypeScriptLast synced: 2026-08-14

Open on GitHub

防止 Agent 自我修改把服务改崩的守护插件(dsh 插件):绿色构建凭证绑定 git HEAD,改坏不许重启;watchdog 无感重启 + canary 自动回滚

README excerpt

@deepseek-ai/dsh-ankh-guard English 中文 防止"自己改坏自己"的插件。 当 agent 修改代码后要重启服务时,这个插件会先检查:改动是否通过了完整构建和测试?没通过就不允许重启,避免改坏的代码把整个服务(连同对话)一起带走。 就这么简单—— 先证明代码是好的,才允许重启 。具体机制在下一节「工作原理」。 工作原理 绿色构建凭证 是闸门的唯一事实来源:只有完整构建与定向测试全绿后才记录,绑定到产出它的 git HEAD,并有新鲜度窗口( maxAgeMinutes )。 verify() 在以下任一情况拒绝: - 没有凭证; - 凭证超过 maxAgeMinutes ; - 当前 HEAD 与记录凭证时的 revision 不一致——记录之后的任何树改动都会令凭证失效。 这一条规则就能拦住 2026-08-14 file-preview 事故的整类失败(错误导入风格、漏注册 tsconfig、缺 ./typert 导出):这些错误全部过不了构建/类型检查,于是不会有凭证,重启在造成伤害之前就被拒绝。 闸门之外还提供 P2 安全网: checkpoint 在批次前把整个工作树提交为回滚点, reset 硬重置回该点, canary 在重启后复检(凭证新鲜度 + 可选 TCP 端口存活)。检查点与凭证持久化在重启后依然存活的状态文件中,因此 canary 可以在新实例起来之后运行。 安装与加载 本包是 dsh 插件 :它守护运行中的 dsh web 实例,防止坏掉的自我修改重启。它不自带宿主——请自行安装宿主,再把本插件加载进去: 然后启动宿主: npx @deepseek-ai/dsh web 。 包内自带 CLI( dsh-ankh-guard bin)、插件( @khorsheed/dsh-ankh-guard )、watchdog 脚本与自己的 README——外部部署需要的一切都在发布物里,不在 harness 仓库里。从 npm 安装插件(peer 依赖—— @deepseek-ai/cordis 、 @deepseek-ai/dsh-invariants 、 @deepseek-ai/dsh-llm 、 @deepseek-ai/dsh-agent 、 @deepseek-ai/schemastery 、 @deepseek-ai/dsh-session-persistence ——自动安装): 或从源码安装——clone 本仓库、构建并测试: 然后在你自己的包里以依赖引用( "@khorsheed/dsh-ankh-guard": "file:../dsh-ankh-guard" ),或直接从检出里跑 CLI: node lib/cli.js 。 在 cordis.yml 里以 cordis 插件方式加载(这就…

View full README on GitHub →
Agentsai-agentdshdsh-pluginself-modificationwatchdogagentvision

Category