一键导入
aaw-workflow
配置驱动的 AAW 工作流 CLI 入口技能。读取 aaw CLI 返回的自描述工作单,按工作单调用子技能、执行 prompt、检查交付件并推进流程。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
配置驱动的 AAW 工作流 CLI 入口技能。读取 aaw CLI 返回的自描述工作单,按工作单调用子技能、执行 prompt、检查交付件并推进流程。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | aaw-workflow |
| description | 配置驱动的 AAW 工作流 CLI 入口技能。读取 aaw CLI 返回的自描述工作单,按工作单调用子技能、执行 prompt、检查交付件并推进流程。 |
本 skill 只负责驱动 CLI 工作单,不包含具体业务节点知识。节点、入口、后继关系、变量映射、prompt、子 skill 调用和数据 schema 均由 CLI 读取配置后返回。
当用户通过本 skill 但没有给出明确指令(例如空输入、只说“使用 aaw-workflow”、只贴需求但没说明继续还是新建)时,不要因为仓库中存在进行中的 workflow 就自动继续执行。
先执行:
python <skill-dir>/scripts/aaw.py status --json
然后按以下规则处理:
next。启动新 workflow 前必须确认新的 SR;不要复用已有 .sdd/<SR>/workflow.yaml,除非用户明确表示要继续该 SR。
当用户明确要继续某个 workflow,或已在入口意图判定中选择继续后,执行:
python <skill-dir>/scripts/aaw.py status --json
python <skill-dir>/scripts/aaw.py next --sr SR-XXX --json
next --json 返回的 ready 就是当前可执行工作单。不要依赖记忆判断下一步,始终以 CLI 返回为准。
使用入口启动一条工作流:
python <skill-dir>/scripts/aaw.py start --entry sr --sr SR-XXX --json
python <skill-dir>/scripts/aaw.py start --entry ar --sr SR-XXX --ar AR-XXX --title "AR描述" --json
AR 入口要求当前仓库已经执行过 repo-init,并且存在 .sdd/software_architecture.md。如果该文件缺失,next --json 会在工作单的 inputs 中标记 blocked,且 done 会失败。
也可以使用通用变量形式:
python <skill-dir>/scripts/aaw.py start --entry ar --var SR=SR-XXX --var AR=AR-XXX --var TITLE="AR描述" --json
每个 ready 工作单包含:
id / type / name:步骤标识。execution:执行方式,常见值为 skill、prompt、manual、noop。skill:需要加载的子技能列表。prompt:需要按自然语言或结构化步骤执行的指令。data / data_prompt:完成 step 时需要构造的 --data 结构说明。data_file:需要 --data-file 时的建议 JSON 文件路径;文件位于 .sdd/<SR>/.aaw/data/。input / output:输入和交付件列表;路径项会带 exists。inputs:required 输入检查结果;若 blocked=true 或 missing_required 非空,不要执行该工作单,也不要执行 done。deliverables:强制交付件检查结果;commands.done 也会校验 required output,缺失时 CLI 会拒绝推进。user_confirm:当前工作单完成后,流转到下游时的用户确认策略;skip 表示直接放行,ask 表示默认询问用户,must 表示必须用户确认。commands.done:完成当前 step 的可执行命令模板;若需要数据,默认使用 --data-file <JSON_FILE>。commands.done_argv:同一命令的参数数组形式,便于工具调用。commands.done_inline:使用 --data '<JSON>' 的备用命令;仅在确认当前 shell 引号行为可靠时使用。当 next --json 返回 status=awaiting_user_confirm 时,说明上一工作单已经完成,但下游尚未放行。此时不要执行任何子 skill,也不要尝试重复 done;应向用户说明待放行的来源 step 和下游 step,用户确认后执行返回的 commands.user_confirm。
每一步都按以下协议执行:
next --sr SR-XXX --json。done=true,流程结束。status=awaiting_user_confirm,向用户确认是否放行到 pending_user_confirm.planned_next;用户确认后执行 commands.user_confirm,然后回到第 1 步。ready,向用户列出 id/name/type/input/output 并让用户选择。inputs.blocked=true,先补齐 inputs.missing_required 中列出的 required 输入;缺失时不要执行子 skill,也不要执行 commands.done。deliverables.can_skip=true,说明强制交付件已存在;不要重复执行子 skill。若 data 为空,可直接执行 commands.done;若 data 不为空,仍需先按 data.fields 构造数据文件。execution 执行:
skill:加载并完整执行 skill 中列出的子技能;若同时存在 prompt 或 data_prompt,在子技能完成后继续按其说明收集数据。prompt:按 prompt 执行。manual:等待用户或外部动作完成。noop:无需额外执行,按工作单继续推进。deliverables.required 检查强制交付件;缺失时不要执行 done。data 不为空,根据 data.fields 和 data_prompt 构造 JSON,写入 data_file.path,然后执行 commands.done。commands.done。若返回 state=awaiting_user_confirm,向用户确认后执行 commands.user_confirm;否则回到第 1 步。module-design-gate 是准入门禁,不是普通直通节点。执行 gate skill 后必须先生成工作单 output 指定的门禁结果文件。
通过,向 CLI 提交 {"gate_result":"pass", ...},done 成功后进入 task-split。不通过 或 阻塞,不要推进到 task-split;可提交 gate_result=fail/blocked 获取 CLI 拒绝提示,但 step 会保持未完成。rollback。# 启动
python <skill-dir>/scripts/aaw.py start --entry sr --sr SR-XXX --json
python <skill-dir>/scripts/aaw.py start --entry ar --sr SR-XXX --ar AR-XXX --title "AR描述" --json
# 查看
python <skill-dir>/scripts/aaw.py status --json
python <skill-dir>/scripts/aaw.py status --sr SR-XXX --json
python <skill-dir>/scripts/aaw.py next --sr SR-XXX --json
# 推进
python <skill-dir>/scripts/aaw.py done --sr SR-XXX <id> --json
python <skill-dir>/scripts/aaw.py done --sr SR-XXX <id> --data-file data.json --json
python <skill-dir>/scripts/aaw.py done --sr SR-XXX <id> --data '<JSON>' --json # 备用
python <skill-dir>/scripts/aaw.py user-confirm --sr SR-XXX --json
# 回退
python <skill-dir>/scripts/aaw.py rollback --sr SR-XXX <id> --json
每完成一个 step 后建议用户新开会话,并通过:
python <skill-dir>/scripts/aaw.py next --sr SR-XXX --json
从 CLI 状态恢复,不需要依赖上一轮上下文。
根据 task-split 生成的独立任务文件逐个开发 task,执行实现、为用例编写自动化测试代码并跑通、输出总结并更新任务文件和 overview 状态。Use when the user asks to 开发详细任务、实现独立任务、开发 task 文件、执行 T1/T2、继续开发带用例的任务。Also trigger when the user references a tasks/ directory with independent task files (T1-*.md, T2-*.md) and wants to implement one of them. Make sure to use this skill whenever the user mentions task files from task-split, wants to start coding based on detailed task files with test cases, or asks to continue development work from a tasks/ directory.
基于 SR 设计文档中的指定 AR,或基于直接提供的 AR 原文/描述, 从代码实现角度审视并澄清未覆盖的细节,生成独立的 AR 范围文档作为后续详细设计和开发的唯一输入。
对代码仓中某个模块内与特定 SDD 需求、AR、功能点、影响范围或计划变更相关的部分进行 ASIS 逆向分析,并只更新同名前缀 `.context.md` 中的详细证据、检索过程、边界确认记录、ASIS 探索任务清单、分任务查证结果、主 Agent 复核吸收记录、ASIS 结论和阻塞项。当前置 TOBE 详细设计、门禁或 AICoding 需要基于代码证据确认现状事实、隐藏约束、依赖、风险、测试覆盖和实现行为时使用。ASIS 阶段不得创建或编辑正式《{AR编号}-{需求短名}-{模块名}模块详细设计说明书.md》;正式说明书只能由 TOBE 阶段基于 context 证据生成。必须存在 `.sdd/software_architecture.md`,并且只能以该文件作为模块边界识别依据;缺失时中断。
模块边界设计。基于已完成的功能设计(SR-design),识别受影响模块,逐模块定义边界(职责、上游依赖、下游暴露),绘制模块交互时序,并通过对抗式审查发现边界冲突(职责泄漏、循环依赖、边界破坏、重复能力)。输出 module-boundary-design.md。用于AAW工作流步骤3。Use when the user asks for 模块边界设计、module-boundary-design。
对当前 SDD 工作流指定的正式《{AR编号}-{需求短名}-{模块名}模块详细设计说明书.md》和独立《{AR编号}-{需求短名}-{模块名}模块测试用例设计.md》进行质量门禁检查,围绕证据链、边界链、执行链、验证链和风险链判断成果物是否足以进入后续 AICoding。当前需要确认详设和测试设计是否可进入 AICoding、发现阻断问题、生成整改清单、驱动回到 ASIS、TOBE 或测试设计补齐并多轮复检时使用。门禁阶段不得编辑正式说明书或测试设计正文;配套 `.context.md` 用于证据、过程复核和门禁记录,不得替代正式成果物中的开发和验证指导内容。
基于正式《{AR编号}-{需求短名}-{模块名}模块详细设计说明书.md》、同名前缀 `.context.md` 的 ASIS 测试覆盖现状和 TOBE 可测试性输入,生成独立《{AR编号}-{需求短名}-{模块名}模块测试用例设计.md》。本 skill 只输出最小充分测试用例集、覆盖矩阵、断言、建议位置和缺口;不得替 TOBE 补设计,不得拆分 AICoding 任务。