@codemcp/workflows 5.3.0 → 6.0.2
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.
- package/README.md +91 -0
- package/package.json +78 -17
- package/packages/cli/dist/chunk-R5U7XKVJ.js +16 -0
- package/packages/cli/dist/chunk-RTDQR2KY.js +6718 -0
- package/packages/cli/dist/cli-CZ4FMSWR.js +1421 -0
- package/packages/cli/dist/dist-KZOA4GL5.js +65 -0
- package/packages/cli/dist/dist-UGVUJIDN.js +14475 -0
- package/packages/cli/dist/index.js +21 -0
- package/packages/cli/package.json +28 -0
- package/packages/cli/resources/agents/architect.yaml +61 -0
- package/packages/cli/resources/agents/business-analyst.yaml +60 -0
- package/packages/cli/resources/agents/developer.yaml +61 -0
- package/packages/cli/resources/templates/architecture/arc42/arc42-template-EN.md +1077 -0
- package/packages/cli/resources/templates/architecture/arc42/images/01_2_iso-25010-topics-EN.drawio-2023.png +0 -0
- package/packages/cli/resources/templates/architecture/arc42/images/01_2_iso-25010-topics-EN.drawio.png +0 -0
- package/packages/cli/resources/templates/architecture/arc42/images/05_building_blocks-EN.png +0 -0
- package/packages/cli/resources/templates/architecture/arc42/images/08-concepts-EN.drawio.png +0 -0
- package/packages/cli/resources/templates/architecture/arc42/images/arc42-logo.png +0 -0
- package/packages/cli/resources/templates/architecture/c4.md +224 -0
- package/packages/cli/resources/templates/architecture/freestyle.md +53 -0
- package/packages/cli/resources/templates/architecture/game.md +250 -0
- package/packages/cli/resources/templates/architecture/none.md +17 -0
- package/packages/cli/resources/templates/design/comprehensive.md +207 -0
- package/packages/cli/resources/templates/design/freestyle.md +37 -0
- package/packages/cli/resources/templates/design/game.md +66 -0
- package/packages/cli/resources/templates/design/none.md +17 -0
- package/packages/cli/resources/templates/requirements/ears.md +90 -0
- package/packages/cli/resources/templates/requirements/freestyle.md +42 -0
- package/packages/cli/resources/templates/requirements/game.md +162 -0
- package/packages/cli/resources/templates/requirements/none.md +17 -0
- package/packages/cli/resources/templates/skills/POWER.md +23 -0
- package/packages/cli/resources/templates/skills/SKILL.md +19 -0
- package/packages/cli/resources/workflows/adr.yaml +157 -0
- package/packages/cli/resources/workflows/big-bang-conversion.yaml +592 -0
- package/packages/cli/resources/workflows/boundary-testing.yaml +376 -0
- package/packages/cli/resources/workflows/bugfix.yaml +177 -0
- package/packages/cli/resources/workflows/business-analysis.yaml +597 -0
- package/packages/cli/resources/workflows/c4-analysis.yaml +471 -0
- package/packages/cli/resources/workflows/epcc.yaml +183 -0
- package/packages/cli/resources/workflows/game-beginner.yaml +434 -0
- package/packages/cli/resources/workflows/greenfield.yaml +201 -0
- package/packages/cli/resources/workflows/minor.yaml +138 -0
- package/packages/cli/resources/workflows/posts.yaml +193 -0
- package/packages/cli/resources/workflows/sdd-bugfix-crowd.yaml +608 -0
- package/packages/cli/resources/workflows/sdd-bugfix.yaml +381 -0
- package/packages/cli/resources/workflows/sdd-feature-crowd.yaml +713 -0
- package/packages/cli/resources/workflows/sdd-feature.yaml +471 -0
- package/packages/cli/resources/workflows/sdd-greenfield-crowd.yaml +336 -0
- package/packages/cli/resources/workflows/sdd-greenfield.yaml +463 -0
- package/packages/cli/resources/workflows/slides.yaml +237 -0
- package/packages/cli/resources/workflows/tdd.yaml +160 -0
- package/packages/cli/resources/workflows/waterfall.yaml +209 -0
- package/packages/core/dist/beads-integration.d.ts +50 -0
- package/packages/core/dist/beads-integration.js +387 -0
- package/packages/core/dist/beads-integration.js.map +1 -0
- package/packages/core/dist/beads-state-manager.d.ts +58 -0
- package/packages/core/dist/beads-state-manager.js +212 -0
- package/packages/core/dist/beads-state-manager.js.map +1 -0
- package/packages/core/dist/config-manager.d.ts +24 -0
- package/packages/core/dist/config-manager.js +68 -0
- package/packages/core/dist/config-manager.js.map +1 -0
- package/packages/core/dist/conversation-manager.d.ts +98 -0
- package/packages/core/dist/conversation-manager.js +382 -0
- package/packages/core/dist/conversation-manager.js.map +1 -0
- package/packages/core/dist/file-detection-manager.d.ts +53 -0
- package/packages/core/dist/file-detection-manager.js +221 -0
- package/packages/core/dist/file-detection-manager.js.map +1 -0
- package/packages/core/dist/file-storage.d.ts +93 -0
- package/packages/core/dist/file-storage.js +301 -0
- package/packages/core/dist/file-storage.js.map +1 -0
- package/packages/core/dist/git-manager.d.ts +22 -0
- package/packages/core/dist/git-manager.js +123 -0
- package/packages/core/dist/git-manager.js.map +1 -0
- package/packages/core/dist/index.d.ts +24 -0
- package/packages/core/dist/index.js +31 -0
- package/packages/core/dist/index.js.map +1 -0
- package/packages/core/dist/instruction-generator.d.ts +40 -0
- package/packages/core/dist/instruction-generator.js +89 -0
- package/packages/core/dist/instruction-generator.js.map +1 -0
- package/packages/core/dist/interaction-logger.d.ts +37 -0
- package/packages/core/dist/interaction-logger.js +87 -0
- package/packages/core/dist/interaction-logger.js.map +1 -0
- package/packages/core/dist/interfaces/index.d.ts +9 -0
- package/packages/core/dist/interfaces/index.js +10 -0
- package/packages/core/dist/interfaces/index.js.map +1 -0
- package/packages/core/dist/interfaces/instruction-generator.interface.d.ts +41 -0
- package/packages/core/dist/interfaces/instruction-generator.interface.js +8 -0
- package/packages/core/dist/interfaces/instruction-generator.interface.js.map +1 -0
- package/packages/core/dist/interfaces/plan-manager.interface.d.ts +55 -0
- package/packages/core/dist/interfaces/plan-manager.interface.js +8 -0
- package/packages/core/dist/interfaces/plan-manager.interface.js.map +1 -0
- package/packages/core/dist/interfaces/task-backend-client.interface.d.ts +52 -0
- package/packages/core/dist/interfaces/task-backend-client.interface.js +8 -0
- package/packages/core/dist/interfaces/task-backend-client.interface.js.map +1 -0
- package/packages/core/dist/logger.d.ts +64 -0
- package/packages/core/dist/logger.js +283 -0
- package/packages/core/dist/logger.js.map +1 -0
- package/packages/core/dist/path-validation-utils.d.ts +75 -0
- package/packages/core/dist/path-validation-utils.js +238 -0
- package/packages/core/dist/path-validation-utils.js.map +1 -0
- package/packages/core/dist/persistence-interface.d.ts +91 -0
- package/packages/core/dist/persistence-interface.js +9 -0
- package/packages/core/dist/persistence-interface.js.map +1 -0
- package/{dist/components/beads/beads-plan-manager.d.ts → packages/core/dist/plan-manager.d.ts} +15 -15
- package/{dist/components/beads/beads-plan-manager.js → packages/core/dist/plan-manager.js} +66 -50
- package/packages/core/dist/plan-manager.js.map +1 -0
- package/packages/core/dist/project-docs-manager.d.ts +119 -0
- package/packages/core/dist/project-docs-manager.js +366 -0
- package/packages/core/dist/project-docs-manager.js.map +1 -0
- package/packages/core/dist/state-machine-loader.d.ts +61 -0
- package/packages/core/dist/state-machine-loader.js +273 -0
- package/packages/core/dist/state-machine-loader.js.map +1 -0
- package/packages/core/dist/state-machine-types.d.ts +64 -0
- package/packages/core/dist/state-machine-types.js +7 -0
- package/packages/core/dist/state-machine-types.js.map +1 -0
- package/packages/core/dist/state-machine.d.ts +52 -0
- package/packages/core/dist/state-machine.js +256 -0
- package/packages/core/dist/state-machine.js.map +1 -0
- package/packages/core/dist/system-prompt-generator.d.ts +14 -0
- package/packages/core/dist/system-prompt-generator.js +42 -0
- package/packages/core/dist/system-prompt-generator.js.map +1 -0
- package/packages/core/dist/task-backend.d.ts +45 -0
- package/packages/core/dist/task-backend.js +176 -0
- package/packages/core/dist/task-backend.js.map +1 -0
- package/packages/core/dist/template-manager.d.ts +61 -0
- package/packages/core/dist/template-manager.js +231 -0
- package/packages/core/dist/template-manager.js.map +1 -0
- package/packages/core/dist/transition-engine.d.ts +77 -0
- package/packages/core/dist/transition-engine.js +244 -0
- package/packages/core/dist/transition-engine.js.map +1 -0
- package/packages/core/dist/types.d.ts +54 -0
- package/packages/core/dist/types.js +5 -0
- package/packages/core/dist/workflow-manager.d.ts +89 -0
- package/packages/core/dist/workflow-manager.js +468 -0
- package/packages/core/dist/workflow-manager.js.map +1 -0
- package/packages/core/package.json +33 -0
- package/packages/core/resources/agents/architect.yaml +61 -0
- package/packages/core/resources/agents/business-analyst.yaml +60 -0
- package/packages/core/resources/agents/developer.yaml +61 -0
- package/packages/core/resources/templates/architecture/arc42/arc42-template-EN.md +1077 -0
- package/packages/core/resources/templates/architecture/arc42/images/01_2_iso-25010-topics-EN.drawio-2023.png +0 -0
- package/packages/core/resources/templates/architecture/arc42/images/01_2_iso-25010-topics-EN.drawio.png +0 -0
- package/packages/core/resources/templates/architecture/arc42/images/05_building_blocks-EN.png +0 -0
- package/packages/core/resources/templates/architecture/arc42/images/08-concepts-EN.drawio.png +0 -0
- package/packages/core/resources/templates/architecture/arc42/images/arc42-logo.png +0 -0
- package/packages/core/resources/templates/architecture/c4.md +224 -0
- package/packages/core/resources/templates/architecture/freestyle.md +53 -0
- package/packages/core/resources/templates/architecture/game.md +250 -0
- package/packages/core/resources/templates/architecture/none.md +17 -0
- package/packages/core/resources/templates/design/comprehensive.md +207 -0
- package/packages/core/resources/templates/design/freestyle.md +37 -0
- package/packages/core/resources/templates/design/game.md +66 -0
- package/packages/core/resources/templates/design/none.md +17 -0
- package/packages/core/resources/templates/requirements/ears.md +90 -0
- package/packages/core/resources/templates/requirements/freestyle.md +42 -0
- package/packages/core/resources/templates/requirements/game.md +162 -0
- package/packages/core/resources/templates/requirements/none.md +17 -0
- package/packages/core/resources/templates/skills/POWER.md +23 -0
- package/packages/core/resources/templates/skills/SKILL.md +19 -0
- package/packages/core/resources/workflows/adr.yaml +157 -0
- package/packages/core/resources/workflows/big-bang-conversion.yaml +592 -0
- package/packages/core/resources/workflows/boundary-testing.yaml +376 -0
- package/packages/core/resources/workflows/bugfix.yaml +177 -0
- package/packages/core/resources/workflows/business-analysis.yaml +597 -0
- package/packages/core/resources/workflows/c4-analysis.yaml +471 -0
- package/packages/core/resources/workflows/epcc.yaml +183 -0
- package/packages/core/resources/workflows/game-beginner.yaml +434 -0
- package/packages/core/resources/workflows/greenfield.yaml +201 -0
- package/packages/core/resources/workflows/minor.yaml +138 -0
- package/packages/core/resources/workflows/posts.yaml +193 -0
- package/packages/core/resources/workflows/sdd-bugfix-crowd.yaml +608 -0
- package/packages/core/resources/workflows/sdd-bugfix.yaml +381 -0
- package/packages/core/resources/workflows/sdd-feature-crowd.yaml +713 -0
- package/packages/core/resources/workflows/sdd-feature.yaml +471 -0
- package/packages/core/resources/workflows/sdd-greenfield-crowd.yaml +336 -0
- package/packages/core/resources/workflows/sdd-greenfield.yaml +463 -0
- package/packages/core/resources/workflows/slides.yaml +237 -0
- package/packages/core/resources/workflows/tdd.yaml +160 -0
- package/packages/core/resources/workflows/waterfall.yaml +209 -0
- package/packages/docs/.vitepress/dist/.gitignore +2 -0
- package/packages/docs/.vitepress/dist/404.html +23 -0
- package/packages/docs/.vitepress/dist/assets/app.Dz3lZH3M.js +1 -0
- package/packages/docs/.vitepress/dist/assets/chunks/framework.DZS7lpav.js +19 -0
- package/packages/docs/.vitepress/dist/assets/chunks/theme.q5Ewb3F1.js +206 -0
- package/packages/docs/.vitepress/dist/assets/dev_ARCHITECTURE.md.da_vFDwM.js +130 -0
- package/packages/docs/.vitepress/dist/assets/dev_ARCHITECTURE.md.da_vFDwM.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/dev_DEVELOPMENT.md.DWl9cccE.js +72 -0
- package/packages/docs/.vitepress/dist/assets/dev_DEVELOPMENT.md.DWl9cccE.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/dev_LOGGING.md.BebvbW7z.js +34 -0
- package/packages/docs/.vitepress/dist/assets/dev_LOGGING.md.BebvbW7z.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/dev_PUBLISHING.md.CQqbiIOF.js +1 -0
- package/packages/docs/.vitepress/dist/assets/dev_PUBLISHING.md.CQqbiIOF.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/index.md.D6ROLohf.js +2 -0
- package/packages/docs/.vitepress/dist/assets/index.md.D6ROLohf.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/inter-italic-cyrillic-ext.r48I6akx.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/inter-italic-cyrillic.By2_1cv3.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/inter-italic-greek-ext.1u6EdAuj.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/inter-italic-greek.DJ8dCoTZ.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/inter-italic-latin-ext.CN1xVJS-.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/inter-italic-latin.C2AdPX0b.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/inter-italic-vietnamese.BSbpV94h.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/inter-roman-cyrillic-ext.BBPuwvHQ.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/inter-roman-cyrillic.C5lxZ8CY.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/inter-roman-greek-ext.CqjqNYQ-.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/inter-roman-greek.BBVDIX6e.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/inter-roman-latin-ext.4ZJIpNVo.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/inter-roman-latin.Di8DUHzh.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/inter-roman-vietnamese.BjW4sHH5.woff2 +0 -0
- package/packages/docs/.vitepress/dist/assets/mcp-interaction-pattern.VdvOPuTt.png +0 -0
- package/packages/docs/.vitepress/dist/assets/placeholder-demo-greenfield.B8lG_tBI.png +0 -0
- package/packages/docs/.vitepress/dist/assets/style.CAgdBzOq.css +1 -0
- package/packages/docs/.vitepress/dist/assets/user_advanced-engineering.md.MkETYNtq.js +50 -0
- package/packages/docs/.vitepress/dist/assets/user_advanced-engineering.md.MkETYNtq.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/user_agent-setup.md.B54OLL2H.js +24 -0
- package/packages/docs/.vitepress/dist/assets/user_agent-setup.md.B54OLL2H.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/user_beads-integration.md.BzdR5Fif.js +15 -0
- package/packages/docs/.vitepress/dist/assets/user_beads-integration.md.BzdR5Fif.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/user_crowd-mcp-integration.md.C15kSdIJ.js +157 -0
- package/packages/docs/.vitepress/dist/assets/user_crowd-mcp-integration.md.C15kSdIJ.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/user_custom-workflows.md.Cz4IYCXa.js +143 -0
- package/packages/docs/.vitepress/dist/assets/user_custom-workflows.md.Cz4IYCXa.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/user_git-commit-feature.md.UcTvDR-O.js +1 -0
- package/packages/docs/.vitepress/dist/assets/user_git-commit-feature.md.UcTvDR-O.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/user_how-it-works.md.DiOXNgaL.js +23 -0
- package/packages/docs/.vitepress/dist/assets/user_how-it-works.md.DiOXNgaL.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/user_long-term-memory.md.DZh0tjNa.js +43 -0
- package/packages/docs/.vitepress/dist/assets/user_long-term-memory.md.DZh0tjNa.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/user_packaged-workflows.md.s1HT89ZU.js +2 -0
- package/packages/docs/.vitepress/dist/assets/user_packaged-workflows.md.s1HT89ZU.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/user_tutorial.md.Dmj8zLB2.js +3 -0
- package/packages/docs/.vitepress/dist/assets/user_tutorial.md.Dmj8zLB2.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/user_workflow-selection.md.CrPGw9Hr.js +7 -0
- package/packages/docs/.vitepress/dist/assets/user_workflow-selection.md.CrPGw9Hr.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows.md.Bm5sGt3u.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows.md.Bm5sGt3u.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_adr.md.DEaXkbRp.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_adr.md.DEaXkbRp.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_big-bang-conversion.md.BA5R1LxZ.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_big-bang-conversion.md.BA5R1LxZ.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_boundary-testing.md.DBcYnMhx.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_boundary-testing.md.DBcYnMhx.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_bugfix.md.CZRCL0Hp.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_bugfix.md.CZRCL0Hp.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_business-analysis.md.fGLml8Hw.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_business-analysis.md.fGLml8Hw.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_c4-analysis.md.Dnssqzuf.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_c4-analysis.md.Dnssqzuf.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_epcc.md.M6DnIhpp.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_epcc.md.M6DnIhpp.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_game-beginner.md.CNxzWLtd.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_game-beginner.md.CNxzWLtd.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_greenfield.md.vx_g-WOe.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_greenfield.md.vx_g-WOe.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_minor.md.DdnfwMf4.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_minor.md.DdnfwMf4.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_posts.md.SOldXvq7.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_posts.md.SOldXvq7.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_sdd-bugfix-crowd.md.-lSf42gJ.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_sdd-bugfix-crowd.md.-lSf42gJ.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_sdd-bugfix.md.oRAsEVbc.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_sdd-bugfix.md.oRAsEVbc.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_sdd-feature-crowd.md.DAtnfCAd.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_sdd-feature-crowd.md.DAtnfCAd.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_sdd-feature.md.Ce3-H_g3.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_sdd-feature.md.Ce3-H_g3.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_sdd-greenfield-crowd.md.8DUvcmLe.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_sdd-greenfield-crowd.md.8DUvcmLe.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_sdd-greenfield.md.eEN6U0J4.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_sdd-greenfield.md.eEN6U0J4.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_slides.md.Cqt-19_1.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_slides.md.Cqt-19_1.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_tdd.md.BjVC69tu.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_tdd.md.BjVC69tu.lean.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_waterfall.md.CL6jTZP9.js +1 -0
- package/packages/docs/.vitepress/dist/assets/workflows_waterfall.md.CL6jTZP9.lean.js +1 -0
- package/packages/docs/.vitepress/dist/dev/ARCHITECTURE.html +155 -0
- package/packages/docs/.vitepress/dist/dev/DEVELOPMENT.html +97 -0
- package/packages/docs/.vitepress/dist/dev/LOGGING.html +59 -0
- package/packages/docs/.vitepress/dist/dev/PUBLISHING.html +30 -0
- package/packages/docs/.vitepress/dist/hashmap.json +1 -0
- package/packages/docs/.vitepress/dist/index.html +27 -0
- package/packages/docs/.vitepress/dist/user/advanced-engineering.html +75 -0
- package/packages/docs/.vitepress/dist/user/agent-setup.html +49 -0
- package/packages/docs/.vitepress/dist/user/beads-integration.html +40 -0
- package/packages/docs/.vitepress/dist/user/crowd-mcp-integration.html +182 -0
- package/packages/docs/.vitepress/dist/user/custom-workflows.html +168 -0
- package/packages/docs/.vitepress/dist/user/git-commit-feature.html +30 -0
- package/packages/docs/.vitepress/dist/user/how-it-works.html +48 -0
- package/packages/docs/.vitepress/dist/user/long-term-memory.html +68 -0
- package/packages/docs/.vitepress/dist/user/packaged-workflows.html +27 -0
- package/packages/docs/.vitepress/dist/user/tutorial.html +28 -0
- package/packages/docs/.vitepress/dist/user/workflow-selection.html +32 -0
- package/packages/docs/.vitepress/dist/vp-icons.css +0 -0
- package/packages/docs/.vitepress/dist/workflows/adr.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/adr.yaml +157 -0
- package/packages/docs/.vitepress/dist/workflows/big-bang-conversion.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/big-bang-conversion.yaml +592 -0
- package/packages/docs/.vitepress/dist/workflows/boundary-testing.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/boundary-testing.yaml +376 -0
- package/packages/docs/.vitepress/dist/workflows/bugfix.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/bugfix.yaml +177 -0
- package/packages/docs/.vitepress/dist/workflows/business-analysis.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/business-analysis.yaml +597 -0
- package/packages/docs/.vitepress/dist/workflows/c4-analysis.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/c4-analysis.yaml +471 -0
- package/packages/docs/.vitepress/dist/workflows/epcc.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/epcc.yaml +183 -0
- package/packages/docs/.vitepress/dist/workflows/game-beginner.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/game-beginner.yaml +434 -0
- package/packages/docs/.vitepress/dist/workflows/greenfield.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/greenfield.yaml +201 -0
- package/packages/docs/.vitepress/dist/workflows/minor.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/minor.yaml +138 -0
- package/packages/docs/.vitepress/dist/workflows/posts.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/posts.yaml +193 -0
- package/packages/docs/.vitepress/dist/workflows/sdd-bugfix-crowd.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/sdd-bugfix-crowd.yaml +608 -0
- package/packages/docs/.vitepress/dist/workflows/sdd-bugfix.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/sdd-bugfix.yaml +381 -0
- package/packages/docs/.vitepress/dist/workflows/sdd-feature-crowd.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/sdd-feature-crowd.yaml +713 -0
- package/packages/docs/.vitepress/dist/workflows/sdd-feature.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/sdd-feature.yaml +471 -0
- package/packages/docs/.vitepress/dist/workflows/sdd-greenfield-crowd.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/sdd-greenfield-crowd.yaml +336 -0
- package/packages/docs/.vitepress/dist/workflows/sdd-greenfield.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/sdd-greenfield.yaml +463 -0
- package/packages/docs/.vitepress/dist/workflows/slides.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/slides.yaml +237 -0
- package/packages/docs/.vitepress/dist/workflows/tdd.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/tdd.yaml +160 -0
- package/packages/docs/.vitepress/dist/workflows/waterfall.html +26 -0
- package/packages/docs/.vitepress/dist/workflows/waterfall.yaml +209 -0
- package/packages/docs/.vitepress/dist/workflows.html +26 -0
- package/packages/docs/package.json +32 -0
- package/packages/mcp-server/dist/index.js +10546 -0
- package/packages/mcp-server/package.json +41 -0
- package/packages/mcp-server/resources/agents/architect.yaml +61 -0
- package/packages/mcp-server/resources/agents/business-analyst.yaml +60 -0
- package/packages/mcp-server/resources/agents/developer.yaml +61 -0
- package/packages/mcp-server/resources/templates/architecture/arc42/arc42-template-EN.md +1077 -0
- package/packages/mcp-server/resources/templates/architecture/arc42/images/01_2_iso-25010-topics-EN.drawio-2023.png +0 -0
- package/packages/mcp-server/resources/templates/architecture/arc42/images/01_2_iso-25010-topics-EN.drawio.png +0 -0
- package/packages/mcp-server/resources/templates/architecture/arc42/images/05_building_blocks-EN.png +0 -0
- package/packages/mcp-server/resources/templates/architecture/arc42/images/08-concepts-EN.drawio.png +0 -0
- package/packages/mcp-server/resources/templates/architecture/arc42/images/arc42-logo.png +0 -0
- package/packages/mcp-server/resources/templates/architecture/c4.md +224 -0
- package/packages/mcp-server/resources/templates/architecture/freestyle.md +53 -0
- package/packages/mcp-server/resources/templates/architecture/game.md +250 -0
- package/packages/mcp-server/resources/templates/architecture/none.md +17 -0
- package/packages/mcp-server/resources/templates/design/comprehensive.md +207 -0
- package/packages/mcp-server/resources/templates/design/freestyle.md +37 -0
- package/packages/mcp-server/resources/templates/design/game.md +66 -0
- package/packages/mcp-server/resources/templates/design/none.md +17 -0
- package/packages/mcp-server/resources/templates/requirements/ears.md +90 -0
- package/packages/mcp-server/resources/templates/requirements/freestyle.md +42 -0
- package/packages/mcp-server/resources/templates/requirements/game.md +162 -0
- package/packages/mcp-server/resources/templates/requirements/none.md +17 -0
- package/packages/mcp-server/resources/templates/skills/POWER.md +23 -0
- package/packages/mcp-server/resources/templates/skills/SKILL.md +19 -0
- package/packages/mcp-server/resources/workflows/adr.yaml +157 -0
- package/packages/mcp-server/resources/workflows/big-bang-conversion.yaml +592 -0
- package/packages/mcp-server/resources/workflows/boundary-testing.yaml +376 -0
- package/packages/mcp-server/resources/workflows/bugfix.yaml +177 -0
- package/packages/mcp-server/resources/workflows/business-analysis.yaml +597 -0
- package/packages/mcp-server/resources/workflows/c4-analysis.yaml +471 -0
- package/packages/mcp-server/resources/workflows/epcc.yaml +183 -0
- package/packages/mcp-server/resources/workflows/game-beginner.yaml +434 -0
- package/packages/mcp-server/resources/workflows/greenfield.yaml +201 -0
- package/packages/mcp-server/resources/workflows/minor.yaml +138 -0
- package/packages/mcp-server/resources/workflows/posts.yaml +193 -0
- package/packages/mcp-server/resources/workflows/sdd-bugfix-crowd.yaml +608 -0
- package/packages/mcp-server/resources/workflows/sdd-bugfix.yaml +381 -0
- package/packages/mcp-server/resources/workflows/sdd-feature-crowd.yaml +713 -0
- package/packages/mcp-server/resources/workflows/sdd-feature.yaml +471 -0
- package/packages/mcp-server/resources/workflows/sdd-greenfield-crowd.yaml +336 -0
- package/packages/mcp-server/resources/workflows/sdd-greenfield.yaml +463 -0
- package/packages/mcp-server/resources/workflows/slides.yaml +237 -0
- package/packages/mcp-server/resources/workflows/tdd.yaml +160 -0
- package/packages/mcp-server/resources/workflows/waterfall.yaml +209 -0
- package/packages/visualizer/dist/WorkflowVisualizer.vue +1147 -0
- package/packages/visualizer/dist/index.ts +17 -0
- package/packages/visualizer/dist/main.ts +673 -0
- package/packages/visualizer/dist/services/BundledWorkflows.ts +35 -0
- package/packages/visualizer/dist/services/FileUploadHandler.ts +166 -0
- package/packages/visualizer/dist/services/WorkflowLoader.ts +198 -0
- package/packages/visualizer/dist/services/YamlParser.ts +248 -0
- package/packages/visualizer/dist/services/workflow-list.ts +23 -0
- package/packages/visualizer/dist/types/ui-types.ts +84 -0
- package/packages/visualizer/dist/types/visualization-types.ts +95 -0
- package/packages/visualizer/dist/types/vite-env.d.ts +12 -0
- package/packages/visualizer/dist/utils/DomHelpers.ts +206 -0
- package/packages/visualizer/dist/utils/ErrorHandler.ts +170 -0
- package/packages/visualizer/dist/utils/PlantUMLEncoder.ts +121 -0
- package/packages/visualizer/dist/visualization/DiagramRenderer.ts +430 -0
- package/packages/visualizer/dist/visualization/LayoutEngine.ts +339 -0
- package/packages/visualizer/dist/visualization/PlantUMLRenderer.ts +507 -0
- package/packages/visualizer/dist/visualization/StateRenderer.ts +339 -0
- package/packages/visualizer/dist/visualization/TransitionRenderer.ts +432 -0
- package/packages/visualizer/package.json +39 -0
- package/resources/.DS_Store +0 -0
- package/resources/agents/architect.yaml +61 -0
- package/resources/agents/business-analyst.yaml +60 -0
- package/resources/agents/developer.yaml +61 -0
- package/resources/state-machine-schema.json +114 -0
- package/resources/templates/architecture/arc42/arc42-template-EN.md +1077 -0
- package/resources/templates/architecture/arc42/images/01_2_iso-25010-topics-EN.drawio-2023.png +0 -0
- package/resources/templates/architecture/arc42/images/01_2_iso-25010-topics-EN.drawio.png +0 -0
- package/resources/templates/architecture/arc42/images/05_building_blocks-EN.png +0 -0
- package/resources/templates/architecture/arc42/images/08-concepts-EN.drawio.png +0 -0
- package/resources/templates/architecture/arc42/images/arc42-logo.png +0 -0
- package/resources/templates/architecture/c4.md +224 -0
- package/resources/templates/architecture/freestyle.md +53 -0
- package/resources/templates/architecture/game.md +250 -0
- package/resources/templates/architecture/none.md +17 -0
- package/resources/templates/design/comprehensive.md +207 -0
- package/resources/templates/design/freestyle.md +37 -0
- package/resources/templates/design/game.md +66 -0
- package/resources/templates/design/none.md +17 -0
- package/resources/templates/requirements/ears.md +90 -0
- package/resources/templates/requirements/freestyle.md +42 -0
- package/resources/templates/requirements/game.md +162 -0
- package/resources/templates/requirements/none.md +17 -0
- package/resources/templates/skills/POWER.md +23 -0
- package/resources/templates/skills/SKILL.md +19 -0
- package/resources/workflows/adr.yaml +157 -0
- package/resources/workflows/big-bang-conversion.yaml +592 -0
- package/resources/workflows/boundary-testing.yaml +376 -0
- package/resources/workflows/bugfix.yaml +177 -0
- package/resources/workflows/business-analysis.yaml +597 -0
- package/resources/workflows/c4-analysis.yaml +471 -0
- package/resources/workflows/epcc.yaml +183 -0
- package/resources/workflows/game-beginner.yaml +434 -0
- package/resources/workflows/greenfield.yaml +201 -0
- package/resources/workflows/minor.yaml +138 -0
- package/resources/workflows/posts.yaml +193 -0
- package/resources/workflows/sdd-bugfix-crowd.yaml +608 -0
- package/resources/workflows/sdd-bugfix.yaml +381 -0
- package/resources/workflows/sdd-feature-crowd.yaml +713 -0
- package/resources/workflows/sdd-feature.yaml +471 -0
- package/resources/workflows/sdd-greenfield-crowd.yaml +336 -0
- package/resources/workflows/sdd-greenfield.yaml +463 -0
- package/resources/workflows/slides.yaml +237 -0
- package/resources/workflows/tdd.yaml +160 -0
- package/resources/workflows/waterfall.yaml +209 -0
- package/dist/components/beads/beads-instruction-generator.d.ts +0 -44
- package/dist/components/beads/beads-instruction-generator.d.ts.map +0 -1
- package/dist/components/beads/beads-instruction-generator.js +0 -160
- package/dist/components/beads/beads-instruction-generator.js.map +0 -1
- package/dist/components/beads/beads-plan-manager.d.ts.map +0 -1
- package/dist/components/beads/beads-plan-manager.js.map +0 -1
- package/dist/components/beads/beads-task-backend-client.d.ts +0 -43
- package/dist/components/beads/beads-task-backend-client.d.ts.map +0 -1
- package/dist/components/beads/beads-task-backend-client.js +0 -175
- package/dist/components/beads/beads-task-backend-client.js.map +0 -1
- package/dist/index.d.ts +0 -9
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -74
- package/dist/index.js.map +0 -1
- package/dist/notification-service.d.ts +0 -14
- package/dist/notification-service.d.ts.map +0 -1
- package/dist/notification-service.js +0 -18
- package/dist/notification-service.js.map +0 -1
- package/dist/plugin-system/beads-plugin.d.ts +0 -71
- package/dist/plugin-system/beads-plugin.d.ts.map +0 -1
- package/dist/plugin-system/beads-plugin.js +0 -465
- package/dist/plugin-system/beads-plugin.js.map +0 -1
- package/dist/plugin-system/commit-plugin.d.ts +0 -40
- package/dist/plugin-system/commit-plugin.d.ts.map +0 -1
- package/dist/plugin-system/commit-plugin.js +0 -204
- package/dist/plugin-system/commit-plugin.js.map +0 -1
- package/dist/plugin-system/index.d.ts +0 -9
- package/dist/plugin-system/index.d.ts.map +0 -1
- package/dist/plugin-system/index.js +0 -9
- package/dist/plugin-system/index.js.map +0 -1
- package/dist/plugin-system/plugin-interfaces.d.ts +0 -98
- package/dist/plugin-system/plugin-interfaces.d.ts.map +0 -1
- package/dist/plugin-system/plugin-interfaces.js +0 -9
- package/dist/plugin-system/plugin-interfaces.js.map +0 -1
- package/dist/plugin-system/plugin-registry.d.ts +0 -44
- package/dist/plugin-system/plugin-registry.d.ts.map +0 -1
- package/dist/plugin-system/plugin-registry.js +0 -132
- package/dist/plugin-system/plugin-registry.js.map +0 -1
- package/dist/resource-handlers/conversation-state.d.ts +0 -15
- package/dist/resource-handlers/conversation-state.d.ts.map +0 -1
- package/dist/resource-handlers/conversation-state.js +0 -40
- package/dist/resource-handlers/conversation-state.js.map +0 -1
- package/dist/resource-handlers/development-plan.d.ts +0 -14
- package/dist/resource-handlers/development-plan.d.ts.map +0 -1
- package/dist/resource-handlers/development-plan.js +0 -31
- package/dist/resource-handlers/development-plan.js.map +0 -1
- package/dist/resource-handlers/index.d.ts +0 -24
- package/dist/resource-handlers/index.d.ts.map +0 -1
- package/dist/resource-handlers/index.js +0 -62
- package/dist/resource-handlers/index.js.map +0 -1
- package/dist/resource-handlers/system-prompt.d.ts +0 -15
- package/dist/resource-handlers/system-prompt.d.ts.map +0 -1
- package/dist/resource-handlers/system-prompt.js +0 -40
- package/dist/resource-handlers/system-prompt.js.map +0 -1
- package/dist/resource-handlers/workflow-resource.d.ts +0 -15
- package/dist/resource-handlers/workflow-resource.d.ts.map +0 -1
- package/dist/resource-handlers/workflow-resource.js +0 -85
- package/dist/resource-handlers/workflow-resource.js.map +0 -1
- package/dist/response-renderer.d.ts +0 -30
- package/dist/response-renderer.d.ts.map +0 -1
- package/dist/response-renderer.js +0 -94
- package/dist/response-renderer.js.map +0 -1
- package/dist/server-config.d.ts +0 -34
- package/dist/server-config.d.ts.map +0 -1
- package/dist/server-config.js +0 -503
- package/dist/server-config.js.map +0 -1
- package/dist/server-helpers.d.ts +0 -70
- package/dist/server-helpers.d.ts.map +0 -1
- package/dist/server-helpers.js +0 -171
- package/dist/server-helpers.js.map +0 -1
- package/dist/server-implementation.d.ts +0 -74
- package/dist/server-implementation.d.ts.map +0 -1
- package/dist/server-implementation.js +0 -201
- package/dist/server-implementation.js.map +0 -1
- package/dist/server.d.ts +0 -6
- package/dist/server.d.ts.map +0 -1
- package/dist/server.js +0 -5
- package/dist/server.js.map +0 -1
- package/dist/tool-handlers/base-tool-handler.d.ts +0 -50
- package/dist/tool-handlers/base-tool-handler.d.ts.map +0 -1
- package/dist/tool-handlers/base-tool-handler.js +0 -81
- package/dist/tool-handlers/base-tool-handler.js.map +0 -1
- package/dist/tool-handlers/conduct-review.d.ts +0 -49
- package/dist/tool-handlers/conduct-review.d.ts.map +0 -1
- package/dist/tool-handlers/conduct-review.js +0 -104
- package/dist/tool-handlers/conduct-review.js.map +0 -1
- package/dist/tool-handlers/get-tool-info.d.ts +0 -75
- package/dist/tool-handlers/get-tool-info.d.ts.map +0 -1
- package/dist/tool-handlers/get-tool-info.js +0 -168
- package/dist/tool-handlers/get-tool-info.js.map +0 -1
- package/dist/tool-handlers/index.d.ts +0 -41
- package/dist/tool-handlers/index.d.ts.map +0 -1
- package/dist/tool-handlers/index.js +0 -71
- package/dist/tool-handlers/index.js.map +0 -1
- package/dist/tool-handlers/list-workflows.d.ts +0 -35
- package/dist/tool-handlers/list-workflows.d.ts.map +0 -1
- package/dist/tool-handlers/list-workflows.js +0 -43
- package/dist/tool-handlers/list-workflows.js.map +0 -1
- package/dist/tool-handlers/no-idea.d.ts +0 -41
- package/dist/tool-handlers/no-idea.d.ts.map +0 -1
- package/dist/tool-handlers/no-idea.js +0 -29
- package/dist/tool-handlers/no-idea.js.map +0 -1
- package/dist/tool-handlers/proceed-to-phase.d.ts +0 -41
- package/dist/tool-handlers/proceed-to-phase.d.ts.map +0 -1
- package/dist/tool-handlers/proceed-to-phase.js +0 -165
- package/dist/tool-handlers/proceed-to-phase.js.map +0 -1
- package/dist/tool-handlers/reset-development.d.ts +0 -31
- package/dist/tool-handlers/reset-development.d.ts.map +0 -1
- package/dist/tool-handlers/reset-development.js +0 -48
- package/dist/tool-handlers/reset-development.js.map +0 -1
- package/dist/tool-handlers/resume-workflow.d.ts +0 -87
- package/dist/tool-handlers/resume-workflow.d.ts.map +0 -1
- package/dist/tool-handlers/resume-workflow.js +0 -212
- package/dist/tool-handlers/resume-workflow.js.map +0 -1
- package/dist/tool-handlers/setup-project-docs.d.ts +0 -37
- package/dist/tool-handlers/setup-project-docs.d.ts.map +0 -1
- package/dist/tool-handlers/setup-project-docs.js +0 -138
- package/dist/tool-handlers/setup-project-docs.js.map +0 -1
- package/dist/tool-handlers/start-development.d.ts +0 -79
- package/dist/tool-handlers/start-development.d.ts.map +0 -1
- package/dist/tool-handlers/start-development.js +0 -484
- package/dist/tool-handlers/start-development.js.map +0 -1
- package/dist/tool-handlers/whats-next.d.ts +0 -41
- package/dist/tool-handlers/whats-next.d.ts.map +0 -1
- package/dist/tool-handlers/whats-next.js +0 -123
- package/dist/tool-handlers/whats-next.js.map +0 -1
- package/dist/types.d.ts +0 -119
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -5
- package/dist/version-info.d.ts +0 -30
- package/dist/version-info.d.ts.map +0 -1
- package/dist/version-info.js +0 -178
- package/dist/version-info.js.map +0 -1
- package/skill/SKILL.md +0 -28
- /package/{dist → packages/core/dist}/types.js.map +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-validation-utils.js","sourceRoot":"","sources":["../src/path-validation-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Persistence Interface
|
|
3
|
+
*
|
|
4
|
+
* Defines the contract for conversation state and interaction log persistence.
|
|
5
|
+
* This interface abstracts the storage mechanism, allowing for different
|
|
6
|
+
* implementations (SQLite, file-based, etc.) to be used interchangeably.
|
|
7
|
+
*/
|
|
8
|
+
import type { ConversationState, InteractionLog } from './types.js';
|
|
9
|
+
/**
|
|
10
|
+
* Interface for persistence operations
|
|
11
|
+
*
|
|
12
|
+
* Implementations must handle errors gracefully, especially user-corrupted data:
|
|
13
|
+
* - Missing files/data should return null or empty arrays
|
|
14
|
+
* - Corrupted data should be logged but not crash the application
|
|
15
|
+
* - Partial recovery should be attempted when possible (e.g., skip corrupted lines)
|
|
16
|
+
*/
|
|
17
|
+
export interface IPersistence {
|
|
18
|
+
/**
|
|
19
|
+
* Initialize the persistence layer
|
|
20
|
+
* Creates necessary storage structures (tables, directories, etc.)
|
|
21
|
+
*
|
|
22
|
+
* @throws Error if initialization fails
|
|
23
|
+
*/
|
|
24
|
+
initialize(): Promise<void>;
|
|
25
|
+
/**
|
|
26
|
+
* Save or update a conversation state
|
|
27
|
+
*
|
|
28
|
+
* @param state - The conversation state to save
|
|
29
|
+
* @throws Error if save operation fails
|
|
30
|
+
*/
|
|
31
|
+
saveConversationState(state: ConversationState): Promise<void>;
|
|
32
|
+
/**
|
|
33
|
+
* Get a conversation state by ID
|
|
34
|
+
*
|
|
35
|
+
* @param conversationId - The conversation ID to retrieve
|
|
36
|
+
* @returns The conversation state, or null if not found or corrupted
|
|
37
|
+
*/
|
|
38
|
+
getConversationState(conversationId: string): Promise<ConversationState | null>;
|
|
39
|
+
/**
|
|
40
|
+
* Get all conversation states
|
|
41
|
+
*
|
|
42
|
+
* @returns Array of all conversation states (skips corrupted entries)
|
|
43
|
+
*/
|
|
44
|
+
getAllConversationStates(): Promise<ConversationState[]>;
|
|
45
|
+
/**
|
|
46
|
+
* Delete a conversation state
|
|
47
|
+
*
|
|
48
|
+
* @param conversationId - The conversation ID to delete
|
|
49
|
+
* @returns True if deleted, false if not found
|
|
50
|
+
*/
|
|
51
|
+
deleteConversationState(conversationId: string): Promise<boolean>;
|
|
52
|
+
/**
|
|
53
|
+
* Log an interaction
|
|
54
|
+
*
|
|
55
|
+
* @param log - The interaction log entry to save
|
|
56
|
+
* @throws Error if logging fails
|
|
57
|
+
*/
|
|
58
|
+
logInteraction(log: InteractionLog): Promise<void>;
|
|
59
|
+
/**
|
|
60
|
+
* Get interaction logs for a conversation
|
|
61
|
+
*
|
|
62
|
+
* @param conversationId - The conversation ID to get logs for
|
|
63
|
+
* @returns Array of interaction logs (skips corrupted entries, empty if none exist)
|
|
64
|
+
*/
|
|
65
|
+
getInteractionLogs(conversationId: string): Promise<InteractionLog[]>;
|
|
66
|
+
/**
|
|
67
|
+
* Get interaction logs by conversation ID (alias for compatibility)
|
|
68
|
+
*
|
|
69
|
+
* @param conversationId - The conversation ID to get logs for
|
|
70
|
+
* @returns Array of interaction logs (skips corrupted entries, empty if none exist)
|
|
71
|
+
*/
|
|
72
|
+
getInteractionsByConversationId(conversationId: string): Promise<InteractionLog[]>;
|
|
73
|
+
/**
|
|
74
|
+
* Soft delete interaction logs for a conversation
|
|
75
|
+
* (Actual behavior depends on implementation - may be hard delete)
|
|
76
|
+
*
|
|
77
|
+
* @param conversationId - The conversation ID to delete logs for
|
|
78
|
+
*/
|
|
79
|
+
softDeleteInteractionLogs(conversationId: string): Promise<void>;
|
|
80
|
+
/**
|
|
81
|
+
* Reset conversation state (update timestamp)
|
|
82
|
+
* Used for testing and state management
|
|
83
|
+
*
|
|
84
|
+
* @param conversationId - The conversation ID to reset
|
|
85
|
+
*/
|
|
86
|
+
resetConversationState(conversationId: string): Promise<void>;
|
|
87
|
+
/**
|
|
88
|
+
* Close the persistence layer and clean up resources
|
|
89
|
+
*/
|
|
90
|
+
close(): Promise<void>;
|
|
91
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Persistence Interface
|
|
3
|
+
*
|
|
4
|
+
* Defines the contract for conversation state and interaction log persistence.
|
|
5
|
+
* This interface abstracts the storage mechanism, allowing for different
|
|
6
|
+
* implementations (SQLite, file-based, etc.) to be used interchangeably.
|
|
7
|
+
*/
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=persistence-interface.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"persistence-interface.js","sourceRoot":"","sources":["../src/persistence-interface.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|
package/{dist/components/beads/beads-plan-manager.d.ts → packages/core/dist/plan-manager.d.ts}
RENAMED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Plan Manager
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* Manages plan files
|
|
4
|
+
* Handles the creation, updating, and maintenance of project development plan files.
|
|
5
|
+
* Manages markdown plan files that serve as long-term project memory.
|
|
6
|
+
* Supports custom state machine definitions for dynamic plan file generation.
|
|
6
7
|
*/
|
|
7
|
-
import
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
export declare class BeadsPlanManager implements IPlanManager {
|
|
8
|
+
import type { YamlStateMachine } from './state-machine-types.js';
|
|
9
|
+
import type { TaskBackendConfig } from './task-backend.js';
|
|
10
|
+
import type { IPlanManager, PlanFileInfo } from './interfaces/plan-manager.interface.js';
|
|
11
|
+
export declare class PlanManager implements IPlanManager {
|
|
12
12
|
private stateMachine;
|
|
13
13
|
/**
|
|
14
14
|
* Set the state machine definition for dynamic plan generation
|
|
@@ -27,15 +27,15 @@ export declare class BeadsPlanManager implements IPlanManager {
|
|
|
27
27
|
*/
|
|
28
28
|
ensurePlanFile(planFilePath: string, projectPath: string, gitBranch: string): Promise<void>;
|
|
29
29
|
/**
|
|
30
|
-
* Create initial plan file
|
|
30
|
+
* Create initial plan file with template content
|
|
31
31
|
*/
|
|
32
|
-
private
|
|
32
|
+
private createInitialPlanFile;
|
|
33
33
|
/**
|
|
34
|
-
* Generate initial plan file content
|
|
34
|
+
* Generate initial plan file content based on state machine definition
|
|
35
35
|
*/
|
|
36
|
-
private
|
|
36
|
+
private generateInitialPlanContent;
|
|
37
37
|
/**
|
|
38
|
-
* Update plan file with new content
|
|
38
|
+
* Update plan file with new content (this is typically done by the LLM)
|
|
39
39
|
*/
|
|
40
40
|
updatePlanFile(planFilePath: string, content: string): Promise<void>;
|
|
41
41
|
/**
|
|
@@ -43,7 +43,7 @@ export declare class BeadsPlanManager implements IPlanManager {
|
|
|
43
43
|
*/
|
|
44
44
|
getPlanFileContent(planFilePath: string): Promise<string>;
|
|
45
45
|
/**
|
|
46
|
-
* Generate phase-specific plan file guidance
|
|
46
|
+
* Generate phase-specific plan file guidance based on state machine
|
|
47
47
|
*/
|
|
48
48
|
generatePlanFileGuidance(phase: string): string;
|
|
49
49
|
/**
|
|
@@ -60,7 +60,7 @@ export declare class BeadsPlanManager implements IPlanManager {
|
|
|
60
60
|
private capitalizePhase;
|
|
61
61
|
/**
|
|
62
62
|
* Generate workflow documentation URL for predefined workflows
|
|
63
|
+
* Returns undefined for custom workflows
|
|
63
64
|
*/
|
|
64
65
|
private generateWorkflowDocumentationUrl;
|
|
65
66
|
}
|
|
66
|
-
//# sourceMappingURL=beads-plan-manager.d.ts.map
|
|
@@ -1,25 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Plan Manager
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* Manages plan files
|
|
4
|
+
* Handles the creation, updating, and maintenance of project development plan files.
|
|
5
|
+
* Manages markdown plan files that serve as long-term project memory.
|
|
6
|
+
* Supports custom state machine definitions for dynamic plan file generation.
|
|
6
7
|
*/
|
|
7
|
-
import { createLogger, getPathBasename, } from '@codemcp/workflows-core';
|
|
8
8
|
import { writeFile, readFile, access } from 'node:fs/promises';
|
|
9
9
|
import { dirname } from 'node:path';
|
|
10
10
|
import { mkdir } from 'node:fs/promises';
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
export class BeadsPlanManager {
|
|
11
|
+
import { createLogger } from './logger.js';
|
|
12
|
+
import { getPathBasename } from './path-validation-utils.js';
|
|
13
|
+
const logger = createLogger('PlanManager');
|
|
14
|
+
export class PlanManager {
|
|
16
15
|
stateMachine = null;
|
|
17
16
|
/**
|
|
18
17
|
* Set the state machine definition for dynamic plan generation
|
|
19
18
|
*/
|
|
20
19
|
setStateMachine(stateMachine) {
|
|
21
20
|
this.stateMachine = stateMachine;
|
|
22
|
-
logger.debug('State machine set for
|
|
21
|
+
logger.debug('State machine set for plan manager', {
|
|
23
22
|
name: stateMachine.name,
|
|
24
23
|
phases: Object.keys(stateMachine.states),
|
|
25
24
|
});
|
|
@@ -28,8 +27,9 @@ export class BeadsPlanManager {
|
|
|
28
27
|
* Set the task backend configuration
|
|
29
28
|
*/
|
|
30
29
|
setTaskBackend(taskBackend) {
|
|
31
|
-
//
|
|
32
|
-
|
|
30
|
+
// Default plan manager only supports markdown backend
|
|
31
|
+
// Task backend information is not stored as it's not used for markdown plan generation
|
|
32
|
+
logger.debug('Task backend set for plan manager (markdown mode)', {
|
|
33
33
|
backend: taskBackend.backend,
|
|
34
34
|
available: taskBackend.isAvailable,
|
|
35
35
|
});
|
|
@@ -58,28 +58,28 @@ export class BeadsPlanManager {
|
|
|
58
58
|
* Create initial plan file if it doesn't exist
|
|
59
59
|
*/
|
|
60
60
|
async ensurePlanFile(planFilePath, projectPath, gitBranch) {
|
|
61
|
-
logger.debug('Ensuring
|
|
61
|
+
logger.debug('Ensuring plan file exists', {
|
|
62
62
|
planFilePath,
|
|
63
63
|
projectPath,
|
|
64
64
|
gitBranch,
|
|
65
65
|
});
|
|
66
66
|
const planInfo = await this.getPlanFileInfo(planFilePath);
|
|
67
67
|
if (!planInfo.exists) {
|
|
68
|
-
logger.info('Plan file not found, creating
|
|
68
|
+
logger.info('Plan file not found, creating initial plan', {
|
|
69
69
|
planFilePath,
|
|
70
70
|
});
|
|
71
|
-
await this.
|
|
72
|
-
logger.info('
|
|
71
|
+
await this.createInitialPlanFile(planFilePath, projectPath, gitBranch);
|
|
72
|
+
logger.info('Initial plan file created successfully', { planFilePath });
|
|
73
73
|
}
|
|
74
74
|
else {
|
|
75
75
|
logger.debug('Plan file already exists', { planFilePath });
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
78
|
/**
|
|
79
|
-
* Create initial plan file
|
|
79
|
+
* Create initial plan file with template content
|
|
80
80
|
*/
|
|
81
|
-
async
|
|
82
|
-
logger.debug('Creating
|
|
81
|
+
async createInitialPlanFile(planFilePath, projectPath, gitBranch) {
|
|
82
|
+
logger.debug('Creating initial plan file', { planFilePath });
|
|
83
83
|
try {
|
|
84
84
|
// Ensure directory exists
|
|
85
85
|
await mkdir(dirname(planFilePath), { recursive: true });
|
|
@@ -88,25 +88,25 @@ export class BeadsPlanManager {
|
|
|
88
88
|
});
|
|
89
89
|
const projectName = getPathBasename(projectPath, 'Unknown Project');
|
|
90
90
|
const branchInfo = gitBranch !== 'no-git' ? ` (${gitBranch} branch)` : '';
|
|
91
|
-
const initialContent = this.
|
|
91
|
+
const initialContent = this.generateInitialPlanContent(projectName, branchInfo);
|
|
92
92
|
await writeFile(planFilePath, initialContent, 'utf-8');
|
|
93
|
-
logger.info('
|
|
93
|
+
logger.info('Initial plan file written successfully', {
|
|
94
94
|
planFilePath,
|
|
95
95
|
contentLength: initialContent.length,
|
|
96
96
|
projectName,
|
|
97
97
|
});
|
|
98
98
|
}
|
|
99
99
|
catch (error) {
|
|
100
|
-
logger.error('Failed to create
|
|
100
|
+
logger.error('Failed to create initial plan file', error, {
|
|
101
101
|
planFilePath,
|
|
102
102
|
});
|
|
103
103
|
throw error;
|
|
104
104
|
}
|
|
105
105
|
}
|
|
106
106
|
/**
|
|
107
|
-
* Generate initial plan file content
|
|
107
|
+
* Generate initial plan file content based on state machine definition
|
|
108
108
|
*/
|
|
109
|
-
|
|
109
|
+
generateInitialPlanContent(projectName, branchInfo) {
|
|
110
110
|
const timestamp = new Date().toISOString().split('T')[0];
|
|
111
111
|
if (!this.stateMachine) {
|
|
112
112
|
throw new Error('State machine not set. This should not happen as state machine is always loaded.');
|
|
@@ -123,39 +123,44 @@ export class BeadsPlanManager {
|
|
|
123
123
|
|
|
124
124
|
## Goal
|
|
125
125
|
*Define what you're building or fixing - this will be updated as requirements are gathered*
|
|
126
|
+
`;
|
|
127
|
+
content += `## Key Decisions
|
|
128
|
+
*Important decisions will be documented here as they are made*
|
|
126
129
|
|
|
127
|
-
##
|
|
128
|
-
|
|
130
|
+
## Notes
|
|
131
|
+
*Additional context and observations*
|
|
132
|
+
|
|
133
|
+
`;
|
|
134
|
+
content += `## ${this.capitalizePhase(initialPhase)}
|
|
129
135
|
### Tasks
|
|
136
|
+
- [ ] *Tasks will be added as they are identified*
|
|
130
137
|
|
|
131
|
-
|
|
138
|
+
### Completed
|
|
139
|
+
- [x] Created development plan file
|
|
132
140
|
|
|
133
141
|
`;
|
|
134
|
-
// Generate sections for each phase
|
|
142
|
+
// Generate simple sections for each phase
|
|
135
143
|
for (const phase of phases) {
|
|
136
144
|
if (phase !== initialPhase) {
|
|
137
145
|
content += `## ${this.capitalizePhase(phase)}
|
|
138
|
-
<!-- beads-phase-id: TBD -->
|
|
139
146
|
### Tasks
|
|
147
|
+
- [ ] *To be added when this phase becomes active*
|
|
140
148
|
|
|
141
|
-
|
|
149
|
+
### Completed
|
|
150
|
+
*None yet*
|
|
142
151
|
|
|
143
152
|
`;
|
|
144
153
|
}
|
|
145
154
|
}
|
|
146
|
-
content +=
|
|
147
|
-
*Important decisions will be documented here as they are made*
|
|
148
|
-
|
|
149
|
-
## Notes
|
|
150
|
-
*Additional context and observations*
|
|
155
|
+
content += `
|
|
151
156
|
|
|
152
157
|
---
|
|
153
|
-
*This plan is maintained by the LLM
|
|
158
|
+
*This plan is maintained by the LLM. Tool responses provide guidance on which section to focus on and what tasks to work on.*
|
|
154
159
|
`;
|
|
155
160
|
return content;
|
|
156
161
|
}
|
|
157
162
|
/**
|
|
158
|
-
* Update plan file with new content
|
|
163
|
+
* Update plan file with new content (this is typically done by the LLM)
|
|
159
164
|
*/
|
|
160
165
|
async updatePlanFile(planFilePath, content) {
|
|
161
166
|
// Ensure directory exists
|
|
@@ -173,41 +178,51 @@ export class BeadsPlanManager {
|
|
|
173
178
|
return planInfo.content || '';
|
|
174
179
|
}
|
|
175
180
|
/**
|
|
176
|
-
* Generate phase-specific plan file guidance
|
|
181
|
+
* Generate phase-specific plan file guidance based on state machine
|
|
177
182
|
*/
|
|
178
183
|
generatePlanFileGuidance(phase) {
|
|
184
|
+
if (phase === null || phase === undefined) {
|
|
185
|
+
throw new Error('Phase parameter cannot be null or undefined');
|
|
186
|
+
}
|
|
187
|
+
if (typeof phase !== 'string') {
|
|
188
|
+
throw new Error('Phase parameter must be a string');
|
|
189
|
+
}
|
|
190
|
+
if (phase.trim() === '') {
|
|
191
|
+
throw new Error('Phase parameter cannot be empty');
|
|
192
|
+
}
|
|
179
193
|
if (!this.stateMachine) {
|
|
180
194
|
throw new Error('State machine not set. This should not happen as state machine is always loaded.');
|
|
181
195
|
}
|
|
182
196
|
const phaseDefinition = this.stateMachine.states[phase];
|
|
183
197
|
if (!phaseDefinition) {
|
|
184
|
-
logger.warn('Unknown phase for
|
|
185
|
-
return `
|
|
198
|
+
logger.warn('Unknown phase for plan file guidance', { phase });
|
|
199
|
+
return `Update the ${this.capitalizePhase(phase)} section with current progress and mark completed tasks.`;
|
|
186
200
|
}
|
|
187
|
-
|
|
201
|
+
const capitalizedPhase = this.capitalizePhase(phase);
|
|
202
|
+
return `Update the ${capitalizedPhase} section with progress. Mark completed tasks with [x] and add new tasks as they are identified.`;
|
|
188
203
|
}
|
|
189
204
|
/**
|
|
190
205
|
* Delete plan file
|
|
191
206
|
*/
|
|
192
207
|
async deletePlanFile(planFilePath) {
|
|
193
|
-
logger.debug('Deleting
|
|
208
|
+
logger.debug('Deleting plan file', { planFilePath });
|
|
194
209
|
try {
|
|
195
210
|
// Check if file exists first
|
|
196
211
|
await access(planFilePath);
|
|
197
212
|
// Import unlink dynamically to avoid issues
|
|
198
213
|
const { unlink } = await import('node:fs/promises');
|
|
199
214
|
await unlink(planFilePath);
|
|
200
|
-
logger.info('
|
|
215
|
+
logger.info('Plan file deleted successfully', { planFilePath });
|
|
201
216
|
return true;
|
|
202
217
|
}
|
|
203
218
|
catch (error) {
|
|
204
219
|
if (error.code === 'ENOENT') {
|
|
205
|
-
logger.debug('
|
|
220
|
+
logger.debug('Plan file does not exist, nothing to delete', {
|
|
206
221
|
planFilePath,
|
|
207
222
|
});
|
|
208
223
|
return true; // Consider it successful if file doesn't exist
|
|
209
224
|
}
|
|
210
|
-
logger.error('Failed to delete
|
|
225
|
+
logger.error('Failed to delete plan file', error, {
|
|
211
226
|
planFilePath,
|
|
212
227
|
});
|
|
213
228
|
throw error;
|
|
@@ -217,24 +232,24 @@ export class BeadsPlanManager {
|
|
|
217
232
|
* Ensure plan file is deleted (verify deletion)
|
|
218
233
|
*/
|
|
219
234
|
async ensurePlanFileDeleted(planFilePath) {
|
|
220
|
-
logger.debug('Ensuring
|
|
235
|
+
logger.debug('Ensuring plan file is deleted', { planFilePath });
|
|
221
236
|
try {
|
|
222
237
|
await access(planFilePath);
|
|
223
238
|
// If we reach here, file still exists
|
|
224
|
-
logger.warn('
|
|
239
|
+
logger.warn('Plan file still exists after deletion attempt', {
|
|
225
240
|
planFilePath,
|
|
226
241
|
});
|
|
227
242
|
return false;
|
|
228
243
|
}
|
|
229
244
|
catch (error) {
|
|
230
245
|
if (error.code === 'ENOENT') {
|
|
231
|
-
logger.debug('
|
|
246
|
+
logger.debug('Plan file successfully deleted (does not exist)', {
|
|
232
247
|
planFilePath,
|
|
233
248
|
});
|
|
234
249
|
return true;
|
|
235
250
|
}
|
|
236
251
|
// Some other error occurred
|
|
237
|
-
logger.error('Error checking
|
|
252
|
+
logger.error('Error checking plan file deletion', error, {
|
|
238
253
|
planFilePath,
|
|
239
254
|
});
|
|
240
255
|
throw error;
|
|
@@ -251,6 +266,7 @@ export class BeadsPlanManager {
|
|
|
251
266
|
}
|
|
252
267
|
/**
|
|
253
268
|
* Generate workflow documentation URL for predefined workflows
|
|
269
|
+
* Returns undefined for custom workflows
|
|
254
270
|
*/
|
|
255
271
|
generateWorkflowDocumentationUrl(workflowName) {
|
|
256
272
|
// Don't generate URL for custom workflows
|
|
@@ -261,4 +277,4 @@ export class BeadsPlanManager {
|
|
|
261
277
|
return `https://mrsimpson.github.io/responsible-vibe-mcp/workflows/${workflowName}`;
|
|
262
278
|
}
|
|
263
279
|
}
|
|
264
|
-
//# sourceMappingURL=
|
|
280
|
+
//# sourceMappingURL=plan-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plan-manager.js","sourceRoot":"","sources":["../src/plan-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project Docs Manager
|
|
3
|
+
*
|
|
4
|
+
* Manages project documentation artifacts (architecture.md, requirements.md, design.md)
|
|
5
|
+
* separate from the workflow-specific plan files. Handles creation, validation, and
|
|
6
|
+
* path resolution for project documents. Now supports both template creation and
|
|
7
|
+
* file linking via symlinks.
|
|
8
|
+
*/
|
|
9
|
+
import { TemplateManager, TemplateOptions } from './template-manager.js';
|
|
10
|
+
export interface ProjectDocsInfo {
|
|
11
|
+
architecture: {
|
|
12
|
+
path: string;
|
|
13
|
+
exists: boolean;
|
|
14
|
+
};
|
|
15
|
+
requirements: {
|
|
16
|
+
path: string;
|
|
17
|
+
exists: boolean;
|
|
18
|
+
};
|
|
19
|
+
design: {
|
|
20
|
+
path: string;
|
|
21
|
+
exists: boolean;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
export interface CreateOrLinkResult {
|
|
25
|
+
created: string[];
|
|
26
|
+
linked: string[];
|
|
27
|
+
skipped: string[];
|
|
28
|
+
}
|
|
29
|
+
export declare class ProjectDocsManager {
|
|
30
|
+
templateManager: TemplateManager;
|
|
31
|
+
constructor();
|
|
32
|
+
/**
|
|
33
|
+
* Get project docs directory path
|
|
34
|
+
*/
|
|
35
|
+
getDocsPath(projectPath: string): string;
|
|
36
|
+
/**
|
|
37
|
+
* Determine the appropriate extension for a document based on source path
|
|
38
|
+
*/
|
|
39
|
+
private getDocumentExtension;
|
|
40
|
+
/**
|
|
41
|
+
* Get the target filename for a document type
|
|
42
|
+
*/
|
|
43
|
+
private getDocumentFilename;
|
|
44
|
+
/**
|
|
45
|
+
* Get paths for all project documents
|
|
46
|
+
*/
|
|
47
|
+
getDocumentPaths(projectPath: string): {
|
|
48
|
+
architecture: string;
|
|
49
|
+
requirements: string;
|
|
50
|
+
design: string;
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Get paths for all project documents with dynamic extensions based on source paths
|
|
54
|
+
*/
|
|
55
|
+
getDocumentPathsWithExtensions(projectPath: string, sourcePaths?: Partial<{
|
|
56
|
+
architecture: string;
|
|
57
|
+
requirements: string;
|
|
58
|
+
design: string;
|
|
59
|
+
}>): Promise<{
|
|
60
|
+
architecture: string;
|
|
61
|
+
requirements: string;
|
|
62
|
+
design: string;
|
|
63
|
+
}>;
|
|
64
|
+
/**
|
|
65
|
+
* Check which project documents exist
|
|
66
|
+
*/
|
|
67
|
+
getProjectDocsInfo(projectPath: string): Promise<ProjectDocsInfo>;
|
|
68
|
+
/**
|
|
69
|
+
* Create project documents using templates (legacy method for backward compatibility)
|
|
70
|
+
*/
|
|
71
|
+
createProjectDocs(projectPath: string, options?: TemplateOptions): Promise<{
|
|
72
|
+
created: string[];
|
|
73
|
+
skipped: string[];
|
|
74
|
+
}>;
|
|
75
|
+
/**
|
|
76
|
+
* Create or link project documents using templates and/or file paths
|
|
77
|
+
*/
|
|
78
|
+
createOrLinkProjectDocs(projectPath: string, templateOptions?: Partial<TemplateOptions>, filePaths?: Partial<{
|
|
79
|
+
architecture: string;
|
|
80
|
+
requirements: string;
|
|
81
|
+
design: string;
|
|
82
|
+
}>): Promise<CreateOrLinkResult>;
|
|
83
|
+
/**
|
|
84
|
+
* Create a symlink to an existing file
|
|
85
|
+
*/
|
|
86
|
+
createSymlink(sourcePath: string, targetPath: string): Promise<void>;
|
|
87
|
+
/**
|
|
88
|
+
* Remove existing document or symlink
|
|
89
|
+
*/
|
|
90
|
+
private removeExistingDocument;
|
|
91
|
+
/**
|
|
92
|
+
* Create a single document from template
|
|
93
|
+
*/
|
|
94
|
+
private createDocument;
|
|
95
|
+
/**
|
|
96
|
+
* Get variable substitutions for workflow instructions
|
|
97
|
+
*/
|
|
98
|
+
getVariableSubstitutions(projectPath: string, gitBranch?: string): Record<string, string>;
|
|
99
|
+
/**
|
|
100
|
+
* Get variable substitutions for workflow instructions with dynamic paths
|
|
101
|
+
*/
|
|
102
|
+
getVariableSubstitutionsWithExtensions(projectPath: string, sourcePaths?: Partial<{
|
|
103
|
+
architecture: string;
|
|
104
|
+
requirements: string;
|
|
105
|
+
design: string;
|
|
106
|
+
}>): Promise<Record<string, string>>;
|
|
107
|
+
/**
|
|
108
|
+
* Read a project document - returns the path for LLM to read as needed
|
|
109
|
+
*/
|
|
110
|
+
readDocument(projectPath: string, type: 'architecture' | 'requirements' | 'design'): Promise<string>;
|
|
111
|
+
/**
|
|
112
|
+
* Check if all project documents exist
|
|
113
|
+
*/
|
|
114
|
+
allDocumentsExist(projectPath: string): Promise<boolean>;
|
|
115
|
+
/**
|
|
116
|
+
* Check if a document is a symlink
|
|
117
|
+
*/
|
|
118
|
+
isSymlink(projectPath: string, type: 'architecture' | 'requirements' | 'design'): Promise<boolean>;
|
|
119
|
+
}
|