@aipper/aiws-spec 0.0.24 → 0.0.25

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 (191) hide show
  1. package/README.md +22 -0
  2. package/docs/aiws-bootstrap-routing-design.md +138 -0
  3. package/docs/aiws-governance-positioning.md +69 -0
  4. package/docs/cli-interface.md +87 -5
  5. package/docs/collaboration-artifacts.md +62 -0
  6. package/docs/opencode-omo-adapter.md +135 -0
  7. package/docs/opencode-omo-validation-checklist.md +90 -0
  8. package/docs/spec-contract.md +26 -11
  9. package/docs/superpowers-collaboration-adoption.md +92 -0
  10. package/docs/workflow-delegation-contracts.json +274 -0
  11. package/docs/workflow-delegation-contracts.md +248 -0
  12. package/docs/workflow-delegation-contracts.schema.json +176 -0
  13. package/docs/workflow-governance-rules.json +294 -0
  14. package/docs/workflow-governance-rules.md +63 -0
  15. package/docs/workflow-governance-rules.schema.json +182 -0
  16. package/docs/workflow-review-gates.json +72 -0
  17. package/docs/workflow-review-gates.md +36 -0
  18. package/docs/workflow-review-gates.schema.json +67 -0
  19. package/docs/workflow-router-rules.json +196 -0
  20. package/docs/workflow-router-rules.md +83 -0
  21. package/docs/workflow-router-rules.schema.json +119 -0
  22. package/docs/workflow-stage-contracts.json +148 -0
  23. package/docs/workflow-stage-contracts.md +70 -0
  24. package/docs/workflow-stage-contracts.schema.json +98 -0
  25. package/package.json +1 -1
  26. package/templates/workspace/.agents/skills/using-aiws/SKILL.md +83 -0
  27. package/templates/workspace/.agents/skills/ws-commit/SKILL.md +23 -0
  28. package/templates/workspace/.agents/skills/ws-delegate/SKILL.md +75 -0
  29. package/templates/workspace/.agents/skills/ws-deliver/SKILL.md +22 -0
  30. package/templates/workspace/.agents/skills/ws-dev/SKILL.md +35 -6
  31. package/templates/workspace/.agents/skills/ws-finish/SKILL.md +24 -0
  32. package/templates/workspace/.agents/skills/ws-frontend-design/SKILL.md +126 -0
  33. package/templates/workspace/.agents/skills/ws-handoff/SKILL.md +22 -1
  34. package/templates/workspace/.agents/skills/ws-plan/SKILL.md +25 -1
  35. package/templates/workspace/.agents/skills/ws-plan-verify/SKILL.md +20 -0
  36. package/templates/workspace/.agents/skills/ws-preflight/SKILL.md +23 -0
  37. package/templates/workspace/.agents/skills/ws-quality-review/SKILL.md +56 -0
  38. package/templates/workspace/.agents/skills/ws-review/SKILL.md +24 -0
  39. package/templates/workspace/.agents/skills/ws-spec-review/SKILL.md +57 -0
  40. package/templates/workspace/.agents/skills/ws-verify-before-complete/SKILL.md +59 -0
  41. package/templates/workspace/.claude/commands/using-aiws.md +24 -0
  42. package/templates/workspace/.claude/commands/ws-quality-review.md +24 -0
  43. package/templates/workspace/.claude/commands/ws-spec-review.md +24 -0
  44. package/templates/workspace/.claude/commands/ws-verify-before-complete.md +24 -0
  45. package/templates/workspace/.claude/skills/p-aiws-change-archive/SKILL.md +24 -0
  46. package/templates/workspace/.claude/skills/p-aiws-change-finish/SKILL.md +24 -0
  47. package/templates/workspace/.claude/skills/p-aiws-change-list/SKILL.md +18 -0
  48. package/templates/workspace/.claude/skills/p-aiws-change-new/SKILL.md +26 -0
  49. package/templates/workspace/.claude/skills/p-aiws-change-next/SKILL.md +19 -0
  50. package/templates/workspace/.claude/skills/p-aiws-change-start/SKILL.md +33 -0
  51. package/templates/workspace/.claude/skills/p-aiws-change-status/SKILL.md +19 -0
  52. package/templates/workspace/.claude/skills/p-aiws-change-sync/SKILL.md +19 -0
  53. package/templates/workspace/.claude/skills/p-aiws-change-templates-init/SKILL.md +18 -0
  54. package/templates/workspace/.claude/skills/p-aiws-change-templates-which/SKILL.md +18 -0
  55. package/templates/workspace/.claude/skills/p-aiws-change-validate/SKILL.md +23 -0
  56. package/templates/workspace/.claude/skills/p-aiws-hooks-install/SKILL.md +30 -0
  57. package/templates/workspace/.claude/skills/p-aiws-hooks-status/SKILL.md +18 -0
  58. package/templates/workspace/.claude/skills/p-aiws-init/SKILL.md +27 -0
  59. package/templates/workspace/.claude/skills/p-aiws-rollback/SKILL.md +18 -0
  60. package/templates/workspace/.claude/skills/p-aiws-update/SKILL.md +26 -0
  61. package/templates/workspace/.claude/skills/p-aiws-validate/SKILL.md +22 -0
  62. package/templates/workspace/.claude/skills/p-tasks-plan/SKILL.md +37 -0
  63. package/templates/workspace/.claude/skills/using-aiws/SKILL.md +83 -0
  64. package/templates/workspace/.claude/skills/ws-analyze/SKILL.md +26 -0
  65. package/templates/workspace/.claude/skills/ws-bugfix/SKILL.md +111 -0
  66. package/templates/workspace/.claude/skills/ws-commit/SKILL.md +127 -0
  67. package/templates/workspace/.claude/skills/ws-deliver/SKILL.md +231 -0
  68. package/templates/workspace/.claude/skills/ws-dev/SKILL.md +168 -0
  69. package/templates/workspace/.claude/skills/ws-finish/SKILL.md +220 -0
  70. package/templates/workspace/.claude/skills/ws-frontend-design/SKILL.md +126 -0
  71. package/templates/workspace/.claude/skills/ws-handoff/SKILL.md +52 -0
  72. package/templates/workspace/.claude/skills/ws-migrate/SKILL.md +54 -0
  73. package/templates/workspace/.claude/skills/ws-plan/SKILL.md +138 -0
  74. package/templates/workspace/.claude/skills/ws-plan-verify/SKILL.md +61 -0
  75. package/templates/workspace/.claude/skills/ws-preflight/SKILL.md +55 -0
  76. package/templates/workspace/.claude/skills/ws-pull/SKILL.md +119 -0
  77. package/templates/workspace/.claude/skills/ws-push/SKILL.md +110 -0
  78. package/templates/workspace/.claude/skills/ws-quality-review/SKILL.md +56 -0
  79. package/templates/workspace/.claude/skills/ws-req-change/SKILL.md +41 -0
  80. package/templates/workspace/.claude/skills/ws-req-contract-sync/SKILL.md +17 -0
  81. package/templates/workspace/.claude/skills/ws-req-contract-validate/SKILL.md +12 -0
  82. package/templates/workspace/.claude/skills/ws-req-flow-sync/SKILL.md +28 -0
  83. package/templates/workspace/.claude/skills/ws-req-review/SKILL.md +32 -0
  84. package/templates/workspace/.claude/skills/ws-review/SKILL.md +50 -0
  85. package/templates/workspace/.claude/skills/ws-rule/SKILL.md +23 -0
  86. package/templates/workspace/.claude/skills/ws-spec-review/SKILL.md +57 -0
  87. package/templates/workspace/.claude/skills/ws-submodule-setup/SKILL.md +65 -0
  88. package/templates/workspace/.claude/skills/ws-verify-before-complete/SKILL.md +59 -0
  89. package/templates/workspace/.opencode/command/using-aiws.md +29 -0
  90. package/templates/workspace/.opencode/command/ws-delegate.md +33 -0
  91. package/templates/workspace/.opencode/command/ws-plan.md +3 -0
  92. package/templates/workspace/.opencode/command/ws-preflight.md +4 -0
  93. package/templates/workspace/.opencode/command/ws-quality-review.md +30 -0
  94. package/templates/workspace/.opencode/command/ws-review.md +3 -0
  95. package/templates/workspace/.opencode/command/ws-spec-review.md +30 -0
  96. package/templates/workspace/.opencode/command/ws-verify-before-complete.md +27 -0
  97. package/templates/workspace/.opencode/commands/p-aiws-change-archive.md +27 -0
  98. package/templates/workspace/.opencode/commands/p-aiws-change-finish.md +27 -0
  99. package/templates/workspace/.opencode/commands/p-aiws-change-list.md +26 -0
  100. package/templates/workspace/.opencode/commands/p-aiws-change-new.md +27 -0
  101. package/templates/workspace/.opencode/commands/p-aiws-change-next.md +27 -0
  102. package/templates/workspace/.opencode/commands/p-aiws-change-start.md +27 -0
  103. package/templates/workspace/.opencode/commands/p-aiws-change-status.md +27 -0
  104. package/templates/workspace/.opencode/commands/p-aiws-change-sync.md +27 -0
  105. package/templates/workspace/.opencode/commands/p-aiws-change-templates-init.md +26 -0
  106. package/templates/workspace/.opencode/commands/p-aiws-change-templates-which.md +26 -0
  107. package/templates/workspace/.opencode/commands/p-aiws-change-validate.md +27 -0
  108. package/templates/workspace/.opencode/commands/p-aiws-hooks-install.md +26 -0
  109. package/templates/workspace/.opencode/commands/p-aiws-hooks-status.md +26 -0
  110. package/templates/workspace/.opencode/commands/p-aiws-init.md +23 -0
  111. package/templates/workspace/.opencode/commands/p-aiws-rollback.md +16 -0
  112. package/templates/workspace/.opencode/commands/p-aiws-update.md +22 -0
  113. package/templates/workspace/.opencode/commands/p-aiws-validate.md +17 -0
  114. package/templates/workspace/.opencode/commands/using-aiws.md +29 -0
  115. package/templates/workspace/.opencode/commands/ws-analyze.md +30 -0
  116. package/templates/workspace/.opencode/commands/ws-bugfix.md +35 -0
  117. package/templates/workspace/.opencode/commands/ws-commit.md +70 -0
  118. package/templates/workspace/.opencode/commands/ws-delegate.md +33 -0
  119. package/templates/workspace/.opencode/commands/ws-deliver.md +58 -0
  120. package/templates/workspace/.opencode/commands/ws-dev.md +36 -0
  121. package/templates/workspace/.opencode/commands/ws-finish.md +71 -0
  122. package/templates/workspace/.opencode/commands/ws-handoff.md +25 -0
  123. package/templates/workspace/.opencode/commands/ws-migrate.md +25 -0
  124. package/templates/workspace/.opencode/commands/ws-plan-verify.md +28 -0
  125. package/templates/workspace/.opencode/commands/ws-plan.md +27 -0
  126. package/templates/workspace/.opencode/commands/ws-preflight.md +34 -0
  127. package/templates/workspace/.opencode/commands/ws-pull.md +87 -0
  128. package/templates/workspace/.opencode/commands/ws-push.md +93 -0
  129. package/templates/workspace/.opencode/commands/ws-quality-review.md +30 -0
  130. package/templates/workspace/.opencode/commands/ws-req-change.md +45 -0
  131. package/templates/workspace/.opencode/commands/ws-req-contract-sync.md +21 -0
  132. package/templates/workspace/.opencode/commands/ws-req-contract-validate.md +16 -0
  133. package/templates/workspace/.opencode/commands/ws-req-flow-sync.md +23 -0
  134. package/templates/workspace/.opencode/commands/ws-req-review.md +36 -0
  135. package/templates/workspace/.opencode/commands/ws-review.md +33 -0
  136. package/templates/workspace/.opencode/commands/ws-rule.md +27 -0
  137. package/templates/workspace/.opencode/commands/ws-spec-review.md +30 -0
  138. package/templates/workspace/.opencode/commands/ws-submodule-setup.md +57 -0
  139. package/templates/workspace/.opencode/commands/ws-verify-before-complete.md +27 -0
  140. package/templates/workspace/.opencode/oh-my-opencode.json.example +17 -0
  141. package/templates/workspace/.opencode/skills/p-aiws-change-archive/SKILL.md +24 -0
  142. package/templates/workspace/.opencode/skills/p-aiws-change-finish/SKILL.md +24 -0
  143. package/templates/workspace/.opencode/skills/p-aiws-change-list/SKILL.md +18 -0
  144. package/templates/workspace/.opencode/skills/p-aiws-change-new/SKILL.md +26 -0
  145. package/templates/workspace/.opencode/skills/p-aiws-change-next/SKILL.md +19 -0
  146. package/templates/workspace/.opencode/skills/p-aiws-change-start/SKILL.md +33 -0
  147. package/templates/workspace/.opencode/skills/p-aiws-change-status/SKILL.md +19 -0
  148. package/templates/workspace/.opencode/skills/p-aiws-change-sync/SKILL.md +19 -0
  149. package/templates/workspace/.opencode/skills/p-aiws-change-templates-init/SKILL.md +18 -0
  150. package/templates/workspace/.opencode/skills/p-aiws-change-templates-which/SKILL.md +18 -0
  151. package/templates/workspace/.opencode/skills/p-aiws-change-validate/SKILL.md +23 -0
  152. package/templates/workspace/.opencode/skills/p-aiws-hooks-install/SKILL.md +30 -0
  153. package/templates/workspace/.opencode/skills/p-aiws-hooks-status/SKILL.md +18 -0
  154. package/templates/workspace/.opencode/skills/p-aiws-init/SKILL.md +27 -0
  155. package/templates/workspace/.opencode/skills/p-aiws-rollback/SKILL.md +18 -0
  156. package/templates/workspace/.opencode/skills/p-aiws-update/SKILL.md +26 -0
  157. package/templates/workspace/.opencode/skills/p-aiws-validate/SKILL.md +22 -0
  158. package/templates/workspace/.opencode/skills/p-tasks-plan/SKILL.md +37 -0
  159. package/templates/workspace/.opencode/skills/using-aiws/SKILL.md +87 -0
  160. package/templates/workspace/.opencode/skills/ws-analyze/SKILL.md +26 -0
  161. package/templates/workspace/.opencode/skills/ws-bugfix/SKILL.md +111 -0
  162. package/templates/workspace/.opencode/skills/ws-commit/SKILL.md +127 -0
  163. package/templates/workspace/.opencode/skills/ws-delegate/SKILL.md +63 -0
  164. package/templates/workspace/.opencode/skills/ws-deliver/SKILL.md +231 -0
  165. package/templates/workspace/.opencode/skills/ws-dev/SKILL.md +168 -0
  166. package/templates/workspace/.opencode/skills/ws-finish/SKILL.md +220 -0
  167. package/templates/workspace/.opencode/skills/ws-frontend-design/SKILL.md +126 -0
  168. package/templates/workspace/.opencode/skills/ws-handoff/SKILL.md +52 -0
  169. package/templates/workspace/.opencode/skills/ws-migrate/SKILL.md +54 -0
  170. package/templates/workspace/.opencode/skills/ws-plan/SKILL.md +148 -0
  171. package/templates/workspace/.opencode/skills/ws-plan-verify/SKILL.md +61 -0
  172. package/templates/workspace/.opencode/skills/ws-preflight/SKILL.md +60 -0
  173. package/templates/workspace/.opencode/skills/ws-pull/SKILL.md +119 -0
  174. package/templates/workspace/.opencode/skills/ws-push/SKILL.md +110 -0
  175. package/templates/workspace/.opencode/skills/ws-quality-review/SKILL.md +63 -0
  176. package/templates/workspace/.opencode/skills/ws-req-change/SKILL.md +41 -0
  177. package/templates/workspace/.opencode/skills/ws-req-contract-sync/SKILL.md +17 -0
  178. package/templates/workspace/.opencode/skills/ws-req-contract-validate/SKILL.md +12 -0
  179. package/templates/workspace/.opencode/skills/ws-req-flow-sync/SKILL.md +28 -0
  180. package/templates/workspace/.opencode/skills/ws-req-review/SKILL.md +32 -0
  181. package/templates/workspace/.opencode/skills/ws-review/SKILL.md +57 -0
  182. package/templates/workspace/.opencode/skills/ws-rule/SKILL.md +23 -0
  183. package/templates/workspace/.opencode/skills/ws-spec-review/SKILL.md +64 -0
  184. package/templates/workspace/.opencode/skills/ws-submodule-setup/SKILL.md +65 -0
  185. package/templates/workspace/.opencode/skills/ws-verify-before-complete/SKILL.md +59 -0
  186. package/templates/workspace/AGENTS.md +72 -30
  187. package/templates/workspace/changes/README.md +18 -0
  188. package/templates/workspace/changes/templates/proposal.md +15 -0
  189. package/templates/workspace/changes/templates/tasks.md +9 -2
  190. package/templates/workspace/manifest.json +277 -2
  191. package/templates/workspace/tools/ws_change_check.py +26 -4
