@chenmk/superflow 0.4.0 → 0.5.1

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 (242) hide show
  1. package/INSTALL.en.md +58 -12
  2. package/INSTALL.md +62 -33
  3. package/README.md +181 -54
  4. package/README.zh-CN.md +158 -51
  5. package/assets/brand/managed-review-loop.png +0 -0
  6. package/assets/manifest.json +10 -5
  7. package/assets/scripts/superflow-coding-ready.mjs +135 -0
  8. package/assets/scripts/superflow-dependency-update-hook.sh +81 -8
  9. package/assets/scripts/superflow-document-audit.mjs +240 -0
  10. package/assets/scripts/superflow-environment-preflight.mjs +398 -0
  11. package/assets/scripts/superflow-hook-guard.sh +40 -1
  12. package/assets/scripts/superflow-managed-command-guard.py +309 -0
  13. package/assets/scripts/superflow-managed-executor-preflight.mjs +421 -0
  14. package/assets/scripts/superflow-managed-owner-verification.sh +117 -0
  15. package/assets/scripts/superflow-managed-work-check.mjs +287 -26
  16. package/assets/scripts/superflow-managed-work-guard.sh +6 -92
  17. package/assets/skills/superflow-clarify/SKILL.md +14 -0
  18. package/assets/skills/superflow-design/SKILL.md +38 -13
  19. package/assets/skills/superflow-docs/SKILL.md +93 -2
  20. package/assets/skills/superflow-pipeline/SKILL.md +167 -10
  21. package/assets/skills/superflow-pipeline/references/batch-prompt-template.md +17 -9
  22. package/assets/skills/superflow-pipeline/references/document-readiness.md +157 -0
  23. package/assets/skills/superflow-pipeline/references/document-templates.md +9 -5
  24. package/assets/skills/superflow-pipeline/references/feature-gated-workflow.md +14 -0
  25. package/assets/skills/superflow-pipeline/references/implementation-prompt-template.md +20 -11
  26. package/assets/skills/superflow-pipeline/references/managed-work.md +123 -15
  27. package/assets/skills/superflow-pipeline/references/orchestration.md +2 -2
  28. package/assets/skills/superflow-pipeline/references/p0-baseline-template.md +3 -2
  29. package/assets/skills/superflow-pipeline/references/quality-gate.md +7 -5
  30. package/assets/skills/superflow-pipeline/references/reviewer-checklist.md +7 -0
  31. package/assets/skills/superflow-pipeline/scripts/superflow-guard.sh +205 -9
  32. package/assets/skills/superflow-pipeline/scripts/superflow-handoff.sh +7 -4
  33. package/assets/skills/superflow-requirement-review/SKILL.md +178 -0
  34. package/assets/skills/superflow-requirement-review/agents/openai.yaml +4 -0
  35. package/assets/skills-en/superflow-clarify/SKILL.md +17 -0
  36. package/assets/skills-en/superflow-design/SKILL.md +31 -12
  37. package/assets/skills-en/superflow-docs/SKILL.md +99 -0
  38. package/assets/skills-en/superflow-pipeline/SKILL.md +163 -9
  39. package/assets/skills-en/superflow-pipeline/references/batch-prompt-template.md +4 -0
  40. package/assets/skills-en/superflow-pipeline/references/document-readiness.md +125 -0
  41. package/assets/skills-en/superflow-pipeline/references/document-templates.md +10 -0
  42. package/assets/skills-en/superflow-pipeline/references/feature-gated-workflow.md +7 -0
  43. package/assets/skills-en/superflow-pipeline/references/implementation-prompt-template.md +7 -0
  44. package/assets/skills-en/superflow-pipeline/references/managed-work.md +160 -10
  45. package/assets/skills-en/superflow-pipeline/references/quality-gate.md +12 -0
  46. package/assets/skills-en/superflow-pipeline/references/reviewer-checklist.md +7 -0
  47. package/assets/skills-en/superflow-pipeline/scripts/superflow-guard.sh +205 -9
  48. package/assets/skills-en/superflow-pipeline/scripts/superflow-handoff.sh +7 -4
  49. package/assets/skills-en/superflow-requirement-review/SKILL.md +99 -0
  50. package/assets/skills-en/superflow-requirement-review/agents/openai.yaml +4 -0
  51. package/dist/app/cli.js +64 -9
  52. package/dist/app/cli.js.map +1 -1
  53. package/dist/app/commands/change-guard.js +19 -2
  54. package/dist/app/commands/change-guard.js.map +1 -1
  55. package/dist/app/commands/check.js +107 -45
  56. package/dist/app/commands/check.js.map +1 -1
  57. package/dist/app/commands/docs.js +7 -3
  58. package/dist/app/commands/docs.js.map +1 -1
  59. package/dist/app/commands/doctor.js +174 -198
  60. package/dist/app/commands/doctor.js.map +1 -1
  61. package/dist/app/commands/eval.js +64 -0
  62. package/dist/app/commands/eval.js.map +1 -0
  63. package/dist/app/commands/implement.js +7 -3
  64. package/dist/app/commands/implement.js.map +1 -1
  65. package/dist/app/commands/init.js +12 -24
  66. package/dist/app/commands/init.js.map +1 -1
  67. package/dist/app/commands/mcp.js +167 -0
  68. package/dist/app/commands/mcp.js.map +1 -0
  69. package/dist/app/commands/pipeline.js +652 -18
  70. package/dist/app/commands/pipeline.js.map +1 -1
  71. package/dist/app/commands/requirement-review.js +6 -0
  72. package/dist/app/commands/requirement-review.js.map +1 -0
  73. package/dist/app/commands/status.js +66 -3
  74. package/dist/app/commands/status.js.map +1 -1
  75. package/dist/app/commands/uninstall.js +3 -3
  76. package/dist/app/commands/uninstall.js.map +1 -1
  77. package/dist/app/commands/update.js +83 -9
  78. package/dist/app/commands/update.js.map +1 -1
  79. package/dist/domains/agent.js +3 -11
  80. package/dist/domains/agent.js.map +1 -1
  81. package/dist/domains/config/cli-help.js +54 -12
  82. package/dist/domains/config/cli-help.js.map +1 -1
  83. package/dist/domains/config/i18n.js +6 -8
  84. package/dist/domains/config/i18n.js.map +1 -1
  85. package/dist/domains/config/manifest.js +0 -3
  86. package/dist/domains/config/manifest.js.map +1 -1
  87. package/dist/domains/deps.js +68 -7
  88. package/dist/domains/deps.js.map +1 -1
  89. package/dist/domains/managed-work/completion-policy.js +174 -0
  90. package/dist/domains/managed-work/completion-policy.js.map +1 -0
  91. package/dist/domains/managed-work/context-manifest.js +208 -0
  92. package/dist/domains/managed-work/context-manifest.js.map +1 -0
  93. package/dist/domains/managed-work/contract.js +135 -4
  94. package/dist/domains/managed-work/contract.js.map +1 -1
  95. package/dist/domains/managed-work/control-signals.js +34 -0
  96. package/dist/domains/managed-work/control-signals.js.map +1 -0
  97. package/dist/domains/managed-work/control.js +628 -0
  98. package/dist/domains/managed-work/control.js.map +1 -0
  99. package/dist/domains/managed-work/evaluation.js +497 -0
  100. package/dist/domains/managed-work/evaluation.js.map +1 -0
  101. package/dist/domains/managed-work/evidence-path.js +14 -0
  102. package/dist/domains/managed-work/evidence-path.js.map +1 -0
  103. package/dist/domains/managed-work/execution-contract.js +167 -0
  104. package/dist/domains/managed-work/execution-contract.js.map +1 -0
  105. package/dist/domains/managed-work/executor-policy.js +65 -0
  106. package/dist/domains/managed-work/executor-policy.js.map +1 -0
  107. package/dist/domains/managed-work/failure.js +65 -0
  108. package/dist/domains/managed-work/failure.js.map +1 -0
  109. package/dist/domains/managed-work/host-review.js +77 -0
  110. package/dist/domains/managed-work/host-review.js.map +1 -0
  111. package/dist/domains/managed-work/human-messages.js +31 -0
  112. package/dist/domains/managed-work/human-messages.js.map +1 -0
  113. package/dist/domains/managed-work/input.js +29 -3
  114. package/dist/domains/managed-work/input.js.map +1 -1
  115. package/dist/domains/managed-work/journal.js +77 -3
  116. package/dist/domains/managed-work/journal.js.map +1 -1
  117. package/dist/domains/managed-work/lock.js +67 -1
  118. package/dist/domains/managed-work/lock.js.map +1 -1
  119. package/dist/domains/managed-work/notifications.js +0 -15
  120. package/dist/domains/managed-work/notifications.js.map +1 -1
  121. package/dist/domains/managed-work/pair-admission.js +108 -0
  122. package/dist/domains/managed-work/pair-admission.js.map +1 -0
  123. package/dist/domains/managed-work/prompts.js +257 -22
  124. package/dist/domains/managed-work/prompts.js.map +1 -1
  125. package/dist/domains/managed-work/redaction.js +90 -0
  126. package/dist/domains/managed-work/redaction.js.map +1 -0
  127. package/dist/domains/managed-work/review-convergence.js +41 -0
  128. package/dist/domains/managed-work/review-convergence.js.map +1 -0
  129. package/dist/domains/managed-work/review-facts.js +181 -0
  130. package/dist/domains/managed-work/review-facts.js.map +1 -0
  131. package/dist/domains/managed-work/rule-selection.js +84 -0
  132. package/dist/domains/managed-work/rule-selection.js.map +1 -0
  133. package/dist/domains/managed-work/runner.js +1967 -175
  134. package/dist/domains/managed-work/runner.js.map +1 -1
  135. package/dist/domains/managed-work/schemas.js +72 -2
  136. package/dist/domains/managed-work/schemas.js.map +1 -1
  137. package/dist/domains/managed-work/service.js +82 -13
  138. package/dist/domains/managed-work/service.js.map +1 -1
  139. package/dist/domains/managed-work/state.js +195 -5
  140. package/dist/domains/managed-work/state.js.map +1 -1
  141. package/dist/domains/managed-work/storage.js +66 -24
  142. package/dist/domains/managed-work/storage.js.map +1 -1
  143. package/dist/domains/managed-work/types.js +12 -9
  144. package/dist/domains/managed-work/types.js.map +1 -1
  145. package/dist/domains/managed-work/verification-categories.js +39 -0
  146. package/dist/domains/managed-work/verification-categories.js.map +1 -0
  147. package/dist/domains/managed-work/verification-policy.js +116 -0
  148. package/dist/domains/managed-work/verification-policy.js.map +1 -0
  149. package/dist/domains/managed-work/wait.js +21 -3
  150. package/dist/domains/managed-work/wait.js.map +1 -1
  151. package/dist/domains/managed-work/workspace-binding.js +133 -0
  152. package/dist/domains/managed-work/workspace-binding.js.map +1 -0
  153. package/dist/domains/sdd-readiness.js +44 -0
  154. package/dist/domains/sdd-readiness.js.map +1 -0
  155. package/dist/domains/skill/deploy.js +0 -6
  156. package/dist/domains/skill/deploy.js.map +1 -1
  157. package/dist/domains/skill/scripts.js +0 -8
  158. package/dist/domains/skill/scripts.js.map +1 -1
  159. package/dist/domains/state.js +1 -2
  160. package/dist/domains/state.js.map +1 -1
  161. package/dist/mcp/runtime-identity.js +21 -0
  162. package/dist/mcp/runtime-identity.js.map +1 -0
  163. package/dist/mcp/server.js +369 -0
  164. package/dist/mcp/server.js.map +1 -0
  165. package/dist/platform/agent-process.js +499 -38
  166. package/dist/platform/agent-process.js.map +1 -1
  167. package/dist/platform/executable.js +28 -0
  168. package/dist/platform/executable.js.map +1 -0
  169. package/dist/platform/paths.js +1 -17
  170. package/dist/platform/paths.js.map +1 -1
  171. package/dist/platform/process-tree.js +44 -0
  172. package/dist/platform/process-tree.js.map +1 -0
  173. package/dist/platform/process.js +1 -1
  174. package/dist/platform/process.js.map +1 -1
  175. package/package.json +17 -7
  176. package/scripts/check-design-principles.mjs +107 -0
  177. package/scripts/check-managed-work-design.mjs +507 -0
  178. package/scripts/clean-dist.js +9 -0
  179. package/scripts/ensure-bin-modes.js +11 -0
  180. package/scripts/preinstall.js +57 -0
  181. package/dist/cli/index.js +0 -193
  182. package/dist/cli/index.js.map +0 -1
  183. package/dist/commands/archive.js +0 -6
  184. package/dist/commands/archive.js.map +0 -1
  185. package/dist/commands/clarify.js +0 -6
  186. package/dist/commands/clarify.js.map +0 -1
  187. package/dist/commands/design.js +0 -28
  188. package/dist/commands/design.js.map +0 -1
  189. package/dist/commands/docs.js +0 -6
  190. package/dist/commands/docs.js.map +0 -1
  191. package/dist/commands/doctor.js +0 -494
  192. package/dist/commands/doctor.js.map +0 -1
  193. package/dist/commands/implement.js +0 -6
  194. package/dist/commands/implement.js.map +0 -1
  195. package/dist/commands/init.js +0 -520
  196. package/dist/commands/init.js.map +0 -1
  197. package/dist/commands/pipeline.js +0 -6
  198. package/dist/commands/pipeline.js.map +0 -1
  199. package/dist/commands/scan.js +0 -63
  200. package/dist/commands/scan.js.map +0 -1
  201. package/dist/commands/status.js +0 -173
  202. package/dist/commands/status.js.map +0 -1
  203. package/dist/commands/uninstall.js +0 -214
  204. package/dist/commands/uninstall.js.map +0 -1
  205. package/dist/commands/update.js +0 -193
  206. package/dist/commands/update.js.map +0 -1
  207. package/dist/commands/verify.js +0 -6
  208. package/dist/commands/verify.js.map +0 -1
  209. package/dist/core/assets.js +0 -27
  210. package/dist/core/assets.js.map +0 -1
  211. package/dist/core/cli-help.js +0 -98
  212. package/dist/core/cli-help.js.map +0 -1
  213. package/dist/core/context.js +0 -123
  214. package/dist/core/context.js.map +0 -1
  215. package/dist/core/dependencies.js +0 -146
  216. package/dist/core/dependencies.js.map +0 -1
  217. package/dist/core/detect.js +0 -64
  218. package/dist/core/detect.js.map +0 -1
  219. package/dist/core/i18n.js +0 -105
  220. package/dist/core/i18n.js.map +0 -1
  221. package/dist/core/integrity.js +0 -46
  222. package/dist/core/integrity.js.map +0 -1
  223. package/dist/core/manifest.js +0 -21
  224. package/dist/core/manifest.js.map +0 -1
  225. package/dist/core/prompts.js +0 -20
  226. package/dist/core/prompts.js.map +0 -1
  227. package/dist/core/registry.js +0 -134
  228. package/dist/core/registry.js.map +0 -1
  229. package/dist/core/rules.js +0 -17
  230. package/dist/core/rules.js.map +0 -1
  231. package/dist/core/scripts.js +0 -48
  232. package/dist/core/scripts.js.map +0 -1
  233. package/dist/core/skill-check.js +0 -32
  234. package/dist/core/skill-check.js.map +0 -1
  235. package/dist/core/skills.js +0 -62
  236. package/dist/core/skills.js.map +0 -1
  237. package/dist/core/state.js +0 -54
  238. package/dist/core/state.js.map +0 -1
  239. package/dist/utils/path.js +0 -11
  240. package/dist/utils/path.js.map +0 -1
  241. package/dist/utils/shell.js +0 -29
  242. package/dist/utils/shell.js.map +0 -1
