specweave 0.1.9 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLAUDE.md +600 -0
- package/README.md +263 -81
- package/bin/install-all.sh +1 -1
- package/bin/install-commands.sh +3 -3
- package/bin/specweave.js +39 -9
- package/dist/adapters/adapter-base.d.ts +1 -1
- package/dist/adapters/adapter-base.d.ts.map +1 -1
- package/dist/adapters/adapter-base.js +6 -41
- package/dist/adapters/adapter-base.js.map +1 -1
- package/dist/adapters/adapter-interface.js +1 -2
- package/dist/adapters/adapter-interface.js.map +1 -1
- package/dist/adapters/adapter-loader.d.ts +86 -0
- package/dist/adapters/adapter-loader.d.ts.map +1 -0
- package/dist/adapters/adapter-loader.js +216 -0
- package/dist/adapters/adapter-loader.js.map +1 -0
- package/dist/adapters/agents-md-generator.d.ts +48 -0
- package/dist/adapters/agents-md-generator.d.ts.map +1 -0
- package/dist/adapters/agents-md-generator.js +132 -0
- package/dist/adapters/agents-md-generator.js.map +1 -0
- package/dist/adapters/claude/adapter.d.ts +2 -2
- package/dist/adapters/claude/adapter.d.ts.map +1 -1
- package/dist/adapters/claude/adapter.js +5 -42
- package/dist/adapters/claude/adapter.js.map +1 -1
- package/dist/adapters/claude-md-generator.d.ts +78 -0
- package/dist/adapters/claude-md-generator.d.ts.map +1 -0
- package/dist/adapters/claude-md-generator.js +246 -0
- package/dist/adapters/claude-md-generator.js.map +1 -0
- package/dist/adapters/codex/adapter.d.ts +50 -0
- package/dist/adapters/codex/adapter.d.ts.map +1 -0
- package/dist/adapters/codex/adapter.js +316 -0
- package/dist/adapters/codex/adapter.js.map +1 -0
- package/dist/adapters/copilot/adapter.d.ts +10 -9
- package/dist/adapters/copilot/adapter.d.ts.map +1 -1
- package/dist/adapters/copilot/adapter.js +35 -100
- package/dist/adapters/copilot/adapter.js.map +1 -1
- package/dist/adapters/cursor/adapter.d.ts +8 -6
- package/dist/adapters/cursor/adapter.d.ts.map +1 -1
- package/dist/adapters/cursor/adapter.js +47 -130
- package/dist/adapters/cursor/adapter.js.map +1 -1
- package/dist/adapters/doc-generator.d.ts +69 -0
- package/dist/adapters/doc-generator.d.ts.map +1 -0
- package/dist/adapters/doc-generator.js +247 -0
- package/dist/adapters/doc-generator.js.map +1 -0
- package/dist/adapters/gemini/adapter.d.ts +50 -0
- package/dist/adapters/gemini/adapter.d.ts.map +1 -0
- package/dist/adapters/gemini/adapter.js +281 -0
- package/dist/adapters/gemini/adapter.js.map +1 -0
- package/dist/adapters/generic/adapter.d.ts +7 -4
- package/dist/adapters/generic/adapter.d.ts.map +1 -1
- package/dist/adapters/generic/adapter.js +60 -59
- package/dist/adapters/generic/adapter.js.map +1 -1
- package/dist/cli/commands/init.d.ts +3 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +327 -177
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/install.d.ts.map +1 -1
- package/dist/cli/commands/install.js +22 -58
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/cli/commands/list.d.ts.map +1 -1
- package/dist/cli/commands/list.js +27 -64
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/core/credentials-manager.d.ts +90 -0
- package/dist/core/credentials-manager.d.ts.map +1 -0
- package/dist/core/credentials-manager.js +271 -0
- package/dist/core/credentials-manager.js.map +1 -0
- package/dist/core/project-structure-detector.d.ts +92 -0
- package/dist/core/project-structure-detector.d.ts.map +1 -0
- package/dist/core/project-structure-detector.js +289 -0
- package/dist/core/project-structure-detector.js.map +1 -0
- package/dist/core/rfc-generator-v2.d.ts +149 -0
- package/dist/core/rfc-generator-v2.d.ts.map +1 -0
- package/dist/core/rfc-generator-v2.js +399 -0
- package/dist/core/rfc-generator-v2.js.map +1 -0
- package/dist/core/rfc-generator.d.ts +147 -0
- package/dist/core/rfc-generator.d.ts.map +1 -0
- package/dist/core/rfc-generator.js +434 -0
- package/dist/core/rfc-generator.js.map +1 -0
- package/dist/integrations/ado/ado-client.d.ts +123 -0
- package/dist/integrations/ado/ado-client.d.ts.map +1 -0
- package/dist/integrations/ado/ado-client.js +398 -0
- package/dist/integrations/ado/ado-client.js.map +1 -0
- package/dist/integrations/jira/jira-client.d.ts +139 -0
- package/dist/integrations/jira/jira-client.d.ts.map +1 -0
- package/dist/integrations/jira/jira-client.js +386 -0
- package/dist/integrations/jira/jira-client.js.map +1 -0
- package/dist/integrations/jira/jira-incremental-mapper.d.ts +75 -0
- package/dist/integrations/jira/jira-incremental-mapper.d.ts.map +1 -0
- package/dist/integrations/jira/jira-incremental-mapper.js +474 -0
- package/dist/integrations/jira/jira-incremental-mapper.js.map +1 -0
- package/dist/integrations/jira/jira-mapper.d.ts +105 -0
- package/dist/integrations/jira/jira-mapper.d.ts.map +1 -0
- package/dist/integrations/jira/jira-mapper.js +494 -0
- package/dist/integrations/jira/jira-mapper.js.map +1 -0
- package/dist/testing/test-generator.d.ts +117 -0
- package/dist/testing/test-generator.d.ts.map +1 -0
- package/dist/testing/test-generator.js +370 -0
- package/dist/testing/test-generator.js.map +1 -0
- package/dist/utils/auto-install.d.ts +3 -0
- package/dist/utils/auto-install.d.ts.map +1 -1
- package/dist/utils/auto-install.js +16 -82
- package/dist/utils/auto-install.js.map +1 -1
- package/dist/utils/esm-helpers.d.ts +50 -0
- package/dist/utils/esm-helpers.d.ts.map +1 -0
- package/dist/utils/esm-helpers.js +57 -0
- package/dist/utils/esm-helpers.js.map +1 -0
- package/package.json +16 -7
- package/src/adapters/README.md +1 -2
- package/src/adapters/adapter-base.ts +6 -3
- package/src/adapters/adapter-loader.ts +261 -0
- package/src/adapters/agents-md-generator.ts +162 -0
- package/src/adapters/claude/README.md +6 -14
- package/src/adapters/claude/adapter.ts +4 -4
- package/src/adapters/claude-md-generator.ts +311 -0
- package/src/adapters/codex/README.md +105 -0
- package/src/adapters/codex/adapter.ts +333 -0
- package/src/adapters/copilot/adapter.ts +36 -65
- package/src/adapters/cursor/README.md +0 -2
- package/src/adapters/cursor/adapter.ts +46 -92
- package/src/adapters/doc-generator.ts +331 -0
- package/src/adapters/gemini/README.md +97 -0
- package/src/adapters/gemini/adapter.ts +298 -0
- package/src/adapters/generic/adapter.ts +61 -57
- package/src/adapters/registry.yaml +86 -25
- package/src/agents/devops/AGENT.md +16 -18
- package/src/agents/docs-writer/AGENT.md +2 -2
- package/src/agents/pm/AGENT.md +1 -50
- package/src/commands/README.md +134 -111
- package/src/commands/{build.md → specweave.do.md} +141 -69
- package/src/commands/{done.md → specweave.done.md} +3 -3
- package/src/commands/{inc.md → specweave.inc.md} +4 -4
- package/src/commands/{increment.md → specweave.increment.md} +143 -76
- package/src/commands/specweave.md +430 -0
- package/src/commands/specweave.next.md +495 -0
- package/src/commands/{progress.md → specweave.progress.md} +12 -12
- package/src/commands/specweave.sync-docs.md +665 -0
- package/src/commands/specweave.sync-github.md +269 -0
- package/src/commands/specweave.sync-jira.md +197 -0
- package/src/commands/{validate.md → specweave.validate.md} +4 -4
- package/src/hooks/README.md +19 -29
- package/src/hooks/post-task-completion.sh +25 -30
- package/src/skills/ado-sync/README.md +1 -36
- package/src/skills/bmad-method-expert/SKILL.md +1 -3
- package/src/skills/brownfield-analyzer/SKILL.md +429 -23
- package/src/skills/brownfield-onboarder/SKILL.md +221 -8
- package/src/skills/context-loader/SKILL.md +239 -617
- package/src/skills/context-optimizer/SKILL.md +0 -30
- package/src/skills/github-sync/SKILL.md +1 -19
- package/src/skills/increment-planner/SKILL.md +64 -18
- package/src/skills/increment-quality-judge/SKILL.md +1 -36
- package/src/skills/jira-sync/README.md +1 -38
- package/src/skills/role-orchestrator/README.md +1 -22
- package/src/skills/role-orchestrator/SKILL.md +1 -59
- package/src/skills/skill-router/SKILL.md +0 -18
- package/src/skills/spec-kit-expert/SKILL.md +1 -3
- package/src/skills/specweave-detector/SKILL.md +225 -275
- package/src/skills/task-builder/README.md +1 -7
- package/src/templates/AGENTS.md.template +334 -0
- package/src/templates/CLAUDE.md.template +131 -298
- package/src/templates/README.md.template +115 -23
- package/src/templates/environments/minimal/README.md +0 -1
- package/INSTALL.md +0 -848
- package/SPECWEAVE.md +0 -743
- package/src/adapters/copilot/.github/copilot/instructions.md +0 -376
- package/src/adapters/cursor/.cursorrules +0 -325
- package/src/adapters/generic/SPECWEAVE-MANUAL.md +0 -676
- package/src/commands/create-project.md +0 -528
- package/src/commands/generate-docs.md +0 -623
- package/src/commands/review-docs.md +0 -331
- package/src/commands/sync-github.md +0 -115
- package/src/skills/ado-sync/test-cases/test-1.yaml +0 -9
- package/src/skills/ado-sync/test-cases/test-2.yaml +0 -8
- package/src/skills/ado-sync/test-cases/test-3.yaml +0 -9
- package/src/skills/bmad-method-expert/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/bmad-method-expert/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/bmad-method-expert/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/brownfield-analyzer/test-cases/test-1-basic-analysis.yaml +0 -48
- package/src/skills/brownfield-analyzer/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/brownfield-analyzer/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/brownfield-onboarder/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/brownfield-onboarder/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/brownfield-onboarder/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/calendar-system/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/calendar-system/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/calendar-system/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/context-loader/test-cases/test-1-basic-loading.yaml +0 -39
- package/src/skills/context-loader/test-cases/test-2-token-budget-exceeded.yaml +0 -44
- package/src/skills/context-loader/test-cases/test-3-section-anchors.yaml +0 -45
- package/src/skills/context-optimizer/test-cases/test-1-bug-fix-narrow.yaml +0 -97
- package/src/skills/context-optimizer/test-cases/test-2-feature-focused.yaml +0 -109
- package/src/skills/context-optimizer/test-cases/test-3-architecture-broad.yaml +0 -98
- package/src/skills/cost-optimizer/test-cases/test-1-basic-comparison.yaml +0 -75
- package/src/skills/cost-optimizer/test-cases/test-2-budget-constraint.yaml +0 -52
- package/src/skills/cost-optimizer/test-cases/test-3-scale-requirement.yaml +0 -63
- package/src/skills/cost-optimizer/test-results/README.md +0 -46
- package/src/skills/design-system-architect/test-cases/test-1-token-structure.yaml +0 -23
- package/src/skills/design-system-architect/test-cases/test-2-component-hierarchy.yaml +0 -24
- package/src/skills/design-system-architect/test-cases/test-3-accessibility-checklist.yaml +0 -23
- package/src/skills/diagrams-architect/test-cases/test-1-c4-context.yaml +0 -13
- package/src/skills/diagrams-architect/test-cases/test-2-sequence-diagram.yaml +0 -13
- package/src/skills/diagrams-architect/test-cases/test-3-er-diagram.yaml +0 -13
- package/src/skills/diagrams-generator/test-cases/test-1.yaml +0 -9
- package/src/skills/diagrams-generator/test-cases/test-2.yaml +0 -9
- package/src/skills/diagrams-generator/test-cases/test-3.yaml +0 -8
- package/src/skills/docs-updater/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/docs-updater/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/docs-updater/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/dotnet-backend/test-cases/test-1-rest-api.yaml +0 -14
- package/src/skills/dotnet-backend/test-cases/test-2-authentication.yaml +0 -13
- package/src/skills/dotnet-backend/test-cases/test-3-minimal-api.yaml +0 -13
- package/src/skills/e2e-playwright/test-cases/TC-001-basic-navigation.yaml +0 -54
- package/src/skills/e2e-playwright/test-cases/TC-002-form-interaction.yaml +0 -64
- package/src/skills/e2e-playwright/test-cases/TC-003-specweave-integration.yaml +0 -74
- package/src/skills/e2e-playwright/test-cases/TC-004-accessibility-check.yaml +0 -98
- package/src/skills/figma-designer/test-cases/test-1-design-system.yaml +0 -13
- package/src/skills/figma-designer/test-cases/test-2-component-library.yaml +0 -13
- package/src/skills/figma-designer/test-cases/test-3-responsive-layout.yaml +0 -13
- package/src/skills/figma-implementer/test-cases/test-1-design-to-react.yaml +0 -13
- package/src/skills/figma-implementer/test-cases/test-2-storybook.yaml +0 -13
- package/src/skills/figma-implementer/test-cases/test-3-design-tokens.yaml +0 -13
- package/src/skills/figma-mcp-connector/test-cases/test-1-read-file-desktop.yaml +0 -22
- package/src/skills/figma-mcp-connector/test-cases/test-2-read-file-framelink.yaml +0 -21
- package/src/skills/figma-mcp-connector/test-cases/test-3-error-handling.yaml +0 -18
- package/src/skills/figma-to-code/test-cases/test-1-token-generation.yaml +0 -29
- package/src/skills/figma-to-code/test-cases/test-2-component-generation.yaml +0 -27
- package/src/skills/figma-to-code/test-cases/test-3-typescript-generation.yaml +0 -28
- package/src/skills/frontend/test-cases/test-1-react-component.yaml +0 -13
- package/src/skills/frontend/test-cases/test-2-form-validation.yaml +0 -13
- package/src/skills/frontend/test-cases/test-3-state-management.yaml +0 -13
- package/src/skills/github-sync/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/github-sync/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/github-sync/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/hetzner-provisioner/test-cases/test-1-basic-provision.yaml +0 -71
- package/src/skills/hetzner-provisioner/test-cases/test-2-postgres-provision.yaml +0 -85
- package/src/skills/hetzner-provisioner/test-cases/test-3-ssl-config.yaml +0 -126
- package/src/skills/hetzner-provisioner/test-results/README.md +0 -259
- package/src/skills/increment-planner/test-cases/test-1-basic-feature.yaml +0 -27
- package/src/skills/increment-planner/test-cases/test-2-complex-feature.yaml +0 -30
- package/src/skills/increment-planner/test-cases/test-3-auto-numbering.yaml +0 -24
- package/src/skills/increment-quality-judge/test-cases/test-1-good-spec.yaml +0 -95
- package/src/skills/increment-quality-judge/test-cases/test-2-poor-spec.yaml +0 -108
- package/src/skills/increment-quality-judge/test-cases/test-3-export-suggestions.yaml +0 -87
- package/src/skills/jira-sync/test-cases/test-1.yaml +0 -9
- package/src/skills/jira-sync/test-cases/test-2.yaml +0 -9
- package/src/skills/jira-sync/test-cases/test-3.yaml +0 -10
- package/src/skills/nextjs/test-cases/test-1-app-router.yaml +0 -13
- package/src/skills/nextjs/test-cases/test-2-server-actions.yaml +0 -13
- package/src/skills/nextjs/test-cases/test-3-api-routes.yaml +0 -13
- package/src/skills/nodejs-backend/test-cases/test-1-express-api.yaml +0 -13
- package/src/skills/nodejs-backend/test-cases/test-2-prisma-orm.yaml +0 -13
- package/src/skills/nodejs-backend/test-cases/test-3-authentication.yaml +0 -13
- package/src/skills/notification-system/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/notification-system/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/notification-system/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/python-backend/test-cases/test-1-fastapi-crud.yaml +0 -13
- package/src/skills/python-backend/test-cases/test-2-sqlalchemy.yaml +0 -13
- package/src/skills/python-backend/test-cases/test-3-authentication.yaml +0 -13
- package/src/skills/role-orchestrator/test-cases/test-1-simple-product.yaml +0 -98
- package/src/skills/role-orchestrator/test-cases/test-2-quality-gate-failure.yaml +0 -73
- package/src/skills/role-orchestrator/test-cases/test-3-security-workflow.yaml +0 -121
- package/src/skills/role-orchestrator/test-cases/test-4-parallel-execution.yaml +0 -145
- package/src/skills/role-orchestrator/test-cases/test-5-feedback-loops.yaml +0 -149
- package/src/skills/skill-creator/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/skill-creator/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/skill-creator/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/skill-router/test-cases/test-1-basic-routing.yaml +0 -33
- package/src/skills/skill-router/test-cases/test-2-ambiguous-request.yaml +0 -42
- package/src/skills/skill-router/test-cases/test-3-nested-orchestration.yaml +0 -50
- package/src/skills/spec-driven-brainstorming/test-cases/TC-001-simple-idea-to-design.yaml +0 -148
- package/src/skills/spec-driven-brainstorming/test-cases/TC-002-complex-ultrathink-design.yaml +0 -190
- package/src/skills/spec-driven-brainstorming/test-cases/TC-003-unclear-requirements-socratic.yaml +0 -233
- package/src/skills/spec-driven-debugging/test-cases/TC-001-simple-auth-bug.yaml +0 -212
- package/src/skills/spec-driven-debugging/test-cases/TC-002-race-condition-ultrathink.yaml +0 -461
- package/src/skills/spec-driven-debugging/test-cases/TC-003-brownfield-missing-spec.yaml +0 -366
- package/src/skills/spec-kit-expert/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/spec-kit-expert/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/spec-kit-expert/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/specweave-ado-mapper/test-cases/test-1-export-to-ado.yaml +0 -13
- package/src/skills/specweave-ado-mapper/test-cases/test-2-import-from-ado.yaml +0 -13
- package/src/skills/specweave-ado-mapper/test-cases/test-3-bidirectional-sync.yaml +0 -13
- package/src/skills/specweave-detector/test-cases/test-1-basic-detection.yaml +0 -37
- package/src/skills/specweave-detector/test-cases/test-2-missing-config.yaml +0 -37
- package/src/skills/specweave-detector/test-cases/test-3-non-specweave-project.yaml +0 -34
- package/src/skills/specweave-jira-mapper/test-cases/test-1-export-to-jira.yaml +0 -13
- package/src/skills/specweave-jira-mapper/test-cases/test-2-import-from-jira.yaml +0 -13
- package/src/skills/specweave-jira-mapper/test-cases/test-3-sync-status.yaml +0 -13
- package/src/skills/stripe-integrator/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/stripe-integrator/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/stripe-integrator/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/task-builder/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/task-builder/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/task-builder/test-cases/test-3-placeholder.yaml +0 -12
- package/src/templates/config.yaml +0 -351
- /package/src/commands/{list-increments.md → specweave.list-increments.md} +0 -0
|
@@ -354,37 +354,7 @@ You can now work on payment features with optimized context.
|
|
|
354
354
|
|
|
355
355
|
## Configuration
|
|
356
356
|
|
|
357
|
-
```yaml
|
|
358
|
-
# .specweave/config.yaml
|
|
359
|
-
context_optimizer:
|
|
360
|
-
enabled: true
|
|
361
|
-
|
|
362
|
-
# Auto-run after context-loader
|
|
363
|
-
auto_optimize: true
|
|
364
|
-
|
|
365
|
-
# Minimum context size to trigger optimization
|
|
366
|
-
min_context_tokens: 20000
|
|
367
|
-
|
|
368
|
-
# Confidence threshold (skip if uncertain)
|
|
369
|
-
min_confidence: 0.75
|
|
370
357
|
|
|
371
|
-
# Show what was removed
|
|
372
|
-
show_removals: true
|
|
373
|
-
|
|
374
|
-
# Keep buffer (don't remove if close to needed)
|
|
375
|
-
buffer_strategy: "conservative" # or "aggressive"
|
|
376
|
-
|
|
377
|
-
# Domain detection
|
|
378
|
-
custom_domains:
|
|
379
|
-
- "real-time-chat"
|
|
380
|
-
- "analytics"
|
|
381
|
-
- "reporting"
|
|
382
|
-
|
|
383
|
-
# Always keep (never remove)
|
|
384
|
-
always_keep:
|
|
385
|
-
- "architecture/README.md"
|
|
386
|
-
- "CLAUDE.md"
|
|
387
|
-
```
|
|
388
358
|
|
|
389
359
|
## Integration with Context Loader
|
|
390
360
|
|
|
@@ -36,25 +36,7 @@ description: Bi-directional synchronization between GitHub and SpecWeave. Maps G
|
|
|
36
36
|
|
|
37
37
|
## Configuration
|
|
38
38
|
|
|
39
|
-
|
|
40
|
-
```yaml
|
|
41
|
-
sync:
|
|
42
|
-
github:
|
|
43
|
-
enabled: true
|
|
44
|
-
repo: company/repo
|
|
45
|
-
auth:
|
|
46
|
-
type: token
|
|
47
|
-
token_env: GITHUB_TOKEN
|
|
48
|
-
sync_interval: 15m
|
|
49
|
-
webhooks:
|
|
50
|
-
enabled: true
|
|
51
|
-
secret_env: GITHUB_WEBHOOK_SECRET
|
|
52
|
-
mappings:
|
|
53
|
-
milestone: release_plan
|
|
54
|
-
issue_feature: rfc # Issues labeled "feature"
|
|
55
|
-
issue_bug: incident # Issues labeled "bug"
|
|
56
|
-
issue_task: task # Issues labeled "task"
|
|
57
|
-
```
|
|
39
|
+
GitHub sync uses auto-detection - no configuration file needed. Repository and credentials are detected from environment variables or prompted when needed.
|
|
58
40
|
|
|
59
41
|
---
|
|
60
42
|
|
|
@@ -68,27 +68,73 @@ STEP 1: Scan existing docs
|
|
|
68
68
|
├─ Read .specweave/docs/internal/architecture/adr/ (existing decisions)
|
|
69
69
|
└─ Pass existing context to agents
|
|
70
70
|
↓
|
|
71
|
-
STEP 2: Invoke PM Agent
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
71
|
+
STEP 2: Invoke PM Agent (🚨 MANDATORY - USE TASK TOOL)
|
|
72
|
+
|
|
73
|
+
YOU MUST USE THE TASK TOOL - DO NOT SKIP:
|
|
74
|
+
|
|
75
|
+
Task(
|
|
76
|
+
subagent_type: "pm",
|
|
77
|
+
description: "PM product strategy",
|
|
78
|
+
prompt: "Create product strategy for: [user feature description]
|
|
79
|
+
|
|
80
|
+
Context from existing docs: [summary of strategy docs from Step 1]
|
|
81
|
+
|
|
82
|
+
You MUST create BOTH living docs AND increment files:
|
|
83
|
+
|
|
84
|
+
1. Living docs (source of truth):
|
|
85
|
+
- Create .specweave/docs/internal/strategy/{module-name}/
|
|
86
|
+
* overview.md (product vision, problem, users)
|
|
87
|
+
* requirements.md (FR-001, NFR-001, technology-agnostic)
|
|
88
|
+
* user-stories.md (US1, US2, US3...)
|
|
89
|
+
* success-criteria.md (KPIs, metrics)
|
|
90
|
+
|
|
91
|
+
2. Increment file:
|
|
92
|
+
- Create .specweave/increments/{number}-{name}/spec.md
|
|
93
|
+
- Keep spec.md < 250 lines (summary only)
|
|
94
|
+
- MUST reference living docs
|
|
95
|
+
- Include links to ../../docs/internal/strategy/{module}/
|
|
96
|
+
|
|
97
|
+
Tech stack: [detected tech stack]"
|
|
98
|
+
)
|
|
99
|
+
|
|
100
|
+
Wait for PM agent to complete!
|
|
78
101
|
↓
|
|
79
|
-
STEP 3: Invoke Architect Agent
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
102
|
+
STEP 3: Invoke Architect Agent (🚨 MANDATORY - USE TASK TOOL)
|
|
103
|
+
|
|
104
|
+
YOU MUST USE THE TASK TOOL - DO NOT SKIP:
|
|
105
|
+
|
|
106
|
+
Task(
|
|
107
|
+
subagent_type: "architect",
|
|
108
|
+
description: "Architect technical design",
|
|
109
|
+
prompt: "Create technical architecture for: [user feature description]
|
|
110
|
+
|
|
111
|
+
FIRST, read PM's strategy docs from .specweave/docs/internal/strategy/{module}/
|
|
112
|
+
|
|
113
|
+
You MUST create BOTH living docs AND increment files:
|
|
114
|
+
|
|
115
|
+
1. Living docs (source of truth):
|
|
116
|
+
- Update .specweave/docs/internal/architecture/system-design.md
|
|
117
|
+
- Create .specweave/docs/internal/architecture/adr/ (at least 3 ADRs):
|
|
118
|
+
* ####-websocket-vs-polling.md
|
|
119
|
+
* ####-database-choice.md
|
|
120
|
+
* ####-deployment-platform.md
|
|
121
|
+
- Create diagrams/{module}/ (Mermaid C4 diagrams)
|
|
122
|
+
- Create data-models/{module}-schema.sql
|
|
123
|
+
|
|
124
|
+
2. Increment file:
|
|
125
|
+
- Create .specweave/increments/{number}-{name}/plan.md
|
|
126
|
+
- Keep plan.md < 500 lines (summary only)
|
|
127
|
+
- MUST reference living docs
|
|
128
|
+
- Include links to ../../docs/internal/architecture/adr/
|
|
129
|
+
|
|
130
|
+
Tech stack: [detected tech stack]"
|
|
131
|
+
)
|
|
132
|
+
|
|
133
|
+
Wait for Architect agent to complete!
|
|
88
134
|
↓
|
|
89
135
|
STEP 4: Validate Living Docs
|
|
90
136
|
├─ Check .specweave/docs/internal/strategy/{module}/ is NOT empty
|
|
91
|
-
├─ Check .specweave/docs/internal/architecture/adr/ has ADRs
|
|
137
|
+
├─ Check .specweave/docs/internal/architecture/adr/ has ≥3 ADRs
|
|
92
138
|
├─ Check increment spec.md REFERENCES (not duplicates) strategy docs
|
|
93
139
|
└─ Check increment plan.md REFERENCES (not duplicates) architecture docs
|
|
94
140
|
↓
|
|
@@ -824,7 +870,7 @@ const featurePlanner = require('./create-feature.js');
|
|
|
824
870
|
const feature = await featurePlanner.createFeature({
|
|
825
871
|
description: "Add Stripe payment integration",
|
|
826
872
|
priority: "P1",
|
|
827
|
-
|
|
873
|
+
# Configuration auto-detected
|
|
828
874
|
});
|
|
829
875
|
|
|
830
876
|
console.log(`Created: .specweave/increments/${feature.number}-${feature.shortName}/`);
|
|
@@ -238,42 +238,7 @@ Choice: _
|
|
|
238
238
|
|
|
239
239
|
## Configuration
|
|
240
240
|
|
|
241
|
-
|
|
242
|
-
# .specweave/config.yaml
|
|
243
|
-
validation:
|
|
244
|
-
quality_judge:
|
|
245
|
-
# Enable/disable feature
|
|
246
|
-
enabled: true
|
|
247
|
-
|
|
248
|
-
# When to run
|
|
249
|
-
auto_prompt: true # Prompt after rule-based validation
|
|
250
|
-
always_run: false # Run without prompting
|
|
251
|
-
|
|
252
|
-
# Scoring thresholds
|
|
253
|
-
thresholds:
|
|
254
|
-
excellent: 90 # ✓✓ (95-100)
|
|
255
|
-
good: 80 # ✓ (80-94)
|
|
256
|
-
acceptable: 70 # ~ (70-79)
|
|
257
|
-
needs_work: 0 # ⚠️ (0-69)
|
|
258
|
-
|
|
259
|
-
# Which dimensions to evaluate
|
|
260
|
-
dimensions:
|
|
261
|
-
clarity: true
|
|
262
|
-
testability: true
|
|
263
|
-
completeness: true
|
|
264
|
-
feasibility: true
|
|
265
|
-
maintainability: true
|
|
266
|
-
edge_cases: true
|
|
267
|
-
|
|
268
|
-
# Token budget
|
|
269
|
-
max_tokens: 2000 # Limit for quality check
|
|
270
|
-
|
|
271
|
-
# Auto-export suggestions
|
|
272
|
-
export_to_tasks: true # Add suggestions to tasks.md
|
|
273
|
-
|
|
274
|
-
# Confidence threshold
|
|
275
|
-
min_confidence: 0.80 # Show warning if lower
|
|
276
|
-
```
|
|
241
|
+
|
|
277
242
|
|
|
278
243
|
## Usage Examples
|
|
279
244
|
|
|
@@ -91,15 +91,7 @@ As a user, I want to subscribe to a monthly plan...
|
|
|
91
91
|
## Authentication
|
|
92
92
|
|
|
93
93
|
**JIRA Cloud**:
|
|
94
|
-
|
|
95
|
-
# .specweave/config.yaml
|
|
96
|
-
jira_sync:
|
|
97
|
-
type: "cloud"
|
|
98
|
-
url: "https://your-org.atlassian.net"
|
|
99
|
-
email: "user@example.com"
|
|
100
|
-
api_token: "${JIRA_API_TOKEN}" # From environment variable
|
|
101
|
-
project_key: "PROJ"
|
|
102
|
-
```
|
|
94
|
+
|
|
103
95
|
|
|
104
96
|
**JIRA Server/Data Center**:
|
|
105
97
|
```yaml
|
|
@@ -113,36 +105,7 @@ jira_sync:
|
|
|
113
105
|
|
|
114
106
|
## Configuration
|
|
115
107
|
|
|
116
|
-
```yaml
|
|
117
|
-
# .specweave/config.yaml
|
|
118
|
-
jira_sync:
|
|
119
|
-
enabled: false
|
|
120
|
-
|
|
121
|
-
# JIRA instance
|
|
122
|
-
url: "https://your-org.atlassian.net"
|
|
123
|
-
project_key: "PROJ"
|
|
124
|
-
|
|
125
|
-
# Authentication (use environment variables!)
|
|
126
|
-
email: "${JIRA_EMAIL}"
|
|
127
|
-
api_token: "${JIRA_API_TOKEN}"
|
|
128
|
-
|
|
129
|
-
# Sync settings
|
|
130
|
-
sync_direction: "bidirectional" # export | import | bidirectional
|
|
131
|
-
sync_interval: 300 # seconds (5 minutes)
|
|
132
108
|
|
|
133
|
-
# What to sync
|
|
134
|
-
sync_status: true
|
|
135
|
-
sync_comments: true
|
|
136
|
-
sync_assignees: true
|
|
137
|
-
sync_attachments: false
|
|
138
|
-
|
|
139
|
-
# Issue mapping
|
|
140
|
-
epic_label: "epic" # Custom field or label for epics
|
|
141
|
-
|
|
142
|
-
# Webhooks (for real-time sync)
|
|
143
|
-
webhook_enabled: true
|
|
144
|
-
webhook_secret: "${JIRA_WEBHOOK_SECRET}"
|
|
145
|
-
```
|
|
146
109
|
|
|
147
110
|
## Workflow
|
|
148
111
|
|
|
@@ -160,28 +160,7 @@ const roleRules = {
|
|
|
160
160
|
|
|
161
161
|
## Configuration
|
|
162
162
|
|
|
163
|
-
|
|
164
|
-
# .specweave/config.yaml
|
|
165
|
-
role_orchestrator:
|
|
166
|
-
enabled: true
|
|
167
|
-
|
|
168
|
-
# Model selection per role
|
|
169
|
-
models:
|
|
170
|
-
pm: "claude-opus-4"
|
|
171
|
-
architect: "claude-opus-4"
|
|
172
|
-
security: "claude-opus-4"
|
|
173
|
-
qa_lead: "claude-sonnet-4"
|
|
174
|
-
devops: "claude-sonnet-4"
|
|
175
|
-
tech_lead: "claude-sonnet-4"
|
|
176
|
-
backend: "claude-haiku-4"
|
|
177
|
-
frontend: "claude-haiku-4"
|
|
178
|
-
|
|
179
|
-
# Auto-detect roles or ask user
|
|
180
|
-
auto_detect: true
|
|
181
|
-
|
|
182
|
-
# Ask user confirmation before running expensive roles (Opus)
|
|
183
|
-
confirm_opus_roles: true
|
|
184
|
-
```
|
|
163
|
+
|
|
185
164
|
|
|
186
165
|
## Future Enhancements
|
|
187
166
|
|
|
@@ -889,37 +889,7 @@ Proceeding to architecture phase...
|
|
|
889
889
|
|
|
890
890
|
### Configuration for Feedback Loops
|
|
891
891
|
|
|
892
|
-
|
|
893
|
-
# .specweave/config.yaml
|
|
894
|
-
role_orchestrator:
|
|
895
|
-
enabled: true
|
|
896
|
-
|
|
897
|
-
# Feedback loop configuration
|
|
898
|
-
feedback_loops:
|
|
899
|
-
enabled: true # Enable auto-refinement
|
|
900
|
-
max_retries: 3 # Max refinement attempts
|
|
901
|
-
stop_on_improvement: true # Stop if score improves
|
|
902
|
-
require_user_approval: false # Auto-refine without asking
|
|
903
|
-
|
|
904
|
-
# Quality thresholds per agent
|
|
905
|
-
thresholds:
|
|
906
|
-
pm_agent: 0.80 # Requirements quality
|
|
907
|
-
architect_agent: 0.80 # Design quality
|
|
908
|
-
qa_lead_agent: 0.75 # Test coverage + quality
|
|
909
|
-
|
|
910
|
-
# Which agents use feedback loops
|
|
911
|
-
agents:
|
|
912
|
-
- pm_agent
|
|
913
|
-
- architect_agent
|
|
914
|
-
- qa_lead_agent
|
|
915
|
-
# Not applicable for implementation agents
|
|
916
|
-
|
|
917
|
-
# Validation strategy
|
|
918
|
-
validation:
|
|
919
|
-
use_llm_judge: true # Use increment-quality-judge
|
|
920
|
-
combine_with_rules: true # Combine with rule-based checks
|
|
921
|
-
judge_weight: 0.5 # 50% LLM judge, 50% rules
|
|
922
|
-
```
|
|
892
|
+
|
|
923
893
|
|
|
924
894
|
### Gate Failure Handling
|
|
925
895
|
|
|
@@ -1044,35 +1014,7 @@ async function invokeSkill(skillName: string, task: string, context: any) {
|
|
|
1044
1014
|
|
|
1045
1015
|
## Configuration
|
|
1046
1016
|
|
|
1047
|
-
```yaml
|
|
1048
|
-
# .specweave/config.yaml
|
|
1049
|
-
role_orchestrator:
|
|
1050
|
-
enabled: true
|
|
1051
|
-
|
|
1052
|
-
# Orchestration strategy
|
|
1053
|
-
default_pattern: "sequential_with_gates" # or "parallel" or "adaptive"
|
|
1054
1017
|
|
|
1055
|
-
# Quality gates
|
|
1056
|
-
require_user_approval:
|
|
1057
|
-
- architecture_decisions
|
|
1058
|
-
- deployment_to_production
|
|
1059
|
-
|
|
1060
|
-
require_automated_approval:
|
|
1061
|
-
- test_coverage: ">80%"
|
|
1062
|
-
- security_scan: "no_critical"
|
|
1063
|
-
|
|
1064
|
-
# Agent preferences
|
|
1065
|
-
preferred_backend: "nodejs-backend" # or python-backend, dotnet-backend
|
|
1066
|
-
preferred_frontend: "frontend-agent"
|
|
1067
|
-
|
|
1068
|
-
# Timeouts
|
|
1069
|
-
phase_timeout_minutes: 30
|
|
1070
|
-
total_timeout_hours: 8
|
|
1071
|
-
|
|
1072
|
-
# Monitoring
|
|
1073
|
-
progress_updates_interval: "5min"
|
|
1074
|
-
store_metrics: true
|
|
1075
|
-
```
|
|
1076
1018
|
|
|
1077
1019
|
## Testing
|
|
1078
1020
|
|
|
@@ -285,25 +285,7 @@ When multiple skills could handle a request, use priority:
|
|
|
285
285
|
|
|
286
286
|
## Configuration
|
|
287
287
|
|
|
288
|
-
```yaml
|
|
289
|
-
# .specweave/config.yaml
|
|
290
|
-
skill_router:
|
|
291
|
-
enabled: true
|
|
292
288
|
|
|
293
|
-
# Accuracy target (constitution requirement)
|
|
294
|
-
accuracy_target: 0.90
|
|
295
|
-
|
|
296
|
-
# Clarification threshold
|
|
297
|
-
clarification_threshold: 0.90 # Ask when confidence < 0.90
|
|
298
|
-
|
|
299
|
-
# Learning
|
|
300
|
-
collect_feedback: true
|
|
301
|
-
feedback_file: ".specweave/cache/routing-feedback.json"
|
|
302
|
-
|
|
303
|
-
# Routing preferences
|
|
304
|
-
prefer_multi_skill: false # For complex requests, prefer orchestrator
|
|
305
|
-
auto_route_high_confidence: true # Route immediately if confidence > 0.90
|
|
306
|
-
```
|
|
307
289
|
|
|
308
290
|
## Examples
|
|
309
291
|
|
|
@@ -356,7 +356,6 @@ When you request gap analysis, I will:
|
|
|
356
356
|
```bash
|
|
357
357
|
# Project structure
|
|
358
358
|
- CLAUDE.md (complete guide)
|
|
359
|
-
- .specweave/config.yaml (configuration)
|
|
360
359
|
- .specweave/increments/ (implemented features)
|
|
361
360
|
- src/skills/ (available skills)
|
|
362
361
|
- src/agents/ (available agents)
|
|
@@ -436,7 +435,7 @@ Based on analysis, provide:
|
|
|
436
435
|
- Read src/skills/ for available skills
|
|
437
436
|
- Read src/agents/ for available agents
|
|
438
437
|
- Review CLAUDE.md for documented features
|
|
439
|
-
-
|
|
438
|
+
- Settings auto-detected
|
|
440
439
|
- Analyze .claude/hooks/ for automation
|
|
441
440
|
```
|
|
442
441
|
|
|
@@ -885,7 +884,6 @@ When performing gap analysis, I can read and analyze:
|
|
|
885
884
|
```bash
|
|
886
885
|
# Core configuration
|
|
887
886
|
✅ CLAUDE.md # Complete guide
|
|
888
|
-
✅ .specweave/config.yaml # Configuration
|
|
889
887
|
✅ README.md # Project overview
|
|
890
888
|
|
|
891
889
|
# Features (increments)
|