specweave 1.0.261 → 1.0.263
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/README.md +0 -2
- package/CLAUDE.md +27 -27
- package/bin/specweave.js +14 -85
- package/dist/dashboard/assets/index-Cv1XUAKk.css +1 -0
- package/dist/dashboard/assets/index-DHOztQSu.js +11 -0
- package/dist/dashboard/index.html +2 -2
- package/dist/src/adapters/README.md +1 -1
- package/dist/src/adapters/agents-md-generator.js +1 -1
- package/dist/src/adapters/agents-md-generator.js.map +1 -1
- package/dist/src/adapters/claude/README.md +8 -8
- package/dist/src/adapters/claude/adapter.js +2 -2
- package/dist/src/adapters/claude-md-generator.js +2 -2
- package/dist/src/adapters/claude-md-generator.js.map +1 -1
- package/dist/src/adapters/cursor/README.md +7 -7
- package/dist/src/adapters/generic/README.md +2 -2
- package/dist/src/cli/commands/create-increment.d.ts +1 -1
- package/dist/src/cli/commands/create-increment.js +1 -1
- package/dist/src/cli/commands/update.d.ts.map +1 -1
- package/dist/src/cli/commands/update.js +64 -1
- package/dist/src/cli/commands/update.js.map +1 -1
- package/dist/src/cli/helpers/init/api-docs-config.js +7 -7
- package/dist/src/cli/helpers/init/api-docs-config.js.map +1 -1
- package/dist/src/core/config/types.d.ts +18 -0
- package/dist/src/core/config/types.d.ts.map +1 -1
- package/dist/src/core/config/types.js +4 -0
- package/dist/src/core/config/types.js.map +1 -1
- package/dist/src/core/external-tools/external-items-display.d.ts.map +1 -1
- package/dist/src/core/external-tools/external-items-display.js +1 -11
- package/dist/src/core/external-tools/external-items-display.js.map +1 -1
- package/dist/src/core/increment/increment-archiver.js +1 -1
- package/dist/src/core/increment/increment-archiver.js.map +1 -1
- package/dist/src/core/increment/metadata-manager.js +2 -2
- package/dist/src/core/increment/metadata-manager.js.map +1 -1
- package/dist/src/core/increment/template-creator.d.ts +1 -1
- package/dist/src/core/increment/template-creator.js +4 -4
- package/dist/src/core/lazy-loading/llm-plugin-detector.d.ts +2 -2
- package/dist/src/core/lazy-loading/llm-plugin-detector.d.ts.map +1 -1
- package/dist/src/core/lazy-loading/llm-plugin-detector.js +15 -5
- package/dist/src/core/lazy-loading/llm-plugin-detector.js.map +1 -1
- package/dist/src/core/living-docs/feature-consistency-validator.js +1 -1
- package/dist/src/core/living-docs/feature-consistency-validator.js.map +1 -1
- package/dist/src/core/living-docs/scaffolding/scaffold.js +3 -3
- package/dist/src/core/notifications/command-integration.d.ts.map +1 -1
- package/dist/src/core/notifications/command-integration.js +0 -1
- package/dist/src/core/notifications/command-integration.js.map +1 -1
- package/dist/src/core/reflection/reflect-handler.js +2 -2
- package/dist/src/core/reflection/reflect-handler.js.map +1 -1
- package/dist/src/core/validators/ac-presence-validator.d.ts +1 -1
- package/dist/src/core/validators/ac-presence-validator.js +3 -3
- package/dist/src/core/validators/ac-presence-validator.js.map +1 -1
- package/dist/src/dashboard/server/command-runner.d.ts.map +1 -1
- package/dist/src/dashboard/server/command-runner.js +2 -2
- package/dist/src/dashboard/server/command-runner.js.map +1 -1
- package/dist/src/dashboard/server/dashboard-server.d.ts.map +1 -1
- package/dist/src/dashboard/server/dashboard-server.js +22 -10
- package/dist/src/dashboard/server/dashboard-server.js.map +1 -1
- package/dist/src/dashboard/server/data/dashboard-data-aggregator.d.ts +9 -1
- package/dist/src/dashboard/server/data/dashboard-data-aggregator.d.ts.map +1 -1
- package/dist/src/dashboard/server/data/dashboard-data-aggregator.js +140 -13
- package/dist/src/dashboard/server/data/dashboard-data-aggregator.js.map +1 -1
- package/dist/src/dashboard/server/data/plugin-scanner.d.ts +1 -1
- package/dist/src/dashboard/server/data/plugin-scanner.d.ts.map +1 -1
- package/dist/src/dashboard/server/data/plugin-scanner.js +2 -2
- package/dist/src/dashboard/server/data/plugin-scanner.js.map +1 -1
- package/dist/src/utils/agents-md-compiler.js +1 -1
- package/dist/src/utils/agents-md-compiler.js.map +1 -1
- package/dist/src/utils/find-project-root.d.ts +5 -4
- package/dist/src/utils/find-project-root.d.ts.map +1 -1
- package/dist/src/utils/find-project-root.js +8 -10
- package/dist/src/utils/find-project-root.js.map +1 -1
- package/dist/src/utils/generate-skills-index.js +3 -3
- package/dist/src/utils/notification-constants.js +1 -1
- package/dist/src/utils/notification-constants.js.map +1 -1
- package/package.json +1 -1
- package/plugins/FINAL-AUDIT-RECOMMENDATIONS.md +3 -3
- package/plugins/specweave/PLUGIN.md +0 -22
- package/plugins/specweave/commands/analytics.md +1 -1
- package/plugins/specweave/commands/discrepancies.md +0 -1
- package/plugins/specweave/commands/living-docs.md +0 -1
- package/plugins/specweave/commands/reconcile.md +1 -1
- package/plugins/specweave/hooks/hooks.json +19 -0
- package/plugins/specweave/hooks/pre-compact.sh +39 -0
- package/plugins/specweave/hooks/stop-sync.sh +23 -1
- package/plugins/specweave/hooks/universal/fail-fast-wrapper.sh +4 -0
- package/plugins/specweave/hooks/user-prompt-submit.sh +193 -59
- package/plugins/specweave/hooks/v2/dispatchers/post-tool-use-analytics.sh +83 -0
- package/plugins/specweave/hooks/v2/dispatchers/session-start.sh +7 -0
- package/plugins/specweave/hooks/v2/guards/spec-template-enforcement-guard.sh +1 -1
- package/plugins/specweave/hooks/v2/handlers/ac-sync-dispatcher.sh +25 -6
- package/plugins/specweave/hooks/v2/handlers/universal-auto-create-dispatcher.sh +21 -3
- package/plugins/specweave/hooks/v2/lib/check-provider-enabled.sh +52 -0
- package/plugins/specweave/lib/vendor/core/increment/metadata-manager.js +2 -2
- package/plugins/specweave/lib/vendor/core/increment/metadata-manager.js.map +1 -1
- package/plugins/specweave/scripts/track-analytics.sh +4 -0
- package/plugins/specweave/skills/do/SKILL.md +1 -1
- package/plugins/specweave/skills/done/SKILL.md +1 -1
- package/plugins/specweave/skills/framework/SKILL.md +4 -4
- package/plugins/specweave/skills/increment/SKILL.md +192 -25
- package/plugins/specweave/skills/next/SKILL.md +36 -630
- package/plugins/specweave/skills/pm/phases/00-deep-interview.md +2 -2
- package/plugins/specweave/skills/progress-sync/SKILL.md +7 -25
- package/plugins/specweave/skills/spec-generator/SKILL.md +44 -626
- package/plugins/specweave/skills/tdd-green/SKILL.md +10 -798
- package/plugins/specweave/skills/tdd-red/SKILL.md +8 -136
- package/plugins/specweave/skills/tdd-refactor/SKILL.md +15 -147
- package/plugins/specweave-github/hooks/github-auto-create-handler.sh +23 -5
- package/src/templates/AGENTS.md.template +11 -11
- package/src/templates/CLAUDE.md.template +1 -1
- package/dist/dashboard/assets/index-CDl14O5G.css +0 -1
- package/dist/dashboard/assets/index-CmqBqnWd.js +0 -11
- package/plugins/specweave/commands/api-docs.md +0 -672
- package/plugins/specweave/commands/check-hooks.md +0 -241
- package/plugins/specweave/commands/embed-acs.md +0 -445
- package/plugins/specweave/commands/external.md +0 -145
- package/plugins/specweave/commands/import-docs.md +0 -212
- package/plugins/specweave/commands/migrate-config.md +0 -104
- package/plugins/specweave/commands/notifications.md +0 -94
- package/plugins/specweave/commands/plugin-validator.md +0 -429
- package/plugins/specweave/commands/revert-wip-limit.md +0 -82
- package/plugins/specweave/commands/sync-acs.md +0 -342
- package/plugins/specweave/commands/sync-specs.md +0 -339
- package/plugins/specweave/commands/sync-tasks.md +0 -255
- package/plugins/specweave/commands/update-scope.md +0 -351
- package/plugins/specweave/commands/validate-features.md +0 -207
- package/plugins/specweave/skills/archive-increments/SKILL.md +0 -209
- package/plugins/specweave/skills/code-review/SKILL.md +0 -598
- package/plugins/specweave/skills/increment-planner/SKILL.md +0 -238
- package/plugins/specweave/skills/increment-work-router/SKILL.md +0 -562
- package/plugins/specweave/skills/multi-project-spec-mapper/SKILL.md +0 -423
- package/plugins/specweave/skills/pm-closure-validation/SKILL.md +0 -542
- package/plugins/specweave/skills/smart-reopen-detector/SKILL.md +0 -245
- package/plugins/specweave/skills/tdd-orchestrator/SKILL.md +0 -228
- package/plugins/specweave/skills/umbrella-repo-detector/SKILL.md +0 -301
|
@@ -1,238 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Plan and create SpecWeave increments with PM and Architect agent collaboration. Use when starting new features, hotfixes, bugs, or any development work that needs specification and task breakdown. Creates spec.md, plan.md, tasks.md with proper AC-IDs and living docs integration.
|
|
3
|
-
context: fork
|
|
4
|
-
model: opus
|
|
5
|
-
hooks:
|
|
6
|
-
PreToolUse:
|
|
7
|
-
- matcher: Write
|
|
8
|
-
hooks:
|
|
9
|
-
- type: command
|
|
10
|
-
command: bash plugins/specweave/hooks/v2/guards/interview-enforcement-guard.sh
|
|
11
|
-
- type: command
|
|
12
|
-
command: bash plugins/specweave/hooks/v2/guards/spec-template-enforcement-guard.sh
|
|
13
|
-
PostToolUse:
|
|
14
|
-
- matcher: Write
|
|
15
|
-
hooks:
|
|
16
|
-
- type: command
|
|
17
|
-
command: bash plugins/specweave/hooks/v2/guards/increment-duplicate-guard.sh
|
|
18
|
-
---
|
|
19
|
-
|
|
20
|
-
# Increment Planner Skill
|
|
21
|
-
|
|
22
|
-
## CRITICAL: Plan Mode Required
|
|
23
|
-
|
|
24
|
-
**Before executing this skill, you MUST be in plan mode.** If you are not currently in plan mode, call `EnterPlanMode` first. Increment planning is ALWAYS a planning activity — never skip straight to implementation.
|
|
25
|
-
|
|
26
|
-
## Project Overrides
|
|
27
|
-
|
|
28
|
-
!`s="increment-planner"; for d in .specweave/skill-memories .claude/skill-memories "$HOME/.claude/skill-memories"; do p="$d/$s.md"; [ -f "$p" ] && awk '/^## Learnings$/{ok=1;next}/^## /{ok=0}ok' "$p" && break; done 2>/dev/null; true`
|
|
29
|
-
|
|
30
|
-
## Project Context
|
|
31
|
-
|
|
32
|
-
!`.specweave/scripts/skill-context.sh increment-planner 2>/dev/null; true`
|
|
33
|
-
|
|
34
|
-
**Self-contained increment planning for ANY user project after `specweave init`.**
|
|
35
|
-
|
|
36
|
-
## Workflow Overview
|
|
37
|
-
|
|
38
|
-
```
|
|
39
|
-
STEP 1: Pre-flight (TDD mode, multi-project, Deep Interview)
|
|
40
|
-
-> CHECK: Deep Interview Mode enabled?
|
|
41
|
-
|
|
42
|
-
STEP 1a: Deep Interview (if enabled)
|
|
43
|
-
-> PM skill loads phases/00-deep-interview.md
|
|
44
|
-
-> ASSESS complexity first, then ask right number of questions
|
|
45
|
-
-> Skip categories that don't apply to this feature
|
|
46
|
-
|
|
47
|
-
STEP 2: Project Context (resolve project/board)
|
|
48
|
-
|
|
49
|
-
STEP 3: Create Increment (via Template API)
|
|
50
|
-
|
|
51
|
-
STEP 4: Guide User (complete in main conversation)
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
## Step 1: Pre-flight Checks
|
|
55
|
-
|
|
56
|
-
```bash
|
|
57
|
-
# 1. Check TDD mode
|
|
58
|
-
jq -r '.testing.defaultTestMode // "test-after"' .specweave/config.json 2>/dev/null
|
|
59
|
-
|
|
60
|
-
# 2. Check multi-project config
|
|
61
|
-
specweave context projects 2>/dev/null
|
|
62
|
-
|
|
63
|
-
# 3. Check deep interview mode
|
|
64
|
-
jq -r '.planning.deepInterview.enabled // false' .specweave/config.json 2>/dev/null
|
|
65
|
-
|
|
66
|
-
# 4. Check WIP limits
|
|
67
|
-
find .specweave/increments -maxdepth 2 -name "metadata.json" -exec grep -l '"status":"active"' {} \; 2>/dev/null | wc -l
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
## Step 1a: Deep Interview Mode (if enabled)
|
|
71
|
-
|
|
72
|
-
**If deep interview is enabled, delegate to PM skill:**
|
|
73
|
-
|
|
74
|
-
```typescript
|
|
75
|
-
Skill({ skill: "sw:pm", args: "Deep interview mode for: <user description>" })
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
**THINK about complexity first** - assess before asking:
|
|
79
|
-
- Trivial: 0-3 questions | Small: 4-8 | Medium: 9-18 | Large: 19-40+
|
|
80
|
-
|
|
81
|
-
## Step 2: Project Context
|
|
82
|
-
|
|
83
|
-
```bash
|
|
84
|
-
# Get project/board values for spec.md
|
|
85
|
-
specweave context projects
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
Every US MUST have `**Project**:` field. For 2-level structures, also `**Board**:`.
|
|
89
|
-
|
|
90
|
-
## Step 3: Create Increment
|
|
91
|
-
|
|
92
|
-
### 3a. Determine Increment Location
|
|
93
|
-
|
|
94
|
-
**CRITICAL for multi-repo setups:**
|
|
95
|
-
|
|
96
|
-
```bash
|
|
97
|
-
# Check if this is a multi-repo umbrella project
|
|
98
|
-
if [ -d "repositories" ]; then
|
|
99
|
-
echo "MULTI-REPO: Increments belong in EACH repo's .specweave/"
|
|
100
|
-
# Discover organization from config (NOT from .env)
|
|
101
|
-
ORG=$(jq -r '.repository.organization // empty' .specweave/config.json 2>/dev/null)
|
|
102
|
-
[ -z "$ORG" ] && ORG=$(jq -r '[.sync.profiles[].config.owner // .sync.profiles[].config.organization] | map(select(. != null)) | first // empty' .specweave/config.json 2>/dev/null)
|
|
103
|
-
[ -z "$ORG" ] && ORG=$(ls -d repositories/*/ 2>/dev/null | head -1 | xargs basename 2>/dev/null)
|
|
104
|
-
echo "Organization: $ORG"
|
|
105
|
-
echo "Example: repositories/$ORG/{repo-name}/.specweave/increments/"
|
|
106
|
-
ls -d repositories/*/* 2>/dev/null | head -20
|
|
107
|
-
else
|
|
108
|
-
echo "SINGLE-REPO: Use .specweave/increments/"
|
|
109
|
-
fi
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
**Multi-repo rules:**
|
|
113
|
-
- Each repository has its OWN `.specweave/increments/` directory
|
|
114
|
-
- Team agents MUST create increments in their assigned repo's `.specweave/`
|
|
115
|
-
- The umbrella root `.specweave/` is for umbrella-level config ONLY
|
|
116
|
-
- Run `specweave init` in each repo if `.specweave/` doesn't exist
|
|
117
|
-
- Repos MUST be at `repositories/{ORG}/{repo-name}/` — NEVER directly under `repositories/`
|
|
118
|
-
|
|
119
|
-
### 3b. Get Unique ID
|
|
120
|
-
|
|
121
|
-
```bash
|
|
122
|
-
# Check ALL folders for existing IDs
|
|
123
|
-
find .specweave/increments -maxdepth 2 -type d -name "[0-9]*" 2>/dev/null | grep -oE '[0-9]{4}E?' | sort -u | tail -5
|
|
124
|
-
|
|
125
|
-
# For multi-repo, also check child repos
|
|
126
|
-
find repositories -path "*/specweave/increments/*" -maxdepth 5 -type d -name "[0-9]*" 2>/dev/null | grep -oE '[0-9]{4}E?' | sort -u | tail -5
|
|
127
|
-
```
|
|
128
|
-
|
|
129
|
-
### 3c. Create via CLI (preferred)
|
|
130
|
-
|
|
131
|
-
```bash
|
|
132
|
-
specweave create-increment --id "XXXX-name" --title "Feature Title" --description "Brief description" --project "my-app"
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
**Optional flags**: `--type hotfix` | `--priority P1` | `--board "team-name"` | `--json`
|
|
136
|
-
|
|
137
|
-
### 3d. Create manually (if CLI unavailable)
|
|
138
|
-
|
|
139
|
-
```bash
|
|
140
|
-
mkdir -p .specweave/increments/XXXX-name
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
Create files in order: metadata.json FIRST, then spec.md, plan.md, tasks.md.
|
|
144
|
-
|
|
145
|
-
## Quick Reference
|
|
146
|
-
|
|
147
|
-
### Increment Types
|
|
148
|
-
|
|
149
|
-
| Type | Use When | WIP Limit |
|
|
150
|
-
|------|----------|-----------|
|
|
151
|
-
| **feature** | New functionality | Max 2 |
|
|
152
|
-
| **hotfix** | Production broken | Unlimited |
|
|
153
|
-
| **bug** | Needs RCA | Unlimited |
|
|
154
|
-
| **change-request** | Business changes | Max 2 |
|
|
155
|
-
| **refactor** | Technical debt | Max 1 |
|
|
156
|
-
| **experiment** | POC/spike | Unlimited |
|
|
157
|
-
|
|
158
|
-
### Directory Structure
|
|
159
|
-
|
|
160
|
-
```
|
|
161
|
-
.specweave/increments/####-name/
|
|
162
|
-
├── metadata.json # REQUIRED - create FIRST
|
|
163
|
-
├── spec.md # REQUIRED - user stories, ACs
|
|
164
|
-
├── plan.md # OPTIONAL - architecture
|
|
165
|
-
└── tasks.md # REQUIRED - implementation
|
|
166
|
-
```
|
|
167
|
-
|
|
168
|
-
### User Story Format
|
|
169
|
-
|
|
170
|
-
```markdown
|
|
171
|
-
### US-001: Feature Name
|
|
172
|
-
**Project**: my-app # <- REQUIRED! Get from: specweave context projects
|
|
173
|
-
|
|
174
|
-
**As a** [role]
|
|
175
|
-
**I want** [capability]
|
|
176
|
-
**So that** [benefit]
|
|
177
|
-
|
|
178
|
-
**Acceptance Criteria**:
|
|
179
|
-
- [ ] **AC-US1-01**: [Criterion 1]
|
|
180
|
-
- [ ] **AC-US1-02**: [Criterion 2]
|
|
181
|
-
```
|
|
182
|
-
|
|
183
|
-
## Critical Rules
|
|
184
|
-
|
|
185
|
-
1. **Project field is MANDATORY** - Every US MUST have `**Project**:` field
|
|
186
|
-
2. **Use Template Creator CLI** (REQUIRED): `specweave create-increment --id "XXXX-name" --title "Title" --description "Desc" --project "my-app"`
|
|
187
|
-
3. **NO agent spawning** - Skills MUST NOT spawn Task() agents (causes crashes). Guide user in main conversation.
|
|
188
|
-
4. **Increment naming** - Format: `####-descriptive-kebab-case`
|
|
189
|
-
5. **Multi-repo** - In umbrella projects with `repositories/` folder, create increments in EACH repo's `.specweave/`, not the umbrella root
|
|
190
|
-
|
|
191
|
-
## Delegation
|
|
192
|
-
|
|
193
|
-
After increment creation:
|
|
194
|
-
|
|
195
|
-
```typescript
|
|
196
|
-
// Invoke architect for plan.md
|
|
197
|
-
Skill({ skill: "sw:architect", args: "Design architecture for increment XXXX" })
|
|
198
|
-
|
|
199
|
-
// Invoke test-aware planner for tasks.md
|
|
200
|
-
Skill({ skill: "sw:test-aware-planner", args: "Generate tasks for increment XXXX" })
|
|
201
|
-
```
|
|
202
|
-
|
|
203
|
-
## Step 5: Execution Strategy Recommendation
|
|
204
|
-
|
|
205
|
-
After delegation completes (architect + test-aware-planner have created plan.md and tasks.md), analyze the increment:
|
|
206
|
-
|
|
207
|
-
1. **Count tasks**: `grep -c '^\- \[ \]\|^### T-' tasks.md`
|
|
208
|
-
2. **Count domains** from spec.md user stories and plan.md architecture (frontend, backend, database, API, DevOps, security, mobile, ML/AI)
|
|
209
|
-
3. **Classify**: Low (≤8 tasks, 1 domain) | Medium (9-15, 1-2 domains) | High (>15 OR 3+ domains)
|
|
210
|
-
|
|
211
|
-
**Show recommendation in output:**
|
|
212
|
-
|
|
213
|
-
```
|
|
214
|
-
EXECUTION STRATEGY
|
|
215
|
-
================================================
|
|
216
|
-
Tasks: [N] | Domains: [M] | Complexity: [Low/Medium/High]
|
|
217
|
-
|
|
218
|
-
/sw:do <id> - Step-by-step, full control
|
|
219
|
-
/sw:auto <id> - Autonomous sequential (unattended)
|
|
220
|
-
/sw:team-lead - Parallel multi-agent (best quality for multi-domain, higher token cost)
|
|
221
|
-
```
|
|
222
|
-
|
|
223
|
-
- **Low**: Show `/sw:do <id>` as next step (default behavior)
|
|
224
|
-
- **Medium**: Show `/sw:do <id>` and recommend `/sw:auto <id>` for unattended execution
|
|
225
|
-
- **High**: Recommend `/sw:team-lead` as primary, with `/sw:auto` and `/sw:do` as alternatives
|
|
226
|
-
|
|
227
|
-
See CLAUDE.md Execution Strategy section for the full decision matrix.
|
|
228
|
-
|
|
229
|
-
## Usage
|
|
230
|
-
|
|
231
|
-
```typescript
|
|
232
|
-
// Called by hook system (primary path)
|
|
233
|
-
Skill({ skill: "sw:increment-planner", args: "Add user authentication" })
|
|
234
|
-
|
|
235
|
-
// Via command (handles pre-flight checks too)
|
|
236
|
-
/sw:increment "Add user authentication"
|
|
237
|
-
```
|
|
238
|
-
|