specweave 0.4.1 → 0.6.3
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/.claude-plugin/README.md +312 -0
- package/.claude-plugin/marketplace.json +210 -0
- package/CLAUDE.md +952 -609
- package/README.md +179 -761
- package/bin/install-agents.sh +1 -1
- package/bin/install-commands.sh +66 -14
- package/bin/install-hooks.sh +1 -1
- package/bin/install-skills.sh +1 -1
- package/bin/specweave.js +2 -0
- package/dist/adapters/claude/adapter.d.ts +49 -11
- package/dist/adapters/claude/adapter.d.ts.map +1 -1
- package/dist/adapters/claude/adapter.js +175 -42
- package/dist/adapters/claude/adapter.js.map +1 -1
- package/dist/adapters/copilot/adapter.d.ts +20 -2
- package/dist/adapters/copilot/adapter.d.ts.map +1 -1
- package/dist/adapters/copilot/adapter.js +117 -7
- package/dist/adapters/copilot/adapter.js.map +1 -1
- package/dist/adapters/cursor/adapter.d.ts +18 -0
- package/dist/adapters/cursor/adapter.d.ts.map +1 -1
- package/dist/adapters/cursor/adapter.js +55 -3
- package/dist/adapters/cursor/adapter.js.map +1 -1
- package/dist/adapters/generic/adapter.d.ts +18 -0
- package/dist/adapters/generic/adapter.d.ts.map +1 -1
- package/dist/adapters/generic/adapter.js +55 -3
- package/dist/adapters/generic/adapter.js.map +1 -1
- package/dist/cli/commands/init.d.ts +1 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +521 -185
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/install.d.ts +2 -0
- package/dist/cli/commands/install.d.ts.map +1 -1
- package/dist/cli/commands/install.js +28 -25
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/cli/commands/list.d.ts +2 -0
- package/dist/cli/commands/list.d.ts.map +1 -1
- package/dist/cli/commands/list.js +26 -24
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/cli/commands/plugin.d.ts +23 -6
- package/dist/cli/commands/plugin.d.ts.map +1 -1
- package/dist/cli/commands/plugin.js +92 -66
- package/dist/cli/commands/plugin.js.map +1 -1
- package/dist/core/i18n/language-detector.d.ts +29 -0
- package/dist/core/i18n/language-detector.d.ts.map +1 -0
- package/dist/core/i18n/language-detector.js +143 -0
- package/dist/core/i18n/language-detector.js.map +1 -0
- package/dist/core/i18n/language-manager.d.ts +101 -0
- package/dist/core/i18n/language-manager.d.ts.map +1 -0
- package/dist/core/i18n/language-manager.js +232 -0
- package/dist/core/i18n/language-manager.js.map +1 -0
- package/dist/core/i18n/language-registry.d.ts +44 -0
- package/dist/core/i18n/language-registry.d.ts.map +1 -0
- package/dist/core/i18n/language-registry.js +234 -0
- package/dist/core/i18n/language-registry.js.map +1 -0
- package/dist/core/i18n/locale-manager.d.ts +62 -0
- package/dist/core/i18n/locale-manager.d.ts.map +1 -0
- package/dist/core/i18n/locale-manager.js +137 -0
- package/dist/core/i18n/locale-manager.js.map +1 -0
- package/dist/core/i18n/system-prompt-injector.d.ts +33 -0
- package/dist/core/i18n/system-prompt-injector.d.ts.map +1 -0
- package/dist/core/i18n/system-prompt-injector.js +131 -0
- package/dist/core/i18n/system-prompt-injector.js.map +1 -0
- package/dist/core/i18n/types.d.ts +151 -0
- package/dist/core/i18n/types.d.ts.map +1 -0
- package/dist/core/i18n/types.js +11 -0
- package/dist/core/i18n/types.js.map +1 -0
- package/dist/core/increment-status.d.ts +72 -0
- package/dist/core/increment-status.d.ts.map +1 -0
- package/dist/core/increment-status.js +227 -0
- package/dist/core/increment-status.js.map +1 -0
- package/dist/core/plugin-loader.d.ts +33 -13
- package/dist/core/plugin-loader.d.ts.map +1 -1
- package/dist/core/plugin-loader.js +145 -43
- package/dist/core/plugin-loader.js.map +1 -1
- package/dist/core/types/config.d.ts +51 -0
- package/dist/core/types/config.d.ts.map +1 -0
- package/dist/core/types/config.js +21 -0
- package/dist/core/types/config.js.map +1 -0
- package/dist/core/types/plugin.d.ts +73 -42
- package/dist/core/types/plugin.d.ts.map +1 -1
- package/dist/core/types/plugin.js +4 -3
- package/dist/core/types/plugin.js.map +1 -1
- package/dist/hooks/lib/sync-living-docs.d.ts +27 -0
- package/dist/hooks/lib/sync-living-docs.d.ts.map +1 -0
- package/dist/hooks/lib/sync-living-docs.js +116 -0
- package/dist/hooks/lib/sync-living-docs.js.map +1 -0
- package/dist/hooks/lib/translate-living-docs.d.ts +13 -0
- package/dist/hooks/lib/translate-living-docs.d.ts.map +1 -0
- package/dist/hooks/lib/translate-living-docs.js +166 -0
- package/dist/hooks/lib/translate-living-docs.js.map +1 -0
- package/dist/hooks/lib/update-tasks-md.d.ts +29 -0
- package/dist/hooks/lib/update-tasks-md.d.ts.map +1 -0
- package/dist/hooks/lib/update-tasks-md.js +203 -0
- package/dist/hooks/lib/update-tasks-md.js.map +1 -0
- package/dist/integrations/jira/jira-incremental-mapper.js.map +1 -1
- package/dist/integrations/jira/jira-mapper.js.map +1 -1
- package/dist/locales/de/.gitkeep +0 -0
- package/dist/locales/de/cli.json +108 -0
- package/dist/locales/en/cli.json +285 -0
- package/dist/locales/en/errors.json +7 -0
- package/dist/locales/en/templates.json +6 -0
- package/dist/locales/es/.gitkeep +0 -0
- package/dist/locales/es/cli.json +41 -0
- package/dist/locales/fr/.gitkeep +0 -0
- package/dist/locales/fr/cli.json +108 -0
- package/dist/locales/ja/.gitkeep +0 -0
- package/dist/locales/ja/cli.json +108 -0
- package/dist/locales/ko/.gitkeep +0 -0
- package/dist/locales/ko/cli.json +108 -0
- package/dist/locales/pt/.gitkeep +0 -0
- package/dist/locales/pt/cli.json +108 -0
- package/dist/locales/ru/.gitkeep +0 -0
- package/dist/locales/ru/cli.json +269 -0
- package/dist/locales/zh/.gitkeep +0 -0
- package/dist/locales/zh/cli.json +108 -0
- package/dist/plugins/specweave-github/lib/github-client.d.ts +86 -0
- package/dist/plugins/specweave-github/lib/github-client.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-client.js +275 -0
- package/dist/plugins/specweave-github/lib/github-client.js.map +1 -0
- package/dist/plugins/specweave-github/lib/index.d.ts +10 -0
- package/dist/plugins/specweave-github/lib/index.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/index.js +10 -0
- package/dist/plugins/specweave-github/lib/index.js.map +1 -0
- package/dist/plugins/specweave-github/lib/subtask-sync.d.ts +51 -0
- package/dist/plugins/specweave-github/lib/subtask-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/subtask-sync.js +147 -0
- package/dist/plugins/specweave-github/lib/subtask-sync.js.map +1 -0
- package/dist/plugins/specweave-github/lib/task-parser.d.ts +37 -0
- package/dist/plugins/specweave-github/lib/task-parser.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/task-parser.js +211 -0
- package/dist/plugins/specweave-github/lib/task-parser.js.map +1 -0
- package/dist/plugins/specweave-github/lib/task-sync.d.ts +51 -0
- package/dist/plugins/specweave-github/lib/task-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/task-sync.js +332 -0
- package/dist/plugins/specweave-github/lib/task-sync.js.map +1 -0
- package/dist/plugins/specweave-github/lib/types.d.ts +80 -0
- package/dist/plugins/specweave-github/lib/types.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/types.js +5 -0
- package/dist/plugins/specweave-github/lib/types.js.map +1 -0
- package/dist/utils/agents-md-compiler.d.ts +68 -0
- package/dist/utils/agents-md-compiler.d.ts.map +1 -0
- package/dist/utils/agents-md-compiler.js +420 -0
- package/dist/utils/agents-md-compiler.js.map +1 -0
- package/dist/utils/execFileNoThrow.d.ts +97 -0
- package/dist/utils/execFileNoThrow.d.ts.map +1 -0
- package/dist/utils/execFileNoThrow.js +130 -0
- package/dist/utils/execFileNoThrow.js.map +1 -0
- package/dist/utils/generate-skills-index.js +4 -4
- package/dist/utils/generate-skills-index.js.map +1 -1
- package/package.json +13 -14
- package/plugins/.specweave/logs/hooks-debug.log +24 -0
- package/plugins/.specweave/logs/last-hook-fire +1 -0
- package/plugins/.specweave/logs/last-todowrite-time +1 -0
- package/plugins/.specweave/logs/tasks.log +6 -0
- package/plugins/specweave/.claude-plugin/plugin.json +22 -0
- package/{src → plugins/specweave}/agents/pm/AGENT.md +80 -0
- package/plugins/specweave/agents/translator/AGENT.md +282 -0
- package/{src → plugins/specweave}/commands/README.md +11 -11
- package/{src/commands/specweave.costs.md → plugins/specweave/commands/costs.md} +8 -8
- package/{src/commands/specweave.do.md → plugins/specweave/commands/do.md} +35 -8
- package/{src/commands/specweave.done.md → plugins/specweave/commands/done.md} +1 -1
- package/{src/commands/specweave.inc.md → plugins/specweave/commands/inc.md} +1 -1
- package/{src/commands/specweave.increment.md → plugins/specweave/commands/increment.md} +84 -19
- package/{src/commands/specweave.next.md → plugins/specweave/commands/next.md} +1 -1
- package/{src/commands/specweave.progress.md → plugins/specweave/commands/progress.md} +1 -1
- package/{src → plugins/specweave}/commands/specweave.md +57 -25
- package/{src/commands/specweave.sync-docs.md → plugins/specweave/commands/sync-docs.md} +6 -6
- package/plugins/specweave/commands/translate.md +425 -0
- package/{src/commands/specweave.validate.md → plugins/specweave/commands/validate.md} +2 -2
- package/plugins/specweave/hooks/hooks.json +15 -0
- package/plugins/specweave/hooks/post-task-completion.sh +265 -0
- package/plugins/specweave/skills/SKILLS-INDEX.md +229 -0
- package/{src → plugins/specweave}/skills/brownfield-analyzer/SKILL.md +66 -24
- package/{src → plugins/specweave}/skills/context-loader/SKILL.md +1 -1
- package/plugins/specweave/skills/context-optimizer/SKILL.md +588 -0
- package/plugins/specweave/skills/docs-updater/SKILL.md +0 -0
- package/{src → plugins/specweave}/skills/increment-planner/SKILL.md +81 -4
- package/plugins/specweave/skills/plugin-detector/SKILL.md +211 -0
- package/{src → plugins/specweave}/skills/project-kickstarter/SKILL.md +7 -7
- package/plugins/specweave/skills/rfc-generator/SKILL.md +369 -0
- package/{src → plugins/specweave}/skills/specweave-detector/SKILL.md +2 -2
- package/plugins/specweave/skills/specweave-framework/SKILL.md +498 -0
- package/plugins/specweave/skills/specweave-framework/test-cases/test-1-increment-naming.yaml +11 -0
- package/plugins/specweave/skills/specweave-framework/test-cases/test-2-source-of-truth.yaml +11 -0
- package/plugins/specweave/skills/specweave-framework/test-cases/test-3-increment-discipline.yaml +12 -0
- package/plugins/specweave/skills/specweave-framework/test-cases/test-4-file-placement.yaml +11 -0
- package/{src → plugins/specweave}/skills/tdd-workflow/SKILL.md +21 -21
- package/plugins/specweave/skills/translator/SKILL.md +172 -0
- package/plugins/specweave-ado/.claude-plugin/plugin.json +8 -0
- package/plugins/specweave-alternatives/.claude-plugin/plugin.json +8 -0
- package/plugins/specweave-alternatives/skills/bmad-method-expert/SKILL.md +626 -0
- package/plugins/specweave-alternatives/skills/bmad-method-expert/scripts/analyze-project.js +318 -0
- package/plugins/specweave-alternatives/skills/bmad-method-expert/scripts/check-setup.js +208 -0
- package/plugins/specweave-alternatives/skills/bmad-method-expert/scripts/generate-template.js +1149 -0
- package/plugins/specweave-alternatives/skills/bmad-method-expert/scripts/validate-documents.js +340 -0
- package/plugins/specweave-alternatives/skills/spec-kit-expert/SKILL.md +1010 -0
- package/plugins/specweave-backend/.claude-plugin/plugin.json +8 -0
- package/plugins/specweave-cost-optimizer/.claude-plugin/plugin.json +8 -0
- package/plugins/specweave-diagrams/.claude-plugin/plugin.json +8 -0
- package/plugins/specweave-docs/.claude-plugin/plugin.json +8 -0
- package/plugins/specweave-docs/skills/docusaurus/SKILL.md +526 -0
- package/plugins/specweave-figma/.claude-plugin/.mcp.json +12 -0
- package/plugins/specweave-figma/.claude-plugin/plugin.json +8 -0
- package/plugins/specweave-figma/ARCHITECTURE.md +453 -0
- package/plugins/specweave-figma/README.md +728 -0
- package/plugins/specweave-figma/skills/figma-to-code/SKILL.md +632 -0
- package/plugins/specweave-figma/skills/figma-to-code/test-1-token-generation.yaml +29 -0
- package/plugins/specweave-figma/skills/figma-to-code/test-2-component-generation.yaml +27 -0
- package/plugins/specweave-figma/skills/figma-to-code/test-3-typescript-generation.yaml +28 -0
- package/plugins/specweave-frontend/.claude-plugin/plugin.json +8 -0
- package/plugins/specweave-github/.claude-plugin/plugin.json +19 -0
- package/plugins/specweave-github/agents/github-manager/AGENT.md +651 -0
- package/plugins/specweave-github/commands/github-close-issue.md +418 -0
- package/plugins/specweave-github/commands/github-create-issue.md +307 -0
- package/plugins/specweave-github/commands/github-status.md +533 -0
- package/plugins/specweave-github/commands/github-sync-tasks.md +530 -0
- package/plugins/specweave-github/commands/github-sync.md +443 -0
- package/plugins/specweave-github/lib/github-client.ts +330 -0
- package/plugins/specweave-github/lib/index.ts +10 -0
- package/plugins/specweave-github/lib/subtask-sync.ts +225 -0
- package/plugins/specweave-github/lib/task-parser.ts +246 -0
- package/plugins/specweave-github/lib/task-sync.ts +402 -0
- package/plugins/specweave-github/lib/types.ts +86 -0
- package/plugins/specweave-github/skills/github-issue-tracker/SKILL.md +497 -0
- package/plugins/specweave-github/skills/github-sync/SKILL.md +461 -0
- package/plugins/specweave-infrastructure/.claude-plugin/plugin.json +8 -0
- package/plugins/specweave-jira/.claude-plugin/plugin.json +8 -0
- package/{src → plugins/specweave-jira}/commands/specweave.sync-jira.md +18 -18
- package/plugins/specweave-kubernetes/.claude-plugin/plugin.json +8 -0
- package/plugins/specweave-ml/.claude-plugin/plugin.json +38 -0
- package/plugins/specweave-ml/README.md +885 -0
- package/plugins/specweave-ml/agents/ml-engineer/AGENT.md +402 -0
- package/plugins/specweave-ml/commands/ml-deploy.md +116 -0
- package/plugins/specweave-ml/commands/ml-evaluate.md +87 -0
- package/plugins/specweave-ml/commands/ml-explain.md +83 -0
- package/plugins/specweave-ml/skills/anomaly-detector/SKILL.md +559 -0
- package/plugins/specweave-ml/skills/automl-optimizer/SKILL.md +485 -0
- package/plugins/specweave-ml/skills/cv-pipeline-builder/SKILL.md +157 -0
- package/plugins/specweave-ml/skills/data-visualizer/SKILL.md +521 -0
- package/plugins/specweave-ml/skills/experiment-tracker/SKILL.md +535 -0
- package/plugins/specweave-ml/skills/feature-engineer/SKILL.md +566 -0
- package/plugins/specweave-ml/skills/ml-deployment-helper/SKILL.md +345 -0
- package/plugins/specweave-ml/skills/ml-pipeline-orchestrator/SKILL.md +518 -0
- package/plugins/specweave-ml/skills/model-evaluator/SKILL.md +155 -0
- package/plugins/specweave-ml/skills/model-explainer/SKILL.md +227 -0
- package/plugins/specweave-ml/skills/model-registry/SKILL.md +541 -0
- package/plugins/specweave-ml/skills/nlp-pipeline-builder/SKILL.md +180 -0
- package/plugins/specweave-ml/skills/time-series-forecaster/SKILL.md +569 -0
- package/plugins/specweave-payments/.claude-plugin/plugin.json +8 -0
- package/plugins/specweave-testing/.claude-plugin/plugin.json +8 -0
- package/plugins/specweave-tooling/.claude-plugin/plugin.json +8 -0
- package/plugins/specweave-ui/.claude-plugin/plugin.json +26 -0
- package/plugins/specweave-ui/.mcp.json +14 -0
- package/plugins/specweave-ui/README.md +386 -0
- package/src/adapters/claude/adapter.ts +193 -46
- package/src/adapters/copilot/adapter.ts +132 -7
- package/src/adapters/cursor/adapter.ts +62 -3
- package/src/adapters/generic/adapter.ts +62 -3
- package/src/templates/AGENTS.md.template +170 -1
- package/src/templates/CLAUDE.md.template +122 -24
- package/src/templates/tasks.md.template +261 -0
- package/src/agents/ml-engineer/AGENT.md +0 -150
- package/src/commands/specweave.sync-github.md +0 -269
- package/src/hooks/post-task-completion.sh +0 -121
- package/src/skills/SKILLS-INDEX.md +0 -444
- package/src/skills/github-sync/SKILL.md +0 -234
- /package/{src → plugins/specweave}/agents/architect/AGENT.md +0 -0
- /package/{src → plugins/specweave}/agents/code-reviewer.md +0 -0
- /package/{src → plugins/specweave}/agents/docs-writer/AGENT.md +0 -0
- /package/{src → plugins/specweave}/agents/performance/AGENT.md +0 -0
- /package/{src → plugins/specweave}/agents/qa-lead/AGENT.md +0 -0
- /package/{src → plugins/specweave}/agents/security/AGENT.md +0 -0
- /package/{src → plugins/specweave}/agents/tdd-orchestrator/AGENT.md +0 -0
- /package/{src → plugins/specweave}/agents/tech-lead/AGENT.md +0 -0
- /package/{src/commands/specweave.list-increments.md → plugins/specweave/commands/list-increments.md} +0 -0
- /package/{src/commands/specweave.tdd-cycle.md → plugins/specweave/commands/tdd-cycle.md} +0 -0
- /package/{src/commands/specweave.tdd-green.md → plugins/specweave/commands/tdd-green.md} +0 -0
- /package/{src/commands/specweave.tdd-red.md → plugins/specweave/commands/tdd-red.md} +0 -0
- /package/{src/commands/specweave.tdd-refactor.md → plugins/specweave/commands/tdd-refactor.md} +0 -0
- /package/{src → plugins/specweave}/hooks/README.md +0 -0
- /package/{src → plugins/specweave}/hooks/docs-changed.sh +0 -0
- /package/{src → plugins/specweave}/hooks/human-input-required.sh +0 -0
- /package/{src → plugins/specweave}/hooks/post-increment-plugin-detect.sh +0 -0
- /package/{src → plugins/specweave}/hooks/pre-implementation.sh +0 -0
- /package/{src → plugins/specweave}/hooks/pre-task-plugin-detect.sh +0 -0
- /package/{src → plugins/specweave}/skills/brownfield-onboarder/SKILL.md +0 -0
- /package/{src → plugins/specweave}/skills/docs-updater/README.md +0 -0
- /package/{src → plugins/specweave}/skills/increment-planner/scripts/feature-utils.js +0 -0
- /package/{src → plugins/specweave}/skills/increment-quality-judge/SKILL.md +0 -0
- /package/{src → plugins/specweave}/skills/project-kickstarter/test-cases/test-1-high-confidence-full-product.yaml +0 -0
- /package/{src → plugins/specweave}/skills/project-kickstarter/test-cases/test-2-medium-confidence-partial.yaml +0 -0
- /package/{src → plugins/specweave}/skills/project-kickstarter/test-cases/test-3-low-confidence-technical-question.yaml +0 -0
- /package/{src → plugins/specweave}/skills/project-kickstarter/test-cases/test-4-opt-out-explicit.yaml +0 -0
- /package/{src → plugins/specweave}/skills/role-orchestrator/README.md +0 -0
- /package/{src → plugins/specweave}/skills/role-orchestrator/SKILL.md +0 -0
- /package/{src → plugins/specweave}/skills/task-builder/README.md +0 -0
- /package/{src → plugins/specweave-ado}/skills/ado-sync/README.md +0 -0
- /package/{src → plugins/specweave-ado}/skills/ado-sync/SKILL.md +0 -0
- /package/{src → plugins/specweave-ado}/skills/specweave-ado-mapper/SKILL.md +0 -0
- /package/{src → plugins/specweave-backend}/agents/database-optimizer/AGENT.md +0 -0
- /package/{src → plugins/specweave-backend}/skills/dotnet-backend/SKILL.md +0 -0
- /package/{src → plugins/specweave-backend}/skills/nodejs-backend/SKILL.md +0 -0
- /package/{src → plugins/specweave-backend}/skills/python-backend/SKILL.md +0 -0
- /package/{src → plugins/specweave-cost-optimizer}/skills/cost-optimizer/SKILL.md +0 -0
- /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/AGENT.md +0 -0
- /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/c4-component-template.mmd +0 -0
- /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/c4-container-template.mmd +0 -0
- /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/c4-context-template.mmd +0 -0
- /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/deployment-template.mmd +0 -0
- /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/er-diagram-template.mmd +0 -0
- /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/sequence-template.mmd +0 -0
- /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/test-cases/test-1-c4-context.yaml +0 -0
- /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/test-cases/test-2-sequence.yaml +0 -0
- /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/test-cases/test-3-er-diagram.yaml +0 -0
- /package/{src → plugins/specweave-diagrams}/skills/diagrams-architect/SKILL.md +0 -0
- /package/{src → plugins/specweave-diagrams}/skills/diagrams-generator/SKILL.md +0 -0
- /package/{src → plugins/specweave-docs}/skills/spec-driven-brainstorming/README.md +0 -0
- /package/{src → plugins/specweave-docs}/skills/spec-driven-brainstorming/SKILL.md +0 -0
- /package/{src → plugins/specweave-docs}/skills/spec-driven-debugging/README.md +0 -0
- /package/{src → plugins/specweave-docs}/skills/spec-driven-debugging/SKILL.md +0 -0
- /package/{src → plugins/specweave-frontend}/skills/design-system-architect/SKILL.md +0 -0
- /package/{src → plugins/specweave-frontend}/skills/frontend/SKILL.md +0 -0
- /package/{src → plugins/specweave-frontend}/skills/nextjs/SKILL.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/devops/AGENT.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/network-engineer/AGENT.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/observability-engineer/AGENT.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/performance-engineer/AGENT.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/AGENT.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/backend-diagnostics.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/database-diagnostics.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/infrastructure.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/monitoring.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/security-incidents.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/ui-diagnostics.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/01-high-cpu-usage.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/02-database-deadlock.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/03-memory-leak.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/04-slow-api-response.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/05-ddos-attack.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/06-disk-full.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/07-service-down.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/08-data-corruption.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/09-cascade-failure.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/10-rate-limit-exceeded.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/scripts/health-check.sh +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/scripts/log-analyzer.py +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/scripts/metrics-collector.sh +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/scripts/trace-analyzer.js +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/templates/incident-report.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/templates/mitigation-plan.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/templates/post-mortem.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/agents/sre/templates/runbook-template.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/commands/specweave.monitor-setup.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/commands/specweave.slo-implement.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/skills/distributed-tracing/SKILL.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/skills/grafana-dashboards/SKILL.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/skills/hetzner-provisioner/README.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/skills/hetzner-provisioner/SKILL.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/skills/prometheus-configuration/SKILL.md +0 -0
- /package/{src → plugins/specweave-infrastructure}/skills/slo-implementation/SKILL.md +0 -0
- /package/{src → plugins/specweave-jira}/skills/jira-sync/README.md +0 -0
- /package/{src → plugins/specweave-jira}/skills/jira-sync/SKILL.md +0 -0
- /package/{src → plugins/specweave-jira}/skills/specweave-jira-mapper/SKILL.md +0 -0
- /package/{src → plugins/specweave-kubernetes}/agents/kubernetes-architect/AGENT.md +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/gitops-workflow/SKILL.md +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/gitops-workflow/references/argocd-setup.md +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/gitops-workflow/references/sync-policies.md +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/SKILL.md +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/assets/Chart.yaml.template +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/assets/values.yaml.template +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/references/chart-structure.md +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/scripts/validate-chart.sh +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/SKILL.md +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/assets/configmap-template.yaml +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/assets/deployment-template.yaml +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/assets/service-template.yaml +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/references/deployment-spec.md +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/references/service-spec.md +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/k8s-security-policies/SKILL.md +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/k8s-security-policies/assets/network-policy-template.yaml +0 -0
- /package/{src → plugins/specweave-kubernetes}/skills/k8s-security-policies/references/rbac-patterns.md +0 -0
- /package/{src → plugins/specweave-ml}/agents/data-scientist/AGENT.md +0 -0
- /package/{src → plugins/specweave-ml}/agents/mlops-engineer/AGENT.md +0 -0
- /package/{src → plugins/specweave-ml}/commands/specweave.ml-pipeline.md +0 -0
- /package/{src → plugins/specweave-ml}/skills/ml-pipeline-workflow/SKILL.md +0 -0
- /package/{src → plugins/specweave-payments}/agents/payment-integration/AGENT.md +0 -0
- /package/{src → plugins/specweave-payments}/skills/billing-automation/SKILL.md +0 -0
- /package/{src → plugins/specweave-payments}/skills/paypal-integration/SKILL.md +0 -0
- /package/{src → plugins/specweave-payments}/skills/pci-compliance/SKILL.md +0 -0
- /package/{src → plugins/specweave-payments}/skills/stripe-integration/SKILL.md +0 -0
- /package/{src → plugins/specweave-testing}/skills/e2e-playwright/README.md +0 -0
- /package/{src → plugins/specweave-testing}/skills/e2e-playwright/SKILL.md +0 -0
- /package/{src → plugins/specweave-testing}/skills/e2e-playwright/execute.js +0 -0
- /package/{src → plugins/specweave-testing}/skills/e2e-playwright/lib/utils.js +0 -0
- /package/{src → plugins/specweave-testing}/skills/e2e-playwright/package.json +0 -0
- /package/{src → plugins/specweave-tooling}/skills/skill-creator/LICENSE.txt +0 -0
- /package/{src → plugins/specweave-tooling}/skills/skill-creator/SKILL.md +0 -0
- /package/{src → plugins/specweave-tooling}/skills/skill-creator/scripts/init_skill.py +0 -0
- /package/{src → plugins/specweave-tooling}/skills/skill-creator/scripts/package_skill.py +0 -0
- /package/{src → plugins/specweave-tooling}/skills/skill-creator/scripts/quick_validate.py +0 -0
- /package/{src → plugins/specweave-tooling}/skills/skill-router/SKILL.md +0 -0
|
@@ -0,0 +1,498 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: specweave-framework
|
|
3
|
+
description: Expert knowledge of SpecWeave framework structure, rules, conventions, and increment lifecycle. Deep understanding of source-of-truth discipline, increment naming, hook system, and plugin architecture. Activates for: specweave rules, how does specweave work, framework structure, increment lifecycle, what is specweave, specweave conventions, specweave discipline, specweave architecture, where do files go, source of truth, increment naming, tasks.md format, spec.md structure, living docs sync, hook system, plugin architecture, how to use specweave, specweave best practices.
|
|
4
|
+
allowed-tools: Read, Grep, Glob
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# SpecWeave Framework Expert
|
|
8
|
+
|
|
9
|
+
I am an expert on the SpecWeave framework - a spec-driven development framework for Claude Code (and other AI coding assistants). I have deep knowledge of its structure, rules, conventions, and best practices.
|
|
10
|
+
|
|
11
|
+
## Core Philosophy
|
|
12
|
+
|
|
13
|
+
SpecWeave follows **spec-driven development** with **increment-based workflows**:
|
|
14
|
+
|
|
15
|
+
1. **Specification First** - Write WHAT and WHY before HOW
|
|
16
|
+
2. **Incremental Delivery** - Ship small, complete features
|
|
17
|
+
3. **Living Documentation** - Docs update automatically via hooks
|
|
18
|
+
4. **Source of Truth Discipline** - Single source, zero duplication
|
|
19
|
+
5. **Multi-Tool Support** - Works with Claude, Cursor, Copilot, and generic AI
|
|
20
|
+
|
|
21
|
+
## Increment-Based Development
|
|
22
|
+
|
|
23
|
+
### What is an Increment?
|
|
24
|
+
|
|
25
|
+
An **increment** = a complete feature with:
|
|
26
|
+
- `spec.md` - Product requirements (WHAT and WHY)
|
|
27
|
+
- `plan.md` - Technical architecture (HOW to implement)
|
|
28
|
+
- `tasks.md` - Task breakdown (WORK to do)
|
|
29
|
+
- `tests.md` - Quality gates (TEST coverage)
|
|
30
|
+
|
|
31
|
+
### Increment Naming Convention (v0.6.0+)
|
|
32
|
+
|
|
33
|
+
**CRITICAL RULE**: All increments MUST use descriptive names, not just numbers!
|
|
34
|
+
|
|
35
|
+
**Format**: `####-descriptive-kebab-case-name`
|
|
36
|
+
|
|
37
|
+
**Examples**:
|
|
38
|
+
- ✅ `0001-core-framework`
|
|
39
|
+
- ✅ `0002-core-enhancements`
|
|
40
|
+
- ✅ `0003-intelligent-model-selection`
|
|
41
|
+
- ✅ `0004-plugin-architecture`
|
|
42
|
+
- ✅ `0006-llm-native-i18n`
|
|
43
|
+
- ❌ `0003` (too generic, rejected!)
|
|
44
|
+
- ❌ `0004` (no description, rejected!)
|
|
45
|
+
|
|
46
|
+
**Rationale**:
|
|
47
|
+
- Clear intent at a glance
|
|
48
|
+
- Easy to reference in conversation
|
|
49
|
+
- Better git history
|
|
50
|
+
- Searchable by feature name
|
|
51
|
+
- Self-documenting increment folders
|
|
52
|
+
|
|
53
|
+
### Increment Lifecycle
|
|
54
|
+
|
|
55
|
+
```
|
|
56
|
+
1. Plan → /specweave:inc "feature-name"
|
|
57
|
+
↓ PM agent creates spec.md, plan.md, tasks.md, tests.md
|
|
58
|
+
|
|
59
|
+
2. Execute → /specweave:do
|
|
60
|
+
↓ Selects next task, executes, marks complete
|
|
61
|
+
|
|
62
|
+
3. Validate → /specweave:validate 0001
|
|
63
|
+
↓ Checks spec compliance, test coverage
|
|
64
|
+
|
|
65
|
+
4. Close → /specweave:done 0001
|
|
66
|
+
↓ Creates COMPLETION-SUMMARY.md, archives
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### Increment Discipline (v0.6.0+)
|
|
70
|
+
|
|
71
|
+
**THE IRON RULE**: Cannot start increment N+1 until increment N is DONE!
|
|
72
|
+
|
|
73
|
+
**Enforcement**:
|
|
74
|
+
- `/specweave:inc` **blocks** if previous increments incomplete
|
|
75
|
+
- Use `/specweave:status` to check all increments
|
|
76
|
+
- Use `/specweave:close` to close incomplete work
|
|
77
|
+
- `--force` flag for emergencies (logged, should be rare)
|
|
78
|
+
|
|
79
|
+
**What "DONE" Means**:
|
|
80
|
+
1. All tasks in `tasks.md` marked `[x] Completed`, OR
|
|
81
|
+
2. `COMPLETION-SUMMARY.md` exists with "✅ COMPLETE" status, OR
|
|
82
|
+
3. Explicit closure via `/specweave:close`
|
|
83
|
+
|
|
84
|
+
**Three Options for Closing**:
|
|
85
|
+
1. **Adjust Scope** - Remove features from spec.md, regenerate tasks
|
|
86
|
+
2. **Move Scope** - Transfer incomplete tasks to next increment
|
|
87
|
+
3. **Extend Existing** - Update spec.md, add tasks, continue in same increment
|
|
88
|
+
|
|
89
|
+
**Example**:
|
|
90
|
+
```bash
|
|
91
|
+
# Check status
|
|
92
|
+
/specweave:status
|
|
93
|
+
# Shows: 0002 (73% complete), 0003 (50% complete)
|
|
94
|
+
|
|
95
|
+
# Try to start new increment
|
|
96
|
+
/specweave:inc "0004-new-feature"
|
|
97
|
+
# ❌ Blocked! "Close 0002 and 0003 first"
|
|
98
|
+
|
|
99
|
+
# Close previous work
|
|
100
|
+
/specweave:close
|
|
101
|
+
# Interactive: Choose force-complete, move tasks, or reduce scope
|
|
102
|
+
|
|
103
|
+
# Now can proceed
|
|
104
|
+
/specweave:inc "0004-new-feature"
|
|
105
|
+
# ✅ Works! Clean slate
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Directory Structure
|
|
109
|
+
|
|
110
|
+
### Root-Level .specweave/ Folder (MANDATORY)
|
|
111
|
+
|
|
112
|
+
**CRITICAL ARCHITECTURE RULE**: SpecWeave ONLY supports root-level `.specweave/` folders.
|
|
113
|
+
|
|
114
|
+
**Correct Structure**:
|
|
115
|
+
```
|
|
116
|
+
my-project/
|
|
117
|
+
├── .specweave/ ← ONE source of truth (root-level)
|
|
118
|
+
│ ├── increments/
|
|
119
|
+
│ │ ├── 0001-core-framework/
|
|
120
|
+
│ │ │ ├── spec.md
|
|
121
|
+
│ │ │ ├── plan.md
|
|
122
|
+
│ │ │ ├── tasks.md
|
|
123
|
+
│ │ │ ├── tests.md
|
|
124
|
+
│ │ │ ├── logs/ ← Session logs
|
|
125
|
+
│ │ │ ├── scripts/ ← Helper scripts
|
|
126
|
+
│ │ │ └── reports/ ← Analysis files
|
|
127
|
+
│ │ └── _backlog/
|
|
128
|
+
│ ├── docs/
|
|
129
|
+
│ │ ├── internal/ ← Strategic docs (NEVER published)
|
|
130
|
+
│ │ │ ├── strategy/ ← Business strategy
|
|
131
|
+
│ │ │ ├── architecture/ ← ADRs, RFCs, diagrams
|
|
132
|
+
│ │ │ └── delivery/ ← Implementation notes
|
|
133
|
+
│ │ └── public/ ← User-facing docs (can publish)
|
|
134
|
+
│ └── logs/
|
|
135
|
+
├── frontend/
|
|
136
|
+
├── backend/
|
|
137
|
+
└── infrastructure/
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
**WRONG** (nested .specweave/ folders - NOT SUPPORTED):
|
|
141
|
+
```
|
|
142
|
+
my-project/
|
|
143
|
+
├── .specweave/ ← Root level
|
|
144
|
+
├── backend/
|
|
145
|
+
│ └── .specweave/ ← ❌ NESTED - PREVENTS THIS!
|
|
146
|
+
└── frontend/
|
|
147
|
+
└── .specweave/ ← ❌ NESTED - PREVENTS THIS!
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
**Why Root-Level Only?**
|
|
151
|
+
- ✅ Single source of truth
|
|
152
|
+
- ✅ Cross-cutting features natural (frontend + backend + infra)
|
|
153
|
+
- ✅ No duplication or fragmentation
|
|
154
|
+
- ✅ Clear ownership
|
|
155
|
+
- ✅ Simplified living docs sync
|
|
156
|
+
|
|
157
|
+
**Multi-Repo Solution**:
|
|
158
|
+
For huge projects with multiple repos, create a **parent folder**:
|
|
159
|
+
```
|
|
160
|
+
my-big-project/ ← Create parent folder
|
|
161
|
+
├── .specweave/ ← ONE source of truth for ALL repos
|
|
162
|
+
├── auth-service/ ← Separate git repo
|
|
163
|
+
├── payment-service/ ← Separate git repo
|
|
164
|
+
├── frontend/ ← Separate git repo
|
|
165
|
+
└── infrastructure/ ← Separate git repo
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
## Source of Truth Discipline
|
|
169
|
+
|
|
170
|
+
**CRITICAL PRINCIPLE**: SpecWeave has strict source-of-truth rules!
|
|
171
|
+
|
|
172
|
+
### Three Directories, Three Purposes
|
|
173
|
+
|
|
174
|
+
```
|
|
175
|
+
src/ ← SOURCE OF TRUTH (version controlled)
|
|
176
|
+
├── skills/ ← Source for skills
|
|
177
|
+
├── agents/ ← Source for agents
|
|
178
|
+
├── commands/ ← Source for slash commands
|
|
179
|
+
├── hooks/ ← Source for hooks
|
|
180
|
+
├── adapters/ ← Tool adapters (Claude/Cursor/Copilot/Generic)
|
|
181
|
+
└── templates/ ← Templates for user projects
|
|
182
|
+
|
|
183
|
+
.claude/ ← INSTALLED (gitignored in user projects)
|
|
184
|
+
├── skills/ ← Installed from src/skills/
|
|
185
|
+
├── agents/ ← Installed from src/agents/
|
|
186
|
+
├── commands/ ← Installed from src/commands/
|
|
187
|
+
└── hooks/ ← Installed from src/hooks/
|
|
188
|
+
|
|
189
|
+
.specweave/ ← FRAMEWORK DATA (always present)
|
|
190
|
+
├── increments/ ← Feature development
|
|
191
|
+
├── docs/ ← Strategic documentation
|
|
192
|
+
└── logs/ ← Logs and execution history
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
### Golden Rules
|
|
196
|
+
|
|
197
|
+
1. **✅ ALWAYS edit files in `src/`** (source of truth)
|
|
198
|
+
2. **✅ Run install scripts to sync changes to `.claude/`**
|
|
199
|
+
3. **❌ NEVER edit files in `.claude/` directly** (they get overwritten)
|
|
200
|
+
4. **❌ NEVER create new files in project root** (use increment folders)
|
|
201
|
+
|
|
202
|
+
**Example Workflow**:
|
|
203
|
+
```bash
|
|
204
|
+
# CORRECT: Edit source
|
|
205
|
+
vim src/skills/increment-planner/SKILL.md
|
|
206
|
+
|
|
207
|
+
# Sync to .claude/
|
|
208
|
+
npm run install:skills
|
|
209
|
+
|
|
210
|
+
# Test (skill activates from .claude/)
|
|
211
|
+
/specweave:inc "test feature"
|
|
212
|
+
|
|
213
|
+
# WRONG: Edit installed file
|
|
214
|
+
vim .claude/skills/increment-planner/SKILL.md # ❌ Gets overwritten!
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
### File Organization Rules
|
|
218
|
+
|
|
219
|
+
**✅ ALLOWED in Root**:
|
|
220
|
+
- `CLAUDE.md` (this file)
|
|
221
|
+
- `README.md`, `CHANGELOG.md`, `LICENSE`
|
|
222
|
+
- Standard config files (`package.json`, `tsconfig.json`, `.gitignore`)
|
|
223
|
+
- Build artifacts (`dist/`, only if needed temporarily)
|
|
224
|
+
|
|
225
|
+
**❌ NEVER Create in Root** (pollutes repository):
|
|
226
|
+
All AI-generated files MUST go into increment folders:
|
|
227
|
+
|
|
228
|
+
```
|
|
229
|
+
❌ WRONG:
|
|
230
|
+
/SESSION-SUMMARY-2025-10-28.md # NO!
|
|
231
|
+
/ADR-006-DEEP-ANALYSIS.md # NO!
|
|
232
|
+
/ANALYSIS-MULTI-TOOL-COMPARISON.md # NO!
|
|
233
|
+
|
|
234
|
+
✅ CORRECT:
|
|
235
|
+
.specweave/increments/0002-core-enhancements/
|
|
236
|
+
├── reports/
|
|
237
|
+
│ ├── SESSION-SUMMARY-2025-10-28.md
|
|
238
|
+
│ ├── ADR-006-DEEP-ANALYSIS.md
|
|
239
|
+
│ └── ANALYSIS-MULTI-TOOL-COMPARISON.md
|
|
240
|
+
├── logs/
|
|
241
|
+
│ └── execution-2025-10-28.log
|
|
242
|
+
└── scripts/
|
|
243
|
+
└── migration-helper.sh
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
**Why?**
|
|
247
|
+
- ✅ Complete traceability (which increment created which files)
|
|
248
|
+
- ✅ Easy cleanup (delete increment folder = delete all files)
|
|
249
|
+
- ✅ Clear context (all files for a feature in one place)
|
|
250
|
+
- ✅ No root clutter
|
|
251
|
+
|
|
252
|
+
## Hook System
|
|
253
|
+
|
|
254
|
+
### What are Hooks?
|
|
255
|
+
|
|
256
|
+
Hooks are shell scripts that fire automatically on SpecWeave events:
|
|
257
|
+
- `post-task-completion` - After EVERY task completion via TodoWrite
|
|
258
|
+
- `pre-task-plugin-detect` - Before task execution (plugin detection)
|
|
259
|
+
- `post-increment-plugin-detect` - After increment creation
|
|
260
|
+
- `pre-implementation` - Before implementation starts
|
|
261
|
+
|
|
262
|
+
### Current Hook: post-task-completion
|
|
263
|
+
|
|
264
|
+
**Fires**: After EVERY TodoWrite call
|
|
265
|
+
**Purpose**: Notify when work completes
|
|
266
|
+
|
|
267
|
+
**What it does** (v2.0):
|
|
268
|
+
- ✅ Detects session end (inactivity-based, 15s threshold)
|
|
269
|
+
- ✅ Plays notification sound (macOS/Linux/Windows)
|
|
270
|
+
- ✅ Shows completion message
|
|
271
|
+
- ✅ Logs to `.specweave/logs/hooks-debug.log`
|
|
272
|
+
- ✅ Debounces duplicate fires (2s window)
|
|
273
|
+
|
|
274
|
+
**What it does NOT do yet** (planned for v0.6.1):
|
|
275
|
+
- ⏳ Update `tasks.md` completion status
|
|
276
|
+
- ⏳ Sync living docs automatically
|
|
277
|
+
- ⏳ Consolidate GitHub/Jira tasks
|
|
278
|
+
- ⏳ Calculate increment progress percentage
|
|
279
|
+
|
|
280
|
+
**Smart Session-End Detection**:
|
|
281
|
+
```
|
|
282
|
+
Problem: Claude creates multiple todo lists → sound plays multiple times
|
|
283
|
+
Solution: Track inactivity gaps between TodoWrite calls
|
|
284
|
+
- Rapid completions (< 15s gap) = Claude still working → skip sound
|
|
285
|
+
- Long gap (> 15s) + all done = Session ending → play sound!
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
### Hook Configuration
|
|
289
|
+
|
|
290
|
+
**File**: `.specweave/config.json`
|
|
291
|
+
|
|
292
|
+
```json
|
|
293
|
+
{
|
|
294
|
+
"hooks": {
|
|
295
|
+
"post_task_completion": {
|
|
296
|
+
"enabled": true,
|
|
297
|
+
"update_tasks_md": false, // TODO: v0.6.1
|
|
298
|
+
"sync_living_docs": false, // TODO: v0.6.1
|
|
299
|
+
"play_sound": true,
|
|
300
|
+
"show_message": true
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
```
|
|
305
|
+
|
|
306
|
+
### Manual Actions (Until v0.6.1)
|
|
307
|
+
|
|
308
|
+
Until hooks are fully automated, **YOU MUST**:
|
|
309
|
+
- Update `CLAUDE.md` when structure changes
|
|
310
|
+
- Update `README.md` for user-facing changes
|
|
311
|
+
- Update `CHANGELOG.md` for API changes
|
|
312
|
+
- Update `tasks.md` completion status manually (or use TodoWrite carefully)
|
|
313
|
+
|
|
314
|
+
## Plugin Architecture (v0.4.0+)
|
|
315
|
+
|
|
316
|
+
### Core vs. Plugin
|
|
317
|
+
|
|
318
|
+
**Core Framework** (always loaded):
|
|
319
|
+
- 8 core skills (increment-planner, rfc-generator, context-loader, etc.)
|
|
320
|
+
- 3 core agents (PM, Architect, Tech Lead)
|
|
321
|
+
- 7 core commands (/specweave:inc, /specweave:do, etc.)
|
|
322
|
+
|
|
323
|
+
**Plugins** (opt-in):
|
|
324
|
+
- `specweave-github` - GitHub integration (issue sync, PR creation)
|
|
325
|
+
- `specweave-jira` - Jira integration (task sync)
|
|
326
|
+
- `specweave-kubernetes` - K8s deployment (planned)
|
|
327
|
+
- `specweave-frontend-stack` - React/Vue/Angular (planned)
|
|
328
|
+
- `specweave-ml-ops` - Machine learning (planned)
|
|
329
|
+
|
|
330
|
+
### Context Reduction
|
|
331
|
+
|
|
332
|
+
**Before plugins** (v0.3.7):
|
|
333
|
+
- Simple React app: 50K tokens (ALL 44 skills + 20 agents loaded)
|
|
334
|
+
- Backend API: 50K tokens
|
|
335
|
+
- ML pipeline: 50K tokens
|
|
336
|
+
|
|
337
|
+
**After plugins** (v0.4.0+):
|
|
338
|
+
- Simple React app: Core + frontend-stack + github ≈ **16K tokens** (68% reduction!)
|
|
339
|
+
- Backend API: Core + nodejs-backend + github ≈ **15K tokens** (70% reduction!)
|
|
340
|
+
- ML pipeline: Core + ml-ops + github ≈ **18K tokens** (64% reduction!)
|
|
341
|
+
|
|
342
|
+
### Four-Phase Plugin Detection
|
|
343
|
+
|
|
344
|
+
1. **Init-Time** (during `specweave init`):
|
|
345
|
+
- Scans package.json, directories, env vars
|
|
346
|
+
- Suggests plugins: "Found React. Enable frontend-stack? (Y/n)"
|
|
347
|
+
|
|
348
|
+
2. **First Increment** (during `/specweave:inc`):
|
|
349
|
+
- Analyzes increment description for keywords
|
|
350
|
+
- Suggests before creating spec: "This needs kubernetes plugin. Enable? (Y/n)"
|
|
351
|
+
|
|
352
|
+
3. **Pre-Task** (before task execution):
|
|
353
|
+
- Hook scans task description
|
|
354
|
+
- Non-blocking suggestion: "This task mentions K8s. Consider enabling plugin."
|
|
355
|
+
|
|
356
|
+
4. **Post-Increment** (after completion):
|
|
357
|
+
- Hook scans git diff for new dependencies
|
|
358
|
+
- Suggests for next increment: "Detected Stripe. Enable payment-processing plugin?"
|
|
359
|
+
|
|
360
|
+
### Hybrid Plugin System (v0.4.1)
|
|
361
|
+
|
|
362
|
+
SpecWeave plugins support **dual distribution**:
|
|
363
|
+
|
|
364
|
+
1. **NPM Package** (SpecWeave CLI):
|
|
365
|
+
- `npm install -g specweave`
|
|
366
|
+
- `specweave plugin install github`
|
|
367
|
+
- Works with ALL tools (Claude, Cursor, Copilot, Generic)
|
|
368
|
+
|
|
369
|
+
2. **Claude Code Marketplace** (Native `/plugin`):
|
|
370
|
+
- `/plugin marketplace add specweave/marketplace`
|
|
371
|
+
- `/plugin install github@specweave`
|
|
372
|
+
- Best UX for Claude Code users
|
|
373
|
+
|
|
374
|
+
**Plugin Manifests** (both required):
|
|
375
|
+
- `plugin.json` - Claude Code native format
|
|
376
|
+
- `manifest.json` - SpecWeave custom format (richer metadata)
|
|
377
|
+
|
|
378
|
+
## Multi-Tool Support
|
|
379
|
+
|
|
380
|
+
SpecWeave works with multiple AI coding assistants:
|
|
381
|
+
|
|
382
|
+
### Claude Code (⭐⭐⭐⭐⭐ 100%)
|
|
383
|
+
- Native `.claude/` installation
|
|
384
|
+
- Skills auto-activate
|
|
385
|
+
- Hooks fire automatically
|
|
386
|
+
- Slash commands work natively
|
|
387
|
+
- Agents isolate context
|
|
388
|
+
- **BEST EXPERIENCE**
|
|
389
|
+
|
|
390
|
+
### Cursor 2.0 (⭐⭐⭐⭐ 85%)
|
|
391
|
+
- `AGENTS.md` compilation
|
|
392
|
+
- Team commands via dashboard
|
|
393
|
+
- `@context` shortcuts
|
|
394
|
+
- Shared agent context (8 parallel agents)
|
|
395
|
+
- Manual hook triggers
|
|
396
|
+
|
|
397
|
+
### GitHub Copilot (⭐⭐⭐ 60%)
|
|
398
|
+
- `.github/copilot/instructions.md` compilation
|
|
399
|
+
- Natural language instructions only
|
|
400
|
+
- Manual workflows
|
|
401
|
+
- No hooks or slash commands
|
|
402
|
+
|
|
403
|
+
### Generic (⭐⭐ 40%)
|
|
404
|
+
- `SPECWEAVE-MANUAL.md` for copy-paste
|
|
405
|
+
- Manual workflows
|
|
406
|
+
- No automation
|
|
407
|
+
|
|
408
|
+
**Recommendation**: Use Claude Code for SpecWeave. Other tools work, but you'll miss the magic.
|
|
409
|
+
|
|
410
|
+
## Key Commands
|
|
411
|
+
|
|
412
|
+
### Increment Lifecycle
|
|
413
|
+
- `/specweave:inc "feature-name"` - Plan new increment (PM-led process)
|
|
414
|
+
- `/specweave:do` - Execute next task (smart resume)
|
|
415
|
+
- `/specweave:progress` - Show progress, PM gate status, next action
|
|
416
|
+
- `/specweave:validate 0001` - Validate spec, tests, quality
|
|
417
|
+
- `/specweave:done 0001` - Close increment (PM validation)
|
|
418
|
+
- `/specweave:next` - Auto-close if ready, suggest next work
|
|
419
|
+
|
|
420
|
+
### Increment Discipline
|
|
421
|
+
- `/specweave:status` - Show all increments and completion status
|
|
422
|
+
- `/specweave:close` - Interactive closure of incomplete increments
|
|
423
|
+
|
|
424
|
+
### Documentation Sync
|
|
425
|
+
- `/specweave:sync-docs review` - Review strategic docs before implementation
|
|
426
|
+
- `/specweave:sync-docs update` - Update living docs from completed increments
|
|
427
|
+
|
|
428
|
+
### External Platform Sync
|
|
429
|
+
- `/specweave:sync-github` - Bidirectional GitHub sync
|
|
430
|
+
- `/specweave:sync-jira` - Bidirectional Jira sync
|
|
431
|
+
|
|
432
|
+
## Common Questions
|
|
433
|
+
|
|
434
|
+
### Q: Where do I create a new increment?
|
|
435
|
+
**A**: Use `/specweave:inc "####-descriptive-name"`. It creates:
|
|
436
|
+
```
|
|
437
|
+
.specweave/increments/####-descriptive-name/
|
|
438
|
+
├── spec.md
|
|
439
|
+
├── plan.md
|
|
440
|
+
├── tasks.md
|
|
441
|
+
└── tests.md
|
|
442
|
+
```
|
|
443
|
+
|
|
444
|
+
### Q: Where do I put analysis files?
|
|
445
|
+
**A**: In the increment's `reports/` folder:
|
|
446
|
+
```
|
|
447
|
+
.specweave/increments/0002-core-enhancements/reports/
|
|
448
|
+
└── ANALYSIS-XYZ.md
|
|
449
|
+
```
|
|
450
|
+
|
|
451
|
+
### Q: How do I know what tasks are left?
|
|
452
|
+
**A**: Use `/specweave:progress` or read `.specweave/increments/####/tasks.md`
|
|
453
|
+
|
|
454
|
+
### Q: Can I start a new increment before finishing the current one?
|
|
455
|
+
**A**: NO! (v0.6.0+) The framework **blocks** you. Use `/specweave:status` to check, `/specweave:close` to close.
|
|
456
|
+
|
|
457
|
+
### Q: Where do I edit skills/agents/commands?
|
|
458
|
+
**A**: Edit in `src/` (source of truth), then run `npm run install:all` to sync to `.claude/`
|
|
459
|
+
|
|
460
|
+
### Q: How do I know if a plugin is needed?
|
|
461
|
+
**A**: SpecWeave auto-detects! It will suggest plugins during init or increment creation.
|
|
462
|
+
|
|
463
|
+
### Q: Why does the hook play a sound?
|
|
464
|
+
**A**: Session-end detection! If all tasks complete AND you've been idle > 15s, it assumes you're done. Configurable in `.specweave/config.json`.
|
|
465
|
+
|
|
466
|
+
### Q: How do I disable a hook?
|
|
467
|
+
**A**: Edit `hooks/hooks.json` and set `"enabled": false` for that hook.
|
|
468
|
+
|
|
469
|
+
## Activation Keywords
|
|
470
|
+
|
|
471
|
+
I activate when you ask about:
|
|
472
|
+
- SpecWeave rules / conventions / best practices
|
|
473
|
+
- Increment naming / structure / lifecycle
|
|
474
|
+
- Where files go / directory structure
|
|
475
|
+
- Source of truth / what to edit
|
|
476
|
+
- Hook system / automation
|
|
477
|
+
- Plugin architecture / context reduction
|
|
478
|
+
- How to use SpecWeave / getting started
|
|
479
|
+
- What is spec.md / plan.md / tasks.md
|
|
480
|
+
- Living docs sync
|
|
481
|
+
- Increment discipline / closure
|
|
482
|
+
- Multi-tool support (Claude/Cursor/Copilot)
|
|
483
|
+
|
|
484
|
+
## When to Use Other Skills/Agents
|
|
485
|
+
|
|
486
|
+
- **increment-planner** - Planning NEW increments (/specweave:inc)
|
|
487
|
+
- **PM agent** - Leading increment creation (auto-invoked by /specweave:inc)
|
|
488
|
+
- **Architect agent** - Designing system architecture
|
|
489
|
+
- **Tech Lead agent** - Code review, best practices
|
|
490
|
+
- **rfc-generator** - Creating detailed technical RFCs
|
|
491
|
+
- **context-loader** - Explaining context efficiency
|
|
492
|
+
- **diagrams-architect** - Creating C4/Mermaid diagrams
|
|
493
|
+
|
|
494
|
+
I focus on **framework knowledge**. For **increment execution**, use the PM agent and commands!
|
|
495
|
+
|
|
496
|
+
---
|
|
497
|
+
|
|
498
|
+
Let me help you understand and use SpecWeave correctly! 🚀
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
name: Increment Naming Validation
|
|
2
|
+
description: User asks about increment naming conventions - skill should explain the descriptive naming rule
|
|
3
|
+
input: "What's the correct format for naming an increment in SpecWeave?"
|
|
4
|
+
expected_output_contains:
|
|
5
|
+
- "####-descriptive-kebab-case-name"
|
|
6
|
+
- "0001-core-framework"
|
|
7
|
+
- "descriptive names"
|
|
8
|
+
- "not just numbers"
|
|
9
|
+
expected_not_contains:
|
|
10
|
+
- "0001 is fine"
|
|
11
|
+
- "just use numbers"
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
name: Source of Truth Discipline
|
|
2
|
+
description: User asks where to edit files - skill should explain src/ vs .claude/ distinction
|
|
3
|
+
input: "I need to update a skill. Should I edit the file in src/skills/ or .claude/skills/?"
|
|
4
|
+
expected_output_contains:
|
|
5
|
+
- "src/"
|
|
6
|
+
- "source of truth"
|
|
7
|
+
- "NEVER edit .claude/"
|
|
8
|
+
- "npm run install"
|
|
9
|
+
expected_not_contains:
|
|
10
|
+
- "either is fine"
|
|
11
|
+
- "edit .claude directly"
|
package/plugins/specweave/skills/specweave-framework/test-cases/test-3-increment-discipline.yaml
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
name: Increment Discipline Rule
|
|
2
|
+
description: User asks about starting multiple increments - skill should explain the Iron Rule
|
|
3
|
+
input: "Can I start working on increment 0006 while 0002 and 0003 are still in progress?"
|
|
4
|
+
expected_output_contains:
|
|
5
|
+
- "Iron Rule"
|
|
6
|
+
- "Cannot start N+1 until N is DONE"
|
|
7
|
+
- "/specweave.status"
|
|
8
|
+
- "/specweave.close-previous"
|
|
9
|
+
- "blocks"
|
|
10
|
+
expected_not_contains:
|
|
11
|
+
- "yes, you can"
|
|
12
|
+
- "work on multiple increments"
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
name: File Placement Rules
|
|
2
|
+
description: User asks where to put analysis files - skill should explain increment folders
|
|
3
|
+
input: "Where should I save my analysis document for increment 0002?"
|
|
4
|
+
expected_output_contains:
|
|
5
|
+
- ".specweave/increments/0002"
|
|
6
|
+
- "reports/"
|
|
7
|
+
- "increment folders"
|
|
8
|
+
- "NEVER create in root"
|
|
9
|
+
expected_not_contains:
|
|
10
|
+
- "save in project root"
|
|
11
|
+
- "anywhere is fine"
|
|
@@ -15,8 +15,8 @@ This skill acts as a **discovery hub** for Test-Driven Development (TDD) in Spec
|
|
|
15
15
|
|
|
16
16
|
**NOT a full TDD implementation** - delegates to:
|
|
17
17
|
- `tdd-orchestrator` agent (deep TDD expertise)
|
|
18
|
-
- `/specweave
|
|
19
|
-
- Individual phase commands (`/specweave
|
|
18
|
+
- `/specweave:tdd:cycle` command (enforced red-green-refactor)
|
|
19
|
+
- Individual phase commands (`/specweave:tdd:red`, `/specweave:tdd:green`, `/specweave:tdd:refactor`)
|
|
20
20
|
|
|
21
21
|
---
|
|
22
22
|
|
|
@@ -64,7 +64,7 @@ Would you like to:"
|
|
|
64
64
|
```typescript
|
|
65
65
|
Question: "How would you like to implement TDD for this feature?"
|
|
66
66
|
Options:
|
|
67
|
-
1. "Guided TDD Workflow (/specweave
|
|
67
|
+
1. "Guided TDD Workflow (/specweave:tdd:cycle)"
|
|
68
68
|
Description: "Full red-green-refactor cycle with gates between phases.
|
|
69
69
|
Can't proceed to GREEN without RED test. Most rigorous."
|
|
70
70
|
|
|
@@ -81,12 +81,12 @@ Options:
|
|
|
81
81
|
|
|
82
82
|
**Option 1: Guided TDD Workflow**
|
|
83
83
|
```bash
|
|
84
|
-
Invoke: /specweave
|
|
84
|
+
Invoke: /specweave:tdd:cycle
|
|
85
85
|
|
|
86
86
|
This command orchestrates:
|
|
87
|
-
1. /specweave
|
|
88
|
-
2. /specweave
|
|
89
|
-
3. /specweave
|
|
87
|
+
1. /specweave:tdd:red - Write failing test (blocks until red)
|
|
88
|
+
2. /specweave:tdd:green - Implement minimal code (blocks until green)
|
|
89
|
+
3. /specweave:tdd:refactor - Refactor safely (tests must stay green)
|
|
90
90
|
|
|
91
91
|
Benefits:
|
|
92
92
|
- Enforces discipline (gates prevent skipping phases)
|
|
@@ -162,7 +162,7 @@ I'll notify you at each phase transition."
|
|
|
162
162
|
|
|
163
163
|
**In Increment Workflow**:
|
|
164
164
|
```
|
|
165
|
-
/specweave
|
|
165
|
+
/specweave:inc "Authentication feature" → spec.md created
|
|
166
166
|
↓
|
|
167
167
|
User: "Implement with TDD"
|
|
168
168
|
↓
|
|
@@ -170,7 +170,7 @@ tdd-workflow skill activates → offers options
|
|
|
170
170
|
↓
|
|
171
171
|
User chooses: Guided TDD Workflow
|
|
172
172
|
↓
|
|
173
|
-
/specweave
|
|
173
|
+
/specweave:tdd:cycle invoked
|
|
174
174
|
↓
|
|
175
175
|
Phase 1: RED - tests.md updated with failing tests
|
|
176
176
|
Phase 2: GREEN - tasks.md implementation
|
|
@@ -193,16 +193,16 @@ tdd-workflow can coordinate test-first bug fixes
|
|
|
193
193
|
## Commands Reference
|
|
194
194
|
|
|
195
195
|
### Full Cycle
|
|
196
|
-
- `/specweave
|
|
196
|
+
- `/specweave:tdd:cycle` - Complete red-green-refactor orchestration
|
|
197
197
|
|
|
198
198
|
### Individual Phases
|
|
199
|
-
- `/specweave
|
|
200
|
-
- `/specweave
|
|
201
|
-
- `/specweave
|
|
199
|
+
- `/specweave:tdd:red` - RED phase only (write failing test)
|
|
200
|
+
- `/specweave:tdd:green` - GREEN phase only (make test pass)
|
|
201
|
+
- `/specweave:tdd:refactor` - REFACTOR phase only (improve code)
|
|
202
202
|
|
|
203
203
|
### When to Use Each
|
|
204
204
|
|
|
205
|
-
**Use /specweave
|
|
205
|
+
**Use /specweave:tdd:cycle when**:
|
|
206
206
|
- ✅ Starting new feature from scratch
|
|
207
207
|
- ✅ Learning TDD or teaching team
|
|
208
208
|
- ✅ Want enforced discipline (gates)
|
|
@@ -242,7 +242,7 @@ Great! TDD (Test-Driven Development) follows red-green-refactor:
|
|
|
242
242
|
|
|
243
243
|
**tdd-workflow**:
|
|
244
244
|
```
|
|
245
|
-
Perfect! I'm invoking /specweave
|
|
245
|
+
Perfect! I'm invoking /specweave:tdd:cycle to orchestrate your TDD workflow.
|
|
246
246
|
|
|
247
247
|
🔴 Starting RED phase...
|
|
248
248
|
Write a failing test for user registration. Let me create the test skeleton:
|
|
@@ -252,7 +252,7 @@ Write a failing test for user registration. Let me create the test skeleton:
|
|
|
252
252
|
✅ Test written and failing. Run: npm test
|
|
253
253
|
❌ Expected failure confirmed.
|
|
254
254
|
|
|
255
|
-
Ready to proceed to GREEN phase? (type 'yes' or run /specweave
|
|
255
|
+
Ready to proceed to GREEN phase? (type 'yes' or run /specweave:tdd:green)
|
|
256
256
|
```
|
|
257
257
|
|
|
258
258
|
---
|
|
@@ -292,7 +292,7 @@ Invoking tdd-orchestrator agent for advanced refactoring support...
|
|
|
292
292
|
Great! Tests are passing. Time for REFACTOR phase.
|
|
293
293
|
|
|
294
294
|
You can:
|
|
295
|
-
1. Run /specweave
|
|
295
|
+
1. Run /specweave:tdd:refactor (guided refactoring)
|
|
296
296
|
2. Refactor manually (I'll verify tests stay green)
|
|
297
297
|
|
|
298
298
|
Which would you prefer?
|
|
@@ -309,7 +309,7 @@ Perfect! I'll monitor your refactoring:
|
|
|
309
309
|
✅ Tests still passing after refactor
|
|
310
310
|
✅ TDD cycle maintained
|
|
311
311
|
|
|
312
|
-
Ready for next feature? Run /specweave
|
|
312
|
+
Ready for next feature? Run /specweave:tdd:cycle or continue manually.
|
|
313
313
|
```
|
|
314
314
|
|
|
315
315
|
---
|
|
@@ -352,8 +352,8 @@ tdd:
|
|
|
352
352
|
- `qa-lead` - Test strategy overlaps with TDD principles
|
|
353
353
|
|
|
354
354
|
**Commands**:
|
|
355
|
-
- `/specweave
|
|
356
|
-
- `/specweave
|
|
355
|
+
- `/specweave:tdd:cycle` - Full red-green-refactor orchestration
|
|
356
|
+
- `/specweave:tdd:red`, `/specweave:tdd:green`, `/specweave:tdd:refactor` - Individual phases
|
|
357
357
|
|
|
358
358
|
---
|
|
359
359
|
|
|
@@ -369,7 +369,7 @@ tdd:
|
|
|
369
369
|
|
|
370
370
|
**Not a replacement for**:
|
|
371
371
|
- `tdd-orchestrator` agent (deep expertise)
|
|
372
|
-
- `/specweave
|
|
372
|
+
- `/specweave:tdd-*` commands (workflow enforcement)
|
|
373
373
|
|
|
374
374
|
**Instead, it's the entry point** that helps users choose the right TDD tool for their context.
|
|
375
375
|
|