@sushanglewis/lincoln 1.5.0 → 1.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 (305) hide show
  1. package/dist/main.d.ts +3 -0
  2. package/dist/main.js +1231 -906
  3. package/dist/main.js.map +1 -1
  4. package/dist/postinstall.d.ts +3 -0
  5. package/dist/postinstall.js +18 -0
  6. package/dist/postinstall.js.map +1 -0
  7. package/framework/.claude/agents/_contract.md +79 -0
  8. package/framework/.claude/agents/architect.md +31 -0
  9. package/framework/.claude/agents/default.md +151 -0
  10. package/framework/.claude/agents/designer.md +33 -0
  11. package/framework/.claude/agents/engineer.md +42 -0
  12. package/framework/.claude/agents/external/NOTICES.md +12 -0
  13. package/framework/.claude/agents/external/everything-claude-code.manifest.yaml +23 -0
  14. package/framework/.claude/agents/external/oh-my-claudecode.manifest.yaml +26 -0
  15. package/framework/.claude/agents/external/wshobson-agents.manifest.yaml +23 -0
  16. package/framework/.claude/agents/frontend-engineer.md +32 -0
  17. package/framework/.claude/agents/knowledge-curator.md +28 -0
  18. package/framework/.claude/agents/pm.md +38 -0
  19. package/framework/.claude/agents/qa.md +28 -0
  20. package/framework/.claude/agents/release-coordinator.md +25 -0
  21. package/framework/.claude/agents/researcher.md +41 -0
  22. package/framework/.claude/harnesses/claude-code.yaml +15 -0
  23. package/framework/.claude/harnesses/codex.yaml +40 -0
  24. package/framework/.claude/harnesses/command-map.yaml +255 -0
  25. package/framework/.claude/harnesses/opencode.yaml +32 -0
  26. package/framework/.claude/harnesses/scenarios.yaml +45 -0
  27. package/framework/.claude/hooks/on-pr-event.sh +69 -0
  28. package/framework/.claude/hooks/on-session-start.sh +427 -0
  29. package/framework/.claude/hooks/on-stop.sh +104 -0
  30. package/framework/.claude/hooks/post-tool-use.sh +161 -0
  31. package/framework/.claude/hooks/pre-tool-use.sh +246 -0
  32. package/framework/.claude/schemas/agent-definition.schema.json +35 -0
  33. package/framework/.claude/schemas/benchmark-report.schema.json +148 -0
  34. package/framework/.claude/schemas/pm-to-ux-handoff.schema.yaml +128 -0
  35. package/framework/.claude/schemas/stage-definition.schema.json +233 -0
  36. package/framework/.claude/schemas/workflow-stage.schema.json +86 -0
  37. package/framework/.claude/schemas/workflow-template.schema.json +88 -0
  38. package/framework/.claude/settings.json +14 -0
  39. package/framework/.claude/skills/build-product-prototype/SKILL.md +35 -0
  40. package/framework/.claude/skills/build-product-prototype/prompts/main.md +78 -0
  41. package/framework/.claude/skills/clarify-requirements/SKILL.md +32 -0
  42. package/framework/.claude/skills/clarify-requirements/prompts/main.md +81 -0
  43. package/framework/.claude/skills/dependencies.yaml +139 -0
  44. package/framework/.claude/skills/draft-product-design/SKILL.md +40 -0
  45. package/framework/.claude/skills/draft-product-design/prompts/main.md +47 -0
  46. package/framework/.claude/skills/lc-analyze-frameworks/SKILL.md +43 -0
  47. package/framework/.claude/skills/lc-analyze-frameworks/prompts/main.md +95 -0
  48. package/framework/.claude/skills/lc-benchmark/SKILL.md +61 -0
  49. package/framework/.claude/skills/lc-build-codebase-knowledge/SKILL.md +38 -0
  50. package/framework/.claude/skills/lc-build-codebase-knowledge/prompts/build-codebase-knowledge.md +61 -0
  51. package/framework/.claude/skills/lc-collect-intelligence/SKILL.md +43 -0
  52. package/framework/.claude/skills/lc-collect-intelligence/prompts/main.md +72 -0
  53. package/framework/.claude/skills/lc-competitive-analysis/SKILL.md +43 -0
  54. package/framework/.claude/skills/lc-competitive-analysis/prompts/main.md +70 -0
  55. package/framework/.claude/skills/lc-explore-opensource/SKILL.md +36 -0
  56. package/framework/.claude/skills/lc-explore-opensource/prompts/explore-opensource.md +77 -0
  57. package/framework/.claude/skills/lc-first-principles/SKILL.md +43 -0
  58. package/framework/.claude/skills/lc-first-principles/prompts/main.md +73 -0
  59. package/framework/.claude/skills/lc-handoff/SKILL.md +34 -0
  60. package/framework/.claude/skills/lc-init-branch/SKILL.md +52 -0
  61. package/framework/.claude/skills/lc-market-research/SKILL.md +43 -0
  62. package/framework/.claude/skills/lc-market-research/prompts/main.md +79 -0
  63. package/framework/.claude/skills/lc-product-research/SKILL.md +43 -0
  64. package/framework/.claude/skills/lc-product-research/prompts/main.md +80 -0
  65. package/framework/.claude/skills/lc-research-report/SKILL.md +43 -0
  66. package/framework/.claude/skills/lc-research-report/prompts/main.md +90 -0
  67. package/framework/.claude/skills/lc-research-scope/SKILL.md +43 -0
  68. package/framework/.claude/skills/lc-research-scope/prompts/main.md +82 -0
  69. package/framework/.claude/skills/lc-setup/SKILL.md +68 -0
  70. package/framework/.claude/skills/lc-setup/prompts/main.md +88 -0
  71. package/framework/.claude/skills/lc-stage/SKILL.md +45 -0
  72. package/framework/.claude/skills/lc-stakeholder-research/SKILL.md +43 -0
  73. package/framework/.claude/skills/lc-stakeholder-research/prompts/main.md +65 -0
  74. package/framework/.claude/skills/lc-status/SKILL.md +25 -0
  75. package/framework/.claude/skills/lc-storytelling/SKILL.md +43 -0
  76. package/framework/.claude/skills/lc-storytelling/prompts/main.md +77 -0
  77. package/framework/.claude/skills/lc-wf/SKILL.md +54 -0
  78. package/framework/.claude/skills/lc-workflow/SKILL.md +48 -0
  79. package/framework/.claude/skills/lc-workflow/validators/validate.py +755 -0
  80. package/framework/.claude/skills/lc-workflow-router/SKILL.md +41 -0
  81. package/framework/.claude/skills/lc-workflow-router/prompts/intake-prompt.md +91 -0
  82. package/framework/.claude/skills/lc-workflow-router/prompts/router-prompt.md +44 -0
  83. package/framework/.claude/skills/plan-tdd-development/SKILL.md +31 -0
  84. package/framework/.claude/skills/plan-tdd-development/prompts/main.md +44 -0
  85. package/framework/.claude/skills/process-interview/SKILL.md +32 -0
  86. package/framework/.claude/skills/process-interview/prompts/main.md +47 -0
  87. package/framework/.claude/skills/propose-with-openspec/SKILL.md +37 -0
  88. package/framework/.claude/skills/propose-with-openspec/prompts/main.md +53 -0
  89. package/framework/.claude/skills/split-to-github/SKILL.md +32 -0
  90. package/framework/.claude/skills/split-to-github/prompts/main.md +42 -0
  91. package/framework/.claude/skills/sync-to-knowledge/SKILL.md +35 -0
  92. package/framework/.claude/skills/sync-to-knowledge/prompts/main.md +54 -0
  93. package/framework/.claude/skills/workflow-continue/SKILL.md +24 -0
  94. package/framework/.claude/skills/workflow-continue/prompts/main.md +25 -0
  95. package/framework/.claude/stages/build-codebase-knowledge.yaml +42 -0
  96. package/framework/.claude/stages/clarify.yaml +59 -0
  97. package/framework/.claude/stages/explore-opensource.yaml +40 -0
  98. package/framework/.claude/stages/implement.yaml +60 -0
  99. package/framework/.claude/stages/ingest.yaml +40 -0
  100. package/framework/.claude/stages/lc-analyze-frameworks.yaml +37 -0
  101. package/framework/.claude/stages/lc-collect-intelligence.yaml +37 -0
  102. package/framework/.claude/stages/lc-competitive-analysis.yaml +37 -0
  103. package/framework/.claude/stages/lc-first-principles.yaml +37 -0
  104. package/framework/.claude/stages/lc-market-research.yaml +37 -0
  105. package/framework/.claude/stages/lc-product-research.yaml +37 -0
  106. package/framework/.claude/stages/lc-research-report.yaml +38 -0
  107. package/framework/.claude/stages/lc-research-scope.yaml +38 -0
  108. package/framework/.claude/stages/lc-stakeholder-research.yaml +37 -0
  109. package/framework/.claude/stages/lc-storytelling.yaml +37 -0
  110. package/framework/.claude/stages/product-design-docs.yaml +66 -0
  111. package/framework/.claude/stages/product-prototype.yaml +53 -0
  112. package/framework/.claude/stages/propose.yaml +45 -0
  113. package/framework/.claude/stages/split.yaml +41 -0
  114. package/framework/.claude/stages/sync-knowledge.yaml +49 -0
  115. package/framework/.claude/stages/tdd-development-plan.yaml +43 -0
  116. package/framework/.claude/stages/workflow-router.yaml +45 -0
  117. package/framework/.claude/templates/solo-workflow-context.yaml +23 -0
  118. package/framework/.claude/workflows/README.md +93 -0
  119. package/framework/.claude/workflows/bug-fix.yaml +81 -0
  120. package/framework/.claude/workflows/design-spike.yaml +55 -0
  121. package/framework/.claude/workflows/existing-project-iteration.yaml +106 -0
  122. package/framework/.claude/workflows/interview-to-knowledge.yaml +189 -0
  123. package/framework/.claude/workflows/oss-first-design.yaml +100 -0
  124. package/framework/.claude/workflows/pm-research.yaml +115 -0
  125. package/framework/.claude-plugin/hooks.json +6 -0
  126. package/framework/.claude-plugin/marketplace.json +32 -0
  127. package/framework/.claude-plugin/plugin.json +57 -0
  128. package/framework/.version-bump.json +43 -0
  129. package/framework/CLAUDE.md +140 -0
  130. package/framework/CONTRIBUTING.md +219 -0
  131. package/framework/LICENSE +21 -0
  132. package/framework/README.en.md +139 -0
  133. package/framework/README.md +139 -0
  134. package/framework/RELEASE.md +334 -0
  135. package/framework/SKILL.md +24 -0
  136. package/framework/USAGE.md +356 -0
  137. package/framework/manifest.json +1214 -0
  138. package/framework/requirements.txt +4 -0
  139. package/framework/scripts/__init__.py +0 -0
  140. package/framework/scripts/build_codebase_knowledge.py +76 -0
  141. package/framework/scripts/bump_version.py +181 -0
  142. package/framework/scripts/check-dependency-drift.py +69 -0
  143. package/framework/scripts/check-harness-drift.sh +57 -0
  144. package/framework/scripts/check-main-merge-hygiene.py +128 -0
  145. package/framework/scripts/check-skill-dependencies.sh +124 -0
  146. package/framework/scripts/init-lincoln-branch.sh +300 -0
  147. package/framework/scripts/init-project.sh +184 -0
  148. package/framework/scripts/lc-benchmark-cli.py +66 -0
  149. package/framework/scripts/lincoln-audit.py +288 -0
  150. package/framework/scripts/lincoln-setup.py +651 -0
  151. package/framework/scripts/lincoln-status.py +448 -0
  152. package/framework/scripts/lincoln_benchmark.py +224 -0
  153. package/framework/scripts/lincoln_benchmark_eval.py +104 -0
  154. package/framework/scripts/lincoln_benchmark_metrics.py +818 -0
  155. package/framework/scripts/lincoln_benchmark_report.py +141 -0
  156. package/framework/scripts/lincoln_command_map.py +289 -0
  157. package/framework/scripts/lincoln_dependency_manager.py +335 -0
  158. package/framework/scripts/lincoln_documents.py +175 -0
  159. package/framework/scripts/lincoln_harness_adapter.py +319 -0
  160. package/framework/scripts/lincoln_index.py +255 -0
  161. package/framework/scripts/lincoln_paths.py +198 -0
  162. package/framework/scripts/lincoln_prd.py +227 -0
  163. package/framework/scripts/lincoln_role.py +46 -0
  164. package/framework/scripts/lincoln_scenario.py +59 -0
  165. package/framework/scripts/lincoln_session_start_metrics.py +71 -0
  166. package/framework/scripts/lincoln_skill_prompt.py +48 -0
  167. package/framework/scripts/lincoln_trace.py +335 -0
  168. package/framework/scripts/lincoln_workflow.py +199 -0
  169. package/framework/scripts/list-active-lincoln-branches.sh +87 -0
  170. package/framework/scripts/package-lincoln-plugin.py +340 -0
  171. package/framework/scripts/run-infrastructure-tests.py +84 -0
  172. package/framework/scripts/stage_loader.py +1071 -0
  173. package/framework/scripts/static-check.sh +356 -0
  174. package/framework/scripts/sync-external-agents.sh +210 -0
  175. package/framework/scripts/sync-framework-package.mjs +218 -0
  176. package/framework/scripts/task_tool_guard.py +213 -0
  177. package/framework/scripts/track-artifacts.py +140 -0
  178. package/framework/scripts/validate_stage.py +350 -0
  179. package/{README.md → framework/tools/lincoln/README.md} +4 -4
  180. package/framework/tools/lincoln/package-lock.json +3349 -0
  181. package/framework/tools/lincoln/package.json +48 -0
  182. package/framework/tools/lincoln/src/cli.tsx +60 -0
  183. package/framework/tools/lincoln/src/components/AudioMeter.tsx +34 -0
  184. package/framework/tools/lincoln/src/components/CancelledScreen.tsx +11 -0
  185. package/framework/tools/lincoln/src/components/DevicesMenu.tsx +79 -0
  186. package/framework/tools/lincoln/src/components/HintBar.tsx +25 -0
  187. package/framework/tools/lincoln/src/components/LogView.tsx +36 -0
  188. package/framework/tools/lincoln/src/components/ModelMenu.tsx +122 -0
  189. package/framework/tools/lincoln/src/components/ReadyScreen.tsx +54 -0
  190. package/framework/tools/lincoln/src/components/RecordingApp.tsx +211 -0
  191. package/framework/tools/lincoln/src/components/RecordingScreen.tsx +41 -0
  192. package/framework/tools/lincoln/src/components/SelectMenu.tsx +53 -0
  193. package/framework/tools/lincoln/src/components/StatusPanel.tsx +52 -0
  194. package/framework/tools/lincoln/src/components/StopConfirmation.tsx +32 -0
  195. package/framework/tools/lincoln/src/config/args.ts +35 -0
  196. package/framework/tools/lincoln/src/config/loadConfig.ts +81 -0
  197. package/framework/tools/lincoln/src/config/resolveConfig.ts +85 -0
  198. package/framework/tools/lincoln/src/devices/listDevices.ts +11 -0
  199. package/framework/tools/lincoln/src/devices/parseDevices.ts +25 -0
  200. package/framework/tools/lincoln/src/hooks/useKeyHandler.ts +63 -0
  201. package/framework/tools/lincoln/src/main.tsx +4 -0
  202. package/framework/tools/lincoln/src/models/models.ts +34 -0
  203. package/framework/tools/lincoln/src/models/runWarmup.ts +46 -0
  204. package/framework/tools/lincoln/src/models/warmupProgress.ts +30 -0
  205. package/framework/tools/lincoln/src/recording/spawnRecorder.ts +127 -0
  206. package/framework/tools/lincoln/src/recording/useRecorder.ts +146 -0
  207. package/framework/tools/lincoln/src/utils/amplitudeToMeter.ts +4 -0
  208. package/framework/tools/lincoln/src/utils/formatDuration.ts +6 -0
  209. package/framework/tools/lincoln/src/utils/sessionId.ts +25 -0
  210. package/framework/tools/lincoln/tests/cli.test.tsx +52 -0
  211. package/framework/tools/lincoln/tests/components/AudioMeter.test.tsx +31 -0
  212. package/framework/tools/lincoln/tests/components/CancelledScreen.test.tsx +12 -0
  213. package/framework/tools/lincoln/tests/components/ReadyScreen.test.tsx +68 -0
  214. package/framework/tools/lincoln/tests/components/RecordingApp.menus.test.tsx +158 -0
  215. package/framework/tools/lincoln/tests/components/RecordingApp.test.tsx +248 -0
  216. package/framework/tools/lincoln/tests/components/RecordingScreen.test.tsx +37 -0
  217. package/framework/tools/lincoln/tests/components/SelectMenu.test.tsx +59 -0
  218. package/framework/tools/lincoln/tests/components/StopConfirmation.test.tsx +38 -0
  219. package/framework/tools/lincoln/tests/config/args.test.ts +49 -0
  220. package/framework/tools/lincoln/tests/config/loadConfig.test.ts +59 -0
  221. package/framework/tools/lincoln/tests/config/resolveConfig.test.ts +72 -0
  222. package/framework/tools/lincoln/tests/devices/parseDevices.test.ts +21 -0
  223. package/framework/tools/lincoln/tests/hooks/useKeyHandler.enabled.test.tsx +44 -0
  224. package/framework/tools/lincoln/tests/hooks/useKeyHandler.test.tsx +130 -0
  225. package/framework/tools/lincoln/tests/models/models.test.ts +27 -0
  226. package/framework/tools/lincoln/tests/models/warmupProgress.test.ts +25 -0
  227. package/framework/tools/lincoln/tests/recording/spawnRecorder.test.ts +85 -0
  228. package/framework/tools/lincoln/tests/recording/useRecorder.test.tsx +172 -0
  229. package/framework/tools/lincoln/tests/utils/amplitudeToMeter.test.ts +22 -0
  230. package/framework/tools/lincoln/tests/utils/formatDuration.test.ts +11 -0
  231. package/framework/tools/lincoln/tests/utils/sessionId.test.ts +30 -0
  232. package/framework/tools/lincoln/tsconfig.json +22 -0
  233. package/framework/tools/lincoln/tsconfig.tests.json +10 -0
  234. package/framework/tools/lincoln/tsup.config.ts +17 -0
  235. package/framework/tools/lincoln/vitest.config.ts +20 -0
  236. package/framework/tools/lincoln-installer/package-lock.json +3611 -0
  237. package/framework/tools/lincoln-installer/package.json +53 -0
  238. package/framework/tools/lincoln-installer/src/cli.tsx +63 -0
  239. package/framework/tools/lincoln-installer/src/components/HarnessSelectScreen.tsx +43 -0
  240. package/framework/tools/lincoln-installer/src/components/InstallerApp.tsx +98 -0
  241. package/framework/tools/lincoln-installer/src/components/OptionsScreen.tsx +56 -0
  242. package/framework/tools/lincoln-installer/src/components/ProgressScreen.tsx +25 -0
  243. package/framework/tools/lincoln-installer/src/components/ResultScreen.tsx +40 -0
  244. package/framework/tools/lincoln-installer/src/components/SelectMenu.tsx +73 -0
  245. package/framework/tools/lincoln-installer/src/components/SummaryScreen.tsx +49 -0
  246. package/framework/tools/lincoln-installer/src/components/UpdateApp.tsx +135 -0
  247. package/framework/tools/lincoln-installer/src/components/WelcomeScreen.tsx +22 -0
  248. package/framework/tools/lincoln-installer/src/config/args.ts +76 -0
  249. package/framework/tools/lincoln-installer/src/config/resolveConfig.ts +33 -0
  250. package/framework/tools/lincoln-installer/src/config/updateArgs.ts +67 -0
  251. package/framework/tools/lincoln-installer/src/hooks/useSetup.ts +149 -0
  252. package/framework/tools/lincoln-installer/src/main.tsx +11 -0
  253. package/framework/tools/lincoln-installer/src/types.ts +19 -0
  254. package/framework/tools/lincoln-installer/src/update-main.tsx +11 -0
  255. package/framework/tools/lincoln-installer/src/update.tsx +90 -0
  256. package/framework/tools/lincoln-installer/src/utils/detectHarness.ts +51 -0
  257. package/framework/tools/lincoln-installer/src/utils/runSetup.ts +62 -0
  258. package/framework/tools/lincoln-installer/src/utils/updateRelease.ts +454 -0
  259. package/framework/tools/lincoln-installer/tests/components/InstallerApp.test.tsx +88 -0
  260. package/framework/tools/lincoln-installer/tests/components/SelectMenu.test.tsx +26 -0
  261. package/framework/tools/lincoln-installer/tests/components/UpdateApp.test.tsx +170 -0
  262. package/framework/tools/lincoln-installer/tests/components/screens.test.tsx +310 -0
  263. package/framework/tools/lincoln-installer/tests/config/args.test.ts +66 -0
  264. package/framework/tools/lincoln-installer/tests/config/resolveConfig.test.ts +75 -0
  265. package/framework/tools/lincoln-installer/tests/config/updateArgs.test.ts +52 -0
  266. package/framework/tools/lincoln-installer/tests/hooks/useSetup.test.tsx +213 -0
  267. package/framework/tools/lincoln-installer/tests/update.test.tsx +108 -0
  268. package/framework/tools/lincoln-installer/tests/utils/detectHarness.test.ts +40 -0
  269. package/framework/tools/lincoln-installer/tests/utils/runSetup.test.ts +45 -0
  270. package/framework/tools/lincoln-installer/tests/utils/updateRelease.test.ts +559 -0
  271. package/framework/tools/lincoln-installer/tsconfig.json +22 -0
  272. package/framework/tools/lincoln-installer/tsconfig.tests.json +8 -0
  273. package/framework/tools/lincoln-installer/tsup.config.ts +17 -0
  274. package/framework/tools/lincoln-installer/vitest.config.ts +20 -0
  275. package/framework/tools/lincoln-record/Cargo.lock +1896 -0
  276. package/framework/tools/lincoln-record/Cargo.toml +24 -0
  277. package/framework/tools/lincoln-record/diarize/diarize.py +117 -0
  278. package/framework/tools/lincoln-record/diarize/merge.py +55 -0
  279. package/framework/tools/lincoln-record/src/audio/capture/microphone.rs +194 -0
  280. package/framework/tools/lincoln-record/src/audio/capture/mod.rs +1 -0
  281. package/framework/tools/lincoln-record/src/audio/devices.rs +20 -0
  282. package/framework/tools/lincoln-record/src/audio/mod.rs +5 -0
  283. package/framework/tools/lincoln-record/src/audio/resampler.rs +44 -0
  284. package/framework/tools/lincoln-record/src/audio/saver.rs +87 -0
  285. package/framework/tools/lincoln-record/src/audio/source.rs +104 -0
  286. package/framework/tools/lincoln-record/src/cli.rs +96 -0
  287. package/framework/tools/lincoln-record/src/config.rs +135 -0
  288. package/framework/tools/lincoln-record/src/lib.rs +6 -0
  289. package/framework/tools/lincoln-record/src/main.rs +242 -0
  290. package/framework/tools/lincoln-record/src/model/mod.rs +248 -0
  291. package/framework/tools/lincoln-record/src/output/metadata.rs +30 -0
  292. package/framework/tools/lincoln-record/src/output/mod.rs +2 -0
  293. package/framework/tools/lincoln-record/src/output/transcript.rs +42 -0
  294. package/framework/tools/lincoln-record/src/transcription/diarization.rs +64 -0
  295. package/framework/tools/lincoln-record/src/transcription/mod.rs +3 -0
  296. package/framework/tools/lincoln-record/src/transcription/provider.rs +43 -0
  297. package/framework/tools/lincoln-record/src/transcription/whisper.rs +176 -0
  298. package/framework/tools/lincoln-record/tests/cli_args.rs +103 -0
  299. package/framework/tools/lincoln-record/tests/config_test.rs +70 -0
  300. package/framework/tools/lincoln-record/tests/devices_test.rs +23 -0
  301. package/framework/tools/lincoln-record/tests/diarization_tests.rs +101 -0
  302. package/framework/tools/lincoln-record/tests/integration_tests.rs +44 -0
  303. package/framework/tools/lincoln-record/tests/model_test.rs +68 -0
  304. package/framework/tools/lincoln-record/tests/transcription_tests.rs +73 -0
  305. package/package.json +19 -13