package/INSTALL.en.md CHANGED
@@ -3,8 +3,7 @@
3
3
  [中文教程](./INSTALL.md)
4
4
 
5
5
  SuperBridge Flow installs OpenSpec, Superpowers, skills, hooks or command
6
- aliases, scripts, rules, and handoff state for Claude Code, Codex, and
7
- OpenCode.
6
+ aliases, scripts, rules, and handoff state for Claude Code and Codex.
8
7
 
9
8
  ## 1. Install
10
9
 
@@ -12,6 +11,15 @@ OpenCode.
12
11
  npm install -g @chenmk/superflow
13
12
  ```
14
13
 
14
+ > **Node.js requirement:** Node.js 20 or later is required. If `node -v` is older,
15
+ > installation stops before command aliases are created. With nvm, run
16
+ > `nvm install 22 && nvm use 22 && nvm alias default 22`, open a new terminal, and reinstall.
17
+
18
+ The repository `install.sh` and `install.ps1` scripts detect the Codex/Claude
19
+ Hosts actually installed and register their managed MCP entries together with
20
+ CLI, Skills, and Hooks. Single and non-default Host combinations are not forced
21
+ through `both`; only restart the detected Hosts after installation.
22
+
15
23
  ## 2. Initialize A Project
16
24
 
17
25
  ```bash
