@aipper/aiws-spec 0.0.51 → 0.0.53

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/docs/pi-plugins-manifest.json +10 -9
  2. package/docs/pi-plugins-manifest.md +6 -6
  3. package/docs/skill-manifest.json +18 -0
  4. package/package.json +1 -1
  5. package/templates/workspace/.opencode/README.md +49 -0
  6. package/templates/workspace/.opencode/command/ws-frontend-design.md +17 -0
  7. package/templates/workspace/.opencode/commands/using-aiws.md +18 -7
  8. package/templates/workspace/.opencode/plugins/memory-autoload.js +185 -0
  9. package/templates/workspace/.opencode/skills/codebase-design/SKILL.md +114 -0
  10. package/templates/workspace/.opencode/skills/domain-modeling/SKILL.md +74 -0
  11. package/templates/workspace/.opencode/skills/grill-with-docs/SKILL.md +7 -0
  12. package/templates/workspace/.opencode/skills/tdd/SKILL.md +36 -0
  13. package/templates/workspace/.opencode/skills/using-aiws/SKILL.md +2 -1
  14. package/templates/workspace/.opencode/skills/ws-dev/SKILL.md +24 -3
  15. package/templates/workspace/.opencode/skills/ws-plan/SKILL.md +15 -1
  16. package/templates/workspace/.opencode/skills/ws-review/SKILL.md +22 -0
  17. package/templates/workspace/AGENTS.md +13 -0
  18. package/templates/workspace/manifest.json +9 -121
  19. package/templates/workspace/.opencode/command/p-aiws-change-archive.md +0 -27
  20. package/templates/workspace/.opencode/command/p-aiws-change-finish.md +0 -27
  21. package/templates/workspace/.opencode/command/p-aiws-change-list.md +0 -26
  22. package/templates/workspace/.opencode/command/p-aiws-change-new.md +0 -27
  23. package/templates/workspace/.opencode/command/p-aiws-change-next.md +0 -27
  24. package/templates/workspace/.opencode/command/p-aiws-change-start.md +0 -27
  25. package/templates/workspace/.opencode/command/p-aiws-change-status.md +0 -27
  26. package/templates/workspace/.opencode/command/p-aiws-change-sync.md +0 -27
  27. package/templates/workspace/.opencode/command/p-aiws-change-templates-init.md +0 -26
  28. package/templates/workspace/.opencode/command/p-aiws-change-templates-which.md +0 -26
  29. package/templates/workspace/.opencode/command/p-aiws-change-validate.md +0 -27
  30. package/templates/workspace/.opencode/command/p-aiws-hooks-install.md +0 -26
  31. package/templates/workspace/.opencode/command/p-aiws-hooks-status.md +0 -26
  32. package/templates/workspace/.opencode/command/p-aiws-init.md +0 -23
  33. package/templates/workspace/.opencode/command/p-aiws-rollback.md +0 -16
  34. package/templates/workspace/.opencode/command/p-aiws-update.md +0 -22
  35. package/templates/workspace/.opencode/command/p-aiws-validate.md +0 -17
  36. package/templates/workspace/.opencode/command/ws-analyze.md +0 -30
  37. package/templates/workspace/.opencode/command/ws-auto.md +0 -33
  38. package/templates/workspace/.opencode/command/ws-autonomy.md +0 -25
  39. package/templates/workspace/.opencode/command/ws-bugfix.md +0 -35
  40. package/templates/workspace/.opencode/command/ws-commit.md +0 -87
  41. package/templates/workspace/.opencode/command/ws-delegate.md +0 -33
  42. package/templates/workspace/.opencode/command/ws-deliver.md +0 -75
  43. package/templates/workspace/.opencode/command/ws-handoff.md +0 -43
  44. package/templates/workspace/.opencode/command/ws-intake.md +0 -22
  45. package/templates/workspace/.opencode/command/ws-migrate.md +0 -25
  46. package/templates/workspace/.opencode/command/ws-plan-verify.md +0 -28
  47. package/templates/workspace/.opencode/command/ws-preflight.md +0 -35
  48. package/templates/workspace/.opencode/command/ws-pull.md +0 -87
  49. package/templates/workspace/.opencode/command/ws-push.md +0 -93
  50. package/templates/workspace/.opencode/command/ws-quality-review.md +0 -30
  51. package/templates/workspace/.opencode/command/ws-req-change.md +0 -45
  52. package/templates/workspace/.opencode/command/ws-req-contract-sync.md +0 -21
  53. package/templates/workspace/.opencode/command/ws-req-contract-validate.md +0 -16
  54. package/templates/workspace/.opencode/command/ws-req-flow-sync.md +0 -23
  55. package/templates/workspace/.opencode/command/ws-req-review.md +0 -36
  56. package/templates/workspace/.opencode/command/ws-rule.md +0 -27
  57. package/templates/workspace/.opencode/command/ws-spec-review.md +0 -30
  58. package/templates/workspace/.opencode/command/ws-submodule-setup.md +0 -57
  59. package/templates/workspace/.opencode/command/ws-verify-before-complete.md +0 -27
  60. package/templates/workspace/.opencode/commands/p-aiws-change-archive.md +0 -27
  61. package/templates/workspace/.opencode/commands/p-aiws-change-finish.md +0 -27
  62. package/templates/workspace/.opencode/commands/p-aiws-change-list.md +0 -26
  63. package/templates/workspace/.opencode/commands/p-aiws-change-new.md +0 -27
  64. package/templates/workspace/.opencode/commands/p-aiws-change-next.md +0 -27
  65. package/templates/workspace/.opencode/commands/p-aiws-change-start.md +0 -27
  66. package/templates/workspace/.opencode/commands/p-aiws-change-status.md +0 -27
  67. package/templates/workspace/.opencode/commands/p-aiws-change-sync.md +0 -27
  68. package/templates/workspace/.opencode/commands/p-aiws-change-templates-init.md +0 -26
  69. package/templates/workspace/.opencode/commands/p-aiws-change-templates-which.md +0 -26
  70. package/templates/workspace/.opencode/commands/p-aiws-change-validate.md +0 -27
  71. package/templates/workspace/.opencode/commands/p-aiws-hooks-install.md +0 -26
  72. package/templates/workspace/.opencode/commands/p-aiws-hooks-status.md +0 -26
  73. package/templates/workspace/.opencode/commands/p-aiws-init.md +0 -23
  74. package/templates/workspace/.opencode/commands/p-aiws-rollback.md +0 -16
  75. package/templates/workspace/.opencode/commands/p-aiws-update.md +0 -22
  76. package/templates/workspace/.opencode/commands/p-aiws-validate.md +0 -17
  77. package/templates/workspace/.opencode/commands/ws-analyze.md +0 -30
  78. package/templates/workspace/.opencode/commands/ws-auto.md +0 -33
  79. package/templates/workspace/.opencode/commands/ws-autonomy.md +0 -25
  80. package/templates/workspace/.opencode/commands/ws-bugfix.md +0 -35
  81. package/templates/workspace/.opencode/commands/ws-commit.md +0 -18
  82. package/templates/workspace/.opencode/commands/ws-delegate.md +0 -33
  83. package/templates/workspace/.opencode/commands/ws-deliver.md +0 -18
  84. package/templates/workspace/.opencode/commands/ws-handoff.md +0 -18
  85. package/templates/workspace/.opencode/commands/ws-intake.md +0 -22
  86. package/templates/workspace/.opencode/commands/ws-migrate.md +0 -18
  87. package/templates/workspace/.opencode/commands/ws-plan-verify.md +0 -18
  88. package/templates/workspace/.opencode/commands/ws-preflight.md +0 -35
  89. package/templates/workspace/.opencode/commands/ws-pull.md +0 -18
  90. package/templates/workspace/.opencode/commands/ws-push.md +0 -18
  91. package/templates/workspace/.opencode/commands/ws-quality-review.md +0 -30
  92. package/templates/workspace/.opencode/commands/ws-req-change.md +0 -45
  93. package/templates/workspace/.opencode/commands/ws-req-contract-sync.md +0 -21
  94. package/templates/workspace/.opencode/commands/ws-req-contract-validate.md +0 -16
  95. package/templates/workspace/.opencode/commands/ws-req-flow-sync.md +0 -23
  96. package/templates/workspace/.opencode/commands/ws-req-review.md +0 -36
  97. package/templates/workspace/.opencode/commands/ws-rule.md +0 -27
  98. package/templates/workspace/.opencode/commands/ws-spec-review.md +0 -30
  99. package/templates/workspace/.opencode/commands/ws-submodule-setup.md +0 -18
  100. package/templates/workspace/.opencode/commands/ws-verify-before-complete.md +0 -18
  101. package/templates/workspace/.opencode/skills/ws-handoff/SKILL.md +0 -18
  102. package/templates/workspace/.opencode/skills/ws-intake/SKILL.md +0 -80
