大模型应用
当用户明确要求把编码任务委托给另一个 Claude…
把有边界的编码任务交给独立的 Claude Code CLI 进程实现,自己作为编排者写简报、审查 diff 并提交。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
当用户明确要求把编码任务委托给另一个 C特定
解决思路
- 确认用户明确要求委托给 Claude Code、另一个 Claude 会话或 `claude` CLI 后再使用;不要仅因当前编排者本身是 Claude 就触发,也不要在用户要求当前 Claude 直接实现时使用。
- 先做前置检查:`claude --version` 成功、`claude auth status` 显示已认证、目标仓库是 `--cd` 传入的目录;在 Linux/WSL2 上确认 Claude 沙箱依赖已安装。
- 注意 macOS 上凭据在登录 Keychain 中,若编排者自身沙箱(如 Codex 的沙箱)阻止 Keychain 访问,`claude` 会回退到可能过期的凭据文件并误报 `loggedIn: false`;此时应提升沙箱权限或在沙箱外重跑检查与派发,再判断是否未认证。
- 编写简报:独立会话没有编排者的聊天历史,简报通过 stdin 传入,它可检查目标工作树;Claude Code 会自动发现目标项目的 `CLAUDE.md` 和本地 Claude 配置(relay 不使用 `--bare`),但不会自动加载 `AGENTS.md`,需自己读取 `AGENTS.md` 并把所有关键约束和真实门禁命令抄进简报。
- 简报中要求实现者不要提交,且每个简报只放一个任务。
- 派发命令:`node "<skill-dir>/scripts/relay.mjs" --brief brief.txt --cd /path/to/repo`;可选参数包括 `--read-only`(仅审查/诊断)、`--resume-last`(继续最近会话)、`--session <id>`(继续指定会话)、`--max-turns 40 --max-budget-usd 10`(限制)、`--autocompact 400k`(设置自动压缩窗口)、`--timeout 2h`(硬性截止)、`--help`(查看全部选项)。
- 了解 relay 行为:它运行 `claude -p --output-format stream-json --verbose`,通过 stdin 发送简报,默认把产物写到系统临时目录,从不使用 `--bg` 或 `--bare`,也从不提交。
- `--autocompact <auto|tokens>` 会在每次新建或恢复调用时传入 Claude Code 的自动压缩窗口设置,需要 Claude Code `2.1.221` 或更新版本,旧版本会以 `unknown option '--autocompact'` 失败;接受范围由已安装 CLI 决定(`auto` 或 100k–1M tokens),relay 只记录请求值,不声称 Claude 已应用或强制执行。
- 等待:relay 会阻塞直到 Claude 退出,可用编排者的后台命令设施或前台运行等待;完成意味着进程退出且 `result.json` 存在。
- 处理失败情形:运行前用法错误退出码 2 且不写 `result.json`;缺少 `claude` 退出码 127 并写 `status: "claude_unavailable"`;超时和捕获到的 relay 信号会终止整个实现者进程树并保留结果产物。
- 从 `result.json` 读取 `finalMessage`、`touchedFiles`、`resultSubtype` 和原始产物路径。
- 审查时把实现者的报告和门禁结果当作声明而非事实:在绿色门禁有意义之前先审查对现有测试的改动;自己重跑项目真实门禁;对照简报阅读完整 diff,从 `touchedFiles` 开始;检查未跟踪和已暂存内容以及普通 diff;如已安装相关 guard 技能则运行。
- 落地:只有在门禁通过且 diff 站得住后,由编排者提交。
- 返工:用增量简报恢复同一 Claude 会话,例如 `echo "Keep the implementation, replace the mocked DB test with the migrated fixture, and remove the unused import." | node "<skill-dir>/scripts/relay.mjs" --session <id> --cd /path/to/repo`,恢复运行要像首次运行一样审查。
- 了解默认权限配置:`acceptEdits` 权限模式;内置工具限制为 Read、Glob、Grep、Edit、Write 和平台 shell;在 macOS、Linux、WSL2 上启用 Claude shell 沙箱,依赖缺失时启动失败且不进行无沙箱重试;保持沙箱的命令自动批准以便无头运行门禁;沙箱只管辖 shell 进程及其子进程,合并的本地或托管沙箱设置可能增加有效路径或排除项。
- 默认配置还会禁用 MCP 发现和 Claude.ai 连接器、拒绝所有 MCP 工具,子进程不可用技能、命令和 Claude 的 Agent 工具;项目 `CLAUDE.md`、hooks、正常认证、会话持久化和其他本地设置仍会加载。
- 字符串规则会拒绝 `git commit`、`git push` 和嵌套 `claude` 的常见直接 shell 形式,以及任何包含 `claude-delegate` 的命令;但别名、脚本和包装器可绕过,它们只是减速带,简报中的不提交指令和编排者审查才是真正边界。
- 原生 Windows 不支持 Claude shell 沙箱:relay 会限制工具面并预批准 PowerShell 以保持非交互,但该 shell 没有 OS 隔离;原生 `claude.exe` 和 npm `claude.cmd` 启动路径已实现,Windows 验证待完成。
- `--read-only` 使用 `plan` 模式,仅 Read、Glob、Grep;它移除编辑、写入和 shell 路径,然后比较解析后的 git porcelain,并对已脏的 Git 可见路径的工作树身份和索引条目做指纹;`readOnlyViolation` 在任一信号证明有改动时为 `true`,覆盖完整且未检测到改动时为 `false`,覆盖不完整时为 `null`;这是报告用的绊线而非 OS 边界:被忽略路径和完美还原不在覆盖内,本地 hooks 可写入,并发改动无法归因于 Claude。
- `--dangerously-skip-permissions` 是显式选择加入 Claude 的 `bypassPermissions` 模式:受限工具面、直接 commit/push 拒绝规则和支持平台的 shell 沙箱仍保留,但直接文件工具可越过正常权限边界;仅在人类明确接受时使用。
- 注意本技能与原生 Claude 功能互补:Claude 子代理、代理团队和后台会话适合当前 Claude 环境已是编排者且目标是原生协调的场景;本技能提供跨编排者契约——自包含简报 → 派发 → 产物 → 审查 → 落地——并把提交留给编排者。
- 参考文档:`references/writing-the-brief.md`(上下文、`CLAUDE.md` 与 `AGENTS.md`、真实门禁、报告契约、增量简报)、`references/dispatch-and-poll.md`(标志、配置、产物、`result.json`、轮询、失败恢复)、`references/review-and-land.md`(生成代码审查、提交边界、会话返工)、`references/multi-task-queues.md`(顺序队列、进度跟踪、约束传递、最终一致性)。
适用边界 · 注意事项
- 人类要求当前代理直接实现该任务。
- 任务小到可内联完成,且人类未要求委托。
- `claude` CLI 缺失或未认证(`claude auth status`)。
- 任务需要比 Claude Code 工具权限和仅 shell 沙箱更强的宿主边界,此时应使用隔离容器或 VM。