@@ -43,9 +51,50 @@ SUPERFLOW_LANG=en superflow init
43
51
  7. Register hooks and rules.
44
52
  8. Scaffold `docs/sdd-context/`.
45
53
 
46
- OpenSpec and Superpowers are required for the full workflow. OpenCode receives
47
- skills and command aliases; native hook registration is not enabled for
48
- OpenCode yet. understand-anything is best-effort.
54
+ ### 2.1 Register The Managed MCP (Recommended)
55
+
56
+ To start managed delivery directly from the current Codex or Claude host while
57
+ Superflow launches only the peer executor in the background, register the stdio
58
+ MCP server:
59
+
60
+ ```bash
61
+ superflow mcp install --agent both
62
+ superflow mcp status --agent both
63
+ ```
64
+
65
+ Restart Codex and Claude after registration. The current host remains responsible
66
+ for user interaction and independent review. MCP-created tasks always use
67
+ `external_host`, so Superflow does not launch another supervisor CLI of the same
68
+ type. This avoids duplicated context, nested-session authentication retries, and
69
+ duplicate supervisor token usage.
70
+
71
+ Use `superflow_managed_wait` for a local wait of up to twelve hours by default.
72
+ An active request exposes healthy progress through standard MCP progress
73
+ notifications. One checkpoint does not wake Host; two consecutive checkpoints
74
+ without an effective milestone return for attention, without repeating large
75
+ evidence payloads. When a task reaches `waiting_for_host_review`, the current host performs
76
+ one complete review and submits the structured result. Superflow then enters a
77
+ three-stage delivery state and never commits, pushes, deploys, or writes to production automatically.
78
+
79
+ To remove the registration:
80
+
81
+ ```bash
82
+ superflow mcp remove --agent both
83
+ ```
84
+
85
+ Superflow no longer provides a background supervisor CLI mode. Historical tasks
86
+ are migrated to direct host review on resume, and no entry point starts a second
87
+ supervisor Agent process.
88
+
89
+ Verify the registrations with:
90
+
91
+ ```bash
92
+ codex mcp get superflow
93
+ claude mcp get superflow
94
+ ```
95
+
96
+ OpenSpec and Superpowers are required for the full workflow. understand-anything
97
+ is best-effort.
49
98
 
