specweave 1.0.144 → 1.0.145

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CLAUDE.md CHANGED
@@ -1,10 +1,10 @@
1
- <!-- SW:META template="claude" version="1.0.143" sections="header,start,autodetect,metarule,rules,workflow,reflect,context,structure,taskformat,secrets,syncing,testing,api,limits,troubleshooting,lazyloading,principles,linking,mcp,auto,docs" -->
1
+ <!-- SW:META template="claude" version="1.0.144" sections="header,start,autodetect,metarule,rules,workflow,reflect,context,structure,taskformat,secrets,syncing,testing,api,limits,troubleshooting,lazyloading,principles,linking,mcp,auto,docs" -->
2
2
 
3
- <!-- SW:SECTION:header version="1.0.143" -->
3
+ <!-- SW:SECTION:header version="1.0.144" -->
4
4
  **Framework**: SpecWeave | **Truth**: `spec.md` + `tasks.md`
5
5
  <!-- SW:END:header -->
6
6
 
7
- <!-- SW:SECTION:start version="1.0.143" -->
7
+ <!-- SW:SECTION:start version="1.0.144" -->
8
8
  ## Getting Started
9
9
 
10
10
  **Initial increment**: `0001-project-setup` (auto-created by `specweave init`)
@@ -14,7 +14,7 @@
14
14
  2. **Customize**: Edit spec.md and use for setup tasks
15
15
  <!-- SW:END:start -->
16
16
 
17
- <!-- SW:SECTION:autodetect version="1.0.143" -->
17
+ <!-- SW:SECTION:autodetect version="1.0.144" -->
18
18
  ## Auto-Detection
19
19
 
20
20
  SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
@@ -24,7 +24,7 @@ SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
24
24
  **Opt-out phrases**: "Just brainstorm first" | "Don't plan yet" | "Quick discussion" | "Let's explore ideas"
25
25
  <!-- SW:END:autodetect -->
26
26
 
27
- <!-- SW:SECTION:metarule version="1.0.143" -->
27
+ <!-- SW:SECTION:metarule version="1.0.144" -->
28
28
  ## Meta-Rule: Think-Before-Act
29
29
 
30
30
  **Satisfy dependencies BEFORE dependent operations.**
@@ -35,7 +35,7 @@ SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
35
35
  ```
36
36
  <!-- SW:END:metarule -->
37
37
 
38
- <!-- SW:SECTION:rules version="1.0.143" -->
38
+ <!-- SW:SECTION:rules version="1.0.144" -->
39
39
  ## Rules
40
40
 
41
41
  1. **Files** → `.specweave/increments/####-name/` (see Structure section for details)
@@ -46,7 +46,7 @@ SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
46
46
  6. **⛔ Marketplace refresh**: Use `specweave refresh-marketplace` CLI (not `scripts/refresh-marketplace.sh`)
47
47
  <!-- SW:END:rules -->
48
48
 
49
- <!-- SW:SECTION:workflow version="1.0.143" -->
49
+ <!-- SW:SECTION:workflow version="1.0.144" -->
50
50
  ## Workflow
51
51
 
52
52
  `/sw:increment "X"` → `/sw:do` → `/sw:progress` → `/sw:done 0001`
@@ -66,7 +66,7 @@ SpecWeave auto-detects product descriptions and routes to `/sw:increment`:
66
66
  **Natural language**: "Let's build X" → `/sw:increment` | "What's status?" → `/sw:progress` | "We're done" → `/sw:done` | "Ship while sleeping" → `/sw:auto`
67
67
  <!-- SW:END:workflow -->
68
68
 
69
- <!-- SW:SECTION:reflect version="1.0.143" -->
69
+ <!-- SW:SECTION:reflect version="1.0.144" -->
70
70
  ## Skill Memories
71
71
 
72
72
  SpecWeave learns from corrections. Learnings saved here automatically. Edit or delete as needed.
@@ -79,7 +79,7 @@ SpecWeave learns from corrections. Learnings saved here automatically. Edit or d
79
79
  <!-- Auto-captured by SpecWeave reflect. Edit or delete as needed. -->
80
80
  <!-- Learnings are organized by skill name. User edits override SpecWeave defaults. -->
81
81
 
82
- <!-- SW:SECTION:context version="1.0.143" -->
82
+ <!-- SW:SECTION:context version="1.0.144" -->
83
83
  ## Context
84
84
 
85
85
  **Before implementing**: Check ADRs at `.specweave/docs/internal/architecture/adr/`
