- lock.py: 跨平台进程锁(Unix fcntl / Windows msvcrt / O_CREAT|O_EXCL降级)
- eng_mode.py/eng_orchestrator.py: hasattr(os, "getloadavg") Windows防护
- arc_mode.py: 路径分隔符 replace("\\", "/") Windows兼容
- deploy_runtime.py: 修复语法错误(清理 import tempfile 残留)
- P1-24(3.2.18): AMBIGUOUS_VERBS歧义词检测 + SAFE_VERBS安全动词 + validate_task_description()
- TaskNode.keep_constraints 保留约束字段 + JSON序列化
- _build_graph_from_todo 返回歧义警告 + Arc自检集成
- 3.2.9b: FORBIDDEN_DEGRADATION_PATTERNS + check_forbidden_degradation()
- AirRvr三层审查放行标准: ReviewVerdict + evaluate_review_pass() + is_forbidden_pass_reason()
- commands/arc.md: 弱模型安全重写(操作类型拆分+保留约束+自检)
- commands/do.md/eng.md/rvr.md: 禁止降级方案 + 三层审查标准
- 测试: 7个新测试 + 74全量通过
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
4.7 KiB
Executable File
description, argument-hint, allowed-tools
| description | argument-hint | allowed-tools |
|---|---|---|
| AirPlan do mode - task executor with UI skill routing and full expert plugin routing | [enter|status|finish] | [Read, Glob, Grep, Bash, Write, Edit] |
/do
AirDo 是任务执行器。运行单个任务,强制执行全专家插件路由规则。
硬规则
- UI Task Handling (P1-20) — 当任务涉及 UI/前端/界面时,检测并确保 frontend-design Skill 可用。不可用时阻止执行
- Evidence Gate (INV-4) — GUI 任务需截图,网络任务需抓包,代码任务需静态分析/测试
- 全专家插件强制路由 — finish 时按任务类型和状态强制路由到对应专家插件,不可跳过
- 禁止降级实现 (3.2.9b) — 必须严格遵循 AirArc 设计方案,禁止以下行为和语言模式:
- 禁止使用"兜底方案"、"先这样做"、"以后再补"、"临时方案"等降级语言
- 禁止自行发明替代方案绕过设计约束
- 禁止以"能跑就行"为标准降低实现质量
- 设计方案无法执行时:报 blocked 并说明原因,等待 Eng 协调
子命令
enter — 进入 Worker
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 状态
python scripts/airplan.py --mode do --project . --sub status
finish — 完成 Worker(含全专家插件路由决策)
python scripts/airplan.py --mode do --project . --sub finish --task-id T-001 --result AirPlan/state/airdo/tasks/T-001/result.json
finish 执行强制路由(按优先级):
| 条件 | 路由目标 | 强制 |
|---|---|---|
| blocked / failed | airdbg |
是 |
| done + 无 validations + 无 files_changed | airdbg |
是 |
| GUI 任务(gui/ui/render/widget/dialog 等) | airxdb |
是 |
| 网络任务(network/rtsp/http/tcp/socket 等) | airndb |
是 |
| C/C++ 文件变更(.cpp/.h/.hpp 等) | airsdb |
是 |
| 所有 done 任务 | airrvr |
是 |
| 无强制路由触发 | merge |
否 |
返回 routingDecisions 列表(可能有多个路由目标,依次处理)。
AirDbg 路由 — 调试修复
当 finish 返回 routingDecisions 含 airdbg 时:
# 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
AirXDB 路由 — GUI 截图取证
当 finish 返回 routingDecisions 含 airxdb 时:
python scripts/airplan.py --mode xdb --project . --prefer auto --output task-{tid}-screenshot.png
截图路径写入 result.json 的 xdbSessions 字段后重新 finish。
AirNDB 路由 — 网络抓包取证
当 finish 返回 routingDecisions 含 airndb 时:
python scripts/airplan.py --mode ndb --project . --sub enter
# 然后 tcpdump/tshark 抓包,存入 AirPlan/state/airndb/captures/
抓包路径写入 result.json 的 ndbSessions 字段后重新 finish。
AirSDB 路由 — C/C++ 静态分析
当 finish 返回 routingDecisions 含 airsdb 时:
python scripts/airplan.py --mode sdb --project . --backend cppcheck --target ./src
分析报告路径写入 result.json 的 sdbReports 字段后重新 finish。
AirRvr 路由 — 需求一致性审查
当 finish 返回 routingDecisions 含 airrvr 时:
python scripts/airplan.py --mode rvr --project . --task-id {tid} --sub review
审查通过后重新 finish,此时 Rvr 证据已写入 validations。
证据采集 — 辅助命令
GUI 任务截图:
python scripts/airplan.py --mode xdb --project . --prefer auto --output task-{tid}-screenshot.png
网络任务抓包:
python scripts/airplan.py --mode ndb --project . --sub enter
代码任务静态分析:
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, 界面, 按钮, 对话框, 窗口, 菜单, 控件, 渲染, 布局