50
99
  ## 3. Daily Workflow
51
100
 
@@ -61,12 +110,6 @@ In Claude Code:
61
110
  /superflow-pipeline
62
111
  ```
63
112
 
64
- In OpenCode:
65
-
66
- ```text
67
- /superflow-pipeline
68
- ```
69
-
70
113
  The workflow phases are:
71
114
 
72
115
  ```text
@@ -120,13 +163,16 @@ export SUPERFLOW_UPDATE_MIN_INTERVAL_SECONDS=21600
120
163
  ```
121
164
 
122
165
  Team environments should keep `check`. Personal machines may choose `apply`.
166
+ In `apply` mode, package upgrades are followed by the newly installed CLI, which
167
+ redeploys Skills, Hooks, rules, scripts, and managed MCP registrations. Partial
168
+ failure removes the throttle stamp and remains eligible for the next-session retry.
169
+ Restart the Agent after success to load the new MCP process.
123
170
 
124
171
  ## 6. Uninstall
125
172
 
126
173
  ```bash
127
174
  superflow uninstall --agent codex --force
128
175
  superflow uninstall --agent claude --force
129
- superflow uninstall --agent opencode --force
130
176
  ```
131
177
 
132
178
  This removes SuperBridge Flow managed assets only. It does not remove unrelated
package/INSTALL.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # SuperBridge Flow 安装、初始化与日常使用教程
2
2
 
3
- `@chenmk/superflow` 是面向 Claude Code、Codex 和 OpenCode 的 SDD 开发工作流 CLI。它把
3
+ `@chenmk/superflow` 是面向 Claude Code 和 Codex 的 SDD 开发工作流 CLI。它把
4
4
  OpenSpec、Superpowers、SuperBridge Flow 技能、状态机、handoff 上下文包、hook 脚本和
5
5
  质量门禁安装到你的 agent 环境里,让一个需求可以沿着固定阶段推进:
6
6
 
@@ -24,10 +24,13 @@ docs -> design -> implement -> verify -> archive
24
24
  | Node.js | 20+ | `node -v` |
25
25
  | npm | 9+ | `npm -v` |
26
26
  | Git | 已安装 | `git --version` |
27
- | Agent | Claude Code、Codex 或 OpenCode 至少一个 | `claude --version` / `codex --version` / `opencode --version` |
27
+ | Agent | Claude Code、Codex 至少一个 | `claude --version` / `codex --version` |
28
28
  | Shell | macOS/Linux 原生 shell;Windows 使用 Git Bash 或兼容 shell | `bash --version` |
29
29
  | Python | hook 中的 Python 脚本需要 | `python3 --version` |
30
30
 
31
+ > **Node 版本不足:** 安装会在创建命令前停止。若已安装 nvm,运行
32
+ > `nvm install 22 && nvm use 22 && nvm alias default 22`,重新打开终端后再安装。
33
+
31
34
  支持系统:
32
35
 
33
36
  - macOS 10.15+
@@ -68,6 +71,9 @@ macOS/Linux 也可以使用仓库里的脚本:
68
71
  bash install.sh
69
72
  ```