@@ -87,7 +87,7 @@ SpecWeave learns from corrections. Learnings saved here automatically. Edit or d
87
87
  **Load context**: `/sw:context <topic>` loads relevant living docs into conversation
88
88
  <!-- SW:END:context -->
89
89
 
90
- <!-- SW:SECTION:structure version="1.0.143" -->
90
+ <!-- SW:SECTION:structure version="1.0.144" -->
91
91
  ## Structure
92
92
 
93
93
  ```
@@ -102,7 +102,7 @@ SpecWeave learns from corrections. Learnings saved here automatically. Edit or d
102
102
  **Everything else → subfolders**: `reports/` | `logs/` | `scripts/` | `backups/`
103
103
  <!-- SW:END:structure -->
104
104
 
105
- <!-- SW:SECTION:taskformat version="1.0.143" -->
105
+ <!-- SW:SECTION:taskformat version="1.0.144" -->
106
106
  ## Task Format
107
107
 
108
108
  ```markdown
@@ -112,7 +112,7 @@ SpecWeave learns from corrections. Learnings saved here automatically. Edit or d
112
112
  ```
113
113
  <!-- SW:END:taskformat -->
114
114
 
115
- <!-- SW:SECTION:secrets version="1.0.143" -->
115
+ <!-- SW:SECTION:secrets version="1.0.144" -->
116
116
  ## Secrets Check
117
117
 
118
118
  **BEFORE CLI tools**: Check existing config first!
@@ -126,7 +126,7 @@ gh auth status
126
126
  **SECURITY**: NEVER use `grep TOKEN .env` without `-q` flag - it exposes credentials in terminal!
127
127
  <!-- SW:END:secrets -->
128
128
 
129
- <!-- SW:SECTION:syncing version="1.0.143" -->
129
+ <!-- SW:SECTION:syncing version="1.0.144" -->
130
130
  ## External Sync (GitHub/JIRA/ADO)
131
131
 
132
132
  **Commands**: `/sw-github:sync {id}` (issues) | `/sw:sync-specs` (living docs only)
@@ -136,7 +136,7 @@ gh auth status
136
136
  **Config**: Set `sync.github.enabled: true` + `canUpdateExternalItems: true` in config.json
137
137
  <!-- SW:END:syncing -->
138
138
 
139
- <!-- SW:SECTION:testing version="1.0.143" -->
139
+ <!-- SW:SECTION:testing version="1.0.144" -->
140
140
  ## Testing
141
141
 
142
142
  BDD in tasks.md | Unit >80% | `.test.ts` (Vitest)
@@ -148,7 +148,34 @@ vi.mock('./module', () => ({ func: mockFn }));
148
148
  ```
149
149
  <!-- SW:END:testing -->
150
150
 
151
- <!-- SW:SECTION:api version="1.0.143" -->
151
+ <!-- SW:SECTION:tdd version="1.0.145" -->
152
+ ## TDD Mode (Test-Driven Development)
153
+
154
+ **⚠️ MANDATORY CHECK**: Before ANY implementation, check TDD config:
155
+
156
+ ```bash
157
+ jq -r '.testing.defaultTestMode // "test-after"' .specweave/config.json
158
+ ```
159
+
160
+ **If result is "TDD"** → MUST follow RED-GREEN-REFACTOR:
161
+
162
+ | Phase | Action | Rule |
163
+ |-------|--------|------|
164
+ | 🔴 RED | Write FAILING test | Test MUST fail initially |
165
+ | 🟢 GREEN | MINIMAL implementation | Only code needed to pass |
166
+ | 🔵 REFACTOR | Improve quality | Keep tests green |
167
+
168
+ **TDD Commands**: `/sw:tdd-red` | `/sw:tdd-green` | `/sw:tdd-refactor` | `/sw:tdd-cycle`
169
+
170
+ **Auto Mode + TDD**: Use `/sw:auto --tdd` for strict enforcement
171
+
172
+ **Enforcement** (set `testing.tddEnforcement` in config.json):
173
+ - `strict`: BLOCKS if RED not done before GREEN
174
+ - `warn`: Warning only (default)
175
+ - `off`: No enforcement
176
+ <!-- SW:END:tdd -->
177
+
178
+ <!-- SW:SECTION:api version="1.0.144" -->
152
179
  ## API Development (OpenAPI-First)
153
180
 
154
181
  **For API projects only.** Commands: `/sw:api-docs --all` | `--openapi` | `--postman` | `--validate`
