2.0 KiB
2.0 KiB
ACK
ACK 是一个显式调用的 Agent Skill,用三种独立角色运行工程协作闭环:
- Coordinator 拆解需求、派发任务并终检。
- Developer 实现并执行白盒验证。
- Test 独立执行黑盒复测。
关键约束是验证者不等于实现者。每个任务最多修复三轮,仍未通过时记录为
leftover,然后继续处理其它任务。
安装
全局安装:
skiff add ack -g
或只安装到当前项目:
skiff add ack
ACK 只在用户显式调用 /ack 或 $ack 时运行。
初始化项目
skiff init ack
skiff init ack --project ~/code/my-app
初始化后,项目只保存自己的 ACK 状态:
docs/ack/
├── project.md
└── tasks.yaml
不会在项目中复制或链接 ACK Skill。通用规范、模板和脚本始终从已安装的 Skill 目录读取。
Skill 结构
skills/ack/
├── SKILL.md
├── README.md
├── VERSION
├── references/ # 三角色规范、闭环流程和初始化说明
├── templates/ # project.md 与 tasks.yaml 模板和 schema
├── examples/ # 完整示例
└── scripts/ # tasks.yaml 与 worker 命令校验器
SKILL.md 是 Agent 的工作流入口。references/ 是按需读取的稳定规范;
docs/ack/project.md 只保存当前项目的命令、路径和权限差异;
docs/ack/tasks.yaml 保存当前任务状态。
检查任务板
Agent 会从当前 ACK Skill 目录解析校验脚本:
python3 <ack-skill-dir>/scripts/validate_tasks.py docs/ack/tasks.yaml
开始一个需求
初始化完成后可以直接说:
/ack 处理这个需求:<一句话需求>
Coordinator 会先读取项目状态和 references/kickoff.md,生成产品文档、任务拆分与
可观测验收信号;用户确认后才派发实现和复测。
版本
当前 Skill 版本见 VERSION。新项目在 tasks.yaml 中记录 ackVersion。旧项目的
kitVersion 可以继续读取,但建议迁移为 ackVersion。