specky-sdd 3.7.0 → 3.7.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/.apm/agents/design-architect.agent.md +1 -1
- package/.apm/agents/implementer.agent.md +1 -1
- package/.apm/agents/quality-reviewer.agent.md +1 -1
- package/.apm/agents/release-engineer.agent.md +1 -1
- package/.apm/agents/research-analyst.agent.md +1 -1
- package/.apm/agents/sdd-clarify.agent.md +1 -1
- package/.apm/agents/sdd-init.agent.md +7 -7
- package/.apm/agents/spec-engineer.agent.md +1 -1
- package/.apm/agents/specky-onboarding.agent.md +1 -1
- package/.apm/agents/specky-orchestrator.agent.md +3 -3
- package/.apm/agents/task-planner.agent.md +1 -1
- package/.apm/agents/test-verifier.agent.md +5 -5
- package/.apm/hooks/scripts/branch-validator.sh +4 -4
- package/.apm/hooks/scripts/drift-monitor.sh +2 -2
- package/.apm/hooks/scripts/phase-gate.sh +1 -1
- package/.apm/hooks/scripts/pipeline-guard.sh +1 -1
- package/.apm/hooks/scripts/session-banner.sh +6 -6
- package/.apm/instructions/copilot-instructions.instructions.md +4 -0
- package/.apm/prompts/specky-api.prompt.md +2 -0
- package/.apm/prompts/specky-brownfield.prompt.md +2 -0
- package/.apm/prompts/specky-check-drift.prompt.md +2 -0
- package/.apm/prompts/specky-clarify.prompt.md +2 -0
- package/.apm/prompts/specky-debug-hook.prompt.md +2 -0
- package/.apm/prompts/specky-deploy.prompt.md +2 -0
- package/.apm/prompts/specky-design.prompt.md +2 -0
- package/.apm/prompts/specky-from-figma.prompt.md +2 -0
- package/.apm/prompts/specky-from-meeting.prompt.md +2 -0
- package/.apm/prompts/specky-greenfield.prompt.md +2 -0
- package/.apm/prompts/specky-implement.prompt.md +2 -0
- package/.apm/prompts/specky-migration.prompt.md +2 -0
- package/.apm/prompts/specky-onboarding.prompt.md +1 -0
- package/.apm/prompts/specky-orchestrate.prompt.md +2 -0
- package/.apm/prompts/specky-pipeline-status.prompt.md +1 -0
- package/.apm/prompts/specky-release.prompt.md +2 -0
- package/.apm/prompts/specky-research.prompt.md +2 -0
- package/.apm/prompts/specky-reset-phase.prompt.md +19 -3
- package/.apm/prompts/specky-resolve-conflict.prompt.md +2 -0
- package/.apm/prompts/specky-specify.prompt.md +2 -0
- package/.apm/prompts/specky-tasks.prompt.md +2 -0
- package/.apm/prompts/specky-verify.prompt.md +2 -0
- package/.apm/skills/implementer/SKILL.md +1 -1
- package/.apm/skills/release-engineer/SKILL.md +1 -1
- package/.apm/skills/research-analyst/SKILL.md +1 -1
- package/.apm/skills/sdd-markdown-standard/SKILL.md +1 -1
- package/.apm/skills/sdd-pipeline/SKILL.md +1 -1
- package/.apm/skills/specky-onboarding/SKILL.md +1 -1
- package/.apm/skills/specky-orchestrator/SKILL.md +1 -1
- package/.apm/skills/test-verifier/SKILL.md +1 -1
- package/dist/cli/lib/asset-copier.d.ts.map +1 -1
- package/dist/cli/lib/asset-copier.js +20 -9
- package/dist/cli/lib/asset-copier.js.map +1 -1
- package/dist/copilot-hooks.json +0 -15
- package/dist/services/rbac-engine.js +1 -1
- package/dist/services/rbac-engine.js.map +1 -1
- package/package.json +4 -3
|
@@ -3,7 +3,7 @@ name: design-architect
|
|
|
3
3
|
description: Phase 4 agent that writes DESIGN.md with system architecture, API contracts, data models, and Mermaid diagrams. All design decisions trace to specification requirements.
|
|
4
4
|
|
|
5
5
|
color: blue
|
|
6
|
-
tools: ["Read", "Glob", "Grep", "
|
|
6
|
+
tools: ["Read", "Glob", "Grep", "sdd_write_design", "sdd_generate_all_diagrams", "sdd_generate_diagram"]
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<example>
|
|
@@ -3,7 +3,7 @@ name: implementer
|
|
|
3
3
|
description: Use this agent to generate implementation plans, quality checklists, test stubs, and infrastructure scaffolding from specifications.
|
|
4
4
|
|
|
5
5
|
color: blue
|
|
6
|
-
tools: ["Read", "Glob", "Grep", "
|
|
6
|
+
tools: ["Read", "Glob", "Grep", "sdd_implement", "sdd_checklist", "sdd_generate_tests", "sdd_generate_pbt", "sdd_generate_iac", "sdd_generate_dockerfile", "sdd_generate_devcontainer", "sdd_setup_local_env", "sdd_setup_codespaces"]
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<example>
|
|
@@ -3,7 +3,7 @@ name: quality-reviewer
|
|
|
3
3
|
description: Phase 6 agent that runs completeness audit, cross-analysis, and compliance checks. Produces ANALYSIS.md with gate decision (APPROVE/CONDITIONAL/REJECT) and COMPLIANCE.md.
|
|
4
4
|
|
|
5
5
|
color: red
|
|
6
|
-
tools: ["Read", "Glob", "Grep", "
|
|
6
|
+
tools: ["Read", "Glob", "Grep", "sdd_run_analysis", "sdd_cross_analyze", "sdd_compliance_check", "sdd_check_sync", "sdd_metrics"]
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<example>
|
|
@@ -3,7 +3,7 @@ name: release-engineer
|
|
|
3
3
|
description: Use this agent to prepare features for release — run blocking gates, generate documentation, create PR, and export work items.
|
|
4
4
|
|
|
5
5
|
color: green
|
|
6
|
-
tools: ["Read", "Glob", "Grep", "
|
|
6
|
+
tools: ["Read", "Glob", "Grep", "sdd_create_pr", "sdd_generate_all_docs", "sdd_generate_docs", "sdd_generate_api_docs", "sdd_generate_runbook", "sdd_generate_onboarding", "sdd_export_work_items"]
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<example>
|
|
@@ -3,7 +3,7 @@ name: research-analyst
|
|
|
3
3
|
description: Use this agent to gather technical context before specification. Scans codebases, imports documents, and produces RESEARCH.md.
|
|
4
4
|
|
|
5
5
|
color: cyan
|
|
6
|
-
tools: ["Read", "Glob", "Grep", "
|
|
6
|
+
tools: ["Read", "Glob", "Grep", "WebFetch", "WebSearch", "sdd_scan_codebase", "sdd_discover", "sdd_research", "sdd_import_document", "sdd_import_transcript", "sdd_check_ecosystem"]
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<example>
|
|
@@ -3,7 +3,7 @@ name: sdd-clarify
|
|
|
3
3
|
description: Use this agent to find and resolve ambiguities in requirements, validate EARS patterns, and produce a clarification log.
|
|
4
4
|
|
|
5
5
|
color: yellow
|
|
6
|
-
tools: ["Read", "Glob", "Grep", "
|
|
6
|
+
tools: ["Read", "Glob", "Grep", "sdd_clarify", "sdd_validate_ears", "sdd_turnkey_spec"]
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<example>
|
|
@@ -3,7 +3,7 @@ name: sdd-init
|
|
|
3
3
|
description: Use this agent to initialize the SDD pipeline for a new feature. Creates the .specs/ directory structure and CONSTITUTION.md.
|
|
4
4
|
|
|
5
5
|
color: green
|
|
6
|
-
tools: ["Read", "Glob", "Grep", "
|
|
6
|
+
tools: ["Read", "Glob", "Grep", "sdd_init", "sdd_scan_codebase", "sdd_create_branch"]
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<example>
|
|
@@ -29,12 +29,12 @@ You are the SDD pipeline initializer. Your only job is to scaffold the spec pipe
|
|
|
29
29
|
**Responsibilities:**
|
|
30
30
|
1. Read the `sdd-pipeline` SKILL.md for pipeline context and phase rules
|
|
31
31
|
2. Gather feature name, project type (greenfield/brownfield/migration/API), and constraints
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
32
|
+
3. Read existing FRD/NFRD from `docs/requirements/` if they exist
|
|
33
|
+
4. Call `sdd_init` to create `.specs/NNN-feature/` with CONSTITUTION.md and .sdd-state.json
|
|
34
|
+
5. Call `sdd_create_branch` to create `spec/NNN-feature-name` from `develop` for all pipeline work
|
|
35
|
+
6. For brownfield projects, call `sdd_scan_codebase` to detect the tech stack
|
|
36
|
+
7. Present CONSTITUTION.md to the developer for review
|
|
37
|
+
8. Suggest handoff to `@research-analyst`
|
|
38
38
|
|
|
39
39
|
**Hard rules:**
|
|
40
40
|
- Never assign your own sequence number (NNN) — let sdd_init handle it
|
|
@@ -3,7 +3,7 @@ name: spec-engineer
|
|
|
3
3
|
description: Phase 2 agent that writes SPECIFICATION.md using EARS notation. Every requirement gets a unique REQ-ID, one of the 6 EARS patterns, and measurable acceptance criteria.
|
|
4
4
|
|
|
5
5
|
color: magenta
|
|
6
|
-
tools: ["Read", "Glob", "Grep", "
|
|
6
|
+
tools: ["Read", "Glob", "Grep", "sdd_write_spec", "sdd_turnkey_spec", "sdd_validate_ears", "sdd_figma_to_spec"]
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<example>
|
|
@@ -3,7 +3,7 @@ name: specky-onboarding
|
|
|
3
3
|
description: Default entry point and interactive wizard for Specky SDD. Detects project context, explains the plugin, guides through project type selection, work mode, and branch setup. Triggered when user says "specky" without specifics.
|
|
4
4
|
|
|
5
5
|
color: green
|
|
6
|
-
tools: ["Read", "Glob", "Grep", "
|
|
6
|
+
tools: ["Read", "Glob", "Grep", "sdd_get_status", "sdd_scan_codebase", "sdd_check_ecosystem", "sdd_context_status", "sdd_auto_pipeline", "sdd_batch_import", "sdd_create_branch", "sdd_discover", "sdd_figma_to_spec", "sdd_import_document", "sdd_import_transcript"]
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<example>
|
|
@@ -3,7 +3,7 @@ name: specky-orchestrator
|
|
|
3
3
|
description: Master agent that coordinates the full SDD 10-phase pipeline end-to-end, routing to phase agents, validating artifacts between phases, and enforcing hooks and LGTM gates.
|
|
4
4
|
|
|
5
5
|
color: purple
|
|
6
|
-
tools: ["Read", "Glob", "Grep", "
|
|
6
|
+
tools: ["Read", "Glob", "Grep", "Task", "sdd_get_status", "sdd_checkpoint", "sdd_advance_phase", "sdd_validate_ears", "sdd_model_routing", "sdd_context_status"]
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<example>
|
|
@@ -48,8 +48,8 @@ You are the Specky SDD pipeline orchestrator. You coordinate the full 10-phase p
|
|
|
48
48
|
- Phase 9 → @release-engineer
|
|
49
49
|
5. After agent completes: verify output artifact was created
|
|
50
50
|
6. If LGTM phase (2, 4, 5): pause and ask human "LGTM?" before advancing
|
|
51
|
-
7. Call
|
|
52
|
-
8. Call
|
|
51
|
+
7. Call sdd_checkpoint → snapshot the approved phase before transition
|
|
52
|
+
8. Call sdd_advance_phase → transition the state machine to the next phase
|
|
53
53
|
9. Route to next phase agent or stop if pipeline complete
|
|
54
54
|
|
|
55
55
|
**Hard rules:**
|
|
@@ -3,7 +3,7 @@ name: task-planner
|
|
|
3
3
|
description: Phase 5 agent that writes TASKS.md with dependency-resolved task sequences, REQ-ID traceability, complexity estimates, and parallel markers. Also generates CHECKLIST.md.
|
|
4
4
|
|
|
5
5
|
color: orange
|
|
6
|
-
tools: ["Read", "Glob", "Grep", "
|
|
6
|
+
tools: ["Read", "Glob", "Grep", "sdd_write_tasks", "sdd_checklist"]
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<example>
|
|
@@ -3,7 +3,7 @@ name: test-verifier
|
|
|
3
3
|
description: Use this agent to verify test coverage, detect phantom completions, and check spec-code drift.
|
|
4
4
|
|
|
5
5
|
color: yellow
|
|
6
|
-
tools: ["Read", "Glob", "Grep", "
|
|
6
|
+
tools: ["Read", "Glob", "Grep", "sdd_verify_tests", "sdd_verify_tasks", "sdd_check_sync", "sdd_validate_ears", "sdd_get_status"]
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<example>
|
|
@@ -29,10 +29,10 @@ You are a test verification specialist. You verify that implementation satisfies
|
|
|
29
29
|
**Workflow:**
|
|
30
30
|
1. Read the `test-verifier` SKILL.md for verification criteria and gate thresholds
|
|
31
31
|
2. Call sdd_verify_tests — parse results, map to REQ-IDs, build coverage report
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
32
|
+
3. Call sdd_verify_tasks — detect phantom completions
|
|
33
|
+
4. Call sdd_check_sync — detect spec-code drift
|
|
34
|
+
5. Call sdd_validate_ears — re-validate EARS integrity
|
|
35
|
+
6. Present VERIFICATION.md with gate decision
|
|
36
36
|
|
|
37
37
|
**Gate criteria (ALL must pass):**
|
|
38
38
|
- Test pass rate ≥90%
|
|
@@ -33,7 +33,7 @@ if [[ "$TOOL" == "Write" || "$TOOL" == "Edit" || "$TOOL" == "MultiEdit" ]]; then
|
|
|
33
33
|
|
|
34
34
|
PHASE="?"
|
|
35
35
|
if command -v jq >/dev/null 2>&1; then
|
|
36
|
-
PHASE=$(jq -r '.
|
|
36
|
+
PHASE=$(jq -r '.current_phase // "?"' "$STATE" 2>/dev/null || echo "?")
|
|
37
37
|
fi
|
|
38
38
|
|
|
39
39
|
FEATURE=$(basename "$LATEST")
|
|
@@ -52,17 +52,17 @@ if [[ "$TOOL" == "Write" || "$TOOL" == "Edit" || "$TOOL" == "MultiEdit" ]]; then
|
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
case "$PHASE" in
|
|
55
|
-
|
|
55
|
+
init|discover|specify|clarify|design|tasks|analyze|implement)
|
|
56
56
|
if [[ "$CURRENT_BRANCH" != spec/* ]]; then
|
|
57
57
|
emit_violation "spec/$FEATURE"
|
|
58
58
|
fi
|
|
59
59
|
;;
|
|
60
|
-
|
|
60
|
+
verify)
|
|
61
61
|
if [[ "$CURRENT_BRANCH" != "develop" ]]; then
|
|
62
62
|
emit_violation "develop"
|
|
63
63
|
fi
|
|
64
64
|
;;
|
|
65
|
-
|
|
65
|
+
release)
|
|
66
66
|
if [[ "$CURRENT_BRANCH" != "stage" ]]; then
|
|
67
67
|
emit_violation "stage"
|
|
68
68
|
fi
|
|
@@ -24,9 +24,9 @@ SPEC_COVERAGE=$(grep -iE '(in scope|out of scope|must|shall not)' "$SPEC" 2>/dev
|
|
|
24
24
|
|
|
25
25
|
if [ "$CONST_SCOPE" -gt 0 ] && [ "$SPEC_COVERAGE" -eq 0 ]; then
|
|
26
26
|
echo "⚠️ Constitution has scope constraints but SPECIFICATION.md may not reference them."
|
|
27
|
-
echo " Run
|
|
27
|
+
echo " Run sdd_check_sync for detailed analysis."
|
|
28
28
|
fi
|
|
29
29
|
|
|
30
30
|
echo "📊 Constitution: $CONST_TERMS key terms, $CONST_SCOPE scope constraints."
|
|
31
|
-
echo " Run
|
|
31
|
+
echo " Run sdd_check_sync for intent drift score."
|
|
32
32
|
exit 0
|
|
@@ -47,7 +47,7 @@ case "$TOOL" in
|
|
|
47
47
|
sdd_write_spec|sdd_turnkey_spec|sdd_figma_to_spec)
|
|
48
48
|
check_created "SPECIFICATION.md" "SPECIFICATION.md"
|
|
49
49
|
check_has_content "SPECIFICATION.md" "REQ-[A-Z]+-[0-9]+" "REQ-IDs" 3
|
|
50
|
-
check_has_content "SPECIFICATION.md" "(shall|
|
|
50
|
+
check_has_content "SPECIFICATION.md" "(shall|When .* shall|While .* shall|Where .* shall|If .* then)" "EARS patterns" 3
|
|
51
51
|
;;
|
|
52
52
|
sdd_write_design)
|
|
53
53
|
check_created "DESIGN.md" "DESIGN.md"
|
|
@@ -67,7 +67,7 @@ FEATURE=$(basename "$LATEST")
|
|
|
67
67
|
# Try to read current phase (optional — requires jq)
|
|
68
68
|
PHASE="?"
|
|
69
69
|
if command -v jq >/dev/null 2>&1; then
|
|
70
|
-
PHASE=$(jq -r '.
|
|
70
|
+
PHASE=$(jq -r '.current_phase // "?"' "$STATE" 2>/dev/null || echo "?")
|
|
71
71
|
fi
|
|
72
72
|
|
|
73
73
|
# ── Extract user prompt ──────────────────────────────────
|
|
@@ -35,7 +35,7 @@ fi
|
|
|
35
35
|
FEATURE=$(basename "$LATEST")
|
|
36
36
|
PHASE="?"
|
|
37
37
|
if command -v jq >/dev/null 2>&1; then
|
|
38
|
-
PHASE=$(jq -r '.
|
|
38
|
+
PHASE=$(jq -r '.current_phase // "?"' "$STATE" 2>/dev/null || echo "?")
|
|
39
39
|
fi
|
|
40
40
|
|
|
41
41
|
BRANCH=$(git rev-parse --abbrev-ref HEAD 2>/dev/null | tr -d '\n' || true)
|
|
@@ -58,22 +58,22 @@ echo ""
|
|
|
58
58
|
|
|
59
59
|
# Validate branch matches expected for phase (advisory warning only)
|
|
60
60
|
case "$PHASE" in
|
|
61
|
-
|
|
61
|
+
init|discover|specify|clarify|design|tasks|analyze|implement)
|
|
62
62
|
if [[ ! "$BRANCH" =~ ^spec/ ]]; then
|
|
63
63
|
echo "⚠️ [session-banner] Phase $PHASE expects branch spec/NNN-* — you are on '$BRANCH'"
|
|
64
64
|
echo " Consider: git checkout -b spec/$FEATURE (or let @specky-orchestrator handle it)"
|
|
65
65
|
echo ""
|
|
66
66
|
fi
|
|
67
67
|
;;
|
|
68
|
-
|
|
68
|
+
verify)
|
|
69
69
|
if [ "$BRANCH" != "develop" ]; then
|
|
70
|
-
echo "⚠️ [session-banner] Phase
|
|
70
|
+
echo "⚠️ [session-banner] Phase 'verify' expects branch 'develop' — you are on '$BRANCH'"
|
|
71
71
|
echo ""
|
|
72
72
|
fi
|
|
73
73
|
;;
|
|
74
|
-
|
|
74
|
+
release)
|
|
75
75
|
if [ "$BRANCH" != "stage" ]; then
|
|
76
|
-
echo "⚠️ [session-banner] Phase
|
|
76
|
+
echo "⚠️ [session-banner] Phase 'release' expects branch 'stage' — you are on '$BRANCH'"
|
|
77
77
|
echo ""
|
|
78
78
|
fi
|
|
79
79
|
;;
|
|
@@ -1,8 +1,24 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Reset an SDD pipeline phase
|
|
2
|
+
description: Reset an SDD pipeline phase by restoring the checkpoint taken before it
|
|
3
|
+
mode: agent
|
|
4
|
+
argument-hint: <feature-number> <phase 0-9 or phase name>
|
|
3
5
|
---
|
|
4
|
-
Reset SDD pipeline phase for feature [FEATURE NUMBER].
|
|
6
|
+
Reset an SDD pipeline phase for feature [FEATURE NUMBER].
|
|
5
7
|
|
|
6
8
|
**Phase to reset:** [0-9 or phase name]
|
|
7
9
|
|
|
8
|
-
|
|
10
|
+
Resetting a phase rewinds the pipeline to the checkpoint captured before that
|
|
11
|
+
phase started. Any artifacts produced after that checkpoint are reverted, so
|
|
12
|
+
this is a destructive operation that requires explicit confirmation.
|
|
13
|
+
|
|
14
|
+
Steps:
|
|
15
|
+
1. Call `sdd_get_status` to confirm the current feature and phase.
|
|
16
|
+
2. Call `sdd_list_checkpoints` to list the checkpoints available for the feature.
|
|
17
|
+
3. Identify the checkpoint taken immediately before the target phase.
|
|
18
|
+
4. Show which checkpoint will be restored and which artifacts will be reverted
|
|
19
|
+
or regenerated, then ask the developer to confirm.
|
|
20
|
+
5. After explicit confirmation, call `sdd_restore` with the selected checkpoint
|
|
21
|
+
to rewind the state machine and artifacts to that phase.
|
|
22
|
+
6. Report the restored phase and the next recommended action.
|
|
23
|
+
|
|
24
|
+
Never call `sdd_restore` without explicit confirmation.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: implementer
|
|
3
3
|
description: "This skill should be used when the user asks to 'generate implementation plan', 'create test stubs', 'set up infrastructure', 'generate quality checklists', 'transition from spec to code', or needs guidance on Phase 7 implementation scaffolding. Also trigger on 'sdd implement', 'implementation handoff', 'IaC generation', or 'test framework selection'."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: 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
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: 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
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: 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
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: 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
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: specky-onboarding
|
|
3
3
|
description: "This skill should be used when the user asks 'help me with specky', 'what is specky', 'how to use specky', 'specky onboarding', 'get started', or needs guidance on project setup, work modes, or available agents/tools/prompts. Also trigger on '@specky', 'specky help', or 'show me specky commands'."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: specky-orchestrator
|
|
3
3
|
description: "This skill should be used when the user asks to 'orchestrate pipeline', 'run full pipeline', 'coordinate phases', 'advance phase', or needs guidance on end-to-end pipeline execution. Also trigger on 'specky orchestrate', 'phase transition', 'LGTM gate', 'pipeline status', or 'which agent for this phase'."
|
|
4
4
|
---
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name:
|
|
2
|
+
name: 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
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asset-copier.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/asset-copier.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,QAAQ,EAAqB,MAAM,WAAW,CAAC;AACxD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAG1C,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB;AA2DD;;GAEG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,WAAW,GAChB,UAAU,
|
|
1
|
+
{"version":3,"file":"asset-copier.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/asset-copier.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,QAAQ,EAAqB,MAAM,WAAW,CAAC;AACxD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAG1C,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB;AA2DD;;GAEG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,WAAW,GAChB,UAAU,CAyCZ;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,WAAW,GAChB,UAAU,CAmDZ;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAG7C;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,UAAU,EAAE,EACpB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,WAAW,GAChB,MAAM,CAwBR;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,GAAG,MAAM,CAEjE;AAGD,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
|
@@ -69,7 +69,9 @@ export function copyToClaude(pkgRoot, targets, opts) {
|
|
|
69
69
|
copyDir(src.skillsDir, targets.claude.skills, opts, result);
|
|
70
70
|
copyDir(src.hookScriptsDir, targets.claude.hooksScripts, opts, result);
|
|
71
71
|
// Make hook scripts executable (Unix only — Windows ignores mode)
|
|
72
|
-
if (!opts.dryRun &&
|
|
72
|
+
if (!opts.dryRun &&
|
|
73
|
+
process.platform !== "win32" &&
|
|
74
|
+
existsSync(targets.claude.hooksScripts)) {
|
|
73
75
|
for (const f of readdirSync(targets.claude.hooksScripts)) {
|
|
74
76
|
if (f.endsWith(".sh") || f.endsWith(".mjs")) {
|
|
75
77
|
try {
|
|
@@ -108,15 +110,24 @@ export function copyToCopilot(pkgRoot, targets, opts) {
|
|
|
108
110
|
}
|
|
109
111
|
catch { /* ignore — might be read-only */ }
|
|
110
112
|
}
|
|
111
|
-
// IMPORTANT:
|
|
112
|
-
// to .github/hooks/specky/scripts/)
|
|
113
|
-
//
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
113
|
+
// IMPORTANT: only ship the build-time copilot-hooks.json (paths already
|
|
114
|
+
// resolved to .github/hooks/specky/scripts/). NEVER fall back to the raw
|
|
115
|
+
// .apm/hooks/sdd-hooks.json — it still contains ${CLAUDE_PLUGIN_ROOT}, which
|
|
116
|
+
// Copilot cannot resolve and which causes spurious hook blocks. See rc.12/rc.14.
|
|
117
|
+
if (existsSync(src.copilotHooksManifest)) {
|
|
118
|
+
copyFile(src.copilotHooksManifest, targets.copilot.hooksManifest, opts, result);
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
result.skipped.push(targets.copilot.hooksManifest);
|
|
122
|
+
if (!opts.dryRun) {
|
|
123
|
+
console.warn("[specky] Skipped Copilot hooks manifest: dist/copilot-hooks.json is missing. " +
|
|
124
|
+
"Run `npm run build` to generate it; SDD hook automation stays disabled until then.");
|
|
125
|
+
}
|
|
126
|
+
}
|
|
118
127
|
copyDir(src.instructionsDir, targets.copilot.instructions, opts, result);
|
|
119
|
-
if (!opts.dryRun &&
|
|
128
|
+
if (!opts.dryRun &&
|
|
129
|
+
process.platform !== "win32" &&
|
|
130
|
+
existsSync(targets.copilot.hooksScripts)) {
|
|
120
131
|
for (const f of readdirSync(targets.copilot.hooksScripts)) {
|
|
121
132
|
if (f.endsWith(".sh") || f.endsWith(".mjs")) {
|
|
122
133
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asset-copier.js","sourceRoot":"","sources":["../../../src/cli/lib/asset-copier.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"asset-copier.js","sourceRoot":"","sources":["../../../src/cli/lib/asset-copier.ts"],"names":[],"mappings":"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"}
|
package/dist/copilot-hooks.json
CHANGED
|
@@ -311,21 +311,6 @@
|
|
|
311
311
|
"timeout": 10
|
|
312
312
|
}
|
|
313
313
|
]
|
|
314
|
-
},
|
|
315
|
-
{
|
|
316
|
-
"matcher": "Write|Edit|MultiEdit",
|
|
317
|
-
"hooks": [
|
|
318
|
-
{
|
|
319
|
-
"type": "command",
|
|
320
|
-
"command": "bash .github/hooks/specky/scripts/spec-sync.sh",
|
|
321
|
-
"timeout": 10
|
|
322
|
-
},
|
|
323
|
-
{
|
|
324
|
-
"type": "command",
|
|
325
|
-
"command": "bash .github/hooks/specky/scripts/auto-checkpoint.sh",
|
|
326
|
-
"timeout": 5
|
|
327
|
-
}
|
|
328
|
-
]
|
|
329
314
|
}
|
|
330
315
|
],
|
|
331
316
|
"Stop": [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rbac-engine.js","sourceRoot":"","sources":["../../src/services/rbac-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH;;;GAGG;AACH,MAAM,YAAY,GAAsB;IACtC,gBAAgB;IAChB,kBAAkB;IAClB,mBAAmB;IACnB,oBAAoB;IACpB,aAAa;IACb,
|
|
1
|
+
{"version":3,"file":"rbac-engine.js","sourceRoot":"","sources":["../../src/services/rbac-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH;;;GAGG;AACH,MAAM,YAAY,GAAsB;IACtC,gBAAgB;IAChB,kBAAkB;IAClB,mBAAmB;IACnB,oBAAoB;IACpB,aAAa;IACb,gBAAgB;IAChB,qBAAqB;IACrB,sBAAsB;IACtB,kBAAkB;IAClB,kBAAkB;CACV,CAAC;AAEX;;;GAGG;AACH,MAAM,uBAAuB,GAAsB;IACjD,eAAe;CACP,CAAC;AAEX,MAAM,OAAO,UAAU;IAKF;IACA;IALnB,MAAM,CAAU,YAAY,GAAG,YAAY,CAAC;IAC5C,MAAM,CAAU,uBAAuB,GAAG,uBAAuB,CAAC;IAElE,YACmB,OAAgB,EAChB,WAAqB;QADrB,YAAO,GAAP,OAAO,CAAS;QAChB,gBAAW,GAAX,WAAW,CAAU;IACpC,CAAC;IAEL;;;OAGG;IACH,WAAW,CACT,IAAc,EACd,QAAgB;QAEhB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;QAED,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,OAAO;gBACV,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAE3B,KAAK,aAAa;gBAChB,IAAI,uBAAuB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC/C,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,MAAM,EAAE,SAAS,QAAQ,8DAA8D;qBACxF,CAAC;gBACJ,CAAC;gBACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAE3B,KAAK,QAAQ;gBACX,IAAI,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gBAC3B,CAAC;gBACD,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,SAAS,QAAQ,yEAAyE;iBACnG,CAAC;YAEJ,OAAO,CAAC,CAAC,CAAC;gBACR,MAAM,UAAU,GAAU,IAAI,CAAC;gBAC/B,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,iBAAiB,UAAoB,6CAA6C;iBAC3F,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "specky-sdd",
|
|
3
|
-
"version": "3.7.
|
|
3
|
+
"version": "3.7.1",
|
|
4
4
|
"description": "Specky — Spec-Driven Development CLI toolkit. 58 MCP tools, 13 agents, 22 prompts, 8 skills, 16 hooks. Unified `specky` CLI installs to Claude Code or GitHub Copilot on macOS, Linux, and Windows.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
"specky-sdd": "dist/cli/index.js"
|
|
10
10
|
},
|
|
11
11
|
"scripts": {
|
|
12
|
-
"
|
|
12
|
+
"audit": "node scripts/audit-agent-frontmatter.mjs",
|
|
13
|
+
"build": "node scripts/audit-agent-frontmatter.mjs && tsc && rm -rf dist/templates && cp -r templates dist/templates && node scripts/build-claude-hooks.mjs && node scripts/finalize-build.mjs",
|
|
13
14
|
"start": "node dist/cli/index.js serve",
|
|
14
15
|
"dev": "tsx watch src/index.ts",
|
|
15
16
|
"clean": "rm -rf dist",
|
|
@@ -68,4 +69,4 @@
|
|
|
68
69
|
"overrides": {
|
|
69
70
|
"esbuild": "^0.28.1"
|
|
70
71
|
}
|
|
71
|
-
}
|
|
72
|
+
}
|