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