@@ -156,13 +183,13 @@ vi.mock('./module', () => ({ func: mockFn }));
156
183
  Enable in config: `{"apiDocs":{"enabled":true,"openApiPath":"openapi.yaml"}}`
157
184
  <!-- SW:END:api -->
158
185
 
159
- <!-- SW:SECTION:limits version="1.0.143" -->
186
+ <!-- SW:SECTION:limits version="1.0.144" -->
160
187
  ## Limits
161
188
 
162
189
  **Max 1500 lines/file** — extract before adding
163
190
  <!-- SW:END:limits -->
164
191
 
165
- <!-- SW:SECTION:troubleshooting version="1.0.143" -->
192
+ <!-- SW:SECTION:troubleshooting version="1.0.144" -->
166
193
  ## Troubleshooting
167
194
 
168
195
  | Issue | Fix |
@@ -178,7 +205,7 @@ Enable in config: `{"apiDocs":{"enabled":true,"openApiPath":"openapi.yaml"}}`
178
205
  | Marketplace shows 0 | Normal with auto-load; `/plugin list` shows actual |
179
206
  <!-- SW:END:troubleshooting -->
180
207
 
181
- <!-- SW:SECTION:lazyloading version="1.0.143" -->
208
+ <!-- SW:SECTION:lazyloading version="1.0.144" -->
182
209
  ## Plugin Auto-Loading
183
210
 
184
211
  Plugins load automatically based on project type and keywords. Manual install if needed:
@@ -192,7 +219,7 @@ export SPECWEAVE_DISABLE_AUTO_LOAD=1 # Disable auto-load
192
219
  **Token savings**: Core ~3-5K tokens vs all plugins ~60K+
193
220
  <!-- SW:END:lazyloading -->
194
221
 
195
- <!-- SW:SECTION:principles version="1.0.143" -->
222
+ <!-- SW:SECTION:principles version="1.0.144" -->
196
223
  ## Principles
197
224
 
198
225
  1. **Spec-first**: `/sw:increment` before coding
@@ -201,7 +228,7 @@ export SPECWEAVE_DISABLE_AUTO_LOAD=1 # Disable auto-load
201
228
  4. **Traceable**: All work → specs → ACs
202
229
  <!-- SW:END:principles -->
203
230
 
204
- <!-- SW:SECTION:linking version="1.0.143" -->
231
+ <!-- SW:SECTION:linking version="1.0.144" -->
205
232
  ## Bidirectional Linking
206
233
 
207
234
  Tasks ↔ User Stories auto-linked via AC-IDs: `AC-US1-01` → `US-001`
@@ -209,7 +236,7 @@ Tasks ↔ User Stories auto-linked via AC-IDs: `AC-US1-01` → `US-001`
209
236
  Task format: `**AC**: AC-US1-01, AC-US1-02` (CRITICAL for linking)
210
237
  <!-- SW:END:linking -->
211
238
 
212
- <!-- SW:SECTION:mcp version="1.0.143" -->
239
+ <!-- SW:SECTION:mcp version="1.0.144" -->
213
240
  ## External Services
214
241
 
215
242
  **Priority**: CLI tools first (simpler) → MCP for complex integrations
@@ -231,7 +258,7 @@ claude mcp add --transport stdio postgres -- npx -y @modelcontextprotocol/server
231
258
  MCP supports lazy-loading (auto mode) - tools load on-demand when >10% context.
232
259
  <!-- SW:END:mcp -->
233
260
 
234
- <!-- SW:SECTION:auto version="1.0.143" -->
261
+ <!-- SW:SECTION:auto version="1.0.144" -->
235
262
  ## Auto Mode
236
263
 
237
264
  **Commands**: `/sw:auto` (start) | `/sw:auto-status` (check) | `/sw:cancel-auto` (emergency only)
@@ -243,7 +270,7 @@ MCP supports lazy-loading (auto mode) - tools load on-demand when >10% context.
243
270
  **STOP & ASK** if: Spec conflicts | Task unnecessary | Requirement ambiguous
244
271
  <!-- SW:END:auto -->
245
272
 
246
- <!-- SW:SECTION:docs version="1.0.143" -->
273
+ <!-- SW:SECTION:docs version="1.0.144" -->
247
274
  ## Docs
248
275
 