70
73
 
74
+ 源码安装脚本会自动检测本机已有的 Codex/Claude,完成 CLI、Skills/Hooks 和对应
75
+ 托管 MCP 注册;任意单侧或组合安装都不会被强行注册成 `both`。完成后只需重启检测到的 Agent。
76
+
71
77
  Windows PowerShell:
72
78
 
73
79
  ```powershell
@@ -83,7 +89,7 @@ cd your-project
83
89
  superflow init
84
90
  ```
85
91
 
86
- CLI 会弹出工具选择列表。你可以只选 Codex、只选 Claude Code、只选 OpenCode,
92
+ CLI 会弹出工具选择列表。你可以只选 Codex、只选 Claude Code,
87
93
  也可以选择多个工具。
88
94
  选择结果会替代手写 `--agent codex` / `--agent claude`。
89
95
 
@@ -94,13 +100,12 @@ CLI 会弹出工具选择列表。你可以只选 Codex、只选 Claude Code、
94
100
  3. 在当前项目目录执行 OpenSpec 原生初始化,并把你选择的工具下发给
95
101
  OpenSpec,例如 `openspec init <project> --tools claude,codex --profile custom`。
96
102
  4. 为 Claude Code / Codex 安装 Superpowers;这是 Superflow 的核心 HOW/TDD
