specky-sdd 3.7.3 → 3.8.0
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/.apm/agents/{design-architect.agent.md → specky-design-architect.agent.md} +2 -2
- package/.apm/agents/{implementer.agent.md → specky-implementer.agent.md} +2 -2
- package/.apm/agents/specky-onboarding.agent.md +1 -1
- package/.apm/agents/specky-orchestrator.agent.md +10 -10
- package/.apm/agents/{quality-reviewer.agent.md → specky-quality-reviewer.agent.md} +2 -2
- package/.apm/agents/{release-engineer.agent.md → specky-release-engineer.agent.md} +4 -4
- package/.apm/agents/{requirements-engineer.agent.md → specky-requirements-engineer.agent.md} +2 -2
- package/.apm/agents/{research-analyst.agent.md → specky-research-analyst.agent.md} +2 -2
- package/.apm/agents/{sdd-clarify.agent.md → specky-sdd-clarify.agent.md} +2 -2
- package/.apm/agents/{sdd-init.agent.md → specky-sdd-init.agent.md} +3 -3
- package/.apm/agents/{spec-engineer.agent.md → specky-spec-engineer.agent.md} +2 -2
- package/.apm/agents/{task-planner.agent.md → specky-task-planner.agent.md} +2 -2
- package/.apm/agents/{test-verifier.agent.md → specky-test-verifier.agent.md} +2 -2
- package/.apm/hooks/scripts/{artifact-validator.sh → specky-artifact-validator.sh} +11 -11
- package/.apm/hooks/scripts/{auto-checkpoint.sh → specky-auto-checkpoint.sh} +1 -1
- package/.apm/hooks/scripts/{branch-validator.sh → specky-branch-validator.sh} +3 -3
- package/.apm/hooks/scripts/{cognitive-debt-alert.sh → specky-cognitive-debt-alert.sh} +1 -1
- package/.apm/hooks/scripts/{drift-monitor.sh → specky-drift-monitor.sh} +1 -1
- package/.apm/hooks/scripts/{ears-validator.sh → specky-ears-validator.sh} +1 -1
- package/.apm/hooks/scripts/{lgtm-gate.sh → specky-lgtm-gate.sh} +1 -1
- package/.apm/hooks/scripts/{metrics-dashboard.sh → specky-metrics-dashboard.sh} +2 -2
- package/.apm/hooks/scripts/{phase-gate.sh → specky-phase-gate.sh} +1 -1
- package/.apm/hooks/scripts/{pipeline-guard.sh → specky-pipeline-guard.sh} +3 -3
- package/.apm/hooks/scripts/{release-gate.sh → specky-release-gate.sh} +1 -1
- package/.apm/hooks/scripts/{security-scan.sh → specky-security-scan.sh} +2 -2
- package/.apm/hooks/scripts/{session-banner.sh → specky-session-banner.sh} +4 -4
- package/.apm/hooks/scripts/{spec-quality.sh → specky-spec-quality.sh} +1 -1
- package/.apm/hooks/scripts/{spec-sync.sh → specky-spec-sync.sh} +2 -2
- package/.apm/hooks/scripts/{task-tracer.sh → specky-task-tracer.sh} +1 -1
- package/.apm/hooks/sdd-hooks.json +51 -51
- package/.apm/instructions/copilot-instructions.instructions.md +17 -17
- package/.apm/prompts/specky-api.prompt.md +2 -2
- package/.apm/prompts/specky-brownfield.prompt.md +2 -2
- package/.apm/prompts/specky-clarify.prompt.md +1 -1
- package/.apm/prompts/specky-debug-hook.prompt.md +1 -1
- package/.apm/prompts/specky-deploy.prompt.md +1 -1
- package/.apm/prompts/specky-design.prompt.md +1 -1
- package/.apm/prompts/specky-from-meeting.prompt.md +1 -1
- package/.apm/prompts/specky-greenfield.prompt.md +2 -2
- package/.apm/prompts/specky-implement.prompt.md +1 -1
- package/.apm/prompts/specky-migration.prompt.md +3 -3
- package/.apm/prompts/specky-release.prompt.md +1 -1
- package/.apm/prompts/specky-research.prompt.md +1 -1
- package/.apm/prompts/specky-specify.prompt.md +1 -1
- package/.apm/prompts/specky-tasks.prompt.md +1 -1
- package/.apm/prompts/specky-verify.prompt.md +1 -1
- package/.apm/skills/{implementer → specky-implementer}/SKILL.md +3 -3
- package/.apm/skills/specky-onboarding/SKILL.md +29 -29
- package/.apm/skills/specky-orchestrator/SKILL.md +28 -28
- package/.apm/skills/{release-engineer → specky-release-engineer}/SKILL.md +7 -7
- package/.apm/skills/{research-analyst → specky-research-analyst}/SKILL.md +2 -2
- package/.apm/skills/{sdd-markdown-standard → specky-sdd-markdown-standard}/SKILL.md +2 -2
- package/.apm/skills/{sdd-pipeline → specky-sdd-pipeline}/SKILL.md +30 -30
- package/.apm/skills/{test-verifier → specky-test-verifier}/SKILL.md +2 -2
- package/CHANGELOG.md +29 -0
- package/README.md +22 -19
- package/apm-policy.yml +12 -0
- package/apm.lock.yaml +59 -59
- package/apm.yml +9 -6
- package/config.yml +31 -31
- package/dist/claude-hooks.json +51 -51
- package/dist/cli/commands/compile.d.ts +7 -0
- package/dist/cli/commands/compile.d.ts.map +1 -0
- package/dist/cli/commands/compile.js +106 -0
- package/dist/cli/commands/compile.js.map +1 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +35 -13
- package/dist/cli/commands/doctor.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 +114 -15
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/upgrade.d.ts.map +1 -1
- package/dist/cli/commands/upgrade.js +5 -2
- package/dist/cli/commands/upgrade.js.map +1 -1
- package/dist/cli/index.js +21 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/lib/apm/policy.d.ts.map +1 -1
- package/dist/cli/lib/apm/policy.js +47 -33
- package/dist/cli/lib/apm/policy.js.map +1 -1
- package/dist/cli/lib/asset-copier.d.ts +13 -0
- package/dist/cli/lib/asset-copier.d.ts.map +1 -1
- package/dist/cli/lib/asset-copier.js +38 -0
- package/dist/cli/lib/asset-copier.js.map +1 -1
- package/dist/cli/lib/gitignore-writer.d.ts.map +1 -1
- package/dist/cli/lib/gitignore-writer.js +10 -0
- package/dist/cli/lib/gitignore-writer.js.map +1 -1
- package/dist/cli/lib/harness/compilers/agent-skills.d.ts +7 -0
- package/dist/cli/lib/harness/compilers/agent-skills.d.ts.map +1 -0
- package/dist/cli/lib/harness/compilers/agent-skills.js +23 -0
- package/dist/cli/lib/harness/compilers/agent-skills.js.map +1 -0
- package/dist/cli/lib/harness/compilers/cursor.d.ts +8 -0
- package/dist/cli/lib/harness/compilers/cursor.d.ts.map +1 -0
- package/dist/cli/lib/harness/compilers/cursor.js +27 -0
- package/dist/cli/lib/harness/compilers/cursor.js.map +1 -0
- package/dist/cli/lib/harness/compilers/opencode.d.ts +7 -0
- package/dist/cli/lib/harness/compilers/opencode.d.ts.map +1 -0
- package/dist/cli/lib/harness/compilers/opencode.js +26 -0
- package/dist/cli/lib/harness/compilers/opencode.js.map +1 -0
- package/dist/cli/lib/harness/index.d.ts.map +1 -1
- package/dist/cli/lib/harness/index.js +6 -0
- package/dist/cli/lib/harness/index.js.map +1 -1
- package/dist/cli/lib/harness/tool-map.d.ts.map +1 -1
- package/dist/cli/lib/harness/tool-map.js +23 -1
- package/dist/cli/lib/harness/tool-map.js.map +1 -1
- package/dist/cli/lib/harness/types.d.ts +2 -2
- package/dist/cli/lib/harness/types.d.ts.map +1 -1
- package/dist/cli/lib/mcp-writer.d.ts +1 -0
- package/dist/cli/lib/mcp-writer.d.ts.map +1 -1
- package/dist/cli/lib/mcp-writer.js +5 -1
- package/dist/cli/lib/mcp-writer.js.map +1 -1
- package/dist/cli/lib/paths.d.ts +15 -0
- package/dist/cli/lib/paths.d.ts.map +1 -1
- package/dist/cli/lib/paths.js +17 -0
- package/dist/cli/lib/paths.js.map +1 -1
- package/dist/copilot-hooks.json +46 -46
- package/dist/services/state-machine.d.ts +4 -3
- package/dist/services/state-machine.d.ts.map +1 -1
- package/dist/services/state-machine.js +17 -9
- package/dist/services/state-machine.js.map +1 -1
- package/package.json +2 -2
- /package/.apm/skills/{sdd-pipeline → specky-sdd-pipeline}/references/ears-notation.md +0 -0
- /package/.apm/skills/{sdd-pipeline → specky-sdd-pipeline}/references/model-routing.md +0 -0
|
@@ -47,17 +47,17 @@ Check for:
|
|
|
47
47
|
|-------|-------|---------|
|
|
48
48
|
| @specky-onboarding | Pre | Interactive wizard and help |
|
|
49
49
|
| @specky-orchestrator | All | Full pipeline coordinator |
|
|
50
|
-
| @sdd-init | 0 | Initialize pipeline + create spec branch |
|
|
51
|
-
| @research-analyst | 1 | Codebase scan + discovery |
|
|
52
|
-
| @spec-engineer | 2 | Write SPECIFICATION.md with EARS |
|
|
53
|
-
| @sdd-clarify | 3 | Resolve ambiguities + EARS validation |
|
|
54
|
-
| @design-architect | 4 | Write DESIGN.md + diagrams |
|
|
55
|
-
| @task-planner | 5 | Write TASKS.md + CHECKLIST.md |
|
|
56
|
-
| @quality-reviewer | 6 | Completeness audit + compliance |
|
|
57
|
-
| @implementer | 7 | Implementation plan + test stubs + IaC |
|
|
58
|
-
| @test-verifier | 8 | Coverage + drift + phantom detection |
|
|
59
|
-
| @requirements-engineer | Pre | FRD + NFRD from raw input |
|
|
60
|
-
| @release-engineer | 9 | Gates + PR + docs + work items |
|
|
50
|
+
| @specky-sdd-init | 0 | Initialize pipeline + create spec branch |
|
|
51
|
+
| @specky-research-analyst | 1 | Codebase scan + discovery |
|
|
52
|
+
| @specky-spec-engineer | 2 | Write SPECIFICATION.md with EARS |
|
|
53
|
+
| @specky-sdd-clarify | 3 | Resolve ambiguities + EARS validation |
|
|
54
|
+
| @specky-design-architect | 4 | Write DESIGN.md + diagrams |
|
|
55
|
+
| @specky-task-planner | 5 | Write TASKS.md + CHECKLIST.md |
|
|
56
|
+
| @specky-quality-reviewer | 6 | Completeness audit + compliance |
|
|
57
|
+
| @specky-implementer | 7 | Implementation plan + test stubs + IaC |
|
|
58
|
+
| @specky-test-verifier | 8 | Coverage + drift + phantom detection |
|
|
59
|
+
| @specky-requirements-engineer | Pre | FRD + NFRD from raw input |
|
|
60
|
+
| @specky-release-engineer | 9 | Gates + PR + docs + work items |
|
|
61
61
|
|
|
62
62
|
## All 22 Prompts
|
|
63
63
|
|
|
@@ -95,14 +95,14 @@ Check for:
|
|
|
95
95
|
|
|
96
96
|
| Skill | Triggers On |
|
|
97
97
|
|-------|-------------|
|
|
98
|
-
| sdd-pipeline | "specky", "SDD pipeline", "EARS notation", "pipeline phases" |
|
|
98
|
+
| specky-sdd-pipeline | "specky", "SDD pipeline", "EARS notation", "pipeline phases" |
|
|
99
99
|
| specky-orchestrator | "orchestrate", "run full pipeline", "advance phase" |
|
|
100
100
|
| specky-onboarding | "help", "get started", "what is specky" |
|
|
101
101
|
| implementer | "implementation plan", "test stubs", "IaC generation" |
|
|
102
102
|
| test-verifier | "verify tests", "check coverage", "phantom detection" |
|
|
103
103
|
| release-engineer | "prepare release", "create PR", "release gates" |
|
|
104
104
|
| research-analyst | "research codebase", "scan tech stack", "import documents" |
|
|
105
|
-
| sdd-markdown-standard | "artifact format", "spec formatting" |
|
|
105
|
+
| specky-sdd-markdown-standard | "artifact format", "spec formatting" |
|
|
106
106
|
|
|
107
107
|
## 58 MCP Tools by Category
|
|
108
108
|
|
|
@@ -135,21 +135,21 @@ Check for:
|
|
|
135
135
|
## 16 Hook Scripts
|
|
136
136
|
|
|
137
137
|
**Blocking (exit 2 = halt):**
|
|
138
|
-
- artifact-validator.sh — Prerequisite .md files exist
|
|
139
|
-
- phase-gate.sh — Output artifact created with quality
|
|
140
|
-
- security-scan.sh — OWASP + secrets scan
|
|
141
|
-
- release-gate.sh — 90% pass rate + artifact checks
|
|
138
|
+
- specky-artifact-validator.sh — Prerequisite .md files exist
|
|
139
|
+
- specky-phase-gate.sh — Output artifact created with quality
|
|
140
|
+
- specky-security-scan.sh — OWASP + secrets scan
|
|
141
|
+
- specky-release-gate.sh — 90% pass rate + artifact checks
|
|
142
142
|
|
|
143
143
|
**Advisory (exit 0 = warn):**
|
|
144
|
-
- branch-validator.sh — Branch matches phase expectations
|
|
145
|
-
- pipeline-guard.sh — Pipeline ordering / phase-skip guard
|
|
146
|
-
- lgtm-gate.sh — Human review reminder at Phases 2/4/5
|
|
147
|
-
- session-banner.sh — Session start pipeline-status banner
|
|
148
|
-
- spec-sync.sh — Detect spec-code drift
|
|
149
|
-
- auto-checkpoint.sh — Suggest checkpoint after writes
|
|
150
|
-
- spec-quality.sh — Specification quality metrics
|
|
151
|
-
- ears-validator.sh — EARS pattern compliance
|
|
152
|
-
- task-tracer.sh — Task dependency graph
|
|
153
|
-
- drift-monitor.sh — CONSTITUTION drift detection
|
|
154
|
-
- cognitive-debt-alert.sh — Cognitive surrender detection
|
|
155
|
-
- metrics-dashboard.sh — Quality metrics collection
|
|
144
|
+
- specky-branch-validator.sh — Branch matches phase expectations
|
|
145
|
+
- specky-pipeline-guard.sh — Pipeline ordering / phase-skip guard
|
|
146
|
+
- specky-lgtm-gate.sh — Human review reminder at Phases 2/4/5
|
|
147
|
+
- specky-session-banner.sh — Session start pipeline-status banner
|
|
148
|
+
- specky-spec-sync.sh — Detect spec-code drift
|
|
149
|
+
- specky-auto-checkpoint.sh — Suggest checkpoint after writes
|
|
150
|
+
- specky-spec-quality.sh — Specification quality metrics
|
|
151
|
+
- specky-ears-validator.sh — EARS pattern compliance
|
|
152
|
+
- specky-task-tracer.sh — Task dependency graph
|
|
153
|
+
- specky-drift-monitor.sh — CONSTITUTION drift detection
|
|
154
|
+
- specky-cognitive-debt-alert.sh — Cognitive surrender detection
|
|
155
|
+
- specky-metrics-dashboard.sh — Quality metrics collection
|
|
@@ -15,16 +15,16 @@ Model guidance is capability-based: fast, balanced, and reasoning-focused. Do no
|
|
|
15
15
|
|
|
16
16
|
| Phase | Agent | Recommended Class | MCP Tools | Required Input | Output Artifact |
|
|
17
17
|
|-------|-------|-------------------|-----------|----------------|-----------------|
|
|
18
|
-
| 0 Init | @sdd-init | Fast | sdd_init, sdd_scan_codebase | — | CONSTITUTION.md, .sdd-state.json |
|
|
19
|
-
| 1 Discover | @research-analyst | Balanced | sdd_discover, sdd_research, sdd_import_document, sdd_import_transcript, sdd_check_ecosystem | CONSTITUTION.md | RESEARCH.md |
|
|
20
|
-
| 2 Specify | @spec-engineer | Reasoning-focused | sdd_write_spec, sdd_turnkey_spec, sdd_validate_ears, sdd_figma_to_spec | RESEARCH.md | SPECIFICATION.md |
|
|
21
|
-
| 3 Clarify | @sdd-clarify | Reasoning-focused | sdd_clarify, sdd_validate_ears, sdd_turnkey_spec | SPECIFICATION.md | Updates to SPECIFICATION.md |
|
|
22
|
-
| 4 Design | @design-architect | Reasoning-focused | sdd_write_design, sdd_generate_all_diagrams, sdd_generate_diagram | SPECIFICATION.md | DESIGN.md |
|
|
23
|
-
| 5 Tasks | @task-planner | Balanced | sdd_write_tasks, sdd_checklist | DESIGN.md | TASKS.md, CHECKLIST.md |
|
|
24
|
-
| 6 Analyze | @quality-reviewer | Balanced | sdd_run_analysis, sdd_cross_analyze, sdd_compliance_check, sdd_check_sync | TASKS.md, CHECKLIST.md | ANALYSIS.md, COMPLIANCE.md |
|
|
25
|
-
| 7 Implement | @implementer | Balanced | sdd_implement, sdd_generate_tests, sdd_generate_pbt, sdd_generate_iac, sdd_generate_dockerfile | ANALYSIS.md | Code scaffolding, test stubs |
|
|
26
|
-
| 8 Verify | @test-verifier | Reasoning-focused | sdd_verify_tests, sdd_verify_tasks, sdd_check_sync, sdd_validate_ears | SPECIFICATION.md, TASKS.md | VERIFICATION.md, CROSS_ANALYSIS.md |
|
|
27
|
-
| 9 Release | @release-engineer | Fast | sdd_create_pr, sdd_generate_all_docs, sdd_export_work_items | ANALYSIS.md (APPROVE) | PR, docs, work items |
|
|
18
|
+
| 0 Init | @specky-sdd-init | Fast | sdd_init, sdd_scan_codebase | — | CONSTITUTION.md, .sdd-state.json |
|
|
19
|
+
| 1 Discover | @specky-research-analyst | Balanced | sdd_discover, sdd_research, sdd_import_document, sdd_import_transcript, sdd_check_ecosystem | CONSTITUTION.md | RESEARCH.md |
|
|
20
|
+
| 2 Specify | @specky-spec-engineer | Reasoning-focused | sdd_write_spec, sdd_turnkey_spec, sdd_validate_ears, sdd_figma_to_spec | RESEARCH.md | SPECIFICATION.md |
|
|
21
|
+
| 3 Clarify | @specky-sdd-clarify | Reasoning-focused | sdd_clarify, sdd_validate_ears, sdd_turnkey_spec | SPECIFICATION.md | Updates to SPECIFICATION.md |
|
|
22
|
+
| 4 Design | @specky-design-architect | Reasoning-focused | sdd_write_design, sdd_generate_all_diagrams, sdd_generate_diagram | SPECIFICATION.md | DESIGN.md |
|
|
23
|
+
| 5 Tasks | @specky-task-planner | Balanced | sdd_write_tasks, sdd_checklist | DESIGN.md | TASKS.md, CHECKLIST.md |
|
|
24
|
+
| 6 Analyze | @specky-quality-reviewer | Balanced | sdd_run_analysis, sdd_cross_analyze, sdd_compliance_check, sdd_check_sync | TASKS.md, CHECKLIST.md | ANALYSIS.md, COMPLIANCE.md |
|
|
25
|
+
| 7 Implement | @specky-implementer | Balanced | sdd_implement, sdd_generate_tests, sdd_generate_pbt, sdd_generate_iac, sdd_generate_dockerfile | ANALYSIS.md | Code scaffolding, test stubs |
|
|
26
|
+
| 8 Verify | @specky-test-verifier | Reasoning-focused | sdd_verify_tests, sdd_verify_tasks, sdd_check_sync, sdd_validate_ears | SPECIFICATION.md, TASKS.md | VERIFICATION.md, CROSS_ANALYSIS.md |
|
|
27
|
+
| 9 Release | @specky-release-engineer | Fast | sdd_create_pr, sdd_generate_all_docs, sdd_export_work_items | ANALYSIS.md (APPROVE) | PR, docs, work items |
|
|
28
28
|
|
|
29
29
|
## Hook Enforcement Matrix
|
|
30
30
|
|
|
@@ -32,34 +32,34 @@ Model guidance is capability-based: fast, balanced, and reasoning-focused. Do no
|
|
|
32
32
|
|
|
33
33
|
| Tool Matcher | Hooks | Type |
|
|
34
34
|
|-------------|-------|------|
|
|
35
|
-
| sdd_init | branch-validator | Advisory |
|
|
36
|
-
| sdd_discover, sdd_research, sdd_import_* | artifact-validator, branch-validator | Blocking + Advisory |
|
|
37
|
-
| sdd_write_spec, sdd_turnkey_spec, sdd_figma_to_spec | artifact-validator, branch-validator | Blocking + Advisory |
|
|
38
|
-
| sdd_write_design, sdd_generate_all_diagrams | artifact-validator, branch-validator | Blocking + Advisory |
|
|
39
|
-
| sdd_write_tasks, sdd_checklist | artifact-validator, branch-validator | Blocking + Advisory |
|
|
40
|
-
| sdd_implement, sdd_generate_tests | artifact-validator, branch-validator | Blocking + Advisory |
|
|
41
|
-
| sdd_verify_tests, sdd_verify_tasks | artifact-validator, branch-validator | Blocking + Advisory |
|
|
42
|
-
| sdd_run_analysis, sdd_cross_analyze | artifact-validator, branch-validator | Blocking + Advisory |
|
|
43
|
-
| sdd_create_pr | artifact-validator, branch-validator, security-scan, release-gate | All Blocking |
|
|
35
|
+
| sdd_init | specky-branch-validator | Advisory |
|
|
36
|
+
| sdd_discover, sdd_research, sdd_import_* | specky-artifact-validator, specky-branch-validator | Blocking + Advisory |
|
|
37
|
+
| sdd_write_spec, sdd_turnkey_spec, sdd_figma_to_spec | specky-artifact-validator, specky-branch-validator | Blocking + Advisory |
|
|
38
|
+
| sdd_write_design, sdd_generate_all_diagrams | specky-artifact-validator, specky-branch-validator | Blocking + Advisory |
|
|
39
|
+
| sdd_write_tasks, sdd_checklist | specky-artifact-validator, specky-branch-validator | Blocking + Advisory |
|
|
40
|
+
| sdd_implement, sdd_generate_tests | specky-artifact-validator, specky-branch-validator | Blocking + Advisory |
|
|
41
|
+
| sdd_verify_tests, sdd_verify_tasks | specky-artifact-validator, specky-branch-validator | Blocking + Advisory |
|
|
42
|
+
| sdd_run_analysis, sdd_cross_analyze | specky-artifact-validator, specky-branch-validator | Blocking + Advisory |
|
|
43
|
+
| sdd_create_pr | specky-artifact-validator, specky-branch-validator, specky-security-scan, specky-release-gate | All Blocking |
|
|
44
44
|
|
|
45
45
|
### Post-Phase Hooks (validate after tool runs)
|
|
46
46
|
|
|
47
47
|
| Tool Matcher | Hooks | Type |
|
|
48
48
|
|-------------|-------|------|
|
|
49
|
-
| sdd_init | phase-gate, auto-checkpoint | Blocking + Advisory |
|
|
50
|
-
| sdd_write_spec, sdd_turnkey_spec | phase-gate, spec-quality, ears-validator, lgtm-gate, spec-sync, auto-checkpoint | Mixed |
|
|
51
|
-
| sdd_write_design | phase-gate, spec-sync, lgtm-gate, auto-checkpoint | Mixed |
|
|
52
|
-
| sdd_write_tasks | phase-gate, task-tracer, lgtm-gate, spec-sync, auto-checkpoint | Mixed |
|
|
53
|
-
| sdd_implement, sdd_generate_tests | spec-sync, auto-checkpoint | Advisory |
|
|
54
|
-
| sdd_verify_tests, sdd_verify_tasks | phase-gate, drift-monitor | Mixed |
|
|
55
|
-
| sdd_run_analysis, sdd_cross_analyze | phase-gate, cognitive-debt-alert, metrics-dashboard, drift-monitor | Mixed |
|
|
49
|
+
| sdd_init | specky-phase-gate, specky-auto-checkpoint | Blocking + Advisory |
|
|
50
|
+
| sdd_write_spec, sdd_turnkey_spec | specky-phase-gate, specky-spec-quality, specky-ears-validator, specky-lgtm-gate, specky-spec-sync, specky-auto-checkpoint | Mixed |
|
|
51
|
+
| sdd_write_design | specky-phase-gate, specky-spec-sync, specky-lgtm-gate, specky-auto-checkpoint | Mixed |
|
|
52
|
+
| sdd_write_tasks | specky-phase-gate, specky-task-tracer, specky-lgtm-gate, specky-spec-sync, specky-auto-checkpoint | Mixed |
|
|
53
|
+
| sdd_implement, sdd_generate_tests | specky-spec-sync, specky-auto-checkpoint | Advisory |
|
|
54
|
+
| sdd_verify_tests, sdd_verify_tasks | specky-phase-gate, specky-drift-monitor | Mixed |
|
|
55
|
+
| sdd_run_analysis, sdd_cross_analyze | specky-phase-gate, specky-cognitive-debt-alert, specky-metrics-dashboard, specky-drift-monitor | Mixed |
|
|
56
56
|
|
|
57
57
|
## LGTM Gate Protocol
|
|
58
58
|
|
|
59
59
|
Phases 2 (Specify), 4 (Design), and 5 (Tasks) require human LGTM before advancing:
|
|
60
60
|
|
|
61
61
|
1. Phase agent completes and writes artifact
|
|
62
|
-
2. lgtm-gate.sh runs → prints artifact summary
|
|
62
|
+
2. specky-lgtm-gate.sh runs → prints artifact summary
|
|
63
63
|
3. Orchestrator asks: "Review [ARTIFACT]. Reply 'LGTM' to proceed."
|
|
64
64
|
4. If LGTM → call sdd_advance_phase → next agent
|
|
65
65
|
5. If feedback → route back to phase agent for revision
|
|
@@ -79,7 +79,7 @@ Phases 2 (Specify), 4 (Design), and 5 (Tasks) require human LGTM before advancin
|
|
|
79
79
|
|
|
80
80
|
Before calling sdd_advance_phase, verify:
|
|
81
81
|
1. ✅ Required artifact exists (PHASE_REQUIRED_FILES)
|
|
82
|
-
2. ✅ Artifact has minimum quality (phase-gate.sh passed)
|
|
82
|
+
2. ✅ Artifact has minimum quality (specky-phase-gate.sh passed)
|
|
83
83
|
3. ✅ LGTM received (if phase 2, 4, or 5)
|
|
84
84
|
4. ✅ Branch matches expectations
|
|
85
85
|
5. ✅ Checkpoint created (sdd_checkpoint)
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: release-engineer
|
|
2
|
+
name: specky-release-engineer
|
|
3
3
|
description: "This skill should be used when the user asks to 'prepare release', 'create PR', 'generate documentation', 'run release gates', or needs guidance on Phase 9 release. Also trigger on 'sdd release', 'blocking gates', 'security scan', 'release gate', or 'export work items'."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -33,11 +33,11 @@ Missing prerequisites block release. Run `/specky:check-gates` to validate.
|
|
|
33
33
|
|
|
34
34
|
Two sequential blocking gates must pass before release:
|
|
35
35
|
|
|
36
|
-
### Gate 1: Security Gate (security-scan.sh)
|
|
36
|
+
### Gate 1: Security Gate (specky-security-scan.sh)
|
|
37
37
|
|
|
38
38
|
Execute security scanning:
|
|
39
39
|
```bash
|
|
40
|
-
./scripts/security-scan.sh --full
|
|
40
|
+
./scripts/specky-security-scan.sh --full
|
|
41
41
|
```
|
|
42
42
|
|
|
43
43
|
Checks performed:
|
|
@@ -56,11 +56,11 @@ Pass criteria:
|
|
|
56
56
|
|
|
57
57
|
Fail items block release completely.
|
|
58
58
|
|
|
59
|
-
### Gate 2: Release Gate (release-gate.sh)
|
|
59
|
+
### Gate 2: Release Gate (specky-release-gate.sh)
|
|
60
60
|
|
|
61
61
|
Execute final release checklist:
|
|
62
62
|
```bash
|
|
63
|
-
./scripts/release-gate.sh --version=X.Y.Z
|
|
63
|
+
./scripts/specky-release-gate.sh --version=X.Y.Z
|
|
64
64
|
```
|
|
65
65
|
|
|
66
66
|
Verifies:
|
|
@@ -260,7 +260,7 @@ Generate from commit history, SPECIFICATION.md, and VERIFICATION.md:
|
|
|
260
260
|
|
|
261
261
|
```
|
|
262
262
|
/specky:release --version=X.Y.Z # Full release workflow
|
|
263
|
-
/specky:release --security-scan # Run security gate only
|
|
263
|
+
/specky:release --specky-security-scan # Run security gate only
|
|
264
264
|
/specky:release --generate-docs # Generate docs only
|
|
265
265
|
/specky:release --create-pr --no-merge # Create PR, don't merge
|
|
266
266
|
/specky:release --export-items # Export to project mgmt
|
|
@@ -290,4 +290,4 @@ If post-release issues detected:
|
|
|
290
290
|
|
|
291
291
|
## Companion Agent
|
|
292
292
|
|
|
293
|
-
**@release-engineer** — Phase 9 agent that runs blocking gates and calls these tools. Load this skill as first step.
|
|
293
|
+
**@specky-release-engineer** — Phase 9 agent that runs blocking gates and calls these tools. Load this skill as first step.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: research-analyst
|
|
2
|
+
name: specky-research-analyst
|
|
3
3
|
description: "This skill should be used when the user asks to 'research codebase', 'scan tech stack', 'import documents', 'discovery questions', or needs guidance on Phase 1 research. Also trigger on 'sdd research', 'brownfield scan', 'import transcript', or 'check ecosystem'."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -283,4 +283,4 @@ Structure the research artifact as:
|
|
|
283
283
|
|
|
284
284
|
## Companion Agent
|
|
285
285
|
|
|
286
|
-
**@research-analyst** — Phase 1 agent that calls these tools to build the knowledge baseline. Load this skill as first step.
|
|
286
|
+
**@specky-research-analyst** — Phase 1 agent that calls these tools to build the knowledge baseline. Load this skill as first step.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: sdd-markdown-standard
|
|
2
|
+
name: specky-sdd-markdown-standard
|
|
3
3
|
description: "This skill should be used when generating or formatting SDD artifacts (CONSTITUTION.md, SPECIFICATION.md, DESIGN.md, TASKS.md, VERIFICATION.md, ANALYSIS.md). Also trigger on 'sdd markdown', 'artifact format', or 'spec formatting'."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -279,4 +279,4 @@ Run markdown linter: `markdownlint sdd-artifacts/`
|
|
|
279
279
|
|
|
280
280
|
## Companion Agent
|
|
281
281
|
|
|
282
|
-
**@requirements-engineer** — Pre-pipeline agent that produces FRD/NFRD documents using this formatting standard. Load this skill as first step.
|
|
282
|
+
**@specky-requirements-engineer** — Pre-pipeline agent that produces FRD/NFRD documents using this formatting standard. Load this skill as first step.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: sdd-pipeline
|
|
2
|
+
name: specky-sdd-pipeline
|
|
3
3
|
description: "This skill should be used when the user asks about 'spec-driven development', 'SDD pipeline', 'specky', 'pipeline phases', 'EARS notation', 'requirements engineering', 'model routing', or needs guidance on the 10-phase SDD workflow (Init → Discover → Specify → Clarify → Design → Tasks → Analyze → Implement → Verify → Release). Also trigger on 'spec this', 'plan this feature', 'break into tasks', 'quality gate', 'constitution', or 'spec sync'."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -79,22 +79,22 @@ For Phase 7 (Implementation), prioritize fast feedback loops over long reasoning
|
|
|
79
79
|
The pipeline includes 16 automation hooks for customization:
|
|
80
80
|
|
|
81
81
|
**Blocking Hooks** (workflow stops if hook fails — exit code 2):
|
|
82
|
-
1. `artifact-validator` — Pre-tool: blocks if required artifacts missing
|
|
83
|
-
2. `phase-gate` — Post-tool: blocks if output artifact wasn't created
|
|
84
|
-
3. `security-scan` — Pre-release: blocks if hardcoded secrets detected
|
|
85
|
-
4. `release-gate` — Pre-release: blocks if gate conditions not met
|
|
82
|
+
1. `specky-artifact-validator` — Pre-tool: blocks if required artifacts missing
|
|
83
|
+
2. `specky-phase-gate` — Post-tool: blocks if output artifact wasn't created
|
|
84
|
+
3. `specky-security-scan` — Pre-release: blocks if hardcoded secrets detected
|
|
85
|
+
4. `specky-release-gate` — Pre-release: blocks if gate conditions not met
|
|
86
86
|
|
|
87
87
|
**Advisory Hooks** (workflow continues; failures logged):
|
|
88
|
-
1. `branch-validator` — Pre-tool: warns if wrong branch for phase
|
|
89
|
-
2. `spec-sync` — Post-tool: checks spec-code drift
|
|
90
|
-
3. `auto-checkpoint` — Post-tool: suggests checkpoint after artifact changes
|
|
91
|
-
4. `spec-quality` — Post-spec: validates specification quality
|
|
92
|
-
5. `task-tracer` — Post-tasks: traces task dependencies
|
|
93
|
-
6. `ears-validator` — Post-spec: validates EARS notation patterns
|
|
94
|
-
7. `lgtm-gate` — Post-spec/design/tasks: pauses for human LGTM
|
|
95
|
-
8. `drift-monitor` — Post-verify/review: monitors specification drift
|
|
96
|
-
9. `cognitive-debt-alert` — Post-analysis: flags cognitive debt metrics
|
|
97
|
-
10. `metrics-dashboard` — Post-analysis: updates metrics dashboard
|
|
88
|
+
1. `specky-branch-validator` — Pre-tool: warns if wrong branch for phase
|
|
89
|
+
2. `specky-spec-sync` — Post-tool: checks spec-code drift
|
|
90
|
+
3. `specky-auto-checkpoint` — Post-tool: suggests checkpoint after artifact changes
|
|
91
|
+
4. `specky-spec-quality` — Post-spec: validates specification quality
|
|
92
|
+
5. `specky-task-tracer` — Post-tasks: traces task dependencies
|
|
93
|
+
6. `specky-ears-validator` — Post-spec: validates EARS notation patterns
|
|
94
|
+
7. `specky-lgtm-gate` — Post-spec/design/tasks: pauses for human LGTM
|
|
95
|
+
8. `specky-drift-monitor` — Post-verify/review: monitors specification drift
|
|
96
|
+
9. `specky-cognitive-debt-alert` — Post-analysis: flags cognitive debt metrics
|
|
97
|
+
10. `specky-metrics-dashboard` — Post-analysis: updates metrics dashboard
|
|
98
98
|
|
|
99
99
|
Hooks are configured in `sdd-hooks.json` with PreToolUse and PostToolUse matchers.
|
|
100
100
|
|
|
@@ -127,9 +127,9 @@ Hooks are configured in `sdd-hooks.json` with PreToolUse and PostToolUse matcher
|
|
|
127
127
|
**Agent-based:**
|
|
128
128
|
```
|
|
129
129
|
@specky-orchestrator (end-to-end pipeline coordinator)
|
|
130
|
-
@sdd-init feature-name (Phase 0 — initialize feature)
|
|
131
|
-
@spec-engineer (Phase 2 — write SPECIFICATION.md)
|
|
132
|
-
@implementer (Phase 7 — scaffold code + tests)
|
|
130
|
+
@specky-sdd-init feature-name (Phase 0 — initialize feature)
|
|
131
|
+
@specky-spec-engineer (Phase 2 — write SPECIFICATION.md)
|
|
132
|
+
@specky-implementer (Phase 7 — scaffold code + tests)
|
|
133
133
|
```
|
|
134
134
|
|
|
135
135
|
See [copilot-instructions.instructions.md](../../instructions/copilot-instructions.instructions.md) for the full agent catalog.
|
|
@@ -179,7 +179,7 @@ spec/003-notifs ──→ ↑
|
|
|
179
179
|
git checkout develop
|
|
180
180
|
git pull origin develop
|
|
181
181
|
git checkout -b spec/001-user-authentication
|
|
182
|
-
# Run @sdd-init / /specky-greenfield
|
|
182
|
+
# Run @specky-sdd-init / /specky-greenfield
|
|
183
183
|
```
|
|
184
184
|
|
|
185
185
|
**After Phase 7 passes:**
|
|
@@ -195,7 +195,7 @@ git push origin develop
|
|
|
195
195
|
git checkout stage
|
|
196
196
|
git merge --no-ff develop
|
|
197
197
|
git push origin stage
|
|
198
|
-
# Run @release-engineer for blocking gates
|
|
198
|
+
# Run @specky-release-engineer for blocking gates
|
|
199
199
|
```
|
|
200
200
|
|
|
201
201
|
**Releasing to production:**
|
|
@@ -228,13 +228,13 @@ git push origin main --tags
|
|
|
228
228
|
|-------|-------|-------------------|
|
|
229
229
|
| Pre | @specky-onboarding | Fast |
|
|
230
230
|
| All | @specky-orchestrator | Balanced |
|
|
231
|
-
| 0 | @sdd-init | Fast |
|
|
232
|
-
| 1 | @research-analyst | Balanced |
|
|
233
|
-
| 2 | @spec-engineer | Reasoning-focused |
|
|
234
|
-
| 3 | @sdd-clarify | Reasoning-focused |
|
|
235
|
-
| 4 | @design-architect | Reasoning-focused |
|
|
236
|
-
| 5 | @task-planner | Balanced |
|
|
237
|
-
| 6 | @quality-reviewer | Balanced |
|
|
238
|
-
| 7 | @implementer | Balanced |
|
|
239
|
-
| 8 | @test-verifier | Reasoning-focused |
|
|
240
|
-
| 9 | @release-engineer | Fast |
|
|
231
|
+
| 0 | @specky-sdd-init | Fast |
|
|
232
|
+
| 1 | @specky-research-analyst | Balanced |
|
|
233
|
+
| 2 | @specky-spec-engineer | Reasoning-focused |
|
|
234
|
+
| 3 | @specky-sdd-clarify | Reasoning-focused |
|
|
235
|
+
| 4 | @specky-design-architect | Reasoning-focused |
|
|
236
|
+
| 5 | @specky-task-planner | Balanced |
|
|
237
|
+
| 6 | @specky-quality-reviewer | Balanced |
|
|
238
|
+
| 7 | @specky-implementer | Balanced |
|
|
239
|
+
| 8 | @specky-test-verifier | Reasoning-focused |
|
|
240
|
+
| 9 | @specky-release-engineer | Fast |
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: test-verifier
|
|
2
|
+
name: specky-test-verifier
|
|
3
3
|
description: "This skill should be used when the user asks to 'verify tests', 'check coverage', 'detect phantom completions', 'check spec drift', or needs guidance on Phase 8 verification. Also trigger on 'sdd test', 'test traceability', 'verification report', or 'gate criteria'."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -214,4 +214,4 @@ Produce standardized verification artifact:
|
|
|
214
214
|
|
|
215
215
|
## Companion Agent
|
|
216
216
|
|
|
217
|
-
**@test-verifier** — Phase 8 agent that calls these tools in sequence. Load this skill as first step.
|
|
217
|
+
**@specky-test-verifier** — Phase 8 agent that calls these tools in sequence. Load this skill as first step.
|
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [3.8.0] - 2026-07-07
|
|
11
|
+
|
|
12
|
+
Wave 1 multi-harness APM targets (Cursor, OpenCode, Agent Skills) plus a multi-feature phase-advancement fix.
|
|
13
|
+
|
|
14
|
+
### Added
|
|
15
|
+
|
|
16
|
+
- Wave 1 APM target support for `cursor`, `opencode`, and `agent-skills`, including target-native compiler registration, install paths, MCP config writers, and regression coverage.
|
|
17
|
+
- `specky install --target=<targets>` as the canonical APM-aligned install selector. The legacy `--ide` flag remains as a deprecated alias for backward compatibility.
|
|
18
|
+
- `specky compile --target=<targets>` for compiling instruction primitives into root context files (`.github/copilot-instructions.md`, `CLAUDE.md`, or `AGENTS.md`).
|
|
19
|
+
- `.markdownlint.json` configuration codifying the repository's Markdown conventions (Keep a Changelog sibling headings, intentional inline HTML in `README.md`) so documentation lint is clean.
|
|
20
|
+
- Regression test verifying that pre-existing Claude hooks in `.claude/settings.json` are removed when Copilot is installed into the same workspace, while non-hook user settings are preserved.
|
|
21
|
+
|
|
22
|
+
### Changed
|
|
23
|
+
|
|
24
|
+
- **All APM primitives are now namespaced with a `specky-` prefix** (agents, skills, and hook scripts; prompts already carried the prefix) to avoid collisions with other packages installed in the same workspace. Agent mentions change accordingly (for example `@spec-engineer` is now `@specky-spec-engineer`). The Copilot instruction primitive keeps the reserved `.github/copilot-instructions.md` filename.
|
|
25
|
+
- `specky doctor` now validates installed `targets[]` metadata instead of assuming only Copilot/Claude IDE scopes.
|
|
26
|
+
- Copilot-inclusive installs strip Claude hooks from `.claude/settings.json` even when installing both Copilot and Claude assets, preventing Copilot hook cross-read blocks.
|
|
27
|
+
- APM manifest and policy now use canonical target names and include Cursor/OpenCode target isolation checks.
|
|
28
|
+
|
|
29
|
+
### Fixed
|
|
30
|
+
|
|
31
|
+
- Fixed multi-feature phase advancement so artifact validation uses the requested feature number instead of always validating `state.features[0]`.
|
|
32
|
+
- Confirmed existing diagram persistence and REQ-ID test generation regressions remain covered by passing tests.
|
|
33
|
+
|
|
34
|
+
## [3.7.3] - 2026-07-07
|
|
35
|
+
|
|
36
|
+
APM governance, primitive lockfiles, and enterprise package validation.
|
|
37
|
+
|
|
10
38
|
### Added
|
|
11
39
|
|
|
12
40
|
- APM governance commands: `specky apm validate`, `specky apm lock`, `specky apm verify-lock`, `specky apm policy`, `specky apm audit`, and `specky apm sbom`.
|
|
@@ -481,6 +509,7 @@ default array.
|
|
|
481
509
|
**Regression test (`tests/integration/status-detection.test.ts`):**
|
|
482
510
|
|
|
483
511
|
4 new tests covering:
|
|
512
|
+
|
|
484
513
|
1. Greenfield (no `.specs/`) → features:[] + current_phase:init ✅
|
|
485
514
|
2. Single feature in progress → detected with correct phase/progress ✅
|
|
486
515
|
3. Multiple features → aggregated independently with per-feature state ✅
|
package/README.md
CHANGED
|
@@ -74,10 +74,10 @@ Specky is a **complete AI development toolkit** — not just an MCP server. The
|
|
|
74
74
|
|
|
75
75
|
| Primitive | What it is | Specky includes |
|
|
76
76
|
|-----------|-----------|------------------|
|
|
77
|
-
| **Agents** | Specialized AI personas with defined roles, tools, and guardrails | 13 agents — @specky-orchestrator (full pipeline), @specky-onboarding (wizard), @spec-engineer, @design-architect, @task-planner, @quality-reviewer, and 7 more |
|
|
77
|
+
| **Agents** | Specialized AI personas with defined roles, tools, and guardrails | 13 agents — @specky-orchestrator (full pipeline), @specky-onboarding (wizard), @specky-spec-engineer, @specky-design-architect, @specky-task-planner, @specky-quality-reviewer, and 7 more |
|
|
78
78
|
| **Prompts** | Slash commands that activate the right agent for a task | 22 prompts — `/specky-greenfield`, `/specky-specify`, `/specky-release`, `/specky-orchestrate`, etc. |
|
|
79
79
|
| **Skills** | Domain knowledge files loaded into agent context automatically | 8 skills — SDD pipeline rules, EARS patterns, implementation patterns, test criteria, release gate protocol |
|
|
80
|
-
| **Hooks** | Scripts that run before/after every tool call for validation | 16 hooks — artifact-validator, branch-validator, phase-gate, lgtm-gate, security-scan, etc. |
|
|
80
|
+
| **Hooks** | Scripts that run before/after every tool call for validation | 16 hooks — specky-artifact-validator, specky-branch-validator, specky-phase-gate, specky-lgtm-gate, specky-security-scan, etc. |
|
|
81
81
|
| **MCP Server** | The tool engine that validates, generates, and enforces | 58 tools via Model Context Protocol (the runtime underneath) |
|
|
82
82
|
|
|
83
83
|
### Why not just an MCP server?
|
|
@@ -97,27 +97,30 @@ Specky ships as a single npm package with a unified `specky` CLI. Works on macOS
|
|
|
97
97
|
# 1. Install the CLI globally (once per machine)
|
|
98
98
|
npm install -g specky-sdd@latest
|
|
99
99
|
|
|
100
|
-
# 2. Bootstrap your project — choose your
|
|
100
|
+
# 2. Bootstrap your project — choose your target harness:
|
|
101
101
|
cd your-project
|
|
102
|
-
specky install --
|
|
103
|
-
specky install --
|
|
102
|
+
specky install --target=copilot # VS Code + GitHub Copilot (recommended)
|
|
103
|
+
specky install --target=claude # Claude Code
|
|
104
|
+
specky install --target=cursor # Cursor
|
|
105
|
+
specky install --target=opencode # OpenCode
|
|
106
|
+
specky install --target=agent-skills # Shared .agents/skills bundle
|
|
104
107
|
```
|
|
105
108
|
|
|
106
|
-
> **Important:**
|
|
109
|
+
> **Important:** Prefer `--target=...`. The legacy `--ide` flag still works for `copilot`, `claude`, `both`, and `auto`, but it is deprecated in favor of APM-style targets. If Copilot is installed in a workspace, Specky strips Claude hooks from `.claude/settings.json` to prevent Copilot cross-read blocks. See [docs/INSTALL.md](docs/INSTALL.md) for details.
|
|
107
110
|
|
|
108
111
|
Or per-project (for teams — pins version in `package.json`, run via `npx`):
|
|
109
112
|
|
|
110
113
|
```bash
|
|
111
114
|
cd your-project
|
|
112
115
|
npm install --save-dev specky-sdd@latest
|
|
113
|
-
npx specky install --
|
|
116
|
+
npx specky install --target=copilot
|
|
114
117
|
```
|
|
115
118
|
|
|
116
119
|
The CLI installs 13 agents, 22 prompts, 8 skills, 16 hooks, the MCP server registration (`.mcp.json` + `.vscode/mcp.json`, pinned to the installed version), and pre-authorizes a **least-privilege** set of tools — the Specky MCP tools plus scoped `git`/`npm`/`npx` and file editing. It does **not** pre-authorize arbitrary shell, `rm`, or network access; those still prompt. Run `specky doctor` anytime to validate integrity and config.
|
|
117
120
|
|
|
118
|
-
|
|
121
|
+
Generated assets are platform-native. `specky install --target=copilot` writes GitHub Copilot agents/prompts with VS Code tool names such as `search`, `agent`, and `specky/sdd_get_status`, plus prompt `agent: agent` frontmatter. `specky install --target=claude` writes Claude Code agents/commands with `Read`, `Glob`, `Grep`, `Task`, and `mcp__specky__sdd_get_status`, with Copilot-only prompt metadata removed. Wave 1 APM targets also include Cursor, OpenCode, and the neutral `agent-skills` target.
|
|
119
122
|
|
|
120
|
-
Specky also has an APM governance layer for enterprise package control. `apm.yml` declares the package primitives, targets, and MCP runtime; `apm.lock.yaml` pins primitive hashes; `apm-policy.yml` enforces MCP and tool-name policy. Maintainers and CI can run `specky apm validate`, `specky apm policy`, `specky apm verify-lock`, and `specky apm sbom` before publishing or installing.
|
|
123
|
+
Specky also has an APM governance layer for enterprise package control. `apm.yml` declares the package primitives, targets, and MCP runtime; `apm.lock.yaml` pins primitive hashes; `apm-policy.yml` enforces MCP and tool-name policy. Maintainers and CI can run `specky apm validate`, `specky apm policy`, `specky apm verify-lock`, and `specky apm sbom` before publishing or installing. See [Uso do APM pelo Specky](docs/APM-USAGE.md) for the detailed model, including why APM is not a runtime proxy and why users do not need to install the Microsoft APM CLI.
|
|
121
124
|
|
|
122
125
|
Full walkthroughs per OS, offline install, and CLI reference: [docs/INSTALL.md](docs/INSTALL.md) · [docs/CLI.md](docs/CLI.md).
|
|
123
126
|
|
|
@@ -169,15 +172,15 @@ Specky adds a **deterministic engine** between your intent and your code:
|
|
|
169
172
|
| Any input (PDF, DOCX, PPTX, transcript, Figma) to spec | 58 MCP tools handle all input formats |
|
|
170
173
|
| EARS validation (programmatic, not AI guessing) | 6 patterns enforced at schema level |
|
|
171
174
|
| Enforced pipeline (not suggestions) | 10 phases with actual gates that block advancement |
|
|
172
|
-
| Pre/post hooks on every phase | artifact-validator, branch-validator, phase-gate, lgtm-gate |
|
|
175
|
+
| Pre/post hooks on every phase | specky-artifact-validator, specky-branch-validator, specky-phase-gate, specky-lgtm-gate |
|
|
173
176
|
| 17 diagram types generated automatically | C4 (4 levels), sequence, ER, activity, use case, DFD, deployment, network |
|
|
174
177
|
| Infrastructure as Code | Terraform, Bicep, Dockerfile from DESIGN.md |
|
|
175
178
|
| Work item export | GitHub Issues, Azure Boards, Jira via MCP-to-MCP routing |
|
|
176
179
|
| 6 compliance frameworks | HIPAA, SOC2, GDPR, PCI-DSS, ISO 27001 built-in |
|
|
177
180
|
| Cross-artifact traceability | Requirement to design to task to test to code |
|
|
178
181
|
| Gitflow-SDD branching | spec/NNN → develop → stage → main |
|
|
179
|
-
| Unified CLI distribution | `npm install -g specky-sdd && specky install --
|
|
180
|
-
|
|
|
182
|
+
| Unified CLI distribution | `npm install -g specky-sdd && specky install --target=copilot` — one binary, multi-OS (macOS/Linux/Windows/WSL) |
|
|
183
|
+
| First-class harness targets | VS Code + Copilot, Claude Code, Cursor, OpenCode, plus shared `.agents/skills` |
|
|
181
184
|
| Zero outbound calls from the MCP server | Air-gap friendly; code never leaves your machine. The CLI's once-daily update check is [opt-out](#staying-up-to-date) |
|
|
182
185
|
| MIT open source | Fork it, extend it, audit it. No vendor lock, no seat pricing |
|
|
183
186
|
|
|
@@ -187,7 +190,7 @@ Specky adds a **deterministic engine** between your intent and your code:
|
|
|
187
190
|
### Prerequisites
|
|
188
191
|
|
|
189
192
|
- **Node.js 20+**: [Download here](https://nodejs.org/) (Node 20 LTS recommended)
|
|
190
|
-
- **An AI IDE**: VS Code with Copilot, Claude Code, Cursor, or
|
|
193
|
+
- **An AI IDE or agent CLI**: VS Code with Copilot, Claude Code, Cursor, or OpenCode
|
|
191
194
|
|
|
192
195
|
### Install the Plugin
|
|
193
196
|
|
|
@@ -884,7 +887,7 @@ Together they form the **SDD layer** of the GitHub + Microsoft enterprise platfo
|
|
|
884
887
|
}
|
|
885
888
|
```
|
|
886
889
|
|
|
887
|
-
> **Note:** This example assumes Specky is installed via `specky install --
|
|
890
|
+
> **Note:** This example assumes Specky is installed via `specky install --target=copilot` (after `npm install -g specky-sdd@latest`). See [Quick Start](#quick-start) for details.
|
|
888
891
|
|
|
889
892
|
## Project Configuration
|
|
890
893
|
|
|
@@ -1030,7 +1033,7 @@ Specky is 100% open source (MIT) — enterprise mode is just an opt-in configura
|
|
|
1030
1033
|
- **No `eval()` or dynamic code execution** — template rendering is string replacement only
|
|
1031
1034
|
- **Path traversal prevention**: FileManager sanitizes all paths, blocks `..` sequences
|
|
1032
1035
|
- **Zod `.strict()` validation** — every tool input is schema-validated; unknown fields rejected
|
|
1033
|
-
- **security-scan hook** blocks commits containing hardcoded secrets (exit code 2)
|
|
1036
|
+
- **specky-security-scan hook** blocks commits containing hardcoded secrets (exit code 2)
|
|
1034
1037
|
- See [SECURITY.md](SECURITY.md) for full OWASP Top 10 coverage
|
|
1035
1038
|
- See [docs/SYSTEM-DESIGN.md](docs/SYSTEM-DESIGN.md) for complete security architecture
|
|
1036
1039
|
- See [docs/ENTERPRISE-CONTROLS.md](docs/ENTERPRISE-CONTROLS.md) for RBAC, audit trail, and tool-enforcement controls
|
|
@@ -1050,7 +1053,7 @@ When using Specky, follow these practices to protect your data:
|
|
|
1050
1053
|
| **Protect the `.specs/` directory** | Contains your specification artifacts (architecture, API contracts, business logic) | Add `.specs/` to `.gitignore` if specs contain sensitive IP, or use a private repo |
|
|
1051
1054
|
| **Protect checkpoints** | `.specs/{feature}/.checkpoints/` stores full artifact snapshots | Same as above — treat checkpoints like source code |
|
|
1052
1055
|
| **Review auto-generated specs before committing** | Turnkey and auto-pipeline generate from natural language — may capture sensitive details | Review SPECIFICATION.md and DESIGN.md before `git add` |
|
|
1053
|
-
| **Keep the security-scan hook enabled** | Detects API keys, passwords, tokens in staged files | Comes pre-configured; don't disable `.claude/hooks/security-scan.sh` |
|
|
1056
|
+
| **Keep the specky-security-scan hook enabled** | Detects API keys, passwords, tokens in staged files | Comes pre-configured; don't disable `.claude/hooks/specky-security-scan.sh` |
|
|
1054
1057
|
| **Use environment variables for secrets** | Specky never stores credentials, but your specs might reference them | Write `$DATABASE_URL` in specs, never the actual connection string |
|
|
1055
1058
|
| **Run `npm audit` regularly** | Catches dependency vulnerabilities | `npm audit` — CI runs this automatically on every PR |
|
|
1056
1059
|
|
|
@@ -1120,9 +1123,9 @@ npm run dev
|
|
|
1120
1123
|
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}' | node dist/index.js 2>/dev/null
|
|
1121
1124
|
|
|
1122
1125
|
# Run the published image from GHCR (multi-arch: linux/amd64 + linux/arm64)
|
|
1123
|
-
docker pull ghcr.io/paulasilvatech/specky:latest # or pin a release: :3.
|
|
1126
|
+
docker pull ghcr.io/paulasilvatech/specky:latest # or pin a release: :3.8.0
|
|
1124
1127
|
docker run --rm -p 3200:3200 ghcr.io/paulasilvatech/specky:latest
|
|
1125
|
-
curl http://localhost:3200/health # -> {"status":"ok","version":"3.
|
|
1128
|
+
curl http://localhost:3200/health # -> {"status":"ok","version":"3.8.0"}
|
|
1126
1129
|
|
|
1127
1130
|
# Or build and run locally from source
|
|
1128
1131
|
docker build -t specky-sdd:dev .
|
|
@@ -1144,7 +1147,7 @@ deployments (enterprise profile, token auth, TLS proxy, private packages) see
|
|
|
1144
1147
|
|------------|--------|
|
|
1145
1148
|
| 58 MCP tools across 10 enforced pipeline phases | Stable |
|
|
1146
1149
|
| Unified `specky` CLI: install, doctor, status, upgrade, hooks, serve | Stable |
|
|
1147
|
-
|
|
|
1150
|
+
| Target-specific install: `--target=copilot`, `claude`, `cursor`, `opencode`, or `agent-skills` | Stable |
|
|
1148
1151
|
| Copilot-safe hook manifests (no lifecycle event cross-read) | Stable |
|
|
1149
1152
|
| Phase validation on every tool with gate enforcement | Stable |
|
|
1150
1153
|
| 17 software engineering diagram types (C4, sequence, ER, DFD, deployment, network) | Stable |
|
package/apm-policy.yml
CHANGED