249
276
  [spec-weave.com](https://spec-weave.com)
@@ -1 +1 @@
1
- {"version":3,"file":"gitignore-generator.d.ts","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/gitignore-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACtC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACrC,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,MAAM,YAAY,GACpB,UAAU,GACV,WAAW,GACX,YAAY,GACZ,UAAU,GACV,SAAS,GACT,SAAS,GACT,UAAU,CAAC;AAEf;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;CACzC;AA4dD;;GAEG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAqE7B;AA+BD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,kBAAkB,EAC7B,OAAO,CAAC,EAAE;IACR,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B,GACA,MAAM,CAsDR;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAGjB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAC9C,OAAO,CAAC;IAAE,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CA4CrE;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IACR,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,OAAO,CAAC;IACT,SAAS,EAAE,kBAAkB,CAAC;IAC9B,MAAM,EAAE;QAAE,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACpE,CAAC,CA+BD"}
1
+ {"version":3,"file":"gitignore-generator.d.ts","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/gitignore-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACtC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACrC,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,MAAM,YAAY,GACpB,UAAU,GACV,WAAW,GACX,YAAY,GACZ,UAAU,GACV,SAAS,GACT,SAAS,GACT,UAAU,CAAC;AAEf;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;CACzC;AA+dD;;GAEG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAqE7B;AA+BD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,kBAAkB,EAC7B,OAAO,CAAC,EAAE;IACR,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B,GACA,MAAM,CAsDR;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAGjB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAC9C,OAAO,CAAC;IAAE,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CA4CrE;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IACR,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,OAAO,CAAC;IACT,SAAS,EAAE,kBAAkB,CAAC;IAC9B,MAAM,EAAE;QAAE,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACpE,CAAC,CA+BD"}
@@ -341,6 +341,9 @@ const GITIGNORE_ENTRIES = {
341
341
  ],
342
342
  // === Common entries (always included) ===
343
343
  common: [
344
+ '# Dependencies',
345
+ 'node_modules/',
346
+ '',
344
347
  '# Environment',
345
348
  '.env',
346
349
  '.env.local',
@@ -1 +1 @@
1
- {"version":3,"file":"gitignore-generator.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/gitignore-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitignore-generator.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/gitignore-generator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "specweave",
3
- "version": "1.0.144",
3
+ "version": "1.0.145",
4
4
  "description": "Spec-driven development framework for Claude Code. AI-native workflow with living documentation, intelligent agents, and multilingual support (9 languages). Enterprise-grade traceability with permanent specs and temporary increments.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -139,6 +139,72 @@ if [[ "$PLUGIN_AUTOLOAD_ENABLED" == "true" ]] && [[ "${SPECWEAVE_DISABLE_AUTO_LO
139
139
  # Escape prompt for shell (replace quotes and special chars)
140
140
  ESCAPED_PROMPT=$(printf '%s' "$PROMPT" | sed "s/'/'\\\\''/g")
141
141
 
142
+ # v1.0.144: Map matched keywords to likely plugins for user feedback
143
+ # This is a fast local mapping (no LLM) for immediate visibility
144
+ SUGGESTED_PLUGINS=""
145
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(react|vue|angular|svelte|nextjs|nuxt|tailwind|dashboard|component|frontend|ui)"; then
146
+ SUGGESTED_PLUGINS="sw-frontend"
147
+ fi
148
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(api|graphql|express|fastapi|django|nestjs|spring|backend|database|postgres|mongodb|redis)"; then
149
+ [[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
150
+ SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-backend"
151
+ fi
152
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(test|tdd|vitest|jest|playwright|cypress)"; then
153
+ [[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
154
+ SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-testing"
155
+ fi
156
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(kubernetes|k8s|helm|argocd)"; then
157
+ [[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
158
+ SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-k8s"
159
+ fi
160
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(docker|terraform|aws|azure|gcp)"; then
161
+ [[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
162
+ SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-infra"
163
+ fi
164
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(github)"; then
165
+ [[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
166
+ SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-github"
167
+ fi
168
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(jira)"; then
169
+ [[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
170
+ SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-jira"
171
+ fi
172
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(ado|azure.?devops)"; then
173
+ [[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
174
+ SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-ado"
175
+ fi
176
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(mobile|expo|ios|android|flutter)"; then
177
+ [[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
178
+ SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-mobile"
179
+ fi
180
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(ml|ai|pytorch|tensorflow|mlops|llm)"; then
181
+ [[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
182
+ SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-ml"
183
+ fi
184
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(kafka|confluent)"; then
185
+ [[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
186
+ SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-kafka"
187
+ fi
188
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(stripe|paypal|payment)"; then
189
+ [[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
190
+ SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-payments"
191
+ fi
192
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(release|changelog)"; then
193
+ [[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
194
+ SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-release"
195
+ fi
196
+ if echo "$MATCHED_KEYWORDS" | grep -qiE "(diagram|mermaid)"; then
197
+ [[ -n "$SUGGESTED_PLUGINS" ]] && SUGGESTED_PLUGINS="$SUGGESTED_PLUGINS, "
198
+ SUGGESTED_PLUGINS="${SUGGESTED_PLUGINS}sw-diagrams"
199
+ fi
200
+
201
+ # Store suggested plugins for later feedback (if increment assist doesn't trigger)
202
+ # This variable will be checked after all early exits
203
+ AUTOLOAD_PLUGINS_MSG=""
204
+ if [[ -n "$SUGGESTED_PLUGINS" ]]; then
205
+ AUTOLOAD_PLUGINS_MSG="🔌 **Auto-loading plugins**: ${SUGGESTED_PLUGINS}\\n\\n*Detected from keywords: ${MATCHED_KEYWORDS%%-}*\\n\\n---\\n"
206
+ fi
207
+
142
208
  # Run with timeout (10s max per T-011) and log errors for debugging
143
209
  # T-011: Background timeout is 10s; hook itself returns immediately (<500ms)
144
210
  # Graceful degradation: errors logged but don't block Claude
@@ -306,8 +372,14 @@ fi
306
372
 
307
373
  # CRITICAL: Exit immediately for non-SpecWeave prompts
308
374
  # This covers 90%+ of prompts with <5ms overhead
375
+ # v1.0.144: Still show plugin autoload message if plugins are being loaded
309
376
  if ! echo "$PROMPT" | grep -qE "(specweave|/sw:|increment|add|create|implement|build|develop)"; then
310
- echo '{"decision":"approve"}'
377
+ if [[ -n "$AUTOLOAD_PLUGINS_MSG" ]]; then
378
+ # Show plugin loading feedback even for non-SpecWeave prompts
379
+ jq -nc --arg msg "$AUTOLOAD_PLUGINS_MSG" '{"decision":"approve","systemMessage":$msg}'
380
+ else
381
+ echo '{"decision":"approve"}'
382
+ fi
311
383
  exit 0
312
384
  fi
313
385
 
@@ -315,9 +387,15 @@ fi
315
387
  # EARLY EXIT FOR NON-SPECWEAVE PROJECTS (T-006 - v0.26.15)
316
388
  # ==============================================================================
317
389
  # Even if prompt contains SpecWeave keywords, exit if no .specweave directory
390
+ # v1.0.144: Still show plugin autoload message for non-SpecWeave projects
318
391
  SPECWEAVE_DIR=".specweave"
319
392
  if [[ ! -d "$SPECWEAVE_DIR" ]]; then
320
- echo '{"decision":"approve"}'
393
+ if [[ -n "$AUTOLOAD_PLUGINS_MSG" ]]; then
394
+ # Show plugin loading feedback even for non-SpecWeave projects
395
+ jq -nc --arg msg "$AUTOLOAD_PLUGINS_MSG" '{"decision":"approve","systemMessage":$msg}'
396
+ else
397
+ echo '{"decision":"approve"}'
398
+ fi
321
399
  exit 0
322
400
  fi
323
401
 
@@ -831,11 +909,25 @@ fi
831
909
  # ==============================================================================
832
910
  # OUTPUT: Approve with context or no context
833
911
  # ==============================================================================
912
+ # v1.0.144: Prepend plugin auto-loading message if plugins are being loaded
913
+ # This gives users visible feedback that plugins are being auto-loaded
834
914
 
915
+ FINAL_MESSAGE=""
916
+
917
+ # Add plugin auto-loading message if set (from earlier keyword detection)
918
+ if [[ -n "$AUTOLOAD_PLUGINS_MSG" ]]; then
919
+ FINAL_MESSAGE="$AUTOLOAD_PLUGINS_MSG"
920
+ fi
921
+
922
+ # Add context if available
835
923
  if [[ -n "$CONTEXT" ]]; then
836
- # Escape context for JSON (newlines, quotes)
837
- CONTEXT_ESCAPED=$(echo "$CONTEXT" | sed 's/\\/\\\\/g; s/"/\\"/g' | awk '{printf "%s\\n", $0}' | sed 's/\\n$//')
838
- printf '{"decision":"approve","systemMessage":"%s"}\n' "$CONTEXT_ESCAPED"
924
+ FINAL_MESSAGE="${FINAL_MESSAGE}${CONTEXT}"
925
+ fi
926
+
927
+ if [[ -n "$FINAL_MESSAGE" ]]; then
928
+ # Escape for JSON (newlines, quotes)
929
+ FINAL_MESSAGE_ESCAPED=$(echo "$FINAL_MESSAGE" | sed 's/\\/\\\\/g; s/"/\\"/g' | awk '{printf "%s\\n", $0}' | sed 's/\\n$//')
930
+ printf '{"decision":"approve","systemMessage":"%s"}\n' "$FINAL_MESSAGE_ESCAPED"
839
931
  else
840
932
  echo '{"decision":"approve"}'
841
933
  fi
@@ -144,6 +144,67 @@ vi.mock('./module', () => ({ func: mockFn }));
144
144
  ```
145
145
  <!-- /SECTION -->
146
146
 
147
+ <!-- SECTION:tdd -->
148
+ ## TDD Mode (Test-Driven Development)
149
+
150
+ **When `testing.defaultTestMode: "TDD"` is configured**, follow RED-GREEN-REFACTOR discipline:
151
+
152
+ ### TDD Workflow (MANDATORY when configured)
153
+
154
+ ```
155
+ 1. RED: Write FAILING test first → verify it fails
156
+ 2. GREEN: Write MINIMAL code to pass → no extra features
157
+ 3. REFACTOR: Improve code quality → keep tests green
158
+ ```
159
+
160
+ ### Check TDD Mode Before Implementation
161
+
162
+ ```bash
163
+ # Check if TDD mode is enabled
164
+ jq -r '.testing.defaultTestMode' .specweave/config.json
165
+ # Returns: "TDD" | "test-first" | "test-after"
166
+ ```
167
+
168
+ ### TDD Commands
169
+
170
+ | Command | Phase | Purpose |
171
+ |---------|-------|---------|
172
+ | `/sw:tdd-red` | RED | Write failing tests |
173
+ | `/sw:tdd-green` | GREEN | Minimal implementation |
174
+ | `/sw:tdd-refactor` | REFACTOR | Code quality improvement |
175
+ | `/sw:tdd-cycle` | ALL | Full orchestrated workflow |
176
+
177
+ ### Enforcement Levels
178
+
179
+ Set `testing.tddEnforcement` in config.json:
180
+
181
+ | Level | Behavior |
182
+ |-------|----------|
183
+ | `strict` | **BLOCKS** task completion if RED not done before GREEN |
184
+ | `warn` | Shows warning but allows continuation (default) |
185
+ | `off` | No enforcement |
186
+
187
+ ### TDD Task Format
188
+
189
+ When TDD is enabled, tasks include phase markers:
190
+
191
+ ```markdown
192
+ ### T-001: [RED] Write auth service tests
193
+ **Depends On**: None
194
+ **Status**: [ ] pending
195
+
196
+ ### T-002: [GREEN] Implement auth service
197
+ **Depends On**: T-001
198
+ **Status**: [ ] pending
199
+
200
+ ### T-003: [REFACTOR] Extract token utilities
201
+ **Depends On**: T-002
202
+ **Status**: [ ] pending
203
+ ```
204
+
205
+ **Rule**: Complete dependencies BEFORE dependent tasks (RED before GREEN).
206
+ <!-- /SECTION -->
207
+
147
208
  <!-- SECTION:api -->
148
209
  ## API Development (OpenAPI-First)
149
210
 
@@ -234,6 +295,11 @@ MCP supports lazy-loading (auto mode) - tools load on-demand when >10% context.
234
295
 
235
296
  **Pattern**: IMPLEMENT → TEST → FAIL? → FIX → PASS → NEXT
236
297
 
298
+ **TDD in Auto Mode**: If `testing.defaultTestMode: "TDD"` is configured:
299
+ - Use `/sw:auto --tdd` for strict enforcement (ALL tests must pass)
300
+ - Auto mode reads config and displays TDD banner
301
+ - Follow RED → GREEN → REFACTOR order for task triplets
302
+
237
303
  **Pragmatic completion**: MUST (MVP, security, data integrity) | SHOULD (edge cases) | CAN SKIP (conflicts - ask user)
238
304
 
239
305
  **STOP & ASK** if: Spec conflicts | Task unnecessary | Requirement ambiguous