97
- 依赖,安装失败会中断初始化。OpenCode 侧会部署 SuperBridge Flow skills
98
- 和 commands,不注册原生 hook。
103
+ 依赖,安装失败会中断初始化。
99
104
  5. 尝试安装 understand-anything,并复制 api-doc-changelog;失败只警告,
100
105
  不阻断初始化。
101
106
  6. 部署 SuperBridge Flow/OpenSpec skills。
102
107
  7. 部署 hook/command 脚本;Codex 写入 `hooks.json`,Claude Code 写入
103
- `settings.json`,OpenCode 写入 `.opencode/commands`。
108
+ `settings.json`。
104
109
  8. 部署 SuperBridge Flow 防漂移规则。
105
110
  9. 初始化 `docs/sdd-context/` 项目上下文模板,并提示
106
111
  understand-anything 扫描状态。
@@ -111,9 +116,8 @@ CLI 会弹出工具选择列表。你可以只选 Codex、只选 Claude Code、
111
116
  请选择要初始化的 agent 工具(可多选):
112
117
  1) Claude Code
113
118
  2) Codex
114
- 3) OpenCode
115
- a) 安装 Claude Code + Codex(默认);输入 all 会包含 OpenCode
116
- 输入序号,例如 1,2 / 2,3 / all / a:
119
+ a) 安装 Claude Code + Codex(默认)
120
+ 输入序号,例如 1,2 / all / a:
117
121
  ```
118
122
 
119
123
  选择结果会同时影响:
@@ -128,10 +132,8 @@ CLI 会弹出工具选择列表。你可以只选 Codex、只选 Claude Code、
128
132
 
129
133
  | 命令 | 说明 |
130
134
  |------|------|
131
- | `superflow init` | 交互式初始化,可多选 Codex / Claude Code / OpenCode |
135
+ | `superflow init` | 交互式初始化,可多选 Codex / Claude Code |
132
136
  | `superflow init --yes` | 非交互执行,默认初始化 Claude Code + Codex |
133
- | `superflow init --agent opencode` | 只初始化 OpenCode |
134
- | `superflow init --agent all` | 初始化 Claude Code + Codex + OpenCode |
135
137
  | `superflow init --scope global` | 安装到用户主目录,默认值 |
136
138
  | `superflow init --scope project` | 安装到当前项目目录 |
137
139
  | `superflow init --no-hooks` | 只安装技能和脚本,不注册 hook |
@@ -165,14 +167,42 @@ superflow scan --language en --force
165
167
  `scan` 默认保留已经编辑过的文件;加 `--force` 才会覆盖
166
168
  `docs/sdd-context/` 下的 4 个模板文件。
167
169
 
168
- 初始化后建议重启 Claude Code、Codex 或 OpenCode,让 agent 重新加载技能列表。
170
+ 初始化后建议重启 Claude Code 或 Codex,让 agent 重新加载技能列表。
171
+
172
+ ### 3.1 注册托管 MCP(推荐)
173
+
174
+ 如果希望直接在当前 Codex 或 Claude 主 Agent 会话中发起托管,并由 Superflow
175
+ 在后台只启动对端研发 Agent,请注册 stdio MCP:
176
+
177
+ ```bash
178
+ superflow mcp install --agent both
179
+ superflow mcp status --agent both
180
+ ```
181
+
182
+ 注册完成后重启 Codex/Claude。当前主 Agent 继续负责与用户沟通和独立评审,MCP
183
+ 创建的任务固定使用 `external_host`,不会再额外启动一个同类型 Supervisor CLI。
184
+ 因此可以避免重复传递完整上下文、嵌套会话 401 重试,以及监督侧 Token 重复消耗。
185
+
186
+ 托管期间应使用 `superflow_managed_wait` 默认最长等待 12 小时;活动请求通过标准 MCP
187
+ progress notification 展示健康进度,单个监督点不会唤醒,连续两个无有效里程碑才返回,
188
+ 不会通过模型回合做固定频率轮询或重复回传大段证据。任务进入
189
+ `waiting_for_host_review` 后,当前主 Agent 一次性完成全量
190
+ 评审并提交结构化结果。进入三段交付状态之一后停止,不会自动提交、推送、部署或写入生产环境。
191
+
192
+ 如需移除注册:
193
+
194
+ ```bash
195
+ superflow mcp remove --agent both
196
+ ```
197
+
198
+ Superflow 不再提供后台 Supervisor CLI 模式。历史任务恢复时会自动迁移为当前 Host
199
+ 直接评审,任何入口都不会再启动第二个监督 Agent 进程。
169
200
 
170
201
  ## 4. 验证安装
171
202
 
172
203
  ```bash
