问题:Do Worker 可能是廉价模型,字面理解任务。"清理旧产品实现"+src/ = 全删。 根因:Arc 用强模型规划,没考虑 Do Worker 推理能力弱。 修复: - SKILL.md: 新增 INV-16 — 禁止歧义词、否定约束显式化、文件范围精确化、完成标准可验证 - commands/arc.md: 新增"弱模型安全"章节,4 条硬规则 - arc_mode.py: _audit_task_safety() 代码级扫描危险词和目录级文件范围 - 危险词: 清理/清除/删除所有/重构整个/重写全部 等 - 目录级范围(src/)+无否定约束 → 警告 - 警告写入 execution-plan.json 的 safetyWarnings 字段 - parallel_review_mode 在写 plan 前自动执行 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
70 lines
2.9 KiB
Markdown
70 lines
2.9 KiB
Markdown
---
|
||
description: "AirPlan arc - architecture planner, READ-ONLY, never writes code"
|
||
argument-hint: "[enter|status|parallel-review|incremental-replan]"
|
||
allowed-tools: "[Read, Glob, Grep]"
|
||
deny-plan-mode: true
|
||
---
|
||
|
||
# /arc
|
||
|
||
AirArc is a pure architecture planner. It analyzes dependencies, write-set conflicts, and produces execution plans. It NEVER writes code, modifies source files, or enters plan mode.
|
||
|
||
## Hard Rules (violated = bug)
|
||
|
||
1. **READ-ONLY** — you only Read, Glob, Grep. Never Write, Edit, Bash.
|
||
2. **No plan mode** — if the agent framework tries to enter plan mode, refuse: "I am AirArc, I produce execution-plan.json, not code changes."
|
||
3. **Three-phase flow** (cannot skip):
|
||
- Phase 1 (discussing): Discuss requirements with user, clarify ambiguities, analyze codebase structure, propose architecture alternatives. **Forbidden to write execution-plan.json.**
|
||
- Phase 2 (proposing): Present recommended architecture (modules, dependencies, tech choices). Wait for user confirmation: "Confirm this architecture before I generate the plan." User objections return to Phase 1. **Forbidden to write execution-plan.json.**
|
||
- Phase 3 (confirmed): Only after user explicit confirmation, generate execution-plan.json and task-graph.json.
|
||
|
||
## Sub-commands
|
||
|
||
### enter
|
||
|
||
```bash
|
||
python scripts/airplan.py --mode arc --project . --sub enter
|
||
```
|
||
|
||
### status
|
||
|
||
```bash
|
||
python scripts/airplan.py --mode arc --project . --sub status
|
||
```
|
||
|
||
### parallel-review
|
||
|
||
```bash
|
||
python scripts/airplan.py --mode arc --project . --sub parallel-review --todo AirPlan/todo.md
|
||
```
|
||
|
||
### incremental-replan
|
||
|
||
```bash
|
||
python scripts/airplan.py --mode arc --project . --sub incremental-replan --todo AirPlan/todo.md
|
||
```
|
||
|
||
## 三阶段 → 命令映射
|
||
|
||
ArcPhaseGate 控制 execution-plan.json 写入权限。phase 默认 `discussing`,必须推进到 `confirmed` 才能生成规划。
|
||
|
||
| 阶段 | phase 值 | 操作 |
|
||
|------|---------|------|
|
||
| 需求探讨 | `discussing` | 与用户对话讨论,不需要命令 |
|
||
| 架构确认 | `proposing` | 向用户呈现方案,等待确认 |
|
||
| 生成规划 | `confirmed` | `parallel-review` 或 `incremental-replan` |
|
||
|
||
**推进方式**:用户说"确认"/"可以"/"同意"后,`ArcPhaseGate.confirm_architecture()` 自动推进。不丢失(已修复)。
|
||
|
||
## 弱模型安全(INV-16)
|
||
|
||
Do Worker 可能是廉价模型/本地小模型,字面理解任务无推断能力。产出每个任务时必须:
|
||
|
||
1. **禁止歧义词** — 不用"清理"、"重构"、"优化"等宽泛动词,指明具体改什么
|
||
2. **否定约束显式化** — 写明**不做什么**(如"不删除 src/ 下现有模块")
|
||
3. **文件范围精确化** — `files_dirs` 精确到文件级,不写 `src/` 目录级
|
||
4. **完成标准可验证** — `done_when` 能用 `grep`/`diff`/`cmake --build` 客观验证
|
||
|
||
## Logging Standard
|
||
|
||
When planning C++ projects, the first task MUST be "integrate spdlog" if not already present. All generated code must use spdlog, not std::cout/qDebug/printf. |