核心用法
Claude Code Delegate 是一种「代理委派」技能,将实际编程工作完全外包给 Anthropic 官方的 Claude Code CLI 工具。用户无需直接编写代码,而是通过结构化指令触发本地 claude -p 命令,在隔离的会话中完成开发任务。
典型工作流
1. 前置检查:验证 CLI 安装 (which claude)、API 配置 (claude --version) 及可选的 write-guard 插件
2. 任务触发:自动识别代码相关请求(写代码、重构、调试、测试等),或手动输入 /code <task>
3. 异步执行:使用 claude -p "<task>" --output-format text --max-turns 10 --permission-mode bypassPermissions,立即返回 session ID,不阻塞主代理
4. 状态轮询:用户下一条消息时通过 process poll <id> 检查进度,主代理保持对话可用性
5. 结果中继:由主代理汇总文件变更、添加 delegate 人格特征(参考 PERSONA.md)并给出自身评价
显著优点
- 隔离性与安全性:强制
cd <project_dir>限定工作范围,推荐配合 write-guard 插件阻止对系统配置文件的写入 - 异步非阻塞:通过 session ID + 轮询机制,确保用户在长耗时编译/测试中仍能交互
- 双会话验证:独创「作者会话 (
--continue) + 独立测试会话 (fresh)」模式,利用无上下文偏见的 fresh session 充当外部代码审查员,显著提升代码质量 - 权限管控:明确禁止
--dangerously-skip-permissions,仅使用bypassPermissions并与 write-guard 协同
潜在缺点与局限性
- 环境依赖重:必须预装 Node.js 全局包
@anthropic-ai/claude-code并完成登录,初次配置门槛较高 - 超时风险:默认 300 秒 (5 分钟) 可能不足以完成大型重构;复杂任务需人工拆分为子任务
- write-guard 非强制:仅作为「强烈推荐」,用户若跳过则面临完整文件系统读写权限暴露风险
- 间接调试:用户无法直接与 delegate 交互,所有反馈需经主代理转述,可能增加沟通轮次
- 平台限制:仅适用于已支持 Claude Code CLI 的环境(目前主要为 macOS/Linux)
适合人群
- 需要保持对话流畅性、不希望被长时间编译阻塞的开发者
- 追求「写代码」与「测代码」分离验证以提升可靠性的团队
- 希望利用 Claude Code 原生 IDE 级能力(如代码搜索、多文件编辑)的本地 CLI 用户
- 具备基本 Node.js 环境管理能力、能接受额外安全插件配置的技术用户
常规风险
| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| 文件系统误写 | `--permission-mode bypassPermissions` 配合缺失 write-guard 时,delegate 可能修改任意文件 | 强制启用 write-guard 插件,限定 `projects/` 隔离目录 |
| 凭证泄露 | 在含密钥的目录运行 delegate | 禁止在仓库根目录或 `~/.aws/` 等敏感路径执行,使用干净项目目录 |
| 无限循环/资源耗尽 | `--max-turns` 设置过高或任务描述模糊导致反复重试 | 保持 10 轮限制,任务描述精确化,超时后人工介入 |
| 主代理与 delegate 状态不一致 | 轮询间隔内用户感知延迟 | 明确告知用户「进行中」状态,管理预期 |
| 依赖 CLI 服务可用性 | Anthropic API 或本地认证失效 | 前置 `claude --version` 检查,异常时引导用户重登录 |
结论
Claude Code Delegate 是一种架构先进的「人机协同」编程模式,通过严格的异步边界和双会话验证机制,在效率与可靠性之间取得平衡。其核心价值在于让专业工具做专业的事——主代理专注对话与决策,delegate 专注代码实现与验证。适合追求高代码质量、愿意接受一定环境配置成本的用户。