specweave 0.10.0 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CLAUDE.md CHANGED
@@ -992,6 +992,59 @@ When you create increments (e.g., `/specweave:increment "Add Stripe billing"`):
992
992
  - Install later → Skills won't be available until plugin installed (can add mid-work)
993
993
  - Skip → Increment creation continues (not blocked, but capabilities limited)
994
994
 
995
+ #### Phase 2.5: Just-in-Time Plugin Installation (NEW! v0.10.0+)
996
+
997
+ **The Critical Gap**: Users request features that require plugins (e.g., "preview docs locally"), but those plugins aren't installed yet. Instead of failing silently or recommending manual installation, SpecWeave now **automatically installs plugins just-in-time**.
998
+
999
+ **How it works** (via `plugin-installer` skill):
1000
+
1001
+ 1. **Automatic Detection**
1002
+ - User requests a feature (e.g., "Show me the internal docs in a browser")
1003
+ - `plugin-installer` skill detects keywords: "docs", "browser" → needs `specweave-docs-preview`
1004
+ - Checks if plugin is installed: `/plugin list --installed`
1005
+
1006
+ 2. **Auto-Installation**
1007
+ ```
1008
+ 🔌 Detected need for specweave-docs-preview plugin
1009
+
1010
+ 📦 Installing specweave-docs-preview...
1011
+ This plugin provides: Beautiful Docusaurus UI for browsing .specweave/docs/
1012
+
1013
+ ✅ Plugin installed successfully!
1014
+ You can now:
1015
+ • Browse documentation in beautiful UI
1016
+ • Hot reload when editing markdown files
1017
+ • Render Mermaid diagrams automatically
1018
+
1019
+ Proceeding to launch docs preview server...
1020
+ ```
1021
+
1022
+ 3. **Seamless Execution**
1023
+ - Plugin installed automatically (no manual intervention)
1024
+ - Feature executes immediately
1025
+ - User sees clear notification of what was installed and why
1026
+
1027
+ **Supported Just-in-Time Plugins**:
1028
+
1029
+ | User Keywords | Auto-Installed Plugin | Capabilities |
1030
+ |--------------|----------------------|--------------|
1031
+ | "preview docs", "documentation UI", "Docusaurus" | `specweave-docs-preview` | Beautiful docs UI, hot reload |
1032
+ | "React", "Next.js", "frontend", "UI component" | `specweave-frontend` | Frontend expert, design systems |
1033
+ | "K8s", "Kubernetes", "Helm", "deploy" | `specweave-kubernetes` | K8s expert, manifest generation |
1034
+ | "TensorFlow", "PyTorch", "ML model" | `specweave-ml` | ML pipelines, training, deployment |
1035
+ | "Stripe", "billing", "payment" | `specweave-payments` | Payment expert, Stripe integration |
1036
+ | "Playwright", "E2E testing", "browser automation" | `specweave-testing` | E2E testing infrastructure |
1037
+ | "Figma", "design tokens", "prototype" | `specweave-figma` | Design system integration |
1038
+ | "Mermaid", "C4 model", "architecture diagram" | `specweave-diagrams` | Diagram generation |
1039
+
1040
+ **Key Benefits**:
1041
+ - ✅ **Zero friction**: No manual plugin installation needed
1042
+ - ✅ **Proactive**: Detects requirements automatically based on user request
1043
+ - ✅ **Clear UX**: Users understand what's being installed and why
1044
+ - ✅ **Fail-safe**: Handles installation errors gracefully with troubleshooting steps
1045
+
1046
+ **See**: `plugins/specweave/skills/plugin-installer/SKILL.md` for complete keyword map and workflow
1047
+
995
1048
  #### Phase 3: Implementation (Auto-Activation)
996
1049
 
