specweave 0.17.15 → 0.17.17

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.
Files changed (200) hide show
  1. package/CLAUDE.md +405 -2495
  2. package/README.md +92 -2
  3. package/dist/locales/de/.gitkeep +0 -0
  4. package/dist/locales/de/cli.json +108 -0
  5. package/dist/locales/en/cli.json +287 -0
  6. package/dist/locales/en/errors.json +7 -0
  7. package/dist/locales/en/templates.json +6 -0
  8. package/dist/locales/es/.gitkeep +0 -0
  9. package/dist/locales/es/cli.json +41 -0
  10. package/dist/locales/fr/.gitkeep +0 -0
  11. package/dist/locales/fr/cli.json +108 -0
  12. package/dist/locales/ja/.gitkeep +0 -0
  13. package/dist/locales/ja/cli.json +108 -0
  14. package/dist/locales/ko/.gitkeep +0 -0
  15. package/dist/locales/ko/cli.json +108 -0
  16. package/dist/locales/pt/.gitkeep +0 -0
  17. package/dist/locales/pt/cli.json +108 -0
  18. package/dist/locales/ru/.gitkeep +0 -0
  19. package/dist/locales/ru/cli.json +269 -0
  20. package/dist/locales/zh/.gitkeep +0 -0
  21. package/dist/locales/zh/cli.json +108 -0
  22. package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts.map +1 -1
  23. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js +188 -36
  24. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js.map +1 -1
  25. package/dist/plugins/specweave-ado/lib/ado-status-sync.d.ts +54 -0
  26. package/dist/plugins/specweave-ado/lib/ado-status-sync.d.ts.map +1 -0
  27. package/dist/plugins/specweave-ado/lib/ado-status-sync.js +86 -0
  28. package/dist/plugins/specweave-ado/lib/ado-status-sync.js.map +1 -0
  29. package/dist/plugins/specweave-ado/lib/enhanced-ado-sync.d.ts +25 -0
  30. package/dist/plugins/specweave-ado/lib/enhanced-ado-sync.d.ts.map +1 -0
  31. package/dist/plugins/specweave-ado/lib/enhanced-ado-sync.js +191 -0
  32. package/dist/plugins/specweave-ado/lib/enhanced-ado-sync.js.map +1 -0
  33. package/dist/plugins/specweave-github/lib/duplicate-detector.d.ts +139 -0
  34. package/dist/plugins/specweave-github/lib/duplicate-detector.d.ts.map +1 -0
  35. package/dist/plugins/specweave-github/lib/duplicate-detector.js +389 -0
  36. package/dist/plugins/specweave-github/lib/duplicate-detector.js.map +1 -0
  37. package/dist/plugins/specweave-github/lib/enhanced-github-sync.d.ts +26 -0
  38. package/dist/plugins/specweave-github/lib/enhanced-github-sync.d.ts.map +1 -0
  39. package/dist/plugins/specweave-github/lib/enhanced-github-sync.js +249 -0
  40. package/dist/plugins/specweave-github/lib/enhanced-github-sync.js.map +1 -0
  41. package/dist/plugins/specweave-github/lib/github-client.d.ts +1 -1
  42. package/dist/plugins/specweave-github/lib/github-client.d.ts.map +1 -1
  43. package/dist/plugins/specweave-github/lib/github-client.js +25 -13
  44. package/dist/plugins/specweave-github/lib/github-client.js.map +1 -1
  45. package/dist/plugins/specweave-github/lib/github-epic-sync.d.ts +83 -0
  46. package/dist/plugins/specweave-github/lib/github-epic-sync.d.ts.map +1 -0
  47. package/dist/plugins/specweave-github/lib/github-epic-sync.js +451 -0
  48. package/dist/plugins/specweave-github/lib/github-epic-sync.js.map +1 -0
  49. package/dist/plugins/specweave-github/lib/github-status-sync.d.ts +43 -0
  50. package/dist/plugins/specweave-github/lib/github-status-sync.d.ts.map +1 -0
  51. package/dist/plugins/specweave-github/lib/github-status-sync.js +82 -0
  52. package/dist/plugins/specweave-github/lib/github-status-sync.js.map +1 -0
  53. package/dist/plugins/specweave-github/lib/task-sync.d.ts +5 -0
  54. package/dist/plugins/specweave-github/lib/task-sync.d.ts.map +1 -1
  55. package/dist/plugins/specweave-github/lib/task-sync.js +38 -2
  56. package/dist/plugins/specweave-github/lib/task-sync.js.map +1 -1
  57. package/dist/plugins/specweave-jira/lib/enhanced-jira-sync.d.ts +26 -0
  58. package/dist/plugins/specweave-jira/lib/enhanced-jira-sync.d.ts.map +1 -0
  59. package/dist/plugins/specweave-jira/lib/enhanced-jira-sync.js +195 -0
  60. package/dist/plugins/specweave-jira/lib/enhanced-jira-sync.js.map +1 -0
  61. package/dist/plugins/specweave-jira/lib/jira-epic-sync.d.ts +66 -0
  62. package/dist/plugins/specweave-jira/lib/jira-epic-sync.d.ts.map +1 -0
  63. package/dist/plugins/specweave-jira/lib/jira-epic-sync.js +274 -0
  64. package/dist/plugins/specweave-jira/lib/jira-epic-sync.js.map +1 -0
  65. package/dist/plugins/specweave-jira/lib/jira-status-sync.d.ts +56 -0
  66. package/dist/plugins/specweave-jira/lib/jira-status-sync.d.ts.map +1 -0
  67. package/dist/plugins/specweave-jira/lib/jira-status-sync.js +93 -0
  68. package/dist/plugins/specweave-jira/lib/jira-status-sync.js.map +1 -0
  69. package/dist/spec-parser.js +629 -0
  70. package/dist/src/cli/helpers/issue-tracker/index.d.ts.map +1 -1
  71. package/dist/src/cli/helpers/issue-tracker/index.js +48 -3
  72. package/dist/src/cli/helpers/issue-tracker/index.js.map +1 -1
  73. package/dist/src/core/living-docs/hierarchy-mapper.d.ts +142 -0
  74. package/dist/src/core/living-docs/hierarchy-mapper.d.ts.map +1 -0
  75. package/dist/src/core/living-docs/hierarchy-mapper.js +453 -0
  76. package/dist/src/core/living-docs/hierarchy-mapper.js.map +1 -0
  77. package/dist/src/core/living-docs/index.d.ts +10 -84
  78. package/dist/src/core/living-docs/index.d.ts.map +1 -1
  79. package/dist/src/core/living-docs/index.js +10 -164
  80. package/dist/src/core/living-docs/index.js.map +1 -1
  81. package/dist/src/core/living-docs/spec-distributor.d.ts +106 -0
  82. package/dist/src/core/living-docs/spec-distributor.d.ts.map +1 -0
  83. package/dist/src/core/living-docs/spec-distributor.js +823 -0
  84. package/dist/src/core/living-docs/spec-distributor.js.map +1 -0
  85. package/dist/src/core/living-docs/types.d.ts +201 -0
  86. package/dist/src/core/living-docs/types.d.ts.map +1 -0
  87. package/dist/src/core/living-docs/types.js +15 -0
  88. package/dist/src/core/living-docs/types.js.map +1 -0
  89. package/dist/src/core/logging/prompt-logger.d.ts +70 -0
  90. package/dist/src/core/logging/prompt-logger.d.ts.map +1 -0
  91. package/dist/src/core/logging/prompt-logger.js +247 -0
  92. package/dist/src/core/logging/prompt-logger.js.map +1 -0
  93. package/dist/src/core/status-line/status-line-manager.d.ts +15 -24
  94. package/dist/src/core/status-line/status-line-manager.d.ts.map +1 -1
  95. package/dist/src/core/status-line/status-line-manager.js +33 -70
  96. package/dist/src/core/status-line/status-line-manager.js.map +1 -1
  97. package/dist/src/core/status-line/types.d.ts +19 -31
  98. package/dist/src/core/status-line/types.d.ts.map +1 -1
  99. package/dist/src/core/status-line/types.js +5 -9
  100. package/dist/src/core/status-line/types.js.map +1 -1
  101. package/dist/src/core/sync/conflict-resolver.d.ts +66 -0
  102. package/dist/src/core/sync/conflict-resolver.d.ts.map +1 -0
  103. package/dist/src/core/sync/conflict-resolver.js +108 -0
  104. package/dist/src/core/sync/conflict-resolver.js.map +1 -0
  105. package/dist/src/core/sync/enhanced-content-builder.d.ts +77 -0
  106. package/dist/src/core/sync/enhanced-content-builder.d.ts.map +1 -0
  107. package/dist/src/core/sync/enhanced-content-builder.js +199 -0
  108. package/dist/src/core/sync/enhanced-content-builder.js.map +1 -0
  109. package/dist/src/core/sync/label-detector.d.ts +66 -0
  110. package/dist/src/core/sync/label-detector.d.ts.map +1 -0
  111. package/dist/src/core/sync/label-detector.js +211 -0
  112. package/dist/src/core/sync/label-detector.js.map +1 -0
  113. package/dist/src/core/sync/retry-logic.d.ts +64 -0
  114. package/dist/src/core/sync/retry-logic.d.ts.map +1 -0
  115. package/dist/src/core/sync/retry-logic.js +165 -0
  116. package/dist/src/core/sync/retry-logic.js.map +1 -0
  117. package/dist/src/core/sync/spec-content-sync.d.ts +88 -0
  118. package/dist/src/core/sync/spec-content-sync.d.ts.map +1 -0
  119. package/dist/src/core/sync/spec-content-sync.js +5 -0
  120. package/dist/src/core/sync/spec-content-sync.js.map +1 -0
  121. package/dist/src/core/sync/spec-increment-mapper.d.ts +100 -0
  122. package/dist/src/core/sync/spec-increment-mapper.d.ts.map +1 -0
  123. package/dist/src/core/sync/spec-increment-mapper.js +424 -0
  124. package/dist/src/core/sync/spec-increment-mapper.js.map +1 -0
  125. package/dist/src/core/sync/status-cache.d.ts +91 -0
  126. package/dist/src/core/sync/status-cache.d.ts.map +1 -0
  127. package/dist/src/core/sync/status-cache.js +140 -0
  128. package/dist/src/core/sync/status-cache.js.map +1 -0
  129. package/dist/src/core/sync/status-mapper.d.ts +69 -0
  130. package/dist/src/core/sync/status-mapper.d.ts.map +1 -0
  131. package/dist/src/core/sync/status-mapper.js +90 -0
  132. package/dist/src/core/sync/status-mapper.js.map +1 -0
  133. package/dist/src/core/sync/status-sync-engine.d.ts +162 -0
  134. package/dist/src/core/sync/status-sync-engine.d.ts.map +1 -0
  135. package/dist/src/core/sync/status-sync-engine.js +347 -0
  136. package/dist/src/core/sync/status-sync-engine.js.map +1 -0
  137. package/dist/src/core/sync/sync-event-logger.d.ts +99 -0
  138. package/dist/src/core/sync/sync-event-logger.d.ts.map +1 -0
  139. package/dist/src/core/sync/sync-event-logger.js +103 -0
  140. package/dist/src/core/sync/sync-event-logger.js.map +1 -0
  141. package/dist/src/core/sync/workflow-detector.d.ts +95 -0
  142. package/dist/src/core/sync/workflow-detector.d.ts.map +1 -0
  143. package/dist/src/core/sync/workflow-detector.js +175 -0
  144. package/dist/src/core/sync/workflow-detector.js.map +1 -0
  145. package/dist/src/core/types/config.d.ts.map +1 -1
  146. package/dist/src/core/types/config.js +31 -0
  147. package/dist/src/core/types/config.js.map +1 -1
  148. package/dist/src/utils/github-url.d.ts +53 -0
  149. package/dist/src/utils/github-url.d.ts.map +1 -0
  150. package/dist/src/utils/github-url.js +90 -0
  151. package/dist/src/utils/github-url.js.map +1 -0
  152. package/dist/src/utils/plugin-validator.d.ts +9 -0
  153. package/dist/src/utils/plugin-validator.d.ts.map +1 -1
  154. package/dist/src/utils/plugin-validator.js +86 -19
  155. package/dist/src/utils/plugin-validator.js.map +1 -1
  156. package/dist/src/utils/spec-parser.d.ts +145 -0
  157. package/dist/src/utils/spec-parser.d.ts.map +1 -0
  158. package/dist/src/utils/spec-parser.js +640 -0
  159. package/dist/src/utils/spec-parser.js.map +1 -0
  160. package/dist/tsconfig.tsbuildinfo +1 -0
  161. package/package.json +1 -1
  162. package/plugins/specweave/agents/pm/AGENT.md +1 -1
  163. package/plugins/specweave/agents/pm/templates/increment-spec.md +158 -0
  164. package/plugins/specweave/agents/pm/templates/living-docs-spec.md +113 -0
  165. package/plugins/specweave/commands/specweave-done.md +163 -0
  166. package/plugins/specweave/hooks/lib/update-status-line.sh +79 -111
  167. package/plugins/specweave/hooks/post-increment-planning.sh +107 -35
  168. package/plugins/specweave/lib/hooks/sync-living-docs.js +139 -34
  169. package/plugins/specweave/lib/hooks/sync-living-docs.ts +234 -38
  170. package/plugins/specweave/skills/SKILLS-INDEX.md +4 -24
  171. package/plugins/specweave/skills/increment-planner/SKILL.md +94 -0
  172. package/plugins/specweave/skills/increment-work-router/SKILL.md +466 -0
  173. package/plugins/specweave/skills/plugin-validator/SKILL.md +16 -13
  174. package/plugins/specweave-ado/lib/ado-status-sync.js +80 -0
  175. package/plugins/specweave-ado/lib/ado-status-sync.ts +121 -0
  176. package/plugins/specweave-ado/lib/enhanced-ado-sync.js +170 -0
  177. package/plugins/specweave-github/commands/specweave-github-cleanup-duplicates.md +205 -0
  178. package/plugins/specweave-github/commands/specweave-github-sync-epic.md +248 -0
  179. package/plugins/specweave-github/lib/duplicate-detector.js +370 -0
  180. package/plugins/specweave-github/lib/duplicate-detector.ts +525 -0
  181. package/plugins/specweave-github/lib/enhanced-github-sync.js +220 -0
  182. package/plugins/specweave-github/lib/enhanced-github-sync.ts +322 -0
  183. package/plugins/specweave-github/lib/github-client.js +21 -10
  184. package/plugins/specweave-github/lib/github-client.ts +27 -16
  185. package/plugins/specweave-github/lib/github-epic-sync.js +489 -0
  186. package/plugins/specweave-github/lib/github-epic-sync.ts +690 -0
  187. package/plugins/specweave-github/lib/github-status-sync.js +71 -0
  188. package/plugins/specweave-github/lib/github-status-sync.ts +107 -0
  189. package/plugins/specweave-github/lib/task-sync.js +33 -2
  190. package/plugins/specweave-github/lib/task-sync.ts +44 -2
  191. package/plugins/specweave-jira/commands/specweave-jira-sync-epic.md +267 -0
  192. package/plugins/specweave-jira/lib/enhanced-jira-sync.ts.disabled +222 -0
  193. package/plugins/specweave-jira/lib/jira-epic-sync.js +304 -0
  194. package/plugins/specweave-jira/lib/jira-epic-sync.ts +459 -0
  195. package/plugins/specweave-jira/lib/jira-status-sync.js +79 -0
  196. package/plugins/specweave-jira/lib/jira-status-sync.ts +139 -0
  197. package/src/templates/AGENTS.md.template +88 -1
  198. package/src/templates/CLAUDE.md.template +49 -0
  199. package/plugins/specweave/skills/increment-quality-judge/SKILL.md +0 -524
  200. package/plugins/specweave/skills/plugin-installer/SKILL.md +0 -353
