Files
AirPlan-V2/commands/do.md
AirLongDian 9ad232af38 docs: 全部 12 个命令文件完整化 — 消除 P0/P1 操作歧义
P0: 9 个存根命令文件从 11 行模板扩展为完整操作文档
- dbg: 7 步工作流表格 + 证据类型 + 子命令 + Dbg↔Do 集成路径
- ctx: 三级降级压缩 + 质量校验 + Token 估算 + 陈旧锁清理
- dep: SSH 部署流程 + MD5 校验 + systemd 管理
- tst: 5 种测试框架 + run 命令 + T-TEST 集成
- sec: advisory/blocking 双模式 + 文件/目录/Woker result 三种扫描
- rvr: 审查模式 + highRiskAudit + code-to-design + Eng merge 集成
- sdb: 6 种后端 + diff 模式 + Dbg 取证集成
- ndb: 网络抓包 + Dbg 取证集成
- xdb: kmsgrab/xvfb/fallback 三后端 + Dbg/Do GUI 验证集成

P1: 3 个有内容文件的歧义修复
- do: AirDbg 路由具体命令 + 证据采集(xdb/ndb/sdb/tst)命令
- arc: 三阶段→命令映射表 + phase 推进方式
- eng: monitor 轮询循环伪代码(Agent 无时钟概念,必须循环调 monitor)

全部命令统一使用 `python scripts/airplan.py` 路径(清除旧 $HOME/plugins 引用)

63 项功能测试全通过

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-11 15:57:12 +08:00

85 lines
3.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
description: "AirPlan do mode - task executor with UI skill routing and evidence gate"
argument-hint: "[enter|status|finish]"
allowed-tools: "[Read, Glob, Grep, Bash, Write, Edit]"
---
# /do
AirDo 是任务执行器。运行单个任务,强制执行路由规则,集成其他 AirPlan 模式。
## 硬规则
1. **UI Task Handling (P1-20)** — 当任务涉及 UI/前端/界面时,检测并确保 frontend-design Skill 可用。不可用时阻止执行
2. **Evidence Gate (INV-4)** — GUI 任务需截图,网络任务需抓包,代码任务需静态分析/测试
3. **Force AirDbg Routing** — done 无证据 → airdbgblocked/failed → airdbg
## 子命令
### enter — 进入 Worker
```bash
python scripts/airplan.py --mode do --project . --sub enter --task-id T-001 --task-text "实现登录界面UI"
```
参数:
- `--task-id`:任务 ID必须
- `--task-text`:任务描述文本(用于 UI 检测和路由,必须)
创建 `AirPlan/state/airdo/tasks/{task_id}/worker-state.json`。返回 `{taskId, briefPath, resultPath, workerStatePath, uiRouting}`
### status — 查看 Worker 状态
```bash
python scripts/airplan.py --mode do --project . --sub status
```
### finish — 完成 Worker含路由决策
```bash
python scripts/airplan.py --mode do --project . --sub finish --task-id T-001 --result AirPlan/state/airdo/tasks/T-001/result.json
```
finish 执行强制路由:
- `done` + 有 validations/filesChanged → route to `merge`
- `done` + 无 evidence → forced route to `airdbg`
- `blocked`/`failed` → forced route to `airdbg`
## AirDbg 路由 — 具体操作
当 finish 返回 `routingDecision.target = "airdbg"` 时,**必须**调 dbg 模式:
```bash
# 1. 启动调试会话
python scripts/airplan.py --mode dbg --project . --sub start --task-id {tid}
# 2. Dbg 按 7 步工作流调试(取证→定位→修复→验证)
# 3. Dbg 完成后,重新 finish:
python scripts/airplan.py --mode do --project . --sub finish --task-id {tid} --result AirPlan/state/airdo/tasks/{tid}/result.json
```
## 证据采集 — GUI/Network 任务
**GUI 任务**(涉及 gui/ui/render/widget/dialog 等关键词)— 需要截图:
```bash
python scripts/airplan.py --mode xdb --project . --prefer auto --output task-{tid}-screenshot.png
```
截图路径写入 result.json 的 validations 字段。
**网络任务**(涉及 network/rtsp/http/tcp 等关键词)— 需要抓包:
```bash
python scripts/airplan.py --mode ndb --project . --sub enter
# 然后 tcpdump/tshark 抓包,存入 AirPlan/state/airndb/captures/
```
**代码任务** — 需要静态分析或测试:
```bash
python scripts/airplan.py --mode sdb --project . --backend cppcheck --target ./src
# 或
python scripts/airplan.py --mode tst --project . --sub run --task-id {tid} --framework googletest
```
## UI 任务检测关键词(中英文)
gui, ui, render, layout, dialog, osd, overlay, visual, widget, pane, toolbar, canvas, button, window, popup, menu, drm, kms, opengl, vulkan, frontend, react, vue, angular, web, css, html, 界面, 按钮, 对话框, 窗口, 菜单, 控件, 渲染, 布局