997
1050
  When plugins are installed:
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAoBA,UAAU,WAAW;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,WAAW,CAC/B,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,IAAI,CAAC,CA6qBf"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAoBA,UAAU,WAAW;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,WAAW,CAC/B,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,IAAI,CAAC,CAysBf"}
@@ -441,7 +441,35 @@ export async function initCommand(projectName, options = {}) {
441
441
  enableDocsPreview = response.enableDocsPreview;
442
442
  if (enableDocsPreview) {
443
443
  console.log(chalk.green(' ✔ Documentation preview enabled'));
444
- console.log(chalk.gray(' → Preview with: /specweave:docs preview'));
444
+ // 🚨 CRITICAL FIX: Actually install the docs-preview plugin!
445
+ // User said Yes → Install plugin immediately (like issue tracker setup)
446
+ if (detectClaudeCli()) {
447
+ console.log(chalk.gray(' → Installing specweave-docs-preview plugin...'));
448
+ try {
449
+ const result = execFileNoThrowSync('claude', [
450
+ 'plugin',
451
+ 'install',
452
+ 'specweave-docs-preview' // NO @marketplace suffix
453
+ ]);
454
+ if (result.success) {
455
+ console.log(chalk.green(' ✔ specweave-docs-preview plugin installed'));
456
+ console.log(chalk.gray(' → Preview with: /specweave:docs preview'));
457
+ }
458
+ else {
459
+ console.log(chalk.yellow(' ⚠️ Plugin install failed (can install later)'));
460
+ console.log(chalk.gray(' → Try manually: /plugin install specweave-docs-preview'));
461
+ }
462
+ }
463
+ catch (error) {
464
+ console.log(chalk.yellow(' ⚠️ Plugin install failed (can install later)'));
465
+ console.log(chalk.gray(' → Try manually: /plugin install specweave-docs-preview'));
466
+ }
467
+ }
468
+ else {
469
+ console.log(chalk.gray(' → Preview with: /specweave:docs preview'));
470
+ console.log(chalk.yellow(' ⚠️ Claude CLI not detected - install plugin manually:'));
471
+ console.log(chalk.gray(' → /plugin install specweave-docs-preview'));
472
+ }
445
473
  }
446
474
  else {
447
475
  console.log(chalk.gray(' → Skipped (can enable later in .specweave/config.json)'));
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"external-resource-validator.d.ts","sourceRoot":"","sources":["../../src/utils/external-resource-validator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAeH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE;QACP,MAAM,EAAE,OAAO,CAAC;QAChB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,MAAM,EAAE;QACN,KAAK,EAAE,OAAO,CAAC;QACf,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC9C,CAAC;IACF,UAAU,EAAE,OAAO,CAAC;CACrB;AAMD,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,GAAE,MAAe;IASpC;;OAEG;IACH,OAAO,CAAC,OAAO;IAwBf;;OAEG;YACW,SAAS;IAyBvB;;OAEG;YACW,WAAW;IAmBzB;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAa7C;;OAEG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAanE;;OAEG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAwBlF;;OAEG;YACW,gBAAgB;IAS9B;;OAEG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAa3D;;OAEG;IACG,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAa5D;;OAEG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAuB5E;;OAEG;YACW,iBAAiB;IAgB/B;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,oBAAoB,CAAC;CA0IhD;AAMD;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,GAAE,MAAe,GACvB,OAAO,CAAC,oBAAoB,CAAC,CAG/B"}
1
+ {"version":3,"file":"external-resource-validator.d.ts","sourceRoot":"","sources":["../../src/utils/external-resource-validator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAeH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE;QACP,MAAM,EAAE,OAAO,CAAC;QAChB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,MAAM,EAAE;QACN,KAAK,EAAE,OAAO,CAAC;QACf,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC9C,CAAC;IACF,UAAU,EAAE,OAAO,CAAC;CACrB;AAMD,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,GAAE,MAAe;IASpC;;OAEG;IACH,OAAO,CAAC,OAAO;IAwBf;;OAEG;YACW,SAAS;IAyBvB;;OAEG;YACW,WAAW;IAmBzB;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAa7C;;OAEG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAanE;;OAEG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAwBlF;;OAEG;YACW,gBAAgB;IAS9B;;OAEG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAa3D;;OAEG;IACG,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAa5D;;OAEG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IA2B5E;;OAEG;YACW,iBAAiB;IAgB/B;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,oBAAoB,CAAC;CAyJhD;AAMD;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,GAAE,MAAe,GACvB,OAAO,CAAC,oBAAoB,CAAC,CAG/B"}
@@ -210,6 +210,10 @@ export class JiraResourceValidator {
210
210
  name: boardName,
211
211
  type: 'scrum',
212
212
  filterId: await this.getOrCreateFilter(projectKey),
213
+ location: {
214
+ type: 'project',
215
+ projectKeyOrId: projectKey,
216
+ },
213
217
  };
214
218
  try {
215
219
  const board = await this.callJiraApi('board', 'POST', body);
@@ -325,44 +329,59 @@ export class JiraResourceValidator {
325
329
  name: project.name,
326
330
  };
327
331
  }
328
- // 2. Validate boards
332
+ // 2. Validate boards (smart per-board detection)
329
333
  if (boardsConfig) {
330
334
  console.log(chalk.gray(`Checking boards: ${boardsConfig}...`));
331
- const boardIds = boardsConfig.split(',').map((b) => b.trim());
332
- const isNumeric = boardIds.every((b) => /^\d+$/.test(b));
333
- if (isNumeric) {
334
- // Board IDs provided - validate they exist
335
- for (const boardId of boardIds) {
336
- const board = await this.checkBoard(parseInt(boardId, 10));
335
+ const boardEntries = boardsConfig.split(',').map((b) => b.trim());
336
+ const finalBoardIds = [];
337
+ for (const entry of boardEntries) {
338
+ const isNumeric = /^\d+$/.test(entry);
339
+ if (isNumeric) {
340
+ // Entry is a board ID - validate it exists
341
+ const boardId = parseInt(entry, 10);
342
+ const board = await this.checkBoard(boardId);
337
343
  if (board) {
344
+ console.log(chalk.green(` ✅ Board ${boardId}: ${board.name} (exists)`));
338
345
  result.boards.existing.push(board.id);
346
+ finalBoardIds.push(board.id);
339
347
  }
340
348
  else {
341
- result.boards.missing.push(boardId);
349
+ console.log(chalk.yellow(` ⚠️ Board ${boardId}: Not found`));
350
+ result.boards.missing.push(entry);
342
351
  result.boards.valid = false;
343
352
  }
344
353
  }
345
- if (result.boards.missing.length > 0) {
346
- console.log(chalk.yellow(`⚠️ Boards not found: ${result.boards.missing.join(', ')}\n`));
347
- }
348
354
  else {
349
- console.log(chalk.green(`✅ All boards exist\n`));
355
+ // Entry is a board name - create it
356
+ console.log(chalk.blue(` 📦 Creating board: ${entry}...`));
357
+ try {
358
+ const board = await this.createBoard(entry, projectKey);
359
+ console.log(chalk.green(` ✅ Created: ${entry} (ID: ${board.id})`));
360
+ result.boards.created.push({ name: entry, id: board.id });
361
+ finalBoardIds.push(board.id);
362
+ }
363
+ catch (error) {
364
+ console.log(chalk.red(` ❌ Failed to create ${entry}: ${error.message}`));
365
+ result.boards.missing.push(entry);
366
+ result.boards.valid = false;
367
+ }
350
368
  }
351
369
  }
352
- else {
353
- // Board names provided - create boards and get IDs
354
- console.log(chalk.blue('📦 Creating boards from names...\n'));
355
- const boardNames = boardIds;
356
- const createdBoardIds = [];
357
- for (const boardName of boardNames) {
358
- const board = await this.createBoard(boardName, projectKey);
359
- result.boards.created.push({ name: boardName, id: board.id });
360
- createdBoardIds.push(board.id);
361
- }
362
- // Update .env with actual board IDs
363
- await this.updateEnv({ JIRA_BOARDS: createdBoardIds.join(',') });
364
- result.boards.existing = createdBoardIds;
370
+ // Update .env if any boards were created
371
+ if (result.boards.created.length > 0) {
372
+ console.log(chalk.blue('\n📝 Updating .env with board IDs...'));
373
+ await this.updateEnv({ JIRA_BOARDS: finalBoardIds.join(',') });
374
+ result.boards.existing = finalBoardIds;
365
375
  result.envUpdated = true;
376
+ console.log(chalk.green(`✅ Updated JIRA_BOARDS: ${finalBoardIds.join(',')}`));
377
+ }
378
+ // Summary
379
+ console.log();
380
+ if (result.boards.missing.length > 0) {
381
+ console.log(chalk.yellow(`⚠️ Issues found: ${result.boards.missing.length} board(s)\n`));
382
+ }
383
+ else {
384
+ console.log(chalk.green(`✅ All boards validated/created successfully\n`));
366
385
  }
367
386
  }
368
387
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"external-resource-validator.js","sourceRoot":"","sources":["../../src/utils/external-resource-validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"external-resource-validator.js","sourceRoot":"","sources":["../../src/utils/external-resource-validator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "specweave",
3
- "version": "0.10.0",
3
+ "version": "0.10.1",
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",
@@ -2,9 +2,9 @@
2
2
 
3
3
  **Purpose**: Quick reference for all available skills. Read this file BEFORE starting any task.
4
4
 
5
- **Last Updated**: 2025-11-03T04:18:05.042Z (auto-generated, do not edit manually)
5
+ **Last Updated**: 2025-11-10 (manually updated to include plugin-installer and plugin-expert)
6
6
 
7
- **Total Skills**: 12
7
+ **Total Skills**: 14
8
8
 
9
9
  ---
10
10
 
@@ -37,6 +37,26 @@ Step 4: Execute → Follow the increment planning workflow
37
37
 
38
38
  ### Framework Core
39
39
 
40
+ #### plugin-installer
41
+
42
+ **Description**: Proactive just-in-time plugin installation. Auto-detects when specialized plugins are needed (docs-preview, frontend, kubernetes, ML, payments, testing, etc.) and installs them automatically before use. Activates for preview docs, Docusaurus, React, Next.js, K8s, Kubernetes, Helm, TensorFlow, PyTorch, ML model, Stripe, billing, payment, Playwright, E2E testing, Figma, design system, ADO, Azure DevOps, infrastructure, Prometheus, Grafana, monitoring, Node.js, Python backend, REST API, cloud deployment, diagram, Mermaid, C4, architecture diagram.
43
+
44
+ **Activates for**: preview docs, documentation UI, Docusaurus, React, Next.js, frontend, UI component, K8s, Kubernetes, deploy, TensorFlow, ML model, Stripe, billing, E2E testing, Figma, diagram, architecture diagram
45
+
46
+ **Location**: `.claude/skills/plugin-installer/SKILL.md`
47
+
48
+ ---
49
+
50
+ #### plugin-expert
51
+
52
+ **Description**: Expert knowledge of Claude Code's plugin system, marketplace management, and installation commands. Activates for plugin installation, marketplace setup, plugin troubleshooting, plugin commands. Keywords plugin install, plugin marketplace, claude code plugins, plugin management, plugin errors, marketplace add, plugin list.
53
+
54
+ **Activates for**: plugin installation, marketplace setup, plugin troubleshooting, plugin commands, plugin install, plugin marketplace
55
+
56
+ **Location**: `.claude/skills/plugin-expert/SKILL.md`
57
+
58
+ ---
59
+
40
60
  #### context-loader
41
61
 
42
62
  **Description**: Explains how SpecWeave achieves context efficiency through Claude's native progressive disclosure mechanism and sub-agent parallelization. Skills load only when relevant, sub-agents isolate context. Activates when users ask about context loading, token usage, or how SpecWeave scales. Keywords: context loading, progressive disclosure, token efficiency, sub-agents, context management.
@@ -182,6 +202,7 @@ Step 4: Execute → Follow the increment planning workflow
182
202
 
183
203
  | Your Task | Relevant Skill | Keywords |
184
204
  |-----------|---------------|----------|
205
+ | "Preview internal docs" | `plugin-installer` | "preview docs", "Docusaurus", "documentation UI" |
185
206
  | "Plan a new feature" | `increment-planner` | "feature planning", "create increment" |
186
207
  | "Sync to JIRA" | `jira-sync` | "JIRA sync", "create JIRA issue" |
187
208
  | "Create diagram" | `diagrams-architect` | "architecture diagram", "C4 diagram" |
@@ -0,0 +1,340 @@
1
+ ---
2
+ name: plugin-installer
3
+ description: Proactive just-in-time plugin installation. Auto-detects when specialized plugins are needed (docs-preview, frontend, kubernetes, ML, payments, testing, etc.) and installs them automatically before use. Activates for preview docs, Docusaurus, React, Next.js, K8s, Kubernetes, Helm, TensorFlow, PyTorch, ML model, Stripe, billing, payment, Playwright, E2E testing, Figma, design system, ADO, Azure DevOps, infrastructure, Prometheus, Grafana, monitoring, Node.js, Python backend, REST API, cloud deployment, diagram, Mermaid, C4, architecture diagram.
4
+ ---
5
+
6
+ # Plugin Installer - Proactive Just-in-Time Plugin Installation
7
+
8
+ **Purpose**: Automatically detect when specialized SpecWeave plugins are needed and install them just-in-time, BEFORE attempting to use their features.
9
+
10
+ **When to Activate**: Whenever user requests functionality that requires a specific plugin (e.g., "preview docs", "deploy to K8s", "add React component", "train ML model", etc.)
11
+
12
+ ---
13
+
14
+ ## 🚨 CRITICAL: The Plugin Installation Gap
15
+
16
+ **The Problem**: Users request features that require plugins (e.g., "preview docs locally"), but those plugins are NOT installed. Claude tries to use plugin features anyway, which fails silently or produces incomplete results.
17
+
18
+ **The Solution**: This skill proactively detects plugin requirements, checks if plugins are installed, and auto-installs them BEFORE attempting to use their features.
19
+
20
+ ---
21
+
22
+ ## Plugin Detection Keywords Map
23
+
24
+ **Use this map to detect which plugin is needed based on user's request keywords:**
25
+
26
+ | User Keywords | Required Plugin | Installation Command |
27
+ |--------------|----------------|---------------------|
28
+ | **Documentation Preview** |
29
+ | "preview docs", "browse docs locally", "documentation UI", "Docusaurus server", "local docs preview" | `specweave-docs-preview` | `/plugin install specweave-docs-preview` |
30
+ | **Frontend Development** |
31
+ | "React", "Next.js", "Vue", "Angular", "frontend", "UI component", "design system", "Tailwind" | `specweave-frontend` | `/plugin install specweave-frontend` |
32
+ | **Kubernetes/DevOps** |
33
+ | "K8s", "Kubernetes", "Helm", "kubectl", "deploy", "container", "pod", "service", "ingress" | `specweave-kubernetes` | `/plugin install specweave-kubernetes` |
34
+ | **Machine Learning** |
35
+ | "TensorFlow", "PyTorch", "ML model", "training", "machine learning", "neural network", "dataset" | `specweave-ml` | `/plugin install specweave-ml` |
36
+ | **Payments** |
37
+ | "Stripe", "PayPal", "billing", "subscription", "payment", "checkout", "PCI compliance" | `specweave-payments` | `/plugin install specweave-payments` |
38
+ | **Testing** |
39
+ | "Playwright", "E2E testing", "browser automation", "visual regression", "test automation" | `specweave-testing` | `/plugin install specweave-testing` |
40
+ | **Figma/Design** |
41
+ | "Figma", "design tokens", "design system", "prototype", "wireframe", "mockup" | `specweave-figma` | `/plugin install specweave-figma` |
42
+ | **Backend Development** |
43
+ | "Node.js backend", "Python backend", ".NET", "Express", "FastAPI", "Django", "REST API" | `specweave-backend` | `/plugin install specweave-backend` |
44
+ | **Infrastructure** |
45
+ | "Hetzner", "cloud infrastructure", "Prometheus", "Grafana", "monitoring", "alerting", "SLO" | `specweave-infrastructure` | `/plugin install specweave-infrastructure` |
46
+ | **Architecture Diagrams** |
47
+ | "Mermaid diagram", "C4 model", "architecture diagram", "sequence diagram", "ER diagram" | `specweave-diagrams` | `/plugin install specweave-diagrams` |
48
+ | **Issue Trackers** (Usually auto-installed during init) |
49
+ | "GitHub Issues", "sync GitHub", "create issue", "PR automation" | `specweave-github` | `/plugin install specweave-github` |
50
+ | "Jira", "epic", "sprint", "story points", "Jira sync" | `specweave-jira` | `/plugin install specweave-jira` |
51
+ | "ADO", "Azure DevOps", "work items", "boards", "ADO sync" | `specweave-ado` | `/plugin install specweave-ado` |
52
+
53
+ ---
54
+
55
+ ## Workflow: Just-in-Time Plugin Installation
56
+
57
+ **CRITICAL**: Follow this workflow EVERY TIME you detect plugin keywords in user's request:
58
+
59
+ ### Step 1: Detect Plugin Requirement
60
+
61
+ When user mentions keywords from the map above, **IMMEDIATELY** check if the required plugin is needed.
62
+
63
+ **Example**:
64
+ ```
65
+ User: "Can you preview the internal docs locally?"
66
+
67
+ Keywords detected: "preview", "docs", "locally"
68
+ → Required plugin: specweave-docs-preview
69
+ ```
70
+
71
+ ### Step 2: Check if Plugin is Installed
72
+
73
+ ```bash
74
+ # Check installed plugins
75
+ /plugin list --installed
76
+ ```
77
+
78
+ **Parse the output** to see if the required plugin is in the list.
79
+
80
+ ### Step 3: Auto-Install if Missing
81
+
82
+ If the plugin is NOT installed:
83
+
84
+ ```bash
85
+ # Install the plugin
86
+ /plugin install <plugin-name>
87
+
88
+ # Example:
89
+ /plugin install specweave-docs-preview
90
+ ```
91
+
92
+ ### Step 4: Notify User (Clear and Friendly)
93
+
94
+ **Good notification format**:
95
+
96
+ ```
97
+ 🔌 Detected need for <plugin-name> plugin
98
+
99
+ 📦 Installing <plugin-name>...
100
+ This plugin provides: <brief description>
101
+
102
+ ✅ Plugin installed successfully!
103
+ You can now: <list capabilities>
104
+
105
+ Proceeding with your request...
106
+ ```
107
+
108
+ **Example**:
109
+
110
+ ```
111
+ 🔌 Detected need for specweave-docs-preview plugin
112
+
113
+ 📦 Installing specweave-docs-preview...
114
+ This plugin provides: Beautiful Docusaurus UI for browsing .specweave/docs/
115
+
116
+ ✅ Plugin installed successfully!
117
+ You can now:
118
+ • Browse documentation in beautiful UI
119
+ • Hot reload when editing markdown files
120
+ • Render Mermaid diagrams automatically
121
+
122
+ Proceeding to launch docs preview server...
123
+ ```
124
+
125
+ ### Step 5: Proceed with User's Request
126
+
127
+ **ONLY AFTER** the plugin is installed, proceed to use its features.
128
+
129
+ ---
130
+
131
+ ## Common Scenarios
132
+
133
+ ### Scenario 1: Documentation Preview
134
+
135
+ **User Request**: "Show me the internal docs in a nice UI"
136
+
137
+ **Workflow**:
138
+ ```
139
+ 1. Detect keywords: "docs", "UI"
140
+ → Required: specweave-docs-preview
141
+
142
+ 2. Check installed: /plugin list --installed
143
+ → Not found
144
+
145
+ 3. Install: /plugin install specweave-docs-preview
146
+
147
+ 4. Notify user:
148
+ 🔌 Installing specweave-docs-preview for beautiful docs UI...
149
+ ✅ Installed!
150
+
151
+ 5. Launch: /specweave:docs preview
152
+ ```
153
+
154
+ ### Scenario 2: Kubernetes Deployment
155
+
156
+ **User Request**: "Help me deploy this to Kubernetes"
157
+
158
+ **Workflow**:
159
+ ```
160
+ 1. Detect keywords: "deploy", "Kubernetes"
161
+ → Required: specweave-kubernetes
162
+
163
+ 2. Check installed: /plugin list --installed
164
+ → Not found
165
+
166
+ 3. Install: /plugin install specweave-kubernetes
167
+
168
+ 4. Notify user:
169
+ 🔌 Installing specweave-kubernetes for K8s deployment...
170
+ ✅ Installed! You can now generate manifests, Helm charts, and validate deployments.
171
+
172
+ 5. Proceed with K8s expert agent for deployment
173
+ ```
174
+
175
+ ### Scenario 3: React Component Development
176
+
177
+ **User Request**: "Create a new React component for user profile"
178
+
179
+ **Workflow**:
180
+ ```
181
+ 1. Detect keywords: "React", "component"
182
+ → Required: specweave-frontend
183
+
184
+ 2. Check installed: /plugin list --installed
185
+ → Not found
186
+
187
+ 3. Install: /plugin install specweave-frontend
188
+
189
+ 4. Notify user:
190
+ 🔌 Installing specweave-frontend for React development...
191
+ ✅ Installed! You can now use frontend expert agent and design system integration.
192
+
193
+ 5. Proceed with component creation
194
+ ```
195
+
196
+ ### Scenario 4: Machine Learning Pipeline
197
+
198
+ **User Request**: "Train a TensorFlow model for image classification"
199
+
200
+ **Workflow**:
201
+ ```
202
+ 1. Detect keywords: "TensorFlow", "model", "training"
203
+ → Required: specweave-ml
204
+
205
+ 2. Check installed: /plugin list --installed
206
+ → Not found
207
+
208
+ 3. Install: /plugin install specweave-ml
209
+
210
+ 4. Notify user:
211
+ 🔌 Installing specweave-ml for ML workflows...
212
+ ✅ Installed! You can now use ML expert agent for training pipelines and deployment.
213
+
214
+ 5. Proceed with ML pipeline setup
215
+ ```
216
+
217
+ ---
218
+
219
+ ## Error Handling
220
+
221
+ ### Plugin Installation Fails
222
+
223
+ If `/plugin install` fails:
224
+
225
+ ```
226
+ ❌ Failed to install <plugin-name>
227
+
228
+ Possible causes:
229
+ 1. Marketplace not registered
230
+ → Try: /plugin marketplace add anton-abyzov/specweave
231
+
232
+ 2. Network connectivity issues
233
+ → Check internet connection and retry
234
+
235
+ 3. Plugin doesn't exist
236
+ → Verify plugin name: /plugin list (shows all available plugins)
237
+
238
+ Would you like to:
239
+ a) Retry installation
240
+ b) Proceed without the plugin (limited capabilities)
241
+ c) Troubleshoot further
242
+ ```
243
+
244
+ ### Plugin Already Installed
245
+
246
+ If plugin is already installed, skip installation and proceed:
247
+
248
+ ```
249
+ ✅ <plugin-name> is already installed
250
+ Proceeding with your request...
251
+ ```
252
+
253
+ ---
254
+
255
+ ## Integration with Other Skills
256
+
257
+ **This skill should be consulted BEFORE other skills attempt to use plugin features.**
258
+
259
+ ### Example: increment-planner skill
260
+
261
+ When increment-planner detects plugin requirements (Step 6), it should:
262
+
263
+ 1. **Detect plugins** (as it already does)
264
+ 2. **Consult plugin-installer skill** (NEW!)
265
+ 3. **Auto-install missing plugins** (via this skill)
266
+ 4. **Then proceed** with increment planning
267
+
268
+ ### Example: docs-preview skill (hypothetical)
269
+
270
+ ```markdown
271
+ # BEFORE using Docusaurus features:
272
+
273
+ 1. Check if specweave-docs-preview is installed
274
+ → If not: Invoke plugin-installer skill
275
+ → Auto-install specweave-docs-preview
276
+
277
+ 2. Then launch Docusaurus server
278
+ ```
279
+
280
+ ---
281
+
282
+ ## Benefits of This Approach
283
+
284
+ ✅ **Zero friction**: Users don't need to manually install plugins
285
+ ✅ **Proactive**: Detects requirements automatically
286
+ ✅ **Clear UX**: Users see what's being installed and why
287
+ ✅ **Just-in-time**: Only installs plugins when actually needed
288
+ ✅ **Fail-safe**: Handles installation errors gracefully
289
+
290
+ ---
291
+
292
+ ## Testing This Skill
293
+
294
+ **Test Case 1: Docs Preview**
295
+ ```
296
+ User: "Show me the internal documentation in a browser"
297
+
298
+ Expected:
299
+ 1. Detects "documentation", "browser" → specweave-docs-preview
300
+ 2. Checks installed
301
+ 3. Auto-installs if missing
302
+ 4. Launches preview
303
+ ```
304
+
305
+ **Test Case 2: K8s Deployment**
306
+ ```
307
+ User: "Deploy this application to Kubernetes cluster"
308
+
309
+ Expected:
310
+ 1. Detects "Kubernetes" → specweave-kubernetes
311
+ 2. Checks installed
312
+ 3. Auto-installs if missing
313
+ 4. Proceeds with deployment
314
+ ```
315
+
316
+ **Test Case 3: React Development**
317
+ ```
318
+ User: "Add a React component for user settings"
319
+
320
+ Expected:
321
+ 1. Detects "React", "component" → specweave-frontend
322
+ 2. Checks installed
323
+ 3. Auto-installs if missing
324
+ 4. Proceeds with component creation
325
+ ```
326
+
327
+ ---
328
+
329
+ ## References
330
+
331
+ - **Plugin Expert Skill**: Consult for correct installation syntax
332
+ - **Official Docs**: https://code.claude.com/docs/en/plugins
333
+ - **SpecWeave Marketplace**: .claude-plugin/marketplace.json
334
+ - **CLAUDE.md**: Plugin architecture and detection phases
335
+
336
+ ---
337
+
338
+ **Key Principle**: ALWAYS install plugins BEFORE attempting to use their features. Never fail silently - always notify users of installation steps.
339
+
340
+ **Last Updated**: 2025-11-10 (v0.10.0)
@@ -41,22 +41,34 @@ JIRA_PROJECT=PROJECTKEY
41
41
  JIRA_BOARDS=1,2,3 # IDs (if exist) OR names (if creating)
42
42
  ```
43
43
 
44
- ### Two Modes for JIRA_BOARDS
44
+ ### Smart Per-Board Detection (Mixed Mode Support!)
45
45
 
46
- **Mode 1: Board IDs** (boards already exist):
46
+ **The system is smart enough to handle ANY combination of IDs and names:**
47
+
48
+ **All IDs** (validate existing boards):
47
49
  ```bash
48
50
  JIRA_BOARDS=1,2,3
49
51
  ```
50
- - System validates these IDs exist in Jira
51
- - If any ID doesn't exist, prompts to fix configuration
52
+ Validates boards 1, 2, 3 exist
52
53
 
53
- **Mode 2: Board Names** (boards need to be created):
54
+ **All Names** (create new boards):
54
55
  ```bash
55
56
  JIRA_BOARDS=Frontend,Backend,Mobile
56
57
  ```
57
- - System detects names (non-numeric)
58
- - Creates boards automatically
59
- - Updates .env with actual IDs: `JIRA_BOARDS=101,102,103`
58
+ Creates 3 boards, updates .env with IDs: `JIRA_BOARDS=101,102,103`
59
+
60
+ **Mixed IDs and Names** (smart handling!):
61
+ ```bash
62
+ JIRA_BOARDS=101,102,QA,Dashboard
63
+ ```
64
+ → Validates 101, 102 exist
65
+ → Creates "QA" and "Dashboard" boards
66
+ → Updates .env: `JIRA_BOARDS=101,102,103,104` (all IDs!)
67
+
68
+ **How it works**: Each entry is checked individually:
69
+ - Numeric (e.g., "123") → Validate ID exists
70
+ - Non-numeric (e.g., "QA") → Create board with that name
71
+ - After creation, .env is updated with ALL board IDs
60
72
 
61
73
  ## Validation Flow
62
74
 
@@ -107,9 +119,9 @@ Enter project name: My New Project
107
119
  ✅ Project created: PROJECTKEY (ID: 10005)
108
120
  ```
109
121
 
110
- ### Step 2: Board Validation
122
+ ### Step 2: Board Validation (Per-Board Smart Detection)
111
123
 
112
- **Scenario A: Board IDs Provided** (numeric values):
124
+ **Scenario A: All Board IDs** (all numeric):
113
125
  ```bash
114
126
  JIRA_BOARDS=1,2,3
115
127
  ```
@@ -117,40 +129,53 @@ JIRA_BOARDS=1,2,3
117
129
  **Validation**:
118
130
  ```
119
131
  Checking boards: 1,2,3...
132
+ ✅ Board 1: Frontend Board (exists)
133
+ ✅ Board 2: Backend Board (exists)
134
+ ⚠️ Board 3: Not found
120
135
 
121
- Board 1: Exists (Frontend Board)
122
- Board 2: ✅ Exists (Backend Board)
123
- Board 3: ❌ Not found
124
-
125
- ⚠️ Boards not found: 3
126
-
127
- Options:
128
- 1. Remove board 3 from configuration
129
- 2. Replace with correct board ID
130
- 3. Create new board
131
-
132
- Your choice [1]:
136
+ ⚠️ Issues found: 1 board(s)
133
137
  ```
134
138
 
135
- **Scenario B: Board Names Provided** (non-numeric):
139
+ **Scenario B: All Board Names** (all non-numeric):
136
140
  ```bash
137
141
  JIRA_BOARDS=Frontend,Backend,Mobile
138
142
  ```
139
143
 
140
144
  **Auto-creation**:
141
145
  ```
142
- 📦 Creating boards from names...
146
+ Checking boards: Frontend,Backend,Mobile...
147
+ 📦 Creating board: Frontend...
148
+ ✅ Created: Frontend (ID: 101)
149
+ 📦 Creating board: Backend...
150
+ ✅ Created: Backend (ID: 102)
151
+ 📦 Creating board: Mobile...
152
+ ✅ Created: Mobile (ID: 103)
143
153
 
144
- Creating board: Frontend in project PROJECTKEY...
145
- Board created: Frontend (ID: 101)
154
+ 📝 Updating .env with board IDs...
155
+ Updated JIRA_BOARDS: 101,102,103
146
156
 
147
- Creating board: Backend in project PROJECTKEY...
148
- ✅ Board created: Backend (ID: 102)
157
+ All boards validated/created successfully
158
+ ```
149
159
 
150
- Creating board: Mobile in project PROJECTKEY...
151
- ✅ Board created: Mobile (ID: 103)
160
+ **Scenario C: Mixed IDs and Names** (SMART!):
161
+ ```bash
162
+ JIRA_BOARDS=101,102,QA,Dashboard
163
+ ```
152
164
 
153
- Updated .env: JIRA_BOARDS=101,102,103
165
+ **Smart handling**:
166
+ ```
167
+ Checking boards: 101,102,QA,Dashboard...
168
+ ✅ Board 101: Frontend Board (exists)
169
+ ✅ Board 102: Backend Board (exists)
170
+ 📦 Creating board: QA...
171
+ ✅ Created: QA (ID: 103)
172
+ 📦 Creating board: Dashboard...
173
+ ✅ Created: Dashboard (ID: 104)
174
+
175
+ 📝 Updating .env with board IDs...
176
+ ✅ Updated JIRA_BOARDS: 101,102,103,104
177
+
178
+ ✅ All boards validated/created successfully
154
179
  ```
155
180
 
156
181
  ## Usage Examples
@@ -303,39 +328,50 @@ npx tsx src/utils/external-resource-validator.ts
303
328
  }
304
329
  ```
305
330
 
306
- ## Smart Board Creation Logic
331
+ ## Smart Board Creation Logic (Per-Board Detection)
307
332
 
308
333
  ### Detection Algorithm
309
334
 
310
335
  ```typescript
311
336
  // Parse JIRA_BOARDS from .env
312
- const boardsConfig = "Frontend,Backend,Mobile";
313
- const boardIds = boardsConfig.split(',').map(b => b.trim());
314
-
315
- // Check if all values are numeric
316
- const isNumeric = boardIds.every(b => /^\d+$/.test(b));
317
-
318
- if (isNumeric) {
319
- // Mode 1: Board IDs - validate existence
320
- for (const boardId of boardIds) {
321
- const exists = await checkBoard(parseInt(boardId));
322
- if (!exists) {
323
- console.error(`Board ${boardId} not found`);
337
+ const boardsConfig = "101,102,QA,Dashboard"; // Mixed!
338
+ const boardEntries = boardsConfig.split(',').map(b => b.trim());
339
+ const finalBoardIds = [];
340
+
341
+ // Check EACH board individually
342
+ for (const entry of boardEntries) {
343
+ const isNumeric = /^\d+$/.test(entry);
344
+
345
+ if (isNumeric) {
346
+ // Entry is a board ID - validate it exists
347
+ const boardId = parseInt(entry);
348
+ const board = await checkBoard(boardId);
349
+ if (board) {
350
+ console.log(`✅ Board ${boardId}: ${board.name} (exists)`);
351
+ finalBoardIds.push(boardId);
352
+ } else {
353
+ console.error(`⚠️ Board ${boardId}: Not found`);
324
354
  }
355
+ } else {
356
+ // Entry is a board name - create it
357
+ console.log(`📦 Creating board: ${entry}...`);
358
+ const board = await createBoard(entry, projectKey);
359
+ console.log(`✅ Created: ${entry} (ID: ${board.id})`);
360
+ finalBoardIds.push(board.id);
325
361
  }
326
- } else {
327
- // Mode 2: Board names - create boards
328
- const createdBoardIds = [];
329
- for (const boardName of boardIds) {
330
- const board = await createBoard(boardName, projectKey);
331
- createdBoardIds.push(board.id);
332
- }
362
+ }
333
363
 
334
- // Update .env with actual IDs
335
- updateEnv({ JIRA_BOARDS: createdBoardIds.join(',') });
364
+ // Update .env if any boards were created
365
+ if (createdBoardIds.length > 0) {
366
+ updateEnv({ JIRA_BOARDS: finalBoardIds.join(',') });
336
367
  }
337
368
  ```
338
369
 
370
+ **Key improvement**: Per-board detection instead of all-or-nothing!
371
+ - `JIRA_BOARDS=1,2,3` → Validates all IDs
372
+ - `JIRA_BOARDS=A,B,C` → Creates all boards
373
+ - `JIRA_BOARDS=1,2,C` → Validates 1,2, creates C (mixed!)
374
+
339
375
  ### Board Creation API
340
376
 
341
377
  **Jira REST API** (v3):
@@ -346,7 +382,11 @@ Content-Type: application/json
346
382
  {
347
383
  "name": "Frontend Board",
348
384
  "type": "scrum",
349
- "filterId": 10000 # Filter for project issues
385
+ "filterId": 10000, # Filter for project issues
386
+ "location": {
387
+ "type": "project",
388
+ "projectKeyOrId": "PROJECTKEY" # CRITICAL: Associates board with project
389
+ }
350
390
  }
351
391
 
352
392
  Response:
@@ -357,6 +397,8 @@ Response:
357
397
  }
358
398
  ```
359
399
 
400
+ **IMPORTANT**: The `location` field is **MANDATORY** to associate the board with a project. Without it, Jira creates the board but leaves it detached, requiring manual connection via the UI.
401
+
360
402
  **Filter creation** (required for board):
361
403
  ```bash
362
404
  POST /rest/api/3/filter
@@ -375,7 +417,7 @@ Response:
375
417
 
376
418
  ## Configuration Examples
377
419
 
378
- ### Example 1: Create Boards by Name
420
+ ### Example 1: All Names (Create Boards)
379
421
 
380
422
  **Before** (`.env`):
381
423
  ```bash
@@ -394,7 +436,7 @@ JIRA_BOARDS=101,102,103,104
394
436
  - Created 4 boards in Jira
395
437
  - Updated .env with actual board IDs
396
438
 
397
- ### Example 2: Validate Existing Board IDs
439
+ ### Example 2: All IDs (Validate Existing)
398
440
 
399
441
  **Before** (`.env`):
400
442
  ```bash
@@ -413,7 +455,28 @@ JIRA_BOARDS=1,2,3
413
455
  - Validated all boards exist
414
456
  - No changes needed
415
457
 
416
- ### Example 3: Fix Invalid Project
458
+ ### Example 3: Mixed IDs and Names (SMART!)
459
+
460
+ **Before** (`.env`):
461
+ ```bash
462
+ JIRA_PROJECT=PROJ
463
+ JIRA_BOARDS=101,102,QA,Dashboard
464
+ ```
465
+
466
+ **After validation**:
467
+ ```bash
468
+ JIRA_PROJECT=PROJ
469
+ JIRA_BOARDS=101,102,103,104
470
+ ```
471
+
472
+ **What happened**:
473
+ - Validated boards 101, 102 exist
474
+ - Created "QA" board (got ID 103)
475
+ - Created "Dashboard" board (got ID 104)
476
+ - Updated .env with ALL board IDs
477
+ - **This is the key feature** - you can mix existing IDs with new board names!
478
+
479
+ ### Example 4: Fix Invalid Project
417
480
 
418
481
  **Before** (`.env`):
419
482
  ```bash