@@ -0,0 +1,42 @@
1
+ schema_version: 2.0.0
2
+ id: build-codebase-knowledge
3
+ name: Build Codebase Knowledge
4
+ description: 'Scans existing source code and builds knowledge base
5
+
6
+ for projects entering Lincoln with existing code but no
7
+
8
+ feature knowledge base. Triggered by existing-project-iteration
9
+
10
+ template after workflow-router.'
11
+ templates:
12
+ - existing-project-iteration
13
+ prerequisite_stage: workflow-router
14
+ next_stage: clarify
15
+ human_gate: false
16
+ agent:
17
+ primary: lc-knowledge-curator
18
+ reviewers:
19
+ - lc-engineer
20
+ handoff_to: lc-pm
21
+ skills:
22
+ required: []
23
+ optional: []
24
+ artifacts:
25
+ required:
26
+ - knowledge/00-index.md
27
+ context:
28
+ goal: 为已有源码项目构建功能知识库,使后续 PM 迭代能基于事实。
29
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml。
30
+
31
+ - 禁止修改 {process_slug}/recordings/ 中的原始文件。
32
+
33
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
34
+
35
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
36
+ gates:
37
+ entry:
38
+ - check: previous_stage_completed
39
+ args:
40
+ - workflow-router
41
+ exit:
42
+ - check: artifacts_present
@@ -0,0 +1,59 @@
1
+ schema_version: 2.0.0
2
+ id: clarify
3
+ name: Clarify
4
+ description: 'Explores requirements, resolves ambiguity, and produces
5
+
6
+ confirmed requirements before design work begins.'
7
+ templates: all
8
+ prerequisite_stage: ingest
9
+ next_stage: product-design-docs
10
+ human_gate: true
11
+ agent:
12
+ primary: lc-pm
13
+ reviewers:
14
+ - lc-qa
15
+ handoff_to: lc-pm
16
+ skills:
17
+ required:
18
+ - superpowers:brainstorming
19
+ optional:
20
+ - gsd:import
21
+ - gsd:discuss-phase
22
+ - oh-my-claudecode:deep-interview
23
+ - openspec:explore
24
+ artifacts:
25
+ required:
26
+ - '{process_slug}/pages/docs/requirements.html'
27
+ - '{process_slug}/pages/docs/user-stories.html'
28
+ - '{process_slug}/pages/docs/prd.html'
29
+ optional:
30
+ - '{process_slug}/pages/docs/snapshots/prd-v*.html'
31
+ context:
32
+ goal: 基于访谈产物(逐字稿、摘要、初始洞察)与人类 PM 进行多轮澄清,形成统一、可追溯、已确认的需求文档,并将 PRD 置于 HTML 门户({process_slug}/pages/docs/prd.html)作为串联后续所有阶段的主线文档与单一事实来源。人类读者通过 {process_slug}/index.html 浏览所有产物。
33
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml。
34
+
35
+ - 禁止修改 {process_slug}/recordings/ 中的原始文件。
36
+
37
+ - 本阶段设有 human_gate,必须获得人类 PM 显式确认后才能进入下一阶段。
38
+
39
+ - PRD 必须位于 {process_slug}/pages/docs/prd.html,并携带 <!-- version: vX.Y --> 版本标记;确认后通过 scripts/lincoln_prd.py freeze 生成不可变的 pages/docs/snapshots/prd-vX.Y.html 快照。
40
+
41
+ - PRD 是产研流程的主线文档,需在后续阶段持续维护「相关产物链接」章节,指向设计、原型、OpenSpec、实现等产物。
42
+
43
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
44
+
45
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
46
+ gates:
47
+ entry:
48
+ - check: previous_stage_completed
49
+ args:
50
+ - ingest
51
+ exit:
52
+ - check: artifacts_present
53
+ - check: prd_has_required_sections
54
+ args:
55
+ - '{process_slug}/pages/docs/prd.html'
56
+ - check: human_approved
57
+ - check: prd_snapshot_present
58
+ args:
59
+ - '{process_slug}/pages/docs/prd.html'
@@ -0,0 +1,40 @@
1
+ schema_version: 2.0.0
2
+ id: explore-opensource
3
+ name: Explore Open Source
4
+ description: 'Researches existing open-source projects that can inform
5
+
6
+ or solve the current requirement. Triggered by oss-first-design
7
+
8
+ template after clarify.'
9
+ templates:
10
+ - oss-first-design
11
+ prerequisite_stage: clarify
12
+ next_stage: product-design-docs
13
+ human_gate: false
14
+ agent:
15
+ primary: lc-researcher
16
+ reviewers:
17
+ - lc-engineer
18
+ handoff_to: lc-pm
19
+ skills:
20
+ required: []
21
+ optional: []
22
+ artifacts:
23
+ required:
24
+ - '{process_slug}/docs/research/{change_name}-oss-options.md'
25
+ context:
26
+ goal: 在设计阶段探索开源方案,避免从零造轮子,并为实现提供参考。
27
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml。
28
+
29
+ - 禁止修改 {process_slug}/recordings/ 中的原始文件。
30
+
31
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
32
+
33
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
34
+ gates:
35
+ entry:
36
+ - check: previous_stage_completed
37
+ args:
38
+ - clarify
39
+ exit:
40
+ - check: artifacts_present
@@ -0,0 +1,60 @@
1
+ schema_version: 2.0.0
2
+ id: implement
3
+ name: Implement
4
+ description: 'Core implementation stage. Engineering executes tasks with TDD
5
+
6
+ discipline, code review, and PR submission. Lincoln pauses here
7
+
8
+ for human engineering work; test/verify and ship occur within
9
+
10
+ this stage or as follow-up PR lifecycle steps.'
11
+ templates: all
12
+ prerequisite_stage: split
13
+ next_stage: sync-knowledge
14
+ human_gate: true
15
+ agent:
16
+ primary: lc-engineer
17
+ reviewers:
18
+ - lc-qa
19
+ - lc-release-coordinator
20
+ - lc-architect
21
+ handoff_to: lc-knowledge-curator
22
+ skills:
23
+ required:
24
+ - superpowers:test-driven-development
25
+ - superpowers:verification-before-completion
26
+ optional:
27
+ - openspec:apply-change
28
+ - superpowers:subagent-driven-development
29
+ - superpowers:using-git-worktrees
30
+ - superpowers:systematic-debugging
31
+ - superpowers:finishing-a-development-branch
32
+ - superpowers:requesting-code-review
33
+ - superpowers:receiving-code-review
34
+ - gsd:execute-phase
35
+ - gsd:code-review
36
+ - gsd:debug
37
+ - oh-my-claudecode:team
38
+ - oh-my-claudecode:autopilot
39
+ - oh-my-claudecode:ralph
40
+ - oh-my-claudecode:ultrawork
41
+ artifacts:
42
+ required: []
43
+ context:
44
+ goal: 人类研发团队基于已创建的 GitHub Issues 进行代码开发并提交 PR。
45
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml。
46
+
47
+ - 禁止修改 {process_slug}/recordings/ 中的原始文件。
48
+
49
+ - 本阶段设有 human_gate,必须获得人类 PM 显式确认后才能进入下一阶段。
50
+
51
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
52
+
53
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
54
+ gates:
55
+ entry:
56
+ - check: previous_stage_completed
57
+ args:
58
+ - split
59
+ exit:
60
+ - check: human_approved
@@ -0,0 +1,40 @@
1
+ schema_version: 2.0.0
2
+ id: ingest
3
+ name: Ingest
4
+ description: 'Ingests raw interview recordings and produces transcripts,
5
+
6
+ summaries, and raw insights.'
7
+ templates:
8
+ - interview-to-knowledge
9
+ prerequisite_stage: workflow-router
10
+ next_stage: clarify
11
+ human_gate: false
12
+ agent:
13
+ primary: lc-pm
14
+ handoff_to: lc-pm
15
+ skills:
16
+ required: []
17
+ optional:
18
+ - oh-my-claudecode:deep-interview
19
+ artifacts:
20
+ required:
21
+ - '{process_slug}/interviews/{session_id}/metadata.json'
22
+ - '{process_slug}/interviews/{session_id}/transcript.md'
23
+ - '{process_slug}/interviews/{session_id}/summary.md'
24
+ - '{process_slug}/interviews/{session_id}/raw-insights.md'
25
+ context:
26
+ goal: 将音频访谈录音转写为结构化文本,生成带时间戳的逐字稿、摘要和初始洞察,为后续需求澄清阶段提供输入。
27
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml。
28
+
29
+ - 禁止修改 {process_slug}/recordings/ 中的原始文件。
30
+
31
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
32
+
33
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
34
+ gates:
35
+ entry:
36
+ - check: previous_stage_completed
37
+ args:
38
+ - workflow-router
39
+ exit:
40
+ - check: artifacts_present
@@ -0,0 +1,37 @@
1
+ schema_version: 2.0.0
2
+ id: lc-analyze-frameworks
3
+ name: 分析框架应用
4
+ description: '选择并应用 SWOT、波特五力、商业模式画布、PEST 等分析框架,规划可视化方案。'
5
+ templates:
6
+ - pm-research
7
+ prerequisite_stage: lc-competitive-analysis
8
+ next_stage: lc-collect-intelligence
9
+ human_gate: false
10
+ agent:
11
+ primary: lc-researcher
12
+ reviewers:
13
+ - lc-pm
14
+ handoff_to: null
15
+ skills:
16
+ required:
17
+ - lincoln:lc-analyze-frameworks
18
+ optional: []
19
+ artifacts:
20
+ required:
21
+ - '{process_slug}/research/{session_id}/analysis-frameworks.md'
22
+ context:
23
+ goal: 选择并应用 SWOT、波特五力、商业模式画布、PEST 等分析框架,规划可视化方案。
24
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml 或 .context/workflow/pm-research.yaml。
25
+
26
+ - 本阶段产物写入 {process_slug}/research/{session_id}/。
27
+
28
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
29
+
30
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
31
+ gates:
32
+ entry:
33
+ - check: previous_stage_completed
34
+ args:
35
+ - lc-competitive-analysis
36
+ exit:
37
+ - check: artifacts_present
@@ -0,0 +1,37 @@
1
+ schema_version: 2.0.0
2
+ id: lc-collect-intelligence
3
+ name: 信息收集
4
+ description: '基于权威报告、官方动态、开放 API 等渠道体系化收集研究证据并标注来源。'
5
+ templates:
6
+ - pm-research
7
+ prerequisite_stage: lc-analyze-frameworks
8
+ next_stage: lc-storytelling
9
+ human_gate: false
10
+ agent:
11
+ primary: lc-researcher
12
+ reviewers:
13
+ - lc-pm
14
+ handoff_to: null
15
+ skills:
16
+ required:
17
+ - lincoln:lc-collect-intelligence
18
+ optional: []
19
+ artifacts:
20
+ required:
21
+ - '{process_slug}/research/{session_id}/collected-intelligence.md'
22
+ context:
23
+ goal: 基于权威报告、官方动态、开放 API 等渠道体系化收集研究证据并标注来源。
24
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml 或 .context/workflow/pm-research.yaml。
25
+
26
+ - 本阶段产物写入 {process_slug}/research/{session_id}/。
27
+
28
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
29
+
30
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
31
+ gates:
32
+ entry:
33
+ - check: previous_stage_completed
34
+ args:
35
+ - lc-analyze-frameworks
36
+ exit:
37
+ - check: artifacts_present
@@ -0,0 +1,37 @@
1
+ schema_version: 2.0.0
2
+ id: lc-competitive-analysis
3
+ name: 竞品分析
4
+ description: '分析竞争格局、竞争对手定位与差异化机会。'
5
+ templates:
6
+ - pm-research
7
+ prerequisite_stage: lc-product-research
8
+ next_stage: lc-analyze-frameworks
9
+ human_gate: false
10
+ agent:
11
+ primary: lc-researcher
12
+ reviewers:
13
+ - lc-pm
14
+ handoff_to: null
15
+ skills:
16
+ required:
17
+ - lincoln:lc-competitive-analysis
18
+ optional: []
19
+ artifacts:
20
+ required:
21
+ - '{process_slug}/research/{session_id}/competitive.md'
22
+ context:
23
+ goal: 分析竞争格局、竞争对手定位与差异化机会。
24
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml 或 .context/workflow/pm-research.yaml。
25
+
26
+ - 本阶段产物写入 {process_slug}/research/{session_id}/。
27
+
28
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
29
+
30
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
31
+ gates:
32
+ entry:
33
+ - check: previous_stage_completed
34
+ args:
35
+ - lc-product-research
36
+ exit:
37
+ - check: artifacts_present
@@ -0,0 +1,37 @@
1
+ schema_version: 2.0.0
2
+ id: lc-first-principles
3
+ name: 第一性原理探索
4
+ description: '挑战现有假设,挖掘底层真相,为研究建立第一性原理基础。'
5
+ templates:
6
+ - pm-research
7
+ prerequisite_stage: lc-research-scope
8
+ next_stage: lc-stakeholder-research
9
+ human_gate: false
10
+ agent:
11
+ primary: lc-pm
12
+ reviewers:
13
+ - lc-researcher
14
+ handoff_to: null
15
+ skills:
16
+ required:
17
+ - lincoln:lc-first-principles
18
+ optional: []
19
+ artifacts:
20
+ required:
21
+ - '{process_slug}/research/{session_id}/first-principles.md'
22
+ context:
23
+ goal: 挑战现有假设,挖掘底层真相,为研究建立第一性原理基础。
24
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml 或 .context/workflow/pm-research.yaml。
25
+
26
+ - 本阶段产物写入 {process_slug}/research/{session_id}/。
27
+
28
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
29
+
30
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
31
+ gates:
32
+ entry:
33
+ - check: previous_stage_completed
34
+ args:
35
+ - lc-research-scope
36
+ exit:
37
+ - check: artifacts_present
@@ -0,0 +1,37 @@
1
+ schema_version: 2.0.0
2
+ id: lc-market-research
3
+ name: 市场研究
4
+ description: '分析市场规模、趋势、细分与动态,为产品定位提供事实基础。'
5
+ templates:
6
+ - pm-research
7
+ prerequisite_stage: lc-stakeholder-research
8
+ next_stage: lc-product-research
9
+ human_gate: false
10
+ agent:
11
+ primary: lc-researcher
12
+ reviewers:
13
+ - lc-pm
14
+ handoff_to: null
15
+ skills:
16
+ required:
17
+ - lincoln:lc-market-research
18
+ optional: []
19
+ artifacts:
20
+ required:
21
+ - '{process_slug}/research/{session_id}/market.md'
22
+ context:
23
+ goal: 分析市场规模、趋势、细分与动态,为产品定位提供事实基础。
24
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml 或 .context/workflow/pm-research.yaml。
25
+
26
+ - 本阶段产物写入 {process_slug}/research/{session_id}/。
27
+
28
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
29
+
30
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
31
+ gates:
32
+ entry:
33
+ - check: previous_stage_completed
34
+ args:
35
+ - lc-stakeholder-research
36
+ exit:
37
+ - check: artifacts_present
@@ -0,0 +1,37 @@
1
+ schema_version: 2.0.0
2
+ id: lc-product-research
3
+ name: 产品研究
4
+ description: '研究相关产品与解决方案的能力、价值主张、使用场景与优劣势。'
5
+ templates:
6
+ - pm-research
7
+ prerequisite_stage: lc-market-research
8
+ next_stage: lc-competitive-analysis
9
+ human_gate: false
10
+ agent:
11
+ primary: lc-researcher
12
+ reviewers:
13
+ - lc-pm
14
+ handoff_to: null
15
+ skills:
16
+ required:
17
+ - lincoln:lc-product-research
18
+ optional: []
19
+ artifacts:
20
+ required:
21
+ - '{process_slug}/research/{session_id}/product-research.md'
22
+ context:
23
+ goal: 研究相关产品与解决方案的能力、价值主张、使用场景与优劣势。
24
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml 或 .context/workflow/pm-research.yaml。
25
+
26
+ - 本阶段产物写入 {process_slug}/research/{session_id}/。
27
+
28
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
29
+
30
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
31
+ gates:
32
+ entry:
33
+ - check: previous_stage_completed
34
+ args:
35
+ - lc-market-research
36
+ exit:
37
+ - check: artifacts_present
@@ -0,0 +1,38 @@
1
+ schema_version: 2.0.0
2
+ id: lc-research-report
3
+ name: 研究报告
4
+ description: '整合全流程产物,输出可交付、可沉淀的最终研究报告。'
5
+ templates:
6
+ - pm-research
7
+ prerequisite_stage: lc-storytelling
8
+ next_stage: null
9
+ human_gate: true
10
+ agent:
11
+ primary: lc-pm
12
+ reviewers:
13
+ - lc-researcher
14
+ handoff_to: null
15
+ skills:
16
+ required:
17
+ - lincoln:lc-research-report
18
+ optional: []
19
+ artifacts:
20
+ required:
21
+ - '{process_slug}/research/{session_id}/report.md'
22
+ context:
23
+ goal: 整合全流程产物,输出可交付、可沉淀的最终研究报告。
24
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml 或 .context/workflow/pm-research.yaml。
25
+
26
+ - 本阶段产物写入 {process_slug}/research/{session_id}/。
27
+
28
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
29
+
30
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
31
+ gates:
32
+ entry:
33
+ - check: previous_stage_completed
34
+ args:
35
+ - lc-storytelling
36
+ exit:
37
+ - check: artifacts_present
38
+ - check: human_approved
@@ -0,0 +1,38 @@
1
+ schema_version: 2.0.0
2
+ id: lc-research-scope
3
+ name: 界定研究范围
4
+ description: '与 PM 澄清研究目标、问题、范围与验收标准,输出已确认的研究 brief。'
5
+ templates:
6
+ - pm-research
7
+ prerequisite_stage: workflow-router
8
+ next_stage: lc-first-principles
9
+ human_gate: true
10
+ agent:
11
+ primary: lc-pm
12
+ reviewers:
13
+ - lc-researcher
14
+ handoff_to: null
15
+ skills:
16
+ required:
17
+ - lincoln:lc-research-scope
18
+ optional: []
19
+ artifacts:
20
+ required:
21
+ - '{process_slug}/research/{session_id}/scope.md'
22
+ context:
23
+ goal: 与 PM 澄清研究目标、问题、范围与验收标准,输出已确认的研究 brief。
24
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml 或 .context/workflow/pm-research.yaml。
25
+
26
+ - 本阶段产物写入 {process_slug}/research/{session_id}/。
27
+
28
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
29
+
30
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
31
+ gates:
32
+ entry:
33
+ - check: previous_stage_completed
34
+ args:
35
+ - workflow-router
36
+ exit:
37
+ - check: artifacts_present
38
+ - check: human_approved
@@ -0,0 +1,37 @@
1
+ schema_version: 2.0.0
2
+ id: lc-stakeholder-research
3
+ name: 相关者研究
4
+ description: '识别并研究用户、买单方、建设方、维护方等关键相关者及其诉求。'
5
+ templates:
6
+ - pm-research
7
+ prerequisite_stage: lc-first-principles
8
+ next_stage: lc-market-research
9
+ human_gate: false
10
+ agent:
11
+ primary: lc-researcher
12
+ reviewers:
13
+ - lc-pm
14
+ handoff_to: null
15
+ skills:
16
+ required:
17
+ - lincoln:lc-stakeholder-research
18
+ optional: []
19
+ artifacts:
20
+ required:
21
+ - '{process_slug}/research/{session_id}/stakeholders.md'
22
+ context:
23
+ goal: 识别并研究用户、买单方、建设方、维护方等关键相关者及其诉求。
24
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml 或 .context/workflow/pm-research.yaml。
25
+
26
+ - 本阶段产物写入 {process_slug}/research/{session_id}/。
27
+
28
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
29
+
30
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
31
+ gates:
32
+ entry:
33
+ - check: previous_stage_completed
34
+ args:
35
+ - lc-first-principles
36
+ exit:
37
+ - check: artifacts_present
@@ -0,0 +1,37 @@
1
+ schema_version: 2.0.0
2
+ id: lc-storytelling
3
+ name: 体系化论述
4
+ description: '基于金字塔原理将研究成果结构化为可说服决策者的故事体系。'
5
+ templates:
6
+ - pm-research
7
+ prerequisite_stage: lc-collect-intelligence
8
+ next_stage: lc-research-report
9
+ human_gate: false
10
+ agent:
11
+ primary: lc-pm
12
+ reviewers:
13
+ - lc-researcher
14
+ handoff_to: null
15
+ skills:
16
+ required:
17
+ - lincoln:lc-storytelling
18
+ optional: []
19
+ artifacts:
20
+ required:
21
+ - '{process_slug}/research/{session_id}/narrative.md'
22
+ context:
23
+ goal: 基于金字塔原理将研究成果结构化为可说服决策者的故事体系。
24
+ constraints: '- 仅通过 scripts/stage_loader.py 更新 {process_slug}/workflow-stage.yaml 或 .context/workflow/pm-research.yaml。
25
+
26
+ - 本阶段产物写入 {process_slug}/research/{session_id}/。
27
+
28
+ - 门控评估优先使用 AI 能力:读取产物并推理其完整性,而非仅依赖脚本化检查。
29
+
30
+ - 详细执行步骤、模板与工具见对应 skill prompt 和 .claude/agents/<primary_agent>.md。'
31
+ gates:
32
+ entry:
33
+ - check: previous_stage_completed
34
+ args:
35
+ - lc-collect-intelligence
36
+ exit:
37
+ - check: artifacts_present