@@ -0,0 +1,30 @@
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 的额外说明(托管块外内容会被保留)。
@@ -10,6 +10,8 @@ description: 评审:提交前审计改动并落盘证据
10
10
 
11
11
  步骤(建议):
12
12
  1) 先运行 `/ws-preflight`。
13
+ - 若检测到 `.opencode/oh-my-opencode.json` 或当前会话明确可用 `oracle` / `explore` / `librarian`:优先按 `packages/spec/docs/opencode-omo-adapter.md` 借用这些 agent。
14
+ - 独立审查优先 `@oracle`;diff 影响面优先 `@explore`;规范/文档上下文优先 `@librarian`。
13
15
  2) 基于 `git status` / `git diff`(以及你实际运行过的测试结果),对照 `AI_PROJECT.md` 与 `REQUIREMENTS.md` 检查:
14
16
  - 是否存在越界目录改动/危险操作
15
17
  - 是否有可复现验证命令与证据
@@ -21,6 +23,7 @@ description: 评审:提交前审计改动并落盘证据
21
23
  - `证据(Evidence):` 证据文件路径
22
24
  - `主要风险(Top risks):` 3–8 条(高→低)
23
25
  - `下一步(Next):` 最小修复清单 + 最小验证命令
26
+ 5) 若 oMo 不可用:回退为当前 agent 本地 review,不阻断流程。
24
27
 
