ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

零依赖、零网络、永不提交:delegate-skills 可审计信任模型与安全设计完整解析

2026/10/7 15:08:05 拓冰建站 浏览量
零依赖、零网络、永不提交:delegate-skills 可审计信任模型与安全设计完整解析 零依赖、零网络、永不提交delegate-skills 可审计信任模型与安全设计完整解析【免费下载链接】delegate-skillsDelegate a coding task to a separate coding agent CLI, review the diff, land the commit yourself — one per implementer.项目地址: https://gitcode.com/gh_mirrors/de/delegate-skills一文读懂 delegate-skills 的信任模型delegate-skills是一个委派编码技能包它把你的编码任务委派给另一个独立的编码代理 CLICodex、Claude Code、Cursor、Cline 等 17 种实现者由它编辑真实工作区产出的 diff 交给你审查最终由你本人提交 commit。整个包刻意做到可审计零依赖、零网络、永不提交——你不需要相信作者的话只需要读懂每一个脚本。 ️为什么 AI 代理需要一套信任模型让 AI 代理直接操作你的代码库有三个经典风险能力失控代理执行了超出任务范围的写入或命令边界模糊代理顺手提交了代码你根本来不及审查不可审计工具本身依赖不透明、会联网、会上传数据你无法确认它到底做了什么。delegate-skills 的安全设计就是围绕这三点逐条给出的工程化答案。它的核心循环非常朴素写简报brief—— 自包含的任务说明实现者没有你的对话历史派发—— 通过自带的relay.mjs脚本启动目标 CLI等待—— relay 阻塞直到进程退出写出一份结构化result.json审查—— 你自己重跑测试门禁、完整读 diff落地land——你来 commit因为提交权属于审查者。这个委派 → 审查 → 落地的闭环是所有安全机制的载体。零依赖Node 内置模块逐行可审计每个*-delegate技能只包含一个可执行文件scripts/relay.mjs。以 skills/claude-delegate/scripts/relay.mjs 为例它的全部导入都是 Node 内置模块node:child_process、node:crypto、node:fs、node:path、node:os等没有任何 npm 第三方依赖。这意味着供应链风险趋近于零——你审计的不是几百个传递依赖而是一个可以逐行读完的脚本单技能独立安装——测试套里的隔离安装检查会把某个技能目录单独拷到临时目录运行relay.mjs --help持续证明它不依赖仓库其他目录唯一的外部调用是启动你已安装的实现者 CLI 和git以及 Windows 下的进程启动器。README.md 的Trust and validation部分把这条信任线写死为规范脚本不发起自己的网络调用、不读写任何凭据、不发遥测。官方甚至直接说——运行之前先读脚本。零网络没有遥测没有凭据没有黑盒配合零依赖relay 的行为面被压缩到极致行为是否发生说明发起网络请求❌relay 本身零网络只有被启动的实现者 CLI 可能连接自己的服务端读写凭据❌认证完全复用你终端里已有的登录态发送遥测❌无任何上报通道提交 commit❌见下一节跨目录 import❌由隔离安装测试持续验证任务简报通过stdin传递给实现者而不是拼进命令行参数避免敏感任务文本泄漏到进程列表产物默认写到系统临时目录与你的仓库物理隔离。永不提交提交权永远属于审查者这是整个信任模型最硬的一条不变量relay 永不 commit提交属于审查者见 CONTRIBUTING.md 的四条不变量。工程上它被层层落实拒绝规则以 claude-delegate 为例正常权限档案用字符串规则拒绝git commit、git push及嵌套claude调用等常见直接 shell 形式并如实注明——别名、脚本、包装器可能绕过它们所以它们只是减速带真正的边界是简报里的禁提交指令加上编排者审查强制禁用Aider 是唯一默认自动提交的实现者relay 对它永远传递--no-auto-commits和--no-dirty-commits且不可配置见 README.md 脚注 [^aider]文档兜底每个 relay 的失败提示里都写着relay does not commit。审查 diff、自己重跑门禁再从编排侧落地skills/claude-delegate/scripts/relay.mjs。注意这里的措辞精度拒绝规则被明确定性为减速带而非安全边界。一个把防绕过当承诺卖的工具有问题而如实说明自己防不住什么的设计才配得上可审计三个字。只读熔断器readOnlyViolation 三态报告想做纯审查/诊断而不让代理动文件加一个--read-only。但各 CLI 的只读模式能力参差不齐delegate-skills 的做法是用测量代替假设relay 对比 git porcelain 解析结果并对原本就脏的可见路径做指纹比对readOnlyViolation是三态的true探测到变更硬警告、false覆盖完整且未检出变更、null覆盖不完整无法下结论官方反复强调这是报告型熔断器不是操作系统边界——被忽略的路径、完美还原、本地钩子写入、并发变更都不在其合同之内见 skills/claude-delegate/SKILL.mdPermission profiles一节。这个三态设计值得借鉴它拒绝用false 就等于绝对安全的假象糊弄审查者而是把我能证明什么、不能证明什么讲清楚。快速失败项目配置的内容绑定审批用 delegate-setup 配置车队fleet lanes时项目级配置采用内容绑定审批只有经过你显式批准的config.mjs write --scope project才会把审批哈希写入该工作区的 Git 元数据relay 应用项目 lane 前校验当前配置内容与审批哈希是否精确匹配克隆下来的仓库、事后被编辑过的配置一律快速失败fail closed必须重新走一遍审查与写入。换句话说一个来路不明的项目.delegate/config.json无法替你静默切换实现者或权限参数。完整路径与覆盖规则见 skills/delegate-setup/references/schema.md。诚实边界能力用 CLI 自己的术语声明AGENTS.md 为每种实现者维护了一张受控词汇表并立下一条硬规矩能力必须用 CLI 自己的术语陈述凡 CLI 强制不了的必须直说。例如Grok 无法在 headless 下被阻止写入所以 relay 只报告readOnlyViolation熔断器不强制、不归因Command Code 的 headless 模式只有两档——扣住写工具或--yolo全量信任中间没有沙箱于是 README 直接建议不可接受树外写入时请用容器或 OS 级沙箱某 CLI 没有只读模式这样的实现者可以合并但暗示它有只读模式的技能不能合并。这种把不能做到的事写进文档的文化本身就是信任的一部分。用运行而非假设做验证delegate-skills 的Verification status章节README.md是罕见的证据清单每个技能都记录在什么平台、什么 CLI 版本、跑了什么用例比如在一次性仓库上的真实编辑运行中HEAD未被触碰——relay 没提交代理也没提交401 认证失败时 relay 正确报告failed而非假成功拒绝规则实测拦截了git commit、git push、嵌套调用与$HOME写入。仅合同测试、真实运行待验证是被允许的合并答案没跑过却写 verified则不是。配套机制还有超时/中止矩阵超时或捕获信号时终止整个实现者进程树并保留结果产物test/harness/constants.mjs 强制每个 relay 入矩阵漏一个整套测试就失败只读熔断器场景矩阵脏子模块、大小写别名产物、非法 UTF-8 文件名、符号链接等边界场景逐一覆盖test/relay/read-only-tripwire.mjs字节级一致性门禁各 relay 共享的辅助函数必须字节相同test/relay-parity.mjs毫秒级跑完即证明漂移根本无法合入设计动机见 docs/plans/relay-core-dedup.md。审查侧同样有纪律安全不止在 relay 里。skills/claude-delegate/references/review-and-land.md 定义了审查者的操作手册先看测试改动再信门禁新增跳过、弱化断言先视为失败、自己重跑真实门禁、touchedFiles只是最终 git 状态而非归因、超时后不要反射性git reset销毁未审查的工作树……把AI 产出当待证主张而非事实来对待。总结把信任变成可验证delegate-skills 的信任模型可以浓缩成四句原则落地方式零依赖Node 内置模块 单脚本逐行可审计供应链面≈0零网络无遥测、无凭据、简报走 stdin、产物进临时目录永不提交拒绝规则 强制禁用 失败提示提交权永远在审查者证据化声明三态熔断器、fail-closed 配置审批、跑了什么逐条记录它的哲学不是造一堵更高的墙而是让每一道墙能被你看清、被证据验证、在失效时大声失败。对于任何打算把 AI 代理放进自己代码库的开发者这套先审后信的设计都值得一读。 延伸阅读README.md完整信任与验证章节、CONTRIBUTING.md四条不变量、AGENTS.md受控词汇与发布前检查单。【免费下载链接】delegate-skillsDelegate a coding task to a separate coding agent CLI, review the diff, land the commit yourself — one per implementer.项目地址: https://gitcode.com/gh_mirrors/de/delegate-skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考