核心用法
Claude Code Task 是一个异步任务调度技能,允许用户在后台启动 Claude Code(Anthropic 的 AI 代理 CLI),并在任务完成后自动将结果推送至 WhatsApp。核心工作流分为三步:
1. 编写提示词:将复杂任务提示保存至临时文件(避免 shell 引号转义问题)
2. 后台启动:使用 nohup 启动 run-task.py,指定任务文件、项目目录、会话密钥和超时时间
3. 自动交付:任务运行期间每60秒发送心跳 ping,完成后通过 WhatsApp Direct 和 sessions_send 双重通知,唤醒 Agent 进行结果摘要
关键特性
- 零 Token 成本:Claude Code 运行在 Max 订阅($200/月)上,不消耗 OpenClaw API token,仅需约 $0.01-0.05 的 Agent 摘要成本
- 会话恢复:支持
--resume继续之前的对话,--session-label便于追踪 - 可靠性保障:SIGTERM/SIGKILL 超时机制、崩溃自动通知、PID 文件追踪、部分输出保存
- 进度更新:长任务可通过
openclaw_notify.py发送里程碑更新
显著优点
| 优势 | 说明 |
|------|------|
| 成本效率 | 复杂任务(如数小时研究)几乎零 API 成本 |
| 非阻塞 | Agent 无需等待,立即返回,适合 2 小时以上的长任务 |
| 安全透明 | 所有权限、网络调用、状态目录均显式声明 |
| 灵活强大 | Claude Code 支持网页搜索、文件分析、代码生成、复杂推理 |
潜在局限
- 环境依赖:需预装
python3、claudeCLI 及 Max 订阅 - 配置门槛:需手动设置
gateway.tools.allow和tools.sessions.visibility - Git 强制:项目目录需为 git 仓库(自动初始化可能不适用于所有场景)
- 权限风险:使用
--dangerously-skip-permissions实现无人值守,需信任项目目录 - 调试复杂度:异步日志分散于
/tmp/cc-run.log,需手动追踪
适合人群
- 需要执行 >2分钟 的复杂任务(代码重构、深度研究、多文件分析)
- 希望 降低 API 成本 的高频用户
- 需要 后台运行 不阻塞当前会话的场景
- 不适合:即时问答、需实时交互的任务
常规风险
| 风险类型 | 说明 | 缓解措施 |
|----------|------|----------|
| 权限绕过 | `--dangerously-skip-permissions` 跳过所有确认 | 仅用于受信任项目目录 |
| 令牌泄露 | `gateway.auth.token` 从本地文件读取 | 仅限 localhost 调用,不记录不传输 |
| 超时丢失 | 默认2小时可能不足 | 使用 `--timeout` 延长 |
| 僵尸进程 | PID 文件残留 | 自动清理机制 |
| 网络依赖 | 依赖本地 OpenClaw 网关 | 确保服务运行 |
技术实现要点
- 进程管理:
nohup+subprocess.Popen实现真后台,规避 OpenClaw 的 2 分钟 exec 超时 - 通知双通道:WhatsApp Direct(人类可见)+
sessions_send(唤醒 Agent) - 会话隔离:每个任务独立 session,支持标签和恢复
- JSON 流输出:
--output-format stream-json实现实时活动追踪