@jennie-shawn/starwork 0.1.0-alpha.2 → 0.1.0-alpha.21

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 (298) hide show
  1. package/README.md +111 -99
  2. package/adapters/README.md +34 -0
  3. package/adapters/claude-code/profile.json +55 -0
  4. package/adapters/claude-code/rules.md +13 -0
  5. package/adapters/claude-code/safety.md +6 -0
  6. package/adapters/codex/profile.json +55 -0
  7. package/adapters/codex/rules.md +12 -0
  8. package/adapters/codex/safety.md +5 -0
  9. package/adapters/contract.md +64 -0
  10. package/adapters/cursor/profile.json +60 -0
  11. package/adapters/cursor/rules.md +7 -0
  12. package/adapters/cursor/safety.md +6 -0
  13. package/adapters/trae/profile.json +61 -0
  14. package/adapters/trae/rules.md +7 -0
  15. package/adapters/trae/safety.md +7 -0
  16. package/cli/README.md +50 -9
  17. package/cli/audit-spec.md +403 -0
  18. package/cli/doctor-spec.md +109 -17
  19. package/cli/init-spec.md +81 -53
  20. package/cli/repair-spec.md +361 -0
  21. package/cli/spawn-blueprint-spec.md +18 -18
  22. package/cli/spawn-spec.md +103 -108
  23. package/cli/src/cli.js +9403 -1059
  24. package/cli/test/init.test.js +2566 -51
  25. package/cli/upgrade-spec.md +488 -0
  26. package/core/README.md +14 -3
  27. package/core/agent-lanes-session-naming-spec.md +364 -0
  28. package/core/agent-lanes-spec.md +507 -0
  29. package/core/baseline/file-boundaries.md +11 -3
  30. package/core/baseline/health-check.md +2 -2
  31. package/core/baseline/roles.md +0 -1
  32. package/core/baseline/spec.md +3 -2
  33. package/core/capabilities/README.md +5 -2
  34. package/core/capabilities/agent-lanes/capability.md +40 -0
  35. package/core/capabilities/decisions/capability.md +2 -2
  36. package/core/capabilities/knowledge/capability.md +72 -0
  37. package/core/capabilities/knowledge/skills/starworkKnowledgeProject/SKILL.md +57 -0
  38. package/core/capabilities/knowledge/skills/starworkKnowledgeProject/agents/openai.yaml +6 -0
  39. package/core/capabilities/knowledge/templates/en/README.md +20 -0
  40. package/core/capabilities/knowledge/templates/en/index.md +19 -0
  41. package/core/capabilities/knowledge/templates/en/log.md +16 -0
  42. package/core/capabilities/knowledge/templates/en/schema.md +60 -0
  43. package/core/capabilities/knowledge/templates/zh/README.md +20 -0
  44. package/core/capabilities/knowledge/templates/zh/index.md +19 -0
  45. package/core/capabilities/knowledge/templates/zh/log.md +16 -0
  46. package/core/capabilities/knowledge/templates/zh/schema.md +60 -0
  47. package/core/capabilities/main-repo-sync/capability.md +57 -34
  48. package/core/capabilities/skill-mount/capability.md +19 -5
  49. package/core/capabilities/starter-outputs/capability.md +9 -11
  50. package/core/capabilities/starter-outputs/templates/outputs/final/README.md +1 -1
  51. package/core/core-v0.1-protocol.md +23 -21
  52. package/core/kits/README.md +9 -1
  53. package/core/kits/hub/.incoming/README.md +4 -2
  54. package/core/kits/hub/.incoming/reports/.gitkeep +1 -0
  55. package/core/kits/hub/.incoming/skills/.gitkeep +1 -0
  56. package/core/kits/hub/.internal/twin-bot-merge-policy.md +5 -0
  57. package/core/kits/hub/.internal/twin-bot-writeback-protocol.md +5 -0
  58. package/core/kits/hub/.starwork/handoff/archived/.gitkeep +1 -0
  59. package/core/kits/hub/.starwork/handoff/inbox/.gitkeep +1 -0
  60. package/core/kits/hub/.starwork/handoff/outbox/.gitkeep +1 -0
  61. package/core/kits/hub/.starwork/handoff/sent/.gitkeep +1 -0
  62. package/core/kits/hub/.starwork/handoff/state.json +5 -0
  63. package/core/kits/hub/AGENTS.md +18 -12
  64. package/core/kits/hub/README.md +17 -9
  65. package/core/kits/hub/identity/README.md +2 -2
  66. package/core/kits/hub/knowledge/README.md +5 -0
  67. package/core/kits/hub/lessons/README.md +2 -2
  68. package/core/kits/hub/projects/README.md +5 -0
  69. package/core/kits/hub/projects/coordination/README.md +5 -0
  70. package/core/kits/hub/projects/coordination/messages/acknowledged/.gitkeep +1 -0
  71. package/core/kits/hub/projects/coordination/messages/closed/.gitkeep +1 -0
  72. package/core/kits/hub/projects/coordination/messages/delivered/.gitkeep +1 -0
  73. package/core/kits/hub/projects/coordination/messages/queued/.gitkeep +1 -0
  74. package/core/kits/hub/projects/coordination/reports/.gitkeep +1 -0
  75. package/core/kits/hub/skills/README.md +4 -2
  76. package/core/kits/hub/skills/registry.json +6 -0
  77. package/core/kits/hub/workspace/README.md +5 -0
  78. package/core/kits/kit-structure-reference.md +104 -191
  79. package/core/kits/project/.agents/skills/README.md +5 -0
  80. package/core/kits/project/.claude/skills/README.md +5 -0
  81. package/core/kits/project/.obsidian/README.md +5 -0
  82. package/core/kits/project/.starwork/handoff/archived/.gitkeep +1 -0
  83. package/core/kits/project/.starwork/handoff/inbox/.gitkeep +1 -0
  84. package/core/kits/project/.starwork/handoff/outbox/.gitkeep +1 -0
  85. package/core/kits/project/.starwork/handoff/sent/.gitkeep +1 -0
  86. package/core/kits/project/.starwork/handoff/state.json +5 -0
  87. package/core/kits/project/AGENTS.md +38 -0
  88. package/core/kits/project/README.md +44 -0
  89. package/core/kits/project/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//345/275/223/345/211/215/351/241/271/347/233/256.md +25 -0
  90. package/core/kits/project/_/347/263/273/347/273/237//344/273/273/345/212/241//345/275/223/345/211/215/345/267/245/344/275/234.md +17 -0
  91. package/core/kits/project/_/347/263/273/347/273/237//346/225/231/350/256/255/README.md +17 -0
  92. package/core/kits/project/_/347/263/273/347/273/237//350/272/253/344/273/275/README.md +24 -0
  93. package/core/kits/two-kit-architecture-spec.md +695 -0
  94. package/core/legacy/README.md +16 -0
  95. package/core/legacy/kits/satellite-starter/.starwork/handoff/archived/.gitkeep +1 -0
  96. package/core/legacy/kits/satellite-starter/.starwork/handoff/inbox/.gitkeep +1 -0
  97. package/core/legacy/kits/satellite-starter/.starwork/handoff/outbox/.gitkeep +1 -0
  98. package/core/legacy/kits/satellite-starter/.starwork/handoff/sent/.gitkeep +1 -0
  99. package/core/legacy/kits/satellite-starter/.starwork/handoff/state.json +5 -0
  100. package/core/{kits → legacy/kits}/satellite-starter/AGENTS.md +7 -1
  101. package/core/{kits → legacy/kits}/satellite-starter/README.md +4 -4
  102. package/core/{kits → legacy/kits}/satellite-starter/_/347/263/273/347/273/237//344/270/273/345/272/223/345/220/214/346/255/245/README.md +3 -3
  103. package/core/legacy/kits/satellite-starter//350/276/223/345/207/272//347/241/256/350/256/244/346/210/220/346/236/234/README.md +5 -0
  104. package/core/{presets → legacy/presets}/satellite-starter.yaml +1 -1
  105. package/core/presets/README.md +17 -7
  106. package/core/presets/hub.yaml +23 -4
  107. package/core/presets/project.yaml +11 -0
  108. package/core/profiles/en/labels.json +2 -4
  109. package/core/profiles/en/paths.json +3 -4
  110. package/core/profiles/en/profile.md +7 -4
  111. package/core/profiles/en/templates/AGENTS.md +13 -9
  112. package/core/profiles/en/{reference-kits/local-starter/_system/context/project-status.md → templates/_system/context/current-project.md} +1 -1
  113. package/core/profiles/zh/labels.json +2 -4
  114. package/core/profiles/zh/paths.json +3 -5
  115. package/core/profiles/zh/profile.md +7 -4
  116. package/core/profiles/zh/templates/AGENTS.md +13 -9
  117. package/core/{kits/local-matter/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//351/241/271/347/233/256/347/212/266/346/200/201.md → profiles/zh/templates/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//345/275/223/345/211/215/351/241/271/347/233/256.md} +1 -1
  118. package/core/project-rules-optimization-spec.md +510 -0
  119. package/core/skill-management-spec.md +591 -0
  120. package/core/starwork-runtime-layer-spec.md +344 -0
  121. package/docs/README.md +18 -4
  122. package/docs/agent-install-guide.md +132 -0
  123. package/docs/ai-consultant-brief.md +648 -0
  124. package/docs/alpha-test-guide.md +274 -17
  125. package/docs/cli-capabilities.html +206 -115
  126. package/docs/cli-skill-registry.html +801 -0
  127. package/docs/doctor-capabilities.html +631 -0
  128. package/docs/hub-management.html +60 -59
  129. package/docs/index.html +7 -5
  130. package/docs/issue-feedback-tracking-guide.md +447 -0
  131. package/docs/m2.10-core-kit-pack-boundary-cleanup-spec.md +567 -0
  132. package/docs/m2.6-alpha-core-flows-optimization-spec.md +441 -0
  133. package/docs/m2.6-project-init-feedback/README.md +27 -0
  134. package/docs/m2.6-project-init-feedback/m2.6-project-init-feedback-01-identity-spec.md +194 -0
  135. package/docs/m2.6-project-init-feedback/m2.6-project-init-feedback-02-hub-sync-boundary-spec.md +198 -0
  136. package/docs/m2.6-project-init-feedback/m2.6-project-init-feedback-03-current-project-purity-spec.md +238 -0
  137. package/docs/m2.6-project-init-feedback/m2.6-project-init-feedback-04-system-placeholder-templates-spec.md +213 -0
  138. package/docs/m2.6-project-init-feedback/m2.6-project-init-feedback-05-agents-guardrails-spec.md +265 -0
  139. package/docs/m2.7-init-github-issues-optimization-spec.md +350 -0
  140. package/docs/m2.8-workspace-naming-optimization-spec.md +633 -0
  141. package/docs/multiagent/01-codex-session-capabilities-and-starwork-implications.md +280 -0
  142. package/docs/multiagent/02-cursor-session-management-research-instructions.md +204 -0
  143. package/docs/multiagent/03-trae-session-management-research-instructions.md +205 -0
  144. package/docs/multiagent/04-claude-code-session-management-research-instructions.md +209 -0
  145. package/docs/multiagent/05-trae-solo-session-management-research-instructions.md +222 -0
  146. package/docs/multiagent/claude-code-session-management-research-result.md +201 -0
  147. package/docs/multiagent/cursor-session-management-research-result.md +101 -0
  148. package/docs/multiagent/session-control-support-matrix.md +20 -0
  149. package/docs/multiagent/trae-session-management-research-result.md +353 -0
  150. package/docs/multiagent/trae-solo-session-management-research-result.md +467 -0
  151. package/docs/product-direction.md +17 -9
  152. package/docs/product-shape-business-model.html +1 -1
  153. package/docs/roadmap.html +34 -20
  154. package/docs/roadmap.md +185 -20
  155. package/docs/v0.1-plan.md +32 -12
  156. package/kit-skills/README.md +11 -0
  157. package/kit-skills/neat-freak/SKILL.md +32 -0
  158. package/kit-skills/neat-freak/agents/openai.yaml +2 -0
  159. package/kit-skills/starworkAudit/SKILL.md +127 -0
  160. package/kit-skills/starworkAudit/references/issue-taxonomy.md +10 -0
  161. package/kit-skills/starworkAudit/references/repair-blueprint-guide.md +54 -0
  162. package/kit-skills/starworkAudit/references/response-guide.md +34 -0
  163. package/{skills → kit-skills}/starworkSpawn/SKILL.md +36 -14
  164. package/package.json +4 -3
  165. package/packs/content-creator/languages/en.json +4 -4
  166. package/packs/content-creator/languages/zh.json +4 -4
  167. package/packs/content-creator/pack.json +5 -5
  168. package/packs/general/languages/en.json +19 -2
  169. package/packs/general/languages/zh.json +19 -2
  170. package/packs/general/pack.json +8 -3
  171. package/packs/hub-management/languages/en.json +2 -2
  172. package/packs/hub-management/languages/zh.json +11 -10
  173. package/packs/hub-management/pack.json +2 -2
  174. package/packs/hub-management/rules/en/overview.md +2 -0
  175. package/packs/hub-management/rules/en/workflow.md +2 -1
  176. package/packs/hub-management/rules/zh/overview.md +4 -2
  177. package/packs/hub-management/rules/zh/workflow.md +3 -2
  178. package/packs/hub-management/seed/en/projects/coordination/README.md +2 -2
  179. package/packs/hub-management/seed/zh/projects/coordination/README.md +5 -0
  180. package/packs/pack-structure-spec.md +4 -4
  181. package/skills/README.md +28 -3
  182. package/skills/starwork/SKILL.md +81 -0
  183. package/skills/starwork/references/install.md +64 -0
  184. package/skills/starwork/references/routing.md +44 -0
  185. package/skills/starworkAudit-spec.md +354 -0
  186. package/skills/starworkDoctor/SKILL.md +435 -0
  187. package/skills/starworkDoctor/agents/openai.yaml +7 -0
  188. package/skills/starworkDoctor/references/agent-rules-template.md +64 -0
  189. package/skills/starworkDoctor/references/hub-upgrade.md +73 -0
  190. package/skills/starworkDoctor/references/response-guide.md +57 -0
  191. package/skills/starworkDoctor/references/rules-extraction-guide.md +92 -0
  192. package/skills/starworkDoctor-spec.md +764 -0
  193. package/skills/starworkInit/SKILL.md +285 -50
  194. package/skills/starworkInit-spec.md +106 -75
  195. package/skills/starworkKnowledge/SKILL.md +195 -0
  196. package/skills/starworkKnowledge/agents/openai.yaml +3 -0
  197. package/skills/starworkMultiagent/SKILL.md +302 -0
  198. package/skills/starworkMultiagent/agents/openai.yaml +7 -0
  199. package/skills/starworkMultiagent-skill-plan.md +234 -0
  200. package/skills/starworkMultiagent-spec.md +181 -0
  201. package/core/capabilities/matter-mode/capability.md +0 -46
  202. package/core/capabilities/matter-mode/templates/matters/_matter-template/README.md +0 -17
  203. package/core/capabilities/matter-mode/templates/matters/_matter-template/handoff.md +0 -3
  204. package/core/capabilities/matter-mode/templates/matters/_matter-template/notes.md +0 -5
  205. package/core/capabilities/matter-mode/templates/matters/_matter-template/progress.md +0 -5
  206. package/core/capabilities/matter-mode/templates/matters/registry.md +0 -16
  207. package/core/kits/hub/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//351/241/271/347/233/256/347/212/266/346/200/201.md +0 -24
  208. package/core/kits/hub//347/237/245/350/257/206/README.md +0 -5
  209. package/core/kits/hub//351/241/271/347/233/256/README.md +0 -5
  210. package/core/kits/hub//351/241/271/347/233/256//350/201/224/347/273/234/README.md +0 -5
  211. package/core/kits/local-matter/AGENTS.md +0 -23
  212. package/core/kits/local-matter/README.md +0 -22
  213. package/core/kits/local-matter/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//345/206/263/347/255/226.md +0 -7
  214. package/core/kits/local-matter/_/347/263/273/347/273/237//344/273/273/345/212/241//345/275/223/345/211/215/345/267/245/344/275/234.md +0 -17
  215. package/core/kits/local-matter/_/347/263/273/347/273/237//346/225/231/350/256/255/README.md +0 -5
  216. package/core/kits/local-matter/_/347/263/273/347/273/237//350/272/253/344/273/275/README.md +0 -5
  217. package/core/kits/local-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277/README.md +0 -17
  218. package/core/kits/local-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//344/272/244/346/216/245.md +0 -3
  219. package/core/kits/local-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//347/254/224/350/256/260.md +0 -5
  220. package/core/kits/local-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//350/277/233/345/272/246.md +0 -5
  221. package/core/kits/local-matter//344/272/213/351/241/271//346/263/250/345/206/214/350/241/250.md +0 -16
  222. package/core/kits/local-matter//350/276/223/345/207/272//347/241/256/350/256/244/346/210/220/346/236/234/README.md +0 -5
  223. package/core/kits/local-starter/AGENTS.md +0 -23
  224. package/core/kits/local-starter/README.md +0 -23
  225. package/core/kits/local-starter/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//351/241/271/347/233/256/347/212/266/346/200/201.md +0 -25
  226. package/core/kits/local-starter/_/347/263/273/347/273/237//344/273/273/345/212/241//345/275/223/345/211/215/345/267/245/344/275/234.md +0 -17
  227. package/core/kits/local-starter/_/347/263/273/347/273/237//346/225/231/350/256/255/README.md +0 -5
  228. package/core/kits/local-starter/_/347/263/273/347/273/237//350/272/253/344/273/275/README.md +0 -5
  229. package/core/kits/local-starter//345/217/202/350/200/203/350/265/204/346/226/231/README.md +0 -5
  230. package/core/kits/local-starter//350/276/223/345/207/272//347/241/256/350/256/244/346/210/220/346/236/234/README.md +0 -5
  231. package/core/kits/local-starter//350/276/223/345/207/272//350/215/211/347/250/277/README.md +0 -5
  232. package/core/kits/satellite-matter/AGENTS.md +0 -27
  233. package/core/kits/satellite-matter/README.md +0 -40
  234. package/core/kits/satellite-matter/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//345/206/263/347/255/226.md +0 -7
  235. package/core/kits/satellite-matter/_/347/263/273/347/273/237//344/270/273/345/272/223/345/220/214/346/255/245/README.md +0 -42
  236. package/core/kits/satellite-matter/_/347/263/273/347/273/237//344/273/273/345/212/241//345/275/223/345/211/215/345/267/245/344/275/234.md +0 -17
  237. package/core/kits/satellite-matter/_/347/263/273/347/273/237//350/267/250/351/241/271/347/233/256/README.md +0 -9
  238. package/core/kits/satellite-matter/_/347/263/273/347/273/237//350/267/250/351/241/271/347/233/256/inbox/README.md +0 -5
  239. package/core/kits/satellite-matter/_/347/263/273/347/273/237//350/267/250/351/241/271/347/233/256/outbox/README.md +0 -5
  240. package/core/kits/satellite-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277/README.md +0 -17
  241. package/core/kits/satellite-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//344/272/244/346/216/245.md +0 -3
  242. package/core/kits/satellite-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//347/254/224/350/256/260.md +0 -5
  243. package/core/kits/satellite-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//350/277/233/345/272/246.md +0 -5
  244. package/core/kits/satellite-matter//344/272/213/351/241/271//346/263/250/345/206/214/350/241/250.md +0 -16
  245. package/core/kits/satellite-matter//345/217/202/350/200/203/350/265/204/346/226/231/README.md +0 -5
  246. package/core/kits/satellite-matter//350/276/223/345/207/272//347/241/256/350/256/244/346/210/220/346/236/234/README.md +0 -5
  247. package/core/kits/satellite-matter//350/276/223/345/207/272//350/215/211/347/250/277/README.md +0 -5
  248. package/core/kits/satellite-starter/.agents/skills/README.md +0 -5
  249. package/core/kits/satellite-starter/.claude/skills/README.md +0 -5
  250. package/core/kits/satellite-starter/.core-sync.json +0 -31
  251. package/core/kits/satellite-starter/.internal/README.md +0 -5
  252. package/core/kits/satellite-starter/.obsidian/README.md +0 -5
  253. package/core/kits/satellite-starter/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//345/275/223/345/211/215/351/241/271/347/233/256.md +0 -29
  254. package/core/kits/satellite-starter/_/347/263/273/347/273/237//344/273/273/345/212/241//345/275/223/345/211/215/345/267/245/344/275/234.md +0 -17
  255. package/core/kits/satellite-starter/_/347/263/273/347/273/237//346/225/231/350/256/255/README.md +0 -8
  256. package/core/kits/satellite-starter/_/347/263/273/347/273/237//350/267/250/351/241/271/347/233/256/README.md +0 -9
  257. package/core/kits/satellite-starter/_/347/263/273/347/273/237//350/267/250/351/241/271/347/233/256/inbox/README.md +0 -5
  258. package/core/kits/satellite-starter/_/347/263/273/347/273/237//350/267/250/351/241/271/347/233/256/outbox/README.md +0 -5
  259. package/core/kits/satellite-starter/_/347/263/273/347/273/237//350/272/253/344/273/275/README.md +0 -5
  260. package/core/kits/satellite-starter//345/217/202/350/200/203/350/265/204/346/226/231/README.md +0 -5
  261. package/core/kits/satellite-starter//347/237/245/350/257/206/README.md +0 -5
  262. package/core/kits/satellite-starter//350/276/223/345/207/272//347/241/256/350/256/244/346/210/220/346/236/234/README.md +0 -5
  263. package/core/kits/satellite-starter//350/276/223/345/207/272//350/215/211/347/250/277/README.md +0 -5
  264. package/core/presets/local-matter.yaml +0 -14
  265. package/core/presets/local-starter.yaml +0 -12
  266. package/core/presets/satellite-matter.yaml +0 -17
  267. package/core/profiles/en/reference-kits/local-starter/AGENTS.md +0 -23
  268. package/core/profiles/en/reference-kits/local-starter/README.md +0 -23
  269. package/core/profiles/en/reference-kits/local-starter/_system/identity/README.md +0 -5
  270. package/core/profiles/en/reference-kits/local-starter/_system/lessons/README.md +0 -5
  271. package/core/profiles/en/reference-kits/local-starter/_system/tasks/current-work.md +0 -17
  272. package/core/profiles/en/reference-kits/local-starter/outputs/drafts/README.md +0 -5
  273. package/core/profiles/en/reference-kits/local-starter/outputs/final/README.md +0 -5
  274. package/core/profiles/en/reference-kits/local-starter/references/README.md +0 -5
  275. package/core/profiles/en/reference-presets/local-starter.yaml +0 -12
  276. package/core/profiles/en/templates/_system/context/project-status.md +0 -25
  277. package/core/profiles/zh/templates/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//351/241/271/347/233/256/347/212/266/346/200/201.md +0 -25
  278. package/packs/hub-management/seed/zh//351/241/271/347/233/256//350/201/224/347/273/234/README.md +0 -5
  279. /package/core/{capabilities/matter-mode/templates/matters/_matter-template/drafts → kits/hub/.incoming/identity}/.gitkeep +0 -0
  280. /package/core/kits/{local-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//350/215/211/347/250/277/.gitkeep" → hub/.incoming/knowledge/.gitkeep} +0 -0
  281. /package/core/kits/{satellite-matter//344/272/213/351/241/271/_/344/272/213/351/241/271/346/250/241/346/235/277//350/215/211/347/250/277/.gitkeep" → hub/.incoming/lessons/.gitkeep} +0 -0
  282. /package/core/kits/hub/{/351/241/271/347/233/256/registry.json" → projects/registry.json} +0 -0
  283. /package/core/kits/{satellite-matter → project}/CLAUDE.md +0 -0
  284. /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/.agents/skills/README.md +0 -0
  285. /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/.claude/skills/README.md +0 -0
  286. /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/.core-sync.json +0 -0
  287. /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/.internal/README.md +0 -0
  288. /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/.obsidian/README.md +0 -0
  289. /package/core/{kits → legacy/kits}/satellite-starter/CLAUDE.md +0 -0
  290. /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/_/347/263/273/347/273/237//344/270/212/344/270/213/346/226/207//345/275/223/345/211/215/351/241/271/347/233/256.md" +0 -0
  291. /package/core/{kits/hub → legacy/kits/satellite-starter}/_/347/263/273/347/273/237//344/273/273/345/212/241//345/275/223/345/211/215/345/267/245/344/275/234.md" +0 -0
  292. /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/_/347/263/273/347/273/237//346/225/231/350/256/255/README.md" +0 -0
  293. /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}/_/347/263/273/347/273/237//350/272/253/344/273/275/README.md" +0 -0
  294. /package/core/{kits/local-matter → legacy/kits/satellite-starter}//345/217/202/350/200/203/350/265/204/346/226/231/README.md" +0 -0
  295. /package/core/{kits/satellite-matter → legacy/kits/satellite-starter}//347/237/245/350/257/206/README.md" +0 -0
  296. /package/core/{kits/local-matter → legacy/kits/satellite-starter}//350/276/223/345/207/272//350/215/211/347/250/277/README.md" +0 -0
  297. /package/{skills → kit-skills}/starworkSpawn/agents/openai.yaml +0 -0
  298. /package/packs/hub-management/seed/zh/{/351/241/271/347/233/256/registry.json" → projects/registry.json} +0 -0
@@ -0,0 +1,7 @@
1
+ # Trae Adapter Rules
2
+
3
+ Trae uses `.trae/rules/starwork.md` as the StarWork entry.
4
+
5
+ Trae can discover project Skills from `.trae/skills/` and `.agents/skills/`. When the same Skill exists in both locations, `.trae/skills/` wins. StarWork still treats `.starwork/skills.json` as the project Skill fact source.
6
+
7
+ Trae is a manual-operation host in v0.2. StarWork should not read Trae private session storage, enumerate Trae sessions, or describe Trae as supporting automatic background cross-session delivery.
@@ -0,0 +1,7 @@
1
+ # Trae Adapter Safety
2
+
3
+ - Do not read or write encrypted `database.db`.
4
+ - Do not read `state.vscdb` or other Trae private workspace storage as MultiAgent session state.
5
+ - Do not write Trae private state.
6
+ - Do not rely on snapshot history as StarWork memory.
7
+ - MultiAgent delivery should degrade to manual handoff unless a future stable API is confirmed.
package/cli/README.md CHANGED
@@ -9,25 +9,42 @@ v0.1 只覆盖最小可用安装和适配能力:
9
9
  - `starwork init`
10
10
  - `starwork spawn`
11
11
  - `starwork doctor`
12
+ - `starwork knowledge`
13
+ - `starwork upgrade`
12
14
  - `starwork adapt`
13
- - `starwork pack install content-creator`
15
+ - `starwork pack install`
16
+ - `starwork multiagent`
17
+ - `starwork audit`
18
+ - `starwork repair`
14
19
 
15
20
  第一阶段重点:
16
21
 
17
22
  - 能从空文件夹初始化 StarWork 工作台
18
- - 能从多项目中枢生成被管理的新项目工作台
23
+ - 能从项目中心创建被管理的新项目工作台
19
24
  - 能检查工作区结构是否完整
20
25
  - 能生成或更新当前 Agent 所需适配文件
21
- - 能安装自媒体内容创作者 Pack
26
+ - 能为同一项目建立多 Agent 职责位、绑定会话并登记跨 lane 共享输出
27
+ - 能安装兼容 Pack,并在 A 测阶段优先验证通用工作与项目中心管理流程
22
28
  - 安装和更新时不覆盖用户已有内容
23
29
 
24
30
  当前 M2 CLI v0.1 最小闭环已落地:
25
31
 
26
- - `starwork init` 第一版:可以初始化轻量单项目、长期单项目和多项目管理中枢,并通过 Pack 语言配置组装通用工作、内容创作者和中枢管理场景。
27
- - `starwork spawn` 第一版:可以从健康 Hub 生成 `satellite-starter` / `satellite-matter` 项目工作台,支持 `--blueprint` 定制目录、路径、规则和 seed,并回写 Hub 项目注册表。
28
- - `starwork doctor` 第一版:可以检查 workspace state、Core 必需角色、Kit 文件、正式事实源、业务工作区和 Pack 落地结果,并支持 `--json` 输出。
29
- - `starwork adapt` 第一版:可以为 Codex、Claude Code、Cursor、Trae 生成或登记轻量适配入口。
32
+ - `starwork init` 第一版:可以初始化项目工作台和项目中心;`single-light` / `project` 作为兼容别名映射为 `project`;项目中心自动使用 `hub-management` Pack,项目工作台 v0.1 默认使用 `general` Pack,不主动推荐未定稿场景 Pack。
33
+ - `starwork spawn` 第一版:可以从健康项目中心创建项目工作台,支持 `--language zh|en`、`--blueprint` 定制目录、路径、规则和 seed,并回写项目中心项目注册表;`starter` / `project` mode 作为兼容别名映射为 `project`。
34
+ - `starwork doctor` 第一版:可以检查 workspace state、Core 必需角色、Kit 文件、正式事实源、业务工作区和 Pack 落地结果,并支持 `--json` 输出;alpha.4 开始可识别历史模板候选;alpha.5 开始输出目录 `inventory` 与语义 `signals`;alpha.9 开始补齐类似项目中心的旧主库识别,供 `starworkDoctor` skill 判断。
35
+ - `starwork knowledge` 第一版:可以为项目工作台开启本地知识库,支持 `init`、`status --json`、`check` 和 `apply --blueprint`;成功开启后把项目内业务 Skill `starworkKnowledgeProject` 安装到当前项目;默认不创建知识库,不迁移或删除旧 `知识/knowledge`。
36
+ - `starwork upgrade` 第一版:可以读取 `starworkDoctor` skill 生成的升级蓝图,把历史模板、非标准目录或类似项目中心的旧主库安全升级为 StarWork 工作台;alpha.9 支持 `hub + preserve-names + pack:null`,旧主库接入时不会创建重复标准目录;v0.1 只支持 `--blueprint`,不自动判断升级方案。
37
+ - `starwork adapt` Host Adapter v0.1:可以读取 Codex、Claude Code、Cursor、Trae 的宿主能力 profile;`--capabilities` 只输出能力不写文件;正式适配会写入 `.starwork/adapters.json`,并保留 `.starwork/workspace.json.adapters` 摘要。
30
38
  - `starwork pack install` 第一版:可以在健康工作台上补装 Pack,并更新路径、规则、模板和 workspace state。
39
+ - `starwork multiagent` v0.2+Host Adapter:在原有 Agent Lanes 基础上增加宿主分支;Codex 支持自动读取和 launch;Claude Code 支持 `CLAUDE_CODE_SESSION_ID` 绑定、`claude --resume` 继续命令和 transcript 摘要;Cursor 只支持 `agent-transcripts/<uuid>/<uuid>.jsonl` 的只读摘要,用于 `read/status --host`;Trae 不做会话读取或自动化,默认返回人工交付消息或 unsupported。
40
+ - `starwork audit` 第一版:可以从项目中心读取语言映射后的项目注册表,批量巡检中心管理的项目工作台,并复用 `doctor` 聚合健康事实。
41
+ - `starwork repair` 第一版:可以执行 `starworkAudit` 生成的保守 repair blueprint,支持补目录、补缺失文件、重写 sync、更新 registry 和更新 workspace state。
42
+ - Skill 管理与分发第一版:工作台模板可以自带 Skill,项目中心可以托管用户常用 Skill;`init` 写入 `.starwork/skills.json`,`spawn` 按项目中心 registry 选择性分发 Skill,`doctor` 暴露 Skill manifest / registry / mount 事实。
43
+
44
+ 后续规划:
45
+
46
+ - Pack 自带 Skill 与 upgrade blueprint actions:按 [`StarWork Skill 管理与分发机制 SPEC`](../core/skill-management-spec.md) 继续扩展。
47
+ - `starwork update`:面向已经是 StarWork 的工作台,处理未来 Core / Kit / Pack 版本迁移;与 `upgrade` 分开设计。
31
48
 
32
49
  CLI 不在 v0.1 阶段处理账号、授权、消息平台 gateway 或复杂商业系统。
33
50
 
@@ -35,18 +52,42 @@ CLI 不在 v0.1 阶段处理账号、授权、消息平台 gateway 或复杂商
35
52
 
36
53
  - [`starwork init` SPEC](./init-spec.md)
37
54
  - [`starwork doctor` SPEC](./doctor-spec.md)
55
+ - [`Knowledge Base Capability SPEC`](../planning/features/knowledge-base/specs/v0.1.md)
38
56
  - [`starwork adapt` SPEC](./adapt-spec.md)
57
+ - [`Host Adapter v0.1 Implementation SPEC`](../planning/features/host-adapters/specs/v0.1-implementation.md)
39
58
  - [`starwork pack install` SPEC](./pack-install-spec.md)
40
59
  - [`starwork spawn` SPEC](./spawn-spec.md)
41
60
  - [`starwork spawn --blueprint` SPEC](./spawn-blueprint-spec.md)
61
+ - [`starwork upgrade` SPEC](./upgrade-spec.md)
62
+ - [`starwork audit` SPEC](./audit-spec.md)
63
+ - [`starwork repair` SPEC](./repair-spec.md)
64
+ - [`starwork multiagent` SPEC](../core/agent-lanes-spec.md)
65
+ - [`Agent Lanes 宿主会话命名增强 SPEC`](../core/agent-lanes-session-naming-spec.md)
66
+ - [`MultiAgent v0.2 Codex 多会话编排 SPEC`](../planning/features/multiagent/specs/v0.2-codex-orchestration.md)
42
67
 
43
68
  ## 本地运行
44
69
 
45
70
  ```bash
46
- node cli/bin/starwork.js init --type single-light --pack general --dry-run
47
- node cli/bin/starwork.js spawn --hub ./my-hub --name "新项目" --target ./new-project --mode matter --dry-run
71
+ node cli/bin/starwork.js --version
72
+ node cli/bin/starwork.js --help
73
+ node cli/bin/starwork.js init --type project --pack general --dry-run
74
+ node cli/bin/starwork.js spawn --hub ./my-hub --name "新项目" --target ./new-project --language zh --dry-run
48
75
  node cli/bin/starwork.js spawn --hub ./my-hub --target ./new-project --blueprint ./blueprint.json --dry-run
76
+ node cli/bin/starwork.js audit --hub ./my-hub --json
77
+ node cli/bin/starwork.js repair --blueprint ./repair-blueprint.json --dry-run
78
+ node cli/bin/starwork.js upgrade --target ./old-workspace --blueprint ./upgrade-blueprint.json --dry-run
49
79
  node cli/bin/starwork.js doctor --target ./my-workspace
80
+ node cli/bin/starwork.js init --type project --language zh --target ./cursor-workspace --adapter cursor --yes
81
+ node cli/bin/starwork.js knowledge init --target ./my-workspace --dry-run
82
+ node cli/bin/starwork.js multiagent init --lanes research,writing,review --target ./my-workspace --yes
83
+ node cli/bin/starwork.js multiagent bind research --session codex:manual-research-1 --session-name "Research Agent" --target ./my-workspace --yes
84
+ node cli/bin/starwork.js multiagent status --host --target ./my-workspace --json
85
+ node cli/bin/starwork.js multiagent instruct development --from product-planning --message "请根据 SPEC 开始实现。" --target ./my-workspace --dry-run
86
+ node cli/bin/starwork.js multiagent handoff development --from product-planning --message "请手动处理这条指令。" --target ./my-workspace --dry-run
87
+ node cli/bin/starwork.js multiagent continue research --target ./my-workspace --json
88
+ node cli/bin/starwork.js adapt all --capabilities --json
89
+ node cli/bin/starwork.js adapt cursor --check --target ./my-workspace --json
50
90
  node cli/bin/starwork.js adapt claude --target ./my-workspace --yes
91
+ node cli/bin/starwork.js doctor --target ./my-workspace --host all --json
51
92
  node cli/bin/starwork.js pack install content-creator --target ./my-workspace --yes
52
93
  ```
@@ -0,0 +1,403 @@
1
+ # `starwork audit` SPEC
2
+
3
+ ## 状态
4
+
5
+ - 版本:v0.1 draft
6
+ - 所属模块:StarWork CLI / StarWork Hub
7
+ - 命令:`starwork audit`
8
+ - 实现状态:待实现
9
+ - 相关对象:`hub`、`project`、Hub binding、legacy satellite、`starwork doctor`、`starworkAudit`、`starwork repair`
10
+ - 目标:从 Hub 视角批量扫描已登记的 Satellite,暴露结构事实、同步事实和健康风险;不做主观判断,不直接修复
11
+
12
+ ## 一句话定义
13
+
14
+ `starwork audit` 是 Hub 对旗下 Satellite 的只读巡检命令。
15
+
16
+ 它不替代 `doctor`。`doctor` 检查一个工作台;`audit` 从 Hub 读取项目注册表,再对多个 Satellite 做聚合检查。
17
+
18
+ ```text
19
+ 项目中心
20
+ ↓ 读取项目注册表(中文默认 项目/registry.json,英文默认 projects/registry.json)
21
+ starwork audit
22
+ ↓ 对每个已登记项目工作台复用 doctor
23
+ audit-result.json
24
+
25
+ starworkAudit skill 判断和生成 repair blueprint
26
+
27
+ starwork repair --blueprint
28
+ ```
29
+
30
+ ## 产品边界
31
+
32
+ | 命令 / Skill | 面向对象 | 负责 | 不负责 |
33
+ |---|---|---|---|
34
+ | `doctor` | 单个工作台 | 检查一个目录是否健康 | 批量巡检、修复建议 |
35
+ | `audit` | Hub 和多个 Satellite | 读取 Hub registry,批量暴露事实 | 判断怎么修、写文件 |
36
+ | `starworkAudit` | audit 结果 | 解释、分级、追问、生成修复蓝图 | 直接改文件 |
37
+ | `repair` | 已是 StarWork 的工作台 | 按确认过的 repair blueprint 修复 | 自行判断业务语义 |
38
+ | `upgrade` | 历史模板 / 非 StarWork 目录 | 按 upgrade blueprint 接入 StarWork | 修复已有 StarWork 工作台 |
39
+ | `spawn` | 新 Satellite | 从 Hub 创建并登记项目 | 巡检已有项目 |
40
+
41
+ 一句话:
42
+
43
+ > `audit` 负责看清楚,`starworkAudit` 负责想清楚,`repair` 负责按确认方案做清楚。
44
+
45
+ ## 为什么不能直接自动修复
46
+
47
+ Satellite 巡检中会出现大量需要语义判断的问题:
48
+
49
+ - registry 里的路径失效,是项目移动、删除,还是已经归档?
50
+ - Satellite 的 `knowledge/` 或 `知识/` 断链,是应该重建软链接,还是改为本地副本?
51
+ - `AGENTS.md` 使用旧规则,是应该覆盖、追加,还是保持项目特例?
52
+ - Satellite doctor 失败,是结构真的损坏,还是用户进行了合理定制但 state 没同步?
53
+ - 项目长期未更新,是健康沉睡,还是需要归档?
54
+
55
+ 这些问题不应由 CLI 硬编码判断。`audit` 只输出事实和信号,后续由 `starworkAudit` 结合上下文和用户确认生成修复蓝图。
56
+
57
+ ## 命令形式
58
+
59
+ ```bash
60
+ starwork audit
61
+ starwork audit --hub <hub-path>
62
+ starwork audit --hub ~/my-hub --project content-site
63
+ starwork audit --hub ~/my-hub --json
64
+ starwork audit --hub ~/my-hub --inventory-depth all
65
+ ```
66
+
67
+ ## 参数
68
+
69
+ | 参数 | 说明 |
70
+ |---|---|
71
+ | `--hub <path>` | Hub 工作台路径。未提供时默认当前目录或向上查找当前 Hub。 |
72
+ | `--project <project-id>` | 只巡检指定项目。未提供时巡检 registry 中所有项目。 |
73
+ | `--json` | 输出机器可读 JSON。 |
74
+ | `--strict` | 将部分 warning 汇总为失败,适合发布前巡检。 |
75
+ | `--inventory-depth <number\|all>` | 传递给每个 Satellite 的 doctor inventory 探测深度。 |
76
+ | `--inventory-limit <number>` | 控制每个 Satellite doctor inventory 输出规模。 |
77
+ | `--help` | 显示帮助。 |
78
+
79
+ v0.1 不支持:
80
+
81
+ - `--fix`
82
+ - 自动修改 registry
83
+ - 自动修改 Satellite
84
+ - 自动安装或删除 Skill
85
+ - 自动归档项目
86
+ - 自动合并 `.incoming/`
87
+
88
+ ## 执行流程
89
+
90
+ ### Step 1:定位 Hub
91
+
92
+ 优先级:
93
+
94
+ 1. 使用 `--hub <path>`。
95
+ 2. 没有 `--hub` 时,从当前目录向上查找 `.starwork/workspace.json`。
96
+ 3. 读取 state,确认 `workspace_type === "hub"`。
97
+
98
+ 如果目标不是 Hub,直接失败。
99
+
100
+ ### Step 2:Hub 自检
101
+
102
+ 检查 Hub 必需结构:
103
+
104
+ | 路径 | 说明 |
105
+ |---|---|
106
+ | `.starwork/workspace.json` | Hub 工作台身份证。 |
107
+ | 项目注册表 | 中文默认 `项目/registry.json`,英文默认 `projects/registry.json`。 |
108
+ | 项目协作路由 | 中文默认 `项目/协作/`,英文默认 `projects/coordination/`。 |
109
+ | `.starwork/handoff/` | Hub 本地收发队列。 |
110
+ | `.incoming/` | 回写候选区。 |
111
+ | 共享身份 | 中文默认 `身份/`,英文默认 `identity/`。 |
112
+ | 共享教训 | 中文默认 `教训/`,英文默认 `lessons/`。 |
113
+ | 共享知识 | 中文默认 `知识/`,英文默认 `knowledge/`。 |
114
+ | 托管 Skill 注册表 | 中文默认 `技能/registry.json`,英文默认 `skills/registry.json`。 |
115
+ | 草稿和实验区 | 中文默认 `工作区/`,英文默认 `workspace/`。 |
116
+
117
+ Hub 自检可以复用 `doctorCollect(hubPath)`,但 `audit` 还需要读取 registry 和聚合项目结果。
118
+
119
+ ### Step 3:读取项目注册表
120
+
121
+ 读取语言映射后的项目注册表:
122
+
123
+ ```text
124
+ zh: 项目/registry.json
125
+ en: projects/registry.json
126
+ ```
127
+
128
+ 检查:
129
+
130
+ - JSON 是否可解析。
131
+ - `projects` 是否是数组。
132
+ - `project_id` 是否缺失或重复。
133
+ - `name` 是否缺失。
134
+ - `path` 是否缺失。
135
+ - `status` 是否属于允许值。
136
+
137
+ 建议状态值:
138
+
139
+ | 状态 | 含义 |
140
+ |---|---|
141
+ | `active` | 正常推进。 |
142
+ | `paused` | 暂停。 |
143
+ | `archived` | 已归档。 |
144
+ | `unknown` | 旧 registry 或不完整记录。 |
145
+
146
+ v0.1 对 `archived` 项目默认仍做轻量存在性检查,但不把 doctor warning 计入整体失败;是否深度检查由后续参数扩展。
147
+
148
+ ### Step 4:逐个 Satellite 可达性检查
149
+
150
+ 对每个项目记录检查:
151
+
152
+ - `path` 是否存在。
153
+ - `path` 是否是目录。
154
+ - 是否存在 `.starwork/workspace.json`。
155
+ - workspace state 是否可解析。
156
+ - `workspace_type` 是否为 `project`。
157
+ - `kit` 是否为 `project`。
158
+ - 是否存在 `hub.path` 与 `hub.project_id`。
159
+ - `hub.path` 是否指向当前 Hub。
160
+ - `hub.project_id` 是否等于 registry 中的 `project_id`。
161
+
162
+ 兼容期内,`satellite-starter` 只作为旧 Satellite signal 输出。旧事项目录只作为普通历史内容信号,不作为可兼容的工作区类型。
163
+
164
+ 路径不存在或不是目录为 `fail`。
165
+
166
+ ### Step 5:复用 doctor 检查 Satellite
167
+
168
+ 对可达 Satellite 调用现有 `doctorCollect(projectPath)`。
169
+
170
+ `audit` 不重写单项目检查逻辑,只做聚合:
171
+
172
+ - `doctor.ok`
173
+ - `doctor.summary`
174
+ - 关键 fail / warn checks
175
+ - workspace type / kit / language / packs
176
+ - skills facts
177
+
178
+ `audit --json` 可以嵌入 doctor 摘要,但不应默认完整嵌入每个项目的大型 inventory,除非用户传入 `--inventory-depth all` 或 `--verbose`。
179
+
180
+ ### Step 6:检查 Hub 绑定和同步关系
181
+
182
+ 读取 Satellite:
183
+
184
+ ```text
185
+ .core-sync.json
186
+ .starwork/workspace.json
187
+ ```
188
+
189
+ 检查:
190
+
191
+ - `.core-sync.json` 是否存在。
192
+ - `.core-sync.json` 是否可解析。
193
+ - `.core-sync.json` 中记录的 Hub 路径是否指向当前 Hub。
194
+ - `.starwork/workspace.json` 中 `hub.project_id` 是否匹配 registry。
195
+ - registry 中记录的 path 是否和 Satellite 实际路径一致。
196
+ - Satellite 的 language 是否和 Hub 预期或 registry metadata 冲突。
197
+
198
+ 这些问题通常是高风险,但不一定都阻塞。`starworkAudit` 需要根据上下文判断修复方式。
199
+
200
+ ### Step 7:检查共享资源挂载
201
+
202
+ 按 Satellite language 判断路径:
203
+
204
+ | 资源 | 中文 Satellite | 英文 Satellite | Hub 来源 |
205
+ |---|---|---|---|
206
+ | knowledge | `知识/` | `knowledge/` | 中文项目中心 `知识/`,英文 Project Center `knowledge/` |
207
+ | identity | `_系统/身份/` | `_system/identity/` | 中文项目中心 `身份/`,英文 Project Center `identity/` |
208
+ | lessons | `_系统/教训/` | `_system/lessons/` | 中文项目中心 `教训/`,英文 Project Center `lessons/` |
209
+ | skills | `.agents/skills/`、`.claude/skills/` | 同左 | 中文项目中心 `技能/`,英文 Project Center `skills/`,或 Kit 自带 Skill |
210
+
211
+ 检查:
212
+
213
+ - 路径是否存在。
214
+ - 如果是软链接,软链接目标是否存在。
215
+ - 如果是复制快照,是否有 `.core-sync.json` 或 README 说明来源。
216
+ - Hub 托管 Skill 是否仍能从 registry 找到。
217
+
218
+ ### Step 8:检查联络队列
219
+
220
+ 新版本地收发队列:
221
+
222
+ ```text
223
+ .starwork/handoff/
224
+ ```
225
+
226
+ 检查:
227
+
228
+ - `inbox/`
229
+ - `outbox/`
230
+ - `sent/`
231
+ - `archived/`
232
+ - `state.json`
233
+
234
+ 旧路径:
235
+
236
+ ```text
237
+ _系统/跨项目/
238
+ _system/cross-project/
239
+ ```
240
+
241
+ 旧路径只作为 legacy signal 输出,不作为新版标准路径。
242
+
243
+ ### Step 9:检查规则版本信号
244
+
245
+ 轻量扫描 `AGENTS.md`:
246
+
247
+ - 是否提到新版 `.starwork/handoff/`。
248
+ - 是否仍把 `_系统/跨项目/` 作为标准路径。
249
+ - 是否能找到当前项目状态和当前工作入口。
250
+ - 是否明确 Satellite 不把项目进度正文写回 Hub。
251
+ - 是否明确项目中心中央路由在语言映射后的协作目录中。
252
+
253
+ v0.1 只输出信号,不做复杂自然语言判定。
254
+
255
+ ## JSON 输出
256
+
257
+ ### 最小结构
258
+
259
+ ```json
260
+ {
261
+ "schema": "starwork.audit.result.v0.1",
262
+ "ok": false,
263
+ "strict_ok": false,
264
+ "hub": {
265
+ "path": "/Users/example/my-hub",
266
+ "ok": true,
267
+ "workspace": {
268
+ "core": "0.1",
269
+ "workspace_type": "hub",
270
+ "kit": "hub",
271
+ "language": "zh"
272
+ },
273
+ "doctor": {
274
+ "ok": true,
275
+ "summary": {
276
+ "pass": 12,
277
+ "info": 2,
278
+ "warn": 0,
279
+ "fail": 0
280
+ }
281
+ }
282
+ },
283
+ "registry": {
284
+ "path": "项目/registry.json",
285
+ "ok": true,
286
+ "projects_total": 2,
287
+ "duplicate_ids": [],
288
+ "missing_paths": []
289
+ },
290
+ "summary": {
291
+ "projects_total": 2,
292
+ "projects_checked": 2,
293
+ "projects_reachable": 2,
294
+ "pass": 1,
295
+ "warn": 1,
296
+ "fail": 0
297
+ },
298
+ "projects": [
299
+ {
300
+ "project_id": "content-site",
301
+ "name": "内容官网",
302
+ "status": "active",
303
+ "path": "/Users/example/projects/content-site",
304
+ "reachable": true,
305
+ "workspace_type": "project",
306
+ "kit": "project",
307
+ "language": "zh",
308
+ "doctor_ok": true,
309
+ "sync_ok": true,
310
+ "checks": [
311
+ {
312
+ "id": "satellite.path.exists",
313
+ "level": "pass",
314
+ "message": "Satellite path exists",
315
+ "trace": "/Users/example/projects/content-site"
316
+ }
317
+ ],
318
+ "legacy_signals": []
319
+ }
320
+ ],
321
+ "checks": []
322
+ }
323
+ ```
324
+
325
+ ### 项目结果字段
326
+
327
+ | 字段 | 说明 |
328
+ |---|---|
329
+ | `project_id` | Hub registry 中的项目 ID。 |
330
+ | `name` | 项目名称。 |
331
+ | `status` | registry 状态。 |
332
+ | `path` | registry 记录的 Satellite 路径。 |
333
+ | `reachable` | 路径是否存在且可读。 |
334
+ | `workspace_type` | Satellite workspace type。 |
335
+ | `language` | Satellite language。 |
336
+ | `doctor_ok` | 复用 doctor 后的健康结果。 |
337
+ | `sync_ok` | Hub 绑定与 `.core-sync.json` 是否一致。 |
338
+ | `checks` | 针对该项目的巡检项。 |
339
+ | `legacy_signals` | 旧路径或旧规则信号。 |
340
+
341
+ ## 检查等级
342
+
343
+ | 级别 | 含义 | 是否影响 `ok` |
344
+ |---|---|---|
345
+ | `pass` | 通过。 | 否 |
346
+ | `info` | 补充事实。 | 否 |
347
+ | `warn` | 有风险,但需要 AI 判断是否修复。 | 默认不影响;`--strict` 下影响 |
348
+ | `fail` | 阻塞问题,Hub 或 Satellite 巡检不可信。 | 是 |
349
+
350
+ ## 输出原则
351
+
352
+ `audit --json` 不允许输出:
353
+
354
+ - `next_steps`
355
+ - `suggestions`
356
+ - `recommended_actions`
357
+ - Pack 推荐
358
+ - 自动修复建议
359
+
360
+ 这些内容属于 `starworkAudit`。
361
+
362
+ ## 和 `starworkAudit` 的接口
363
+
364
+ `starworkAudit` 应优先运行:
365
+
366
+ ```bash
367
+ starwork audit --hub <hub-path> --json --inventory-depth all
368
+ ```
369
+
370
+ 然后基于 JSON 做:
371
+
372
+ - 整体健康解读。
373
+ - 项目问题分级。
374
+ - 需要用户确认的问题。
375
+ - 修复蓝图设计。
376
+
377
+ ## 和 `repair` 的接口
378
+
379
+ `audit` 不生成 repair blueprint,但它的 JSON 是 repair blueprint 的事实来源。
380
+
381
+ repair blueprint 应记录:
382
+
383
+ ```json
384
+ {
385
+ "source": {
386
+ "audit_schema": "starwork.audit.result.v0.1",
387
+ "hub": "/Users/example/my-hub"
388
+ }
389
+ }
390
+ ```
391
+
392
+ ## 验收测试
393
+
394
+ 第一版至少覆盖:
395
+
396
+ 1. 健康 Hub + 两个健康 Satellite,`audit` 返回 ok。
397
+ 2. `--project` 只巡检指定项目。
398
+ 3. registry 中项目路径不存在,项目结果为 fail。
399
+ 4. Satellite doctor fail,audit 聚合 fail。
400
+ 5. `.core-sync.json` 指向错误 Hub,audit 输出 sync warning 或 fail。
401
+ 6. Satellite 缺 `.starwork/handoff/`,audit 输出 warning。
402
+ 7. 旧 `_系统/跨项目/` 只作为 legacy signal。
403
+ 8. `audit --json` 不包含 next steps 或建议字段。