@@ -1,30 +0,0 @@
1
- ---
2
- description: 质量审查:行为回归 / 测试覆盖 / 实现质量
3
- ---
4
- <!-- AIWS_MANAGED_BEGIN:opencode:ws-quality-review -->
5
- # ws quality review
6
-
7
- 用中文输出(命令/路径/代码标识符保持原样不翻译)。
8
-
9
- 目标:审查行为回归、边界条件、测试覆盖与实现质量。
10
-
11
- 步骤(建议):
12
- 1) 读取 `git diff`、已执行的验证结果和相关代码。
13
- - 若检测到 `.opencode/oh-my-opencode.json` 或当前会话明确可用 `oracle` / `explore`:优先按 `packages/spec/docs/opencode-omo-adapter.md` 借用这些 agent。
14
- - 质量/回归审查优先 `@oracle`;代码路径与影响面补充优先 `@explore`。
15
- 2) 检查:
16
- - 是否存在行为回归或明显 bug 风险
17
- - 边界条件 / 失败路径是否覆盖
18
- - 测试是否足以支撑当前改动
19
- 3) 将结论落盘到:
20
- - 默认:`changes/<change-id>/review/quality-review.md`
21
- - 回退:`.agentdocs/tmp/review/quality-review.md`
22
- 4) 输出:
23
- - `证据(Evidence):`
24
- - `主要发现(Findings):`
25
- - `测试缺口(Gaps):`
26
- - `下一步(Next):`
27
- 5) 若 oMo 不可用:回退为当前 agent 本地 quality review。
28
- <!-- AIWS_MANAGED_END:opencode:ws-quality-review -->
29
-
30
- 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -1,45 +0,0 @@
1
- ---
2
- description: 需求变更:更新 REQUIREMENTS 并同步执行合同
3
- ---
4
- <!-- AIWS_MANAGED_BEGIN:opencode:ws-req-change -->
5
- # ws req change
6
-
7
- 用中文输出(命令/路径/代码标识符保持原样不翻译)。
8
-
9
- 目标:记录需求变更(更新 `REQUIREMENTS.md` + 追加 `requirements/CHANGELOG.md`),并同步/校验执行合同 `requirements/requirements-issues.csv`。
10
-
11
- 步骤(必须按顺序):
12
- 1) 读取:`AI_PROJECT.md`、`REQUIREMENTS.md`、`AI_WORKSPACE.md`、`requirements/CHANGELOG.md`(缺失则创建目录与文件)。
13
- 2) 先产出“拟变更方案”(不要立刻写文件):
14
- - 变更摘要(1–5 条)
15
- - 影响范围(API/鉴权/字段/状态码/测试边界)
16
- - 回滚思路(1–2 条)
17
- 3) 对比与冲突检查(强制,不写文件):
18
- - 对比“变更前 vs 拟变更后”的差异清单(新增/删除/语义变化)
19
- - 整理潜在冲突/不确定点(只列“最可能影响验收/实现”的,避免噪音)
20
- 4) 逐条澄清(强制,避免一次问完):
21
- - 若存在潜在冲突/不确定点:**本轮只问 1 个**最高优先级问题(给出 2–4 个可选答案或二选一),然后停止,等待用户回复;不要继续问下一题,也不要写文件。
22
- - 收到用户回复后:更新“拟变更方案”,回到步骤 3) 重新对比,直至没有未决问题。
23
- 5) 强制停下来让用户确认:是否继续落盘?(Y/N)
24
- 6) 用户确认 Y 后再写入:
25
- - 更新 `REQUIREMENTS.md`(只保留当前有效版本,不在此堆历史)
26
- - 追加 `requirements/CHANGELOG.md`
27
- 7) 同步/补齐需求执行合同(强制,自动处理 FlowSpec 有/无两种情况):
28
- - `python3 tools/requirements_contract_sync.py --workspace .`
29
- - 说明:若 `REQUIREMENTS.md` 中不存在 FlowSpec(或 flows 为空),该命令只会确保 `requirements/requirements-issues.csv` 表头存在并给出 WARN(这是预期行为,不要当成失败)。
30
- 8) 校验需求执行合同(强制):`python3 tools/requirements_contract.py validate`
31
- 9) 同步场景合同(可选,但若存在 FlowSpec 则强烈建议自动执行):
32
- - 若 `REQUIREMENTS.md` 同时包含 `<!-- FLOW_SPEC_BEGIN -->` 与 `<!-- FLOW_SPEC_END -->`:运行 `/ws-req-flow-sync`
33
- - 否则:跳过,并提示用户“可以先不维护 FlowSpec;后续需要场景回归时再补”
34
-
35
- 输出必须包含:
36
- - 本次更新的文件清单(路径)
37
- - 回滚方案(如何撤销本次需求变更)
38
- - 下一步建议命令
39
-
40
- 安全:
41
- - 不打印 `secrets/test-accounts.json`
42
- - 不引入任何 token/密钥到仓库
43
- <!-- AIWS_MANAGED_END:opencode:ws-req-change -->
44
-
45
- 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -1,21 +0,0 @@
1
- ---
2
- description: 合同同步:把 REQUIREMENTS FlowSpec 同步到 requirements-issues.csv
3
- ---
4
- <!-- AIWS_MANAGED_BEGIN:opencode:ws-req-contract-sync -->
5
- # ws req contract sync
6
-
7
- 用中文输出(命令/路径/代码标识符保持原样不翻译)。
8
-
9
- 用途:从 `REQUIREMENTS.md` 的 FlowSpec 补齐 `requirements/requirements-issues.csv`(只生成骨架,不猜测完成状态)。
10
-
11
- 执行(在 workspace 根目录):
12
- - `python3 tools/requirements_contract_sync.py --workspace .`
13
-
14
- 输出要求:
15
- - 说明新增/更新了多少条
16
- - 明确下一步:手工补齐 CRUD/Inputs/Outputs/Business_Logic/Tests,并将可开工条目标为 `Spec_Status=READY`
17
-
18
- 下一步建议:`/ws-req-contract-validate`
19
- <!-- AIWS_MANAGED_END:opencode:ws-req-contract-sync -->
20
-
21
- 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -1,16 +0,0 @@
1
- ---
2
- description: 合同校验:校验 requirements-issues.csv 字段完整性
3
- ---
4
- <!-- AIWS_MANAGED_BEGIN:opencode:ws-req-contract-validate -->
5
- # ws req contract validate
6
-
7
- 用中文输出(命令/路径/代码标识符保持原样不翻译)。
8
-
9
- 执行(失败则修正 CSV 后重试):
10
- - `python3 tools/requirements_contract.py validate`
11
-
12
- 输出要求:
13
- - 若失败:列出前 20 条缺失字段(Req_ID + field),并给出最小补齐建议
14
- <!-- AIWS_MANAGED_END:opencode:ws-req-contract-validate -->
15
-
16
- 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -1,23 +0,0 @@
1
- ---
2
- description: Flow 同步:从 REQUIREMENTS 生成 api-flow 与场景执行合同
3
- ---
4
- <!-- AIWS_MANAGED_BEGIN:opencode:ws-req-flow-sync -->
5
- # ws req flow sync
6
-
7
- 用中文输出;命令与路径保持原样不翻译。
8
-
9
- 目标:基于 `REQUIREMENTS.md` 的 FlowSpec 生成:
10
- - `docs/api-flow.mmd`(简短逻辑图,Mermaid)
11
- - `issues/server-scenario-issues.csv`(场景执行合同:TODO/DONE/BLOCKED)
12
-
13
- 执行(在 workspace 根目录):
14
- `python3 tools/requirements_flow_gen.py --workspace .`
15
-
16
- 若缺少工具 `tools/requirements_flow_gen.py`:提示用户先运行 `npx @aipper/aiws init .`(默认会安装 optional tools)。
17
-
18
- 输出要求:只打印生成的文件路径与下一步命令:
19
- - 查看逻辑图:`cat docs/api-flow.mmd`
20
- - 查看场景合同:`cat issues/server-scenario-issues.csv`
21
- <!-- AIWS_MANAGED_END:opencode:ws-req-flow-sync -->
22
-
23
- 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -1,36 +0,0 @@
1
- ---
2
- description: 需求评审:对 REQUIREMENTS 做整体 QA(不改文件)
3
- ---
4
- <!-- AIWS_MANAGED_BEGIN:opencode:ws-req-review -->
5
- # ws req review
6
-
7
- 用中文输出(命令/路径/代码标识符保持原样不翻译)。
8
-
9
- 目标:在不修改任何文件的前提下,对 `REQUIREMENTS.md` 做一次整体 QA,输出缺口/冲突/风险,减少实现漂移。
10
-
11
- 执行步骤(强制):
12
- 1) 定位项目根目录:先尝试 `git rev-parse --show-superproject-working-tree`(submodule 感知上溯);若为空再用 `git rev-parse --show-toplevel`。都失败则停止并让用户确认根目录。
13
- 2) 读取(存在则必须读取;缺失则明确列出,不要臆测):
14
- - `AI_PROJECT.md`
15
- - `REQUIREMENTS.md`
16
- - `AI_WORKSPACE.md`
17
- - `requirements/CHANGELOG.md`(若存在)
18
- - `requirements/requirements-issues.csv`(若存在)
19
- 3) 输出固定结构的报告:
20
-
21
- ## Requirements QA
22
- - 结论:是否可进入实现(是/否/有条件)
23
- - 漂移风险:最容易导致不一致的点
24
- - 可验收性缺口:缺少输入/输出/错误码/边界/示例的条目
25
- - 完整性:Non-goals/兼容性/鉴权/重试/并发/观测性/性能
26
- - 一致性:与 `AI_PROJECT.md` 约束冲突点
27
- - 可测试性与证据:最小验证命令 + 期望结果 + 证据路径
28
- - 风险清单:3–8 条
29
- - 需要澄清的问题:5–12 个(按优先级)
30
-
31
- 4) 最后询问用户:是否进入需求落盘流程 `/ws-req-change`?(Y/N)
32
-
33
- 安全:不打印 `secrets/test-accounts.json`。
34
- <!-- AIWS_MANAGED_END:opencode:ws-req-review -->
35
-
36
- 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -1,27 +0,0 @@
1
- ---
2
- description: 规则:把口述规则整理并写入 AI_PROJECT.md 托管段
3
- ---
4
- <!-- AIWS_MANAGED_BEGIN:opencode:ws-rule -->
5
- # ws rule
6
-
7
- 用中文输出(命令/路径/代码标识符保持原样不翻译)。
8
-
9
- 目标:把用户口述的“项目特有规则”整理成可执行条款,并写入 `AI_PROJECT.md` 的 `AI_PROJECT_RULES_BEGIN/END` 段(托管块外内容会被保留)。
10
-
11
- 安全规则(强制):
12
- - 不打印/不写入 secrets(token、密钥、内网地址、账号密码)。
13
- - 不执行破坏性命令。
14
-
15
- 工作流:
16
- 1) 先运行 `/ws-preflight`;若缺失 `AI_PROJECT.md`:提示用户先 `/ws-migrate` 或运行 `npx @aipper/aiws init .`。
17
- 2) 写入前创建备份(必须):
18
- `ts="$(date +%Y%m%d-%H%M%S)"; mkdir -p .aiws/backups/manual; cp -a AI_PROJECT.md .aiws/backups/manual/AI_PROJECT.md.bak.${ts}`
19
- 3) 先输出“将写入的规则清单”(3–12 条),并要求用户回复 `CONFIRM` 后再落盘。
20
- 4) 用户确认后,**仅更新** BEGIN/END 段内内容(合并去重;写成可检查条款:目录白名单/必须验证命令/禁止项/产物要求)。
21
- 5) 输出必须包含:
22
- - 更新了哪些文件(路径)
23
- - 回滚方式(恢复备份文件)
24
- - 下一步建议:`aiws validate .`
25
- <!-- AIWS_MANAGED_END:opencode:ws-rule -->
26
-
27
- 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -1,30 +0,0 @@
1
- ---
2
- description: 规范审查:requirements / plan / evidence / gate 完整性
3
- ---
4
- <!-- AIWS_MANAGED_BEGIN:opencode:ws-spec-review -->
5
- # ws spec review
6
-
7
- 用中文输出(命令/路径/代码标识符保持原样不翻译)。
8
-
9
- 目标:审查 requirements 归因、plan/change 绑定、evidence 与 workflow gate 完整性。
10
-
11
- 步骤(建议):
12
- 1) 先运行 `/ws-preflight`。
13
- - 若检测到 `.opencode/oh-my-opencode.json` 或当前会话明确可用 `oracle` / `librarian`:优先按 `packages/spec/docs/opencode-omo-adapter.md` 借用这些 agent。
14
- - requirements / gate / evidence 审查优先 `@oracle`;规范与文档真值补充优先 `@librarian`。
15
- 2) 对照 `AI_PROJECT.md` / `REQUIREMENTS.md` / `AI_WORKSPACE.md` 检查:
16
- - 当前改动是否能归因到 `Req_ID` / `Problem_ID`
17
- - `plan/...`、`proposal.md`、`tasks.md`、`evidence/` 是否保持一致
18
- - 是否存在越界改动、危险操作或缺失 gate
19
- 3) 将结论落盘到:
20
- - 默认:`changes/<change-id>/review/spec-review.md`
21
- - 回退:`.agentdocs/tmp/review/spec-review.md`
22
- 4) 输出:
23
- - `证据(Evidence):`
24
- - `阻断项(Blockers):`
25
- - `警告(Warnings):`
26
- - `下一步(Next):`
27
- 5) 若 oMo 不可用:回退为当前 agent 本地 spec review。
28
- <!-- AIWS_MANAGED_END:opencode:ws-spec-review -->
29
-
30
- 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -1,18 +0,0 @@
1
- ---
2
- description: 子模块分支对齐(写入 .gitmodules 的 submodule.<name>.branch)
3
- ---
4
- <!-- AIWS_MANAGED_BEGIN:opencode:ws-submodule-setup -->
5
- # ws submodule setup
6
-
7
- Thin CLI wrapper. Delegates to `aiws submodule-setup`.
8
-
9
- ```bash
10
- if [[ -x "./node_modules/.bin/aiws" ]]; then
11
- ./node_modules/.bin/aiws submodule-setup
12
- elif command -v aiws >/dev/null 2>&1; then
13
- aiws submodule-setup
14
- else
15
- npx @aipper/aiws submodule-setup
16
- fi
17
- ```
18
- <!-- AIWS_MANAGED_END:opencode:ws-submodule-setup -->
@@ -1,18 +0,0 @@
1
- ---
2
- description: 完成前验证:finish / handoff 前检查双审查与 validate/evidence
3
- ---
4
- <!-- AIWS_MANAGED_BEGIN:opencode:ws-verify-before-complete -->
5
- # ws verify before complete
6
-
7
- Thin CLI wrapper. Delegates to `aiws verify-bc`.
8
-
9
- ```bash
10
- if [[ -x "./node_modules/.bin/aiws" ]]; then
11
- ./node_modules/.bin/aiws verify-bc
12
- elif command -v aiws >/dev/null 2>&1; then
13
- aiws verify-bc
14
- else
15
- npx @aipper/aiws verify-bc
16
- fi
17
- ```
18
- <!-- AIWS_MANAGED_END:opencode:ws-verify-before-complete -->
@@ -1,18 +0,0 @@
1
- ---
2
- name: ws-handoff
3
- description: Thin wrapper for `aiws handoff`
4
- ---
5
-
6
- # ws-handoff
7
-
8
- Thin skill wrapper. Delegates to `aiws handoff`. See `aiws handoff --help` for details.
9
-
10
- ```bash
11
- if [[ -x "./node_modules/.bin/aiws" ]]; then
12
- ./node_modules/.bin/aiws handoff
13
- elif command -v aiws >/dev/null 2>&1; then
14
- aiws handoff
15
- else
16
- npx @aipper/aiws handoff
17
- fi
18
- ```
@@ -1,80 +0,0 @@
1
- ---
2
- name: ws-intake
3
- description: 使用时机:新需求需要逐条澄清、冻结问题时。触发词:需求澄清、intake、冻结问题、前期沟通。注意:需求已冻结直接进 ws-plan。
4
- ---
5
-
6
- ## 配置
7
-
8
- | 配置项 | 类型 | 默认值 | 说明 |
9
- |---|---|---|---|
10
- | `recommendAnswers` | boolean | true | 提问时先给出推荐答案 |
11
- | `adversarial` | boolean | true | 对抗式审问:挑战假设+代码库探查 |
12
-
13
- 用中文输出(命令/路径/代码标识符保持原样不翻译)。
14
-
15
- 目标:
16
- - 在 `/ws-plan` 前把新需求或中大型变更里的待确认问题逐条澄清并冻结。
17
- - "一题一线程":每次只处理 1 个问题,允许多轮往返到形成明确结论。
18
- - 产出轻量草案:`plan/<timestamp>-<slug>.intake.md`。
19
-
20
- ## Deep Interview 层(前置探询)
21
-
22
- 在逐题澄清前收集高维信息:
23
-
24
- 1. **Why 探询**:问"为什么要做?不做有什么后果?"——理解动机,量化 urgency
25
- 2. **非目标(Non-goals)**:显式记录什么不在本次范围内,防止 scope creep
26
- 3. **影响面**:识别影响谁(终端用户、其他模块/系统、其他团队)
27
- 4. **假设显式化**:列出隐含假设,请用户逐条确认
28
- 5. **替代方案**:问"是否考虑过其他方案?为什么选当前这个?"
29
- 6. **约束挑战**:区分硬约束(不可变)和自设约束(可协商)
30
- 7. **优先级**:Must-have / Should-have / Nice-to-have
31
- 8. **成功度量**:量化指标(DAU、转化率、响应时间等);无法量化则记入风险
32
- 9. **风险预判**:识别 3-5 个最关键风险
33
-
34
- 输出:以上 9 项归入 intake 草案的 `Deep Interview` 小节。
35
-
36
- ## 发散-收敛两子阶段
37
-
38
- 当需求模糊、方向不明确时:
39
-
40
- ### 发散阶段(Explore)
41
- - 快速探索 2-3 个方向(≤3 轮),输出每个方向的摘要+风险+依赖
42
- - **探码前问**:先用 `explore` agent 探查代码库(配置文件、已有实现、文档、测试),探查到的信息直接作为输入,不再重复确认
43
-
44
- ### 收敛阶段(Converge)
45
- - 从发散结果选 1 个方向,逐条冻结问题
46
- - 回到标准"一题一线程"模式
47
-
48
- 触发条件:用户说"不确定"/"多个方向"等模糊表达。非模糊需求直接进入收敛。
49
-
50
- ## 核心原则:一次一个问题
51
-
52
- - 每轮只推进 1 个 `Open Questions`,未标记 `frozen/deferred` 前不进入下一题
53
- - 输出格式:`Current question → Why it matters → Options → Exit condition`
54
- - 用户选择后立即写盘更新草案
55
-
56
- **队列保护**:用户一次提出多个问题时建队处理:`Queue: [Q1, Q2, Q3]` / `Current: Q1` / `Status: [open/in_discussion/frozen/deferred]`
57
-
58
- 执行要求:
59
- 1) 先读真值文件,必要时 `/ws-preflight`
60
- 2) 若存在 `plan/*.intake.md` 则续写,否则新建
61
- 3) 拆解为 `Open Questions`,状态只允许 `open/in_discussion/frozen/deferred`
62
- 4) **对抗式探码后问**:提问前 spawn `explore` agent:
63
- - 事实探查:代码库已有答案则记录并跳过提问(`codebase: answered/partial` vs `user: required`)
64
- - 矛盾检索:搜代码库中与用户假设矛盾的模式
65
- - 边缘案例:空值、并发写入、依赖不可用等
66
- 5) 每次只推进 1 个问题,显式输出 `Current question` / `Why it matters` / `Options` / `Recommended answer` / `Exit condition`
67
- 6) **决策树分支遍历**:问题组织为树,每个答案可能产生子分支。使用缩进树格式追踪:
68
- ```
69
- ├─ Q1 (frozen)
70
- │ ├─ Q1.1 (frozen)
71
- │ └─ Q1.2 ← current
72
- ├─ Q2 (pending)
73
- ```
74
- 所有叶节点均 `frozen/deferred` 时 intake 完成。无法继续的分支标记 `UNRESOLVED_BRANCH`。
75
- 7) 每轮写盘 intake 草案,至少包含:Deep Interview / Context / Codebase Knowns / Open Questions / Resolved Questions / Frozen Decisions / Draft Scope / Draft Verify / Ready for ws-plan
76
- 8) **Error States**:覆盖已知失败模式(网络超时、数据一致性、输入校验边界),含回滚条件与方式
77
- 9) **Rollback Plan**:涉及数据迁移、API 契约变更、配置漂移修复时,须包含触发条件、回滚步骤、验证方式、副作用
78
- 10) 关键问题已冻结 → `Next: /ws-plan`;否则继续 `/ws-intake`
79
-
80
- > 运行时行为约束:`packages/spec/docs/run-behavior-guidelines.md`