173
204
  superflow doctor --agent codex
174
205
  superflow doctor --agent claude
175
- superflow doctor --agent opencode
176
206
  ```
177
207
 
178
208
  也可以同时检查两侧:
@@ -181,6 +211,13 @@ superflow doctor --agent opencode
181
211
  superflow doctor
182
212
  ```
183
213
 
214
+ 若已注册托管 MCP,还可以检查两侧配置:
215
+
216
+ ```bash
217
+ codex mcp get superflow
218
+ claude mcp get superflow
219
+ ```
220
+
184
221
  `doctor` 会检查:
185
222
 
186
223
  - `superflow` CLI 是否在 PATH。
@@ -188,7 +225,7 @@ superflow doctor
188
225
  - Superpowers、understand-anything、api-doc-changelog 是否可检测。
189
226
  - SuperBridge Flow skills 是否完整。
190
227
  - hook 脚本是否存在。
191
- - hook 是否已注册;OpenCode 当前检查 command alias,不把原生 hook 作为硬门禁。
228
+ - hook 是否已注册。
192
229
  - SDD rule 是否已部署。
193
230
  - 当前项目里的 `.sdd/state.yaml` 是否符合状态机字段约束。
194
231
 
@@ -196,7 +233,6 @@ superflow doctor
196
233
 
197
234
  ```bash
198
235
  superflow pipeline --agent codex
199
- superflow pipeline --agent opencode
200
236
  superflow docs --agent codex
201
237
  superflow design --agent codex
202
238
  superflow implement --agent codex
@@ -208,21 +244,18 @@ superflow archive --agent codex
208
244
 
209
245
  ### 5.1 开始一个完整需求
210
246
 
211
- Codex、Claude Code 和 OpenCode 的触发方式不同:
247
+ Codex、Claude Code 的触发方式不同:
212
248
 
213
249
  - Codex:通常用自然语言或 `$skill-name` 触发,例如“请使用 SuperBridge Flow 流程”或
214
250
  `$superflow-pipeline`。
215
251
  - Claude Code:安装后可以直接使用 slash command,例如
216
252
  `/superflow-pipeline`、`/superflow-clarify`、`/superflow-docs`、`/superflow-design`、
217
253
  `/superflow-implement`、`/superflow-verify`、`/superflow-archive`。
218
- - OpenCode:安装后使用 `.opencode/commands` 里的 slash command,例如
219
- `/superflow-pipeline`、`/superflow-docs`、`/superflow-design`、`/superflow-verify`。
220
254
 
221
255
  普通使用建议始终先走总路由,让 SDD 自己判断阶段:
222
256
 
223
257
  - Codex:优先 `$superflow-pipeline` 或自然语言“请使用 SuperBridge Flow 流程”。
224
258
  - Claude Code:优先 `/superflow-pipeline`。
225
- - OpenCode:优先 `/superflow-pipeline`。
226
259
 
227
260
  只有你非常明确当前就是需求澄清、文档补齐、技术详设或实现阶段时,才直达
228
261
  `$superflow-clarify` / `/superflow-clarify`、`$superflow-docs` / `/superflow-docs` 等阶段命令。
@@ -239,12 +272,6 @@ Codex、Claude Code 和 OpenCode 的触发方式不同:
239
272
  /superflow-pipeline 处理这个需求:……
240
273
  ```