@@ -1,353 +0,0 @@
1
- ---
2
- name: plugin-installer
3
- description: DEPRECATED - This skill is no longer needed. All plugins are now installed automatically during specweave init. This skill remains for backward compatibility but should NOT activate.
4
- ---
5
-
6
- # Plugin Installer - DEPRECATED
7
-
8
- **Status**: ⚠️ **DEPRECATED** - Do not use this skill
9
-
10
- **Reason**: As of v0.11.0+, ALL SpecWeave plugins (19+) are automatically installed during `specweave init`. There is no need for just-in-time plugin installation anymore.
11
-
12
- **What Changed**:
13
- - ❌ Old: Selective plugin loading with just-in-time installation
14
- - ✅ New: All plugins installed upfront during init
15
-
16
- **If you see this skill activating**, it means you're using an old SpecWeave installation. Run `specweave init` again to get all plugins installed automatically.
17
-
18
- ---
19
-
20
- ## For Contributors: Why This Was Deprecated
21
-
22
- **The Problem with Just-in-Time Installation**:
23
- - Added complexity to the workflow
24
- - Users had to wait for installations mid-work
25
- - Network issues could block work unexpectedly
26
- - Detection logic was fragile (keyword matching)
27
-
28
- **The Solution - Install Everything Upfront**:
29
- - All 19+ plugins installed during `specweave init`
30
- - Takes ~30 seconds upfront but saves time later
31
- - All capabilities available immediately
32
- - No network dependencies during work
33
- - Simpler, more predictable user experience
34
-
35
- ---
36
-
37
- ## Plugin Detection Keywords Map
38
-
39
- **Use this map to detect which plugin is needed based on user's request keywords:**
40
-
41
- | User Keywords | Required Plugin | Installation Command |
42
- |--------------|----------------|---------------------|
43
- | **Frontend Development** |
44
- | "React", "Next.js", "Vue", "Angular", "frontend", "UI component", "design system", "Tailwind" | `specweave-frontend` | `/plugin install specweave-frontend` |
45
- | **Kubernetes/DevOps** |
46
- | "K8s", "Kubernetes", "Helm", "kubectl", "deploy", "container", "pod", "service", "ingress" | `specweave-kubernetes` | `/plugin install specweave-kubernetes` |
47
- | **Machine Learning** |
48
- | "TensorFlow", "PyTorch", "ML model", "training", "machine learning", "neural network", "dataset" | `specweave-ml` | `/plugin install specweave-ml` |
49
- | **Payments** |
50
- | "Stripe", "PayPal", "billing", "subscription", "payment", "checkout", "PCI compliance" | `specweave-payments` | `/plugin install specweave-payments` |
51
- | **Testing** |
52
- | "Playwright", "E2E testing", "browser automation", "visual regression", "test automation" | `specweave-testing` | `/plugin install specweave-testing` |
53
- | **Figma/Design** |
54
- | "Figma", "design tokens", "design system", "prototype", "wireframe", "mockup" | `specweave-figma` | `/plugin install specweave-figma` |
55
- | **Backend Development** |
56
- | "Node.js backend", "Python backend", ".NET", "Express", "FastAPI", "Django", "REST API" | `specweave-backend` | `/plugin install specweave-backend` |
57
- | **Infrastructure** |
58
- | "Hetzner", "cloud infrastructure", "Prometheus", "Grafana", "monitoring", "alerting", "SLO" | `specweave-infrastructure` | `/plugin install specweave-infrastructure` |
59
- | **Architecture Diagrams** |
60
- | "Mermaid diagram", "C4 model", "architecture diagram", "sequence diagram", "ER diagram" | `specweave-diagrams` | `/plugin install specweave-diagrams` |
61
- | **Issue Trackers** (Usually auto-installed during init) |
62
- | "GitHub Issues", "sync GitHub", "create issue", "PR automation" | `specweave-github` | `/plugin install specweave-github` |
63
- | "Jira", "epic", "sprint", "story points", "Jira sync" | `specweave-jira` | `/plugin install specweave-jira` |
64
- | "ADO", "Azure DevOps", "work items", "boards", "ADO sync" | `specweave-ado` | `/plugin install specweave-ado` |
65
-
66
- ---
67
-
68
- ## Workflow: Just-in-Time Plugin Installation
69
-
70
- **CRITICAL**: Follow this workflow EVERY TIME you detect plugin keywords in user's request:
71
-
72
- ### Step 1: Detect Plugin Requirement
73
-
74
- When user mentions keywords from the map above, **IMMEDIATELY** check if the required plugin is needed.
75
-
76
- **Example**:
77
- ```
78
- User: "Can you help me build a React component?"
79
-
80
- Keywords detected: "React", "component"
81
- → Required plugin: specweave-frontend
82
- ```
83
-
84
- ### Step 2: Check if Plugin is Installed
85
-
86
- ```bash
87
- # Check installed plugins
88
- /plugin list --installed
89
- ```
90
-
91
- **Parse the output** to see if the required plugin is in the list.
92
-
93
- ### Step 3: Auto-Install if Missing
94
-
95
- If the plugin is NOT installed:
96
-
97
- ```bash
98
- # Install the plugin
99
- /plugin install <plugin-name>
100
-
101
- # Example:
102
- /plugin install specweave-frontend
103
- ```
104
-
105
- ### Step 4: Notify User (Clear and Friendly)
106
-
107
- **Good notification format**:
108
-
109
- ```
110
- 🔌 Detected need for <plugin-name> plugin
111
-
112
- 📦 Installing <plugin-name>...
113
- This plugin provides: <brief description>
114
-
115
- ✅ Plugin installed successfully!
116
- You can now: <list capabilities>
117
-
118
- Proceeding with your request...
119
- ```
120
-
121
- **Example**:
122
-
123
- ```
124
- 🔌 Detected need for specweave-frontend plugin
125
-
126
- 📦 Installing specweave-frontend...
127
- This plugin provides: Beautiful Docusaurus UI for browsing .specweave/docs/
128
-
129
- ✅ Plugin installed successfully!
130
- You can now:
131
- • Browse documentation in beautiful UI
132
- • Hot reload when editing markdown files
133
- • Render Mermaid diagrams automatically
134
-
135
- Proceeding to launch docs preview server...
136
- ```
137
-
138
- ### Step 5: Proceed with User's Request
139
-
140
- **ONLY AFTER** the plugin is installed, proceed to use its features.
141
-
142
- ---
143
-
144
- ## Common Scenarios
145
-
146
- ### Scenario 1: React Component Development
147
-
148
- **User Request**: "Build a React component with TypeScript"
149
-
150
- **Workflow**:
151
- ```
152
- 1. Detect keywords: "React", "component", "TypeScript"
153
- → Required: specweave-frontend
154
-
155
- 2. Check installed: /plugin list --installed
156
- → Not found
157
-
158
- 3. Install: /plugin install specweave-frontend
159
-
160
- 4. Notify user:
161
- 🔌 Installing specweave-frontend for React development...
162
- ✅ Installed!
163
-
164
- 5. Create component using frontend skills
165
- ```
166
-
167
- ### Scenario 2: Kubernetes Deployment
168
-
169
- **User Request**: "Help me deploy this to Kubernetes"
170
-
171
- **Workflow**:
172
- ```
173
- 1. Detect keywords: "deploy", "Kubernetes"
174
- → Required: specweave-kubernetes
175
-
176
- 2. Check installed: /plugin list --installed
177
- → Not found
178
-
179
- 3. Install: /plugin install specweave-kubernetes
180
-
181
- 4. Notify user:
182
- 🔌 Installing specweave-kubernetes for K8s deployment...
183
- ✅ Installed! You can now generate manifests, Helm charts, and validate deployments.
184
-
185
- 5. Proceed with K8s expert agent for deployment
186
- ```
187
-
188
- ### Scenario 3: React Component Development
189
-
190
- **User Request**: "Create a new React component for user profile"
191
-
192
- **Workflow**:
193
- ```
194
- 1. Detect keywords: "React", "component"
195
- → Required: specweave-frontend
196
-
197
- 2. Check installed: /plugin list --installed
198
- → Not found
199
-
200
- 3. Install: /plugin install specweave-frontend
201
-
202
- 4. Notify user:
203
- 🔌 Installing specweave-frontend for React development...
204
- ✅ Installed! You can now use frontend expert agent and design system integration.
205
-
206
- 5. Proceed with component creation
207
- ```
208
-
209
- ### Scenario 4: Machine Learning Pipeline
210
-
211
- **User Request**: "Train a TensorFlow model for image classification"
212
-
213
- **Workflow**:
214
- ```
215
- 1. Detect keywords: "TensorFlow", "model", "training"
216
- → Required: specweave-ml
217
-
218
- 2. Check installed: /plugin list --installed
219
- → Not found
220
-
221
- 3. Install: /plugin install specweave-ml
222
-
223
- 4. Notify user:
224
- 🔌 Installing specweave-ml for ML workflows...
225
- ✅ Installed! You can now use ML expert agent for training pipelines and deployment.
226
-
227
- 5. Proceed with ML pipeline setup
228
- ```
229
-
230
- ---
231
-
232
- ## Error Handling
233
-
234
- ### Plugin Installation Fails
235
-
236
- If `/plugin install` fails:
237
-
238
- ```
239
- ❌ Failed to install <plugin-name>
240
-
241
- Possible causes:
242
- 1. Marketplace not registered
243
- → Try: /plugin marketplace add anton-abyzov/specweave
244
-
245
- 2. Network connectivity issues
246
- → Check internet connection and retry
247
-
248
- 3. Plugin doesn't exist
249
- → Verify plugin name: /plugin list (shows all available plugins)
250
-
251
- Would you like to:
252
- a) Retry installation
253
- b) Proceed without the plugin (limited capabilities)
254
- c) Troubleshoot further
255
- ```
256
-
257
- ### Plugin Already Installed
258
-
259
- If plugin is already installed, skip installation and proceed:
260
-
261
- ```
262
- ✅ <plugin-name> is already installed
263
- Proceeding with your request...
264
- ```
265
-
266
- ---
267
-
268
- ## Integration with Other Skills
269
-
270
- **This skill should be consulted BEFORE other skills attempt to use plugin features.**
271
-
272
- ### Example: increment-planner skill
273
-
274
- When increment-planner detects plugin requirements (Step 6), it should:
275
-
276
- 1. **Detect plugins** (as it already does)
277
- 2. **Consult plugin-installer skill** (NEW!)
278
- 3. **Auto-install missing plugins** (via this skill)
279
- 4. **Then proceed** with increment planning
280
-
281
- ### Example: frontend skill (hypothetical)
282
-
283
- ```markdown
284
- # BEFORE using React features:
285
-
286
- 1. Check if specweave-frontend is installed
287
- → If not: Invoke plugin-installer skill
288
- → Auto-install specweave-frontend
289
-
290
- 2. Then proceed with component creation
291
- ```
292
-
293
- ---
294
-
295
- ## Benefits of This Approach
296
-
297
- ✅ **Zero friction**: Users don't need to manually install plugins
298
- ✅ **Proactive**: Detects requirements automatically
299
- ✅ **Clear UX**: Users see what's being installed and why
300
- ✅ **Just-in-time**: Only installs plugins when actually needed
301
- ✅ **Fail-safe**: Handles installation errors gracefully
302
-
303
- ---
304
-
305
- ## Testing This Skill
306
-
307
- **Test Case 1: Docs Preview**
308
- ```
309
- User: "Show me the internal documentation in a browser"
310
-
311
- Expected:
312
- 1. Detects "React", "component" → specweave-frontend
313
- 2. Checks installed
314
- 3. Auto-installs if missing
315
- 4. Launches preview
316
- ```
317
-
318
- **Test Case 2: K8s Deployment**
319
- ```
320
- User: "Deploy this application to Kubernetes cluster"
321
-
322
- Expected:
323
- 1. Detects "Kubernetes" → specweave-kubernetes
324
- 2. Checks installed
325
- 3. Auto-installs if missing
326
- 4. Proceeds with deployment
327
- ```
328
-
329
- **Test Case 3: React Development**
330
- ```
331
- User: "Add a React component for user settings"
332
-
333
- Expected:
334
- 1. Detects "React", "component" → specweave-frontend
335
- 2. Checks installed
336
- 3. Auto-installs if missing
337
- 4. Proceeds with component creation
338
- ```
339
-
340
- ---
341
-
342
- ## References
343
-
344
- - **Plugin Expert Skill**: Consult for correct installation syntax
345
- - **Official Docs**: https://code.claude.com/docs/en/plugins
346
- - **SpecWeave Marketplace**: .claude-plugin/marketplace.json
347
- - **CLAUDE.md**: Plugin architecture and detection phases
348
-
349
- ---
350
-
351
- **Key Principle**: ALWAYS install plugins BEFORE attempting to use their features. Never fail silently - always notify users of installation steps.
352
-
353
- **Last Updated**: 2025-11-10 (v0.10.0)