25
28
  安全:
26
29
  - 不打印 secrets。
@@ -0,0 +1,30 @@
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 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,27 @@
1
+ ---
2
+ description: 完成前验证:finish / handoff 前检查双审查与 validate/evidence
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:ws-verify-before-complete -->
5
+ # ws verify before complete
6
+
7
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
8
+
9
+ 目标:在 `/ws-finish` 或 `/ws-handoff` 前检查双审查、validate stamp 与 evidence 是否齐全。
10
+
11
+ 步骤(建议):
12
+ 1) 检查以下最小 gate:
13
+ - `changes/<change-id>/review/spec-review.md`
14
+ - `changes/<change-id>/review/quality-review.md`
15
+ - `.agentdocs/tmp/aiws-validate/*.json`
16
+ 2) 若存在 `changes/<change-id>/evidence/`,检查 review / validate / collaboration summary 是否已收敛。
17
+ 3) 将结果落盘到:
18
+ - 默认:`changes/<change-id>/evidence/verify-before-complete.md`
19
+ - 回退:`.agentdocs/tmp/review/verify-before-complete.md`
20
+ 4) 输出:
21
+ - `证据(Evidence):`
22
+ - `结论(Result): pass|fail`
23
+ - `缺失项(Missing):`
24
+ - `下一步(Next):`
25
+ <!-- AIWS_MANAGED_END:opencode:ws-verify-before-complete -->
26
+
27
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,27 @@
1
+ ---
2
+ description: 私有:变更归档:归档已完成的 change 工件并生成 handoff.md
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-change-archive -->
5
+ # aiws change archive
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
10
+
11
+ 目标:
12
+ - 归档已完成 change 工件,并生成交接文档:`changes/archive/.../handoff.md`
13
+
14
+ 执行(在仓库根目录):
15
+ ```bash
16
+ change_id="<change-id>"
17
+ if [[ -x "./node_modules/.bin/aiws" ]]; then
18
+ ./node_modules/.bin/aiws change archive "${change_id}"
19
+ elif command -v aiws >/dev/null 2>&1; then
20
+ aiws change archive "${change_id}"
21
+ else
22
+ npx @aipper/aiws change archive "${change_id}"
23
+ fi
24
+ ```
25
+ <!-- AIWS_MANAGED_END:opencode:aiws-change-archive -->
26
+
27
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,27 @@
1
+ ---
2
+ description: 私有:变更收尾:安全合并 change 分支回目标分支
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-change-finish -->
5
+ # aiws change finish
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
10
+
11
+ 目标:
12
+ - 将 change/<change-id> 安全 fast-forward 合并回目标分支
13
+
14
+ 执行(在仓库根目录):
15
+ ```bash
16
+ change_id="<change-id>" # 可留空(若当前分支可推断)
17
+ if [[ -x "./node_modules/.bin/aiws" ]]; then
18
+ ./node_modules/.bin/aiws change finish "${change_id}"
19
+ elif command -v aiws >/dev/null 2>&1; then
20
+ aiws change finish "${change_id}"
21
+ else
22
+ npx @aipper/aiws change finish "${change_id}"
23
+ fi
24
+ ```
25
+ <!-- AIWS_MANAGED_END:opencode:aiws-change-finish -->
26
+
27
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,26 @@
1
+ ---
2
+ description: 私有:变更列表:列出当前仓库 change 工件
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-change-list -->
5
+ # aiws change list
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
10
+
11
+ 目标:
12
+ - 列出当前仓库 change 工件
13
+
14
+ 执行(在仓库根目录):
15
+ ```bash
16
+ if [[ -x "./node_modules/.bin/aiws" ]]; then
17
+ ./node_modules/.bin/aiws change list
18
+ elif command -v aiws >/dev/null 2>&1; then
19
+ aiws change list
20
+ else
21
+ npx @aipper/aiws change list
22
+ fi
23
+ ```
24
+ <!-- AIWS_MANAGED_END:opencode:aiws-change-list -->
25
+
26
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,27 @@
1
+ ---
2
+ description: 私有:变更新建:创建 changes/<change-id> 工件
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-change-new -->
5
+ # aiws change new
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
10
+
11
+ 目标:
12
+ - 创建 changes/<change-id> 工件目录与基础文件
13
+
14
+ 执行(在仓库根目录):
15
+ ```bash
16
+ change_id="<change-id>"
17
+ if [[ -x "./node_modules/.bin/aiws" ]]; then
18
+ ./node_modules/.bin/aiws change new "${change_id}"
19
+ elif command -v aiws >/dev/null 2>&1; then
20
+ aiws change new "${change_id}"
21
+ else
22
+ npx @aipper/aiws change new "${change_id}"
23
+ fi
24
+ ```
25
+ <!-- AIWS_MANAGED_END:opencode:aiws-change-new -->
26
+
27
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,27 @@
1
+ ---
2
+ description: 私有:变更下一步:输出当前 change 的建议动作
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-change-next -->
5
+ # aiws change next
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
10
+
11
+ 目标:
12
+ - 输出 change 下一步建议动作
13
+
14
+ 执行(在仓库根目录):
15
+ ```bash
16
+ change_id="<change-id>" # 可留空(若当前分支可推断)
17
+ if [[ -x "./node_modules/.bin/aiws" ]]; then
18
+ ./node_modules/.bin/aiws change next "${change_id}"
19
+ elif command -v aiws >/dev/null 2>&1; then
20
+ aiws change next "${change_id}"
21
+ else
22
+ npx @aipper/aiws change next "${change_id}"
23
+ fi
24
+ ```
25
+ <!-- AIWS_MANAGED_END:opencode:aiws-change-next -->
26
+
27
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,27 @@
1
+ ---
2
+ description: 私有:变更开始:切到 change/<change-id> 并初始化工件
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-change-start -->
5
+ # aiws change start
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
10
+
11
+ 目标:
12
+ - 切到 change/<change-id> 并初始化变更工件
13
+
14
+ 执行(在仓库根目录):
15
+ ```bash
16
+ change_id="<change-id>"
17
+ if [[ -x "./node_modules/.bin/aiws" ]]; then
18
+ ./node_modules/.bin/aiws change start "${change_id}"
19
+ elif command -v aiws >/dev/null 2>&1; then
20
+ aiws change start "${change_id}"
21
+ else
22
+ npx @aipper/aiws change start "${change_id}"
23
+ fi
24
+ ```
25
+ <!-- AIWS_MANAGED_END:opencode:aiws-change-start -->
26
+
27
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,27 @@
1
+ ---
2
+ description: 私有:变更状态:查看 change 状态与阻断项
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-change-status -->
5
+ # aiws change status
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
10
+
11
+ 目标:
12
+ - 查看 change 当前状态与阻断项
13
+
14
+ 执行(在仓库根目录):
15
+ ```bash
16
+ change_id="<change-id>" # 可留空(若当前分支可推断)
17
+ if [[ -x "./node_modules/.bin/aiws" ]]; then
18
+ ./node_modules/.bin/aiws change status "${change_id}"
19
+ elif command -v aiws >/dev/null 2>&1; then
20
+ aiws change status "${change_id}"
21
+ else
22
+ npx @aipper/aiws change status "${change_id}"
23
+ fi
24
+ ```
25
+ <!-- AIWS_MANAGED_END:opencode:aiws-change-status -->
26
+
27
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,27 @@
1
+ ---
2
+ description: 私有:变更同步:同步 change 与真值基线
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-change-sync -->
5
+ # aiws change sync
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
10
+
11
+ 目标:
12
+ - 同步当前 change 与真值文件基线
13
+
14
+ 执行(在仓库根目录):
15
+ ```bash
16
+ change_id="<change-id>"
17
+ if [[ -x "./node_modules/.bin/aiws" ]]; then
18
+ ./node_modules/.bin/aiws change sync "${change_id}"
19
+ elif command -v aiws >/dev/null 2>&1; then
20
+ aiws change sync "${change_id}"
21
+ else
22
+ npx @aipper/aiws change sync "${change_id}"
23
+ fi
24
+ ```
25
+ <!-- AIWS_MANAGED_END:opencode:aiws-change-sync -->
26
+
27
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,26 @@
1
+ ---
2
+ description: 私有:模板初始化:初始化 changes/templates 覆盖模板
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-change-templates-init -->
5
+ # aiws change templates init
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
10
+
11
+ 目标:
12
+ - 初始化 changes/templates 覆盖模板
13
+
14
+ 执行(在仓库根目录):
15
+ ```bash
16
+ if [[ -x "./node_modules/.bin/aiws" ]]; then
17
+ ./node_modules/.bin/aiws change templates init
18
+ elif command -v aiws >/dev/null 2>&1; then
19
+ aiws change templates init
20
+ else
21
+ npx @aipper/aiws change templates init
22
+ fi
23
+ ```
24
+ <!-- AIWS_MANAGED_END:opencode:aiws-change-templates-init -->
25
+
26
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,26 @@
1
+ ---
2
+ description: 私有:模板来源:查看 change templates 来源
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-change-templates-which -->
5
+ # aiws change templates which
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
10
+
11
+ 目标:
12
+ - 查看 change 模板来源
13
+
14
+ 执行(在仓库根目录):
15
+ ```bash
16
+ if [[ -x "./node_modules/.bin/aiws" ]]; then
17
+ ./node_modules/.bin/aiws change templates which
18
+ elif command -v aiws >/dev/null 2>&1; then
19
+ aiws change templates which
20
+ else
21
+ npx @aipper/aiws change templates which
22
+ fi
23
+ ```
24
+ <!-- AIWS_MANAGED_END:opencode:aiws-change-templates-which -->
25
+
26
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,27 @@
1
+ ---
2
+ description: 私有:变更校验:按 strict 校验变更工件与绑定
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-change-validate -->
5
+ # aiws change validate
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
10
+
11
+ 目标:
12
+ - 按严格模式校验变更工件与绑定关系
13
+
14
+ 执行(在仓库根目录):
15
+ ```bash
16
+ change_id="<change-id>"
17
+ if [[ -x "./node_modules/.bin/aiws" ]]; then
18
+ ./node_modules/.bin/aiws change validate "${change_id}"
19
+ elif command -v aiws >/dev/null 2>&1; then
20
+ aiws change validate "${change_id}"
21
+ else
22
+ npx @aipper/aiws change validate "${change_id}"
23
+ fi
24
+ ```
25
+ <!-- AIWS_MANAGED_END:opencode:aiws-change-validate -->
26
+
27
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,26 @@
1
+ ---
2
+ description: 私有:Hooks 启用:启用 git hooks 门禁
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-hooks-install -->
5
+ # aiws hooks install
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
10
+
11
+ 目标:
12
+ - 启用 git hooks 门禁(core.hooksPath=.githooks)
13
+
14
+ 执行(在仓库根目录):
15
+ ```bash
16
+ if [[ -x "./node_modules/.bin/aiws" ]]; then
17
+ ./node_modules/.bin/aiws hooks install .
18
+ elif command -v aiws >/dev/null 2>&1; then
19
+ aiws hooks install .
20
+ else
21
+ npx @aipper/aiws hooks install .
22
+ fi
23
+ ```
24
+ <!-- AIWS_MANAGED_END:opencode:aiws-hooks-install -->
25
+
26
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,26 @@
1
+ ---
2
+ description: 私有:Hooks 状态:查看当前仓库 hooks 门禁状态
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-hooks-status -->
5
+ # aiws hooks status
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
10
+
11
+ 目标:
12
+ - 查看当前仓库 hooks 门禁状态(只读)
13
+
14
+ 执行(在仓库根目录):
15
+ ```bash
16
+ if [[ -x "./node_modules/.bin/aiws" ]]; then
17
+ ./node_modules/.bin/aiws hooks status .
18
+ elif command -v aiws >/dev/null 2>&1; then
19
+ aiws hooks status .
20
+ else
21
+ npx @aipper/aiws hooks status .
22
+ fi
23
+ ```
24
+ <!-- AIWS_MANAGED_END:opencode:aiws-hooks-status -->
25
+
26
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,23 @@
1
+ ---
2
+ description: 私有:初始化:落盘 AIWS 真值与门禁文件
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-init -->
5
+ # aiws init
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 目标:
10
+ - 生成/补齐真值文件与门禁文件(以 `AI_PROJECT.md` / `REQUIREMENTS.md` / `AI_WORKSPACE.md` 为准)
11
+ - 写入/更新 `.gitignore` 的 aiws 托管块
12
+ - 生成/更新 `.aiws/manifest.json`(用于漂移检测)
13
+
14
+ 建议执行:
15
+ 1) `npx @aipper/aiws init`
16
+ 2) `npx @aipper/aiws validate`
17
+
18
+ 约束:
19
+ - 不写入任何 secrets
20
+ - 只允许更新托管块(`AIWS_MANAGED_BEGIN/END`)或 spec 指定的 `replace_file` 文件
21
+ <!-- AIWS_MANAGED_END:opencode:aiws-init -->
22
+
23
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,16 @@
1
+ ---
2
+ description: 私有:回滚:从 .aiws/backups 恢复快照
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-rollback -->
5
+ # aiws rollback
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 目标:
10
+ - 从 `.aiws/backups/` 恢复到某次备份快照
11
+
12
+ 建议执行:
13
+ - `npx @aipper/aiws rollback latest`
14
+ <!-- AIWS_MANAGED_END:opencode:aiws-rollback -->
15
+
16
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,22 @@
1
+ ---
2
+ description: 私有:更新:刷新模板与 tool-native 文件(先备份)
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-update -->
5
+ # aiws update
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 目标:
10
+ - 基于当前 `@aipper/aiws-spec` 刷新模板与 tool-native 文件
11
+ - 更新前备份到 `.aiws/backups/<timestamp>/`
12
+
13
+ 建议执行:
14
+ 1) `npx @aipper/aiws update`
15
+ 2) `npx @aipper/aiws validate`
16
+
17
+ 约束:
18
+ - 不写入任何 secrets
19
+ - 只更新托管块或 spec 指定的 `replace_file` 文件
20
+ <!-- AIWS_MANAGED_END:opencode:aiws-update -->
21
+
22
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,17 @@
1
+ ---
2
+ description: 私有:门禁:校验 required/托管块/漂移(可落盘 stamp)
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:aiws-validate -->
5
+ # aiws validate
6
+
7
+ (私有原子入口;日常优先用 ws-* 链路。)
8
+
9
+ 目标:
10
+ - 作为 CI/本地门禁:校验 required 文件结构、托管块、`.aiws/manifest.json` 漂移
11
+ - 强门禁:缺 `python3`/缺 required 脚本也应失败
12
+
13
+ 建议执行:
14
+ - `npx @aipper/aiws validate`
15
+ <!-- AIWS_MANAGED_END:opencode:aiws-validate -->
16
+
17
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,29 @@
1
+ ---
2
+ description: 默认 workflow router:先判定阶段,再进入具体 ws-* 入口
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:using-aiws -->
5
+ # using aiws
6
+
7
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
8
+
9
+ 目标:
10
+ - 把当前任务先路由到正确的 AIWS workflow,而不是直接跳进实现。
11
+
12
+ 执行建议:
13
+ 1) 先读取 `AI_PROJECT.md` / `REQUIREMENTS.md` / `AI_WORKSPACE.md`。
14
+ - 若检测到 `.opencode/oh-my-opencode.json`:输出 `OpenCode mode: oMo-enabled`,并注明后续会优先借用 `planner-sisyphus` / `explore` / `librarian` / `oracle`
15
+ - 若未检测到:输出 `OpenCode mode: standard-opencode`
16
+ 2) 若缺失任一真值文件:先 `/ws-preflight`,必要时运行 `aiws init .`,不要继续实现。
17
+ 3) 若任务意图、归因或验证入口不明确:先提 1-3 个关键澄清问题并停止。
18
+ 4) 路由规则:
19
+ - 需求/验收/合同变更:`/ws-req-review`
20
+ - 中大型实现或需要 change/worktree:`/ws-plan`
21
+ - 小步明确实现:`/ws-dev`
22
+ - 评审/审计:`/ws-review`
23
+ - finish / merge / push / cleanup:`/ws-finish`
24
+ - handoff / archive summary:`/ws-handoff`
25
+ 5) 输出 `OpenCode mode:` / `Task intent:` / `Binding:` / `Route:` / `Why:` / `Next:`。
26
+ 6) 除非用户只要路由判断,否则给出 route 后继续遵循对应入口的契约。
27
+ <!-- AIWS_MANAGED_END:opencode:using-aiws -->
28
+
29
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,30 @@
1
+ ---
2
+ description: 分析:实现前技术分析并落盘证据
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:ws-analyze -->
5
+ # ws analyze
6
+
7
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
8
+
9
+ 目标:在开始实现/修复前做一次技术分析,产出可执行的最小行动清单,并把证据落盘到 `.agentdocs/tmp/analyze/`。
10
+
11
+ 输入:
12
+ - 主题/需求:`$ARGUMENTS`(若为空,先问用户一句“本次分析主题是什么?”)
13
+
14
+ 步骤(建议):
15
+ 1) 先运行 `/ws-preflight`。
16
+ 2) 基于真值文件与当前代码现状,输出:
17
+ - 目标 / 非目标
18
+ - 现状证据(文件路径/接口路径)
19
+ - 推荐方案(1 个)+ 备选(可选)
20
+ - 风险与回滚(3–8 条)
21
+ - 最小验证命令(可复现)
22
+ 3) 将分析落盘到:`.agentdocs/tmp/analyze/opencode-analysis.md`(目录不存在则创建)。
23
+ 4) 回复中必须包含:`Evidence:` 证据文件路径。
24
+
25
+ 安全:
26
+ - 不打印 secrets(尤其 `secrets/test-accounts.json`)。
27
+ - 不执行破坏性命令。
28
+ <!-- AIWS_MANAGED_END:opencode:ws-analyze -->
29
+
30
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。
@@ -0,0 +1,35 @@
1
+ ---
2
+ description: 缺陷修复:禅道 MCP 拉单、图片证据落盘并汇总 fix_bus_issues.csv
3
+ ---
4
+ <!-- AIWS_MANAGED_BEGIN:opencode:ws-bugfix -->
5
+ # ws bugfix
6
+
7
+ 用中文输出(命令/路径/代码标识符保持原样不翻译)。
8
+
9
+ 目标:
10
+ - 通过禅道 MCP 拉单、图片证据落盘并汇总 `issues/fix_bus_issues.csv`。
11
+
12
+ 建议流程:
13
+ 1) 先运行 `/ws-preflight`。
14
+ 2) 若当前不在 `change/<change-id>` 分支 / worktree,先建立 change 上下文:
15
+ - 工作区先保持干净
16
+ - 仓库已有提交:优先 `aiws change start <change-id> --hooks --worktree`
17
+ - superproject + submodule:优先 `aiws change start <change-id> --hooks --worktree --submodules`
18
+ - 仓库尚无提交 / 不满足 worktree 前置条件:回退 `aiws change start <change-id> --hooks --no-switch`
19
+ 3) 若上一步创建了 worktree:后续 bug 证据、CSV 更新、`/ws-dev` 修复都必须在该 worktree 中继续。
20
+ 4) 通过已配置 zentao MCP 拉取 bug 字段与附件列表。
21
+ 5) 落盘证据到当前 active change 上下文的 `changes/<change-id>/bug/`:
22
+ - `zentao-bug-<bug-id>.json`
23
+ - `zentao-bug-<bug-id>.md`
24
+ - `images/<bug-id>/...`
25
+ 6) upsert 当前 active change 上下文中的 `issues/fix_bus_issues.csv`(主键 `Bug_ID`)。
26
+ 7) 进入 `/ws-dev` 修复并回填 `Fix_Status/Verify_Command/Updated_At`。
27
+ 8) 质量门:`aiws change validate <change-id> --strict` + `aiws validate . --stamp`。
28
+
29
+ 强制约束:
30
+ - 不自动 commit / push。
31
+ - 不写入 secrets(token、cookie、内网地址)。
32
+ - 无法复现时先输出阻塞信息并落盘,不直接改代码。
33
+ <!-- AIWS_MANAGED_END:opencode:ws-bugfix -->
34
+
35
+ 可在下方追加本项目对 OpenCode 的额外说明(托管块外内容会被保留)。