241
274
 
242
- 在 OpenCode 会话里同样可以运行:
243
-
244
- ```text
245
- /superflow-pipeline 处理这个需求:……
246
- ```
247
-
248
275
  两种方式都会从 SDD 总入口路由,通常按下面阶段推进。
249
276
 
250
277
  #### 示例:读取飞书在线文档中的某个小节
@@ -491,7 +518,7 @@ Claude Code 里也可以直接用当前阶段命令继续,例如:
491
518
 
492
519
  - `@chenmk/superflow`
493
520
  - `@fission-ai/openspec`
494
- - Claude Code / Codex 的 Superpowers 插件;OpenCode 侧刷新 SuperBridge Flow assets
521
+ - Claude Code / Codex 的 Superpowers 插件
495
522
 
496
523
  同一会话只检查一次;默认只提示,不自动安装。至少间隔 6 小时才真正访问
497
524
  npm/plugin 源,避免每次 prompt 都联网。可用:
@@ -503,7 +530,7 @@ export SUPERFLOW_AUTO_UPDATE=check
503
530
  # 关闭自动检查
504
531
  export SUPERFLOW_AUTO_UPDATE=0
505
532
 
506
- # 个人机器可选:检查到新版本后自动安装
533
+ # 个人机器可选:自动完整更新 CLI、Skills、Hooks、规则、脚本和托管 MCP
507
534
  export SUPERFLOW_AUTO_UPDATE=apply
508
535
 
509
536
  # 调整最小检查间隔,默认 21600 秒(6 小时)
@@ -514,6 +541,10 @@ export SUPERFLOW_UPDATE_MIN_INTERVAL_SECONDS=21600
514
541
  `superflow update --with-package` 更新;个人机器如果接受自动升级风险,再设置
515
542
  `SUPERFLOW_AUTO_UPDATE=apply`。
516
543
 
544
+ 显式更新和 Hook `apply` 使用同一闭环:先更新依赖包,再由新版本 CLI 重新部署全部 Agent
545
+ 资产并刷新 MCP 注册。任一步失败会记录日志、删除本轮节流戳并允许下次会话重试;成功后需
546
+ 重启 Agent 才会加载新的 MCP 进程。
547
+
517
548
  ### 8.2 手动更新
518
549
 
519
550
  只刷新已安装技能、脚本、规则和 hook:
@@ -529,8 +560,8 @@ superflow update --agent claude
529
560
  superflow update --with-package
530
561
  ```
531
562
 
532
- 该命令会统一更新 `@chenmk/superflow`、`@fission-ai/openspec` 和已选择
533
- agent 的 Superpowers 插件。
563
+ 该命令会统一更新 `@chenmk/superflow`、`@fission-ai/openspec`、已选择 agent 的
564
+ Superpowers 插件、Skills、Hooks、规则、脚本和托管 MCP 注册。
534
565
 
535
566
  只查看更新计划:
536
567
 
@@ -599,13 +630,11 @@ python3 --version
599
630
 
600
631
  ### 技能装好了,但 agent 没触发
601
632
 
602
- 重启 Claude Code、Codex 或 OpenCode。若仍不触发:
633
+ 重启 Claude Code 或 Codex。若仍不触发:
603
634
 
604
635
  ```bash
605
636
  superflow doctor --agent codex
606
- superflow doctor --agent opencode
607
637
  superflow pipeline --agent codex
608
- superflow pipeline --agent opencode
609
638
  ```
610
639
 
611
640
  然后在会话里明确说: