specweave 0.6.0 → 0.6.3
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 +16 -29
- package/.claude-plugin/marketplace.json +5 -5
- package/CLAUDE.md +103 -35
- package/README.md +167 -800
- package/dist/adapters/claude/adapter.d.ts +1 -1
- package/dist/adapters/claude/adapter.js +2 -2
- package/dist/adapters/claude/adapter.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +197 -83
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/plugin.d.ts +16 -5
- package/dist/cli/commands/plugin.d.ts.map +1 -1
- package/dist/cli/commands/plugin.js +20 -5
- package/dist/cli/commands/plugin.js.map +1 -1
- package/dist/locales/en/cli.json +19 -3
- package/dist/utils/agents-md-compiler.js +1 -1
- package/dist/utils/execFileNoThrow.d.ts +97 -0
- package/dist/utils/execFileNoThrow.d.ts.map +1 -0
- package/dist/utils/execFileNoThrow.js +130 -0
- package/dist/utils/execFileNoThrow.js.map +1 -0
- package/package.json +3 -3
- package/plugins/.specweave/logs/hooks-debug.log +24 -0
- package/plugins/.specweave/logs/last-hook-fire +1 -0
- package/plugins/.specweave/logs/last-todowrite-time +1 -0
- package/plugins/.specweave/logs/tasks.log +6 -0
- package/plugins/specweave/.claude-plugin/plugin.json +22 -0
- package/plugins/{specweave-core/commands/specweave.costs.md → specweave/commands/costs.md} +1 -1
- package/plugins/{specweave-core/commands/specweave.do.md → specweave/commands/do.md} +1 -1
- package/plugins/{specweave-core/commands/specweave.done.md → specweave/commands/done.md} +1 -1
- package/plugins/{specweave-core/commands/specweave.inc.md → specweave/commands/inc.md} +1 -1
- package/plugins/{specweave-core/commands/specweave.increment.md → specweave/commands/increment.md} +1 -1
- package/plugins/{specweave-core/commands/specweave.next.md → specweave/commands/next.md} +1 -1
- package/plugins/{specweave-core/commands/specweave.progress.md → specweave/commands/progress.md} +1 -1
- package/plugins/{specweave-core → specweave}/commands/specweave.md +13 -13
- package/plugins/{specweave-core/commands/specweave.sync-docs.md → specweave/commands/sync-docs.md} +1 -1
- package/plugins/{specweave-core/commands/specweave.translate.md → specweave/commands/translate.md} +1 -1
- package/plugins/{specweave-core/commands/specweave.validate.md → specweave/commands/validate.md} +1 -1
- package/plugins/specweave/hooks/hooks.json +15 -0
- package/plugins/{specweave-core → specweave}/skills/plugin-detector/SKILL.md +1 -1
- package/plugins/{specweave-core → specweave}/skills/tdd-workflow/SKILL.md +1 -1
- package/plugins/specweave-github/.claude-plugin/plugin.json +13 -2
- package/plugins/specweave-ml/.claude-plugin/plugin.json +5 -6
- package/plugins/specweave-ui/.claude-plugin/plugin.json +6 -86
- package/src/adapters/claude/adapter.ts +2 -2
- package/plugins/specweave-core/.claude-plugin/plugin.json +0 -25
- package/plugins/specweave-core/hooks/hooks.json +0 -13
- /package/plugins/{specweave-core → specweave}/agents/architect/AGENT.md +0 -0
- /package/plugins/{specweave-core → specweave}/agents/code-reviewer.md +0 -0
- /package/plugins/{specweave-core → specweave}/agents/docs-writer/AGENT.md +0 -0
- /package/plugins/{specweave-core → specweave}/agents/performance/AGENT.md +0 -0
- /package/plugins/{specweave-core → specweave}/agents/pm/AGENT.md +0 -0
- /package/plugins/{specweave-core → specweave}/agents/qa-lead/AGENT.md +0 -0
- /package/plugins/{specweave-core → specweave}/agents/security/AGENT.md +0 -0
- /package/plugins/{specweave-core → specweave}/agents/tdd-orchestrator/AGENT.md +0 -0
- /package/plugins/{specweave-core → specweave}/agents/tech-lead/AGENT.md +0 -0
- /package/plugins/{specweave-core → specweave}/agents/translator/AGENT.md +0 -0
- /package/plugins/{specweave-core → specweave}/commands/README.md +0 -0
- /package/plugins/{specweave-core/commands/specweave.list-increments.md → specweave/commands/list-increments.md} +0 -0
- /package/plugins/{specweave-core/commands/specweave.tdd-cycle.md → specweave/commands/tdd-cycle.md} +0 -0
- /package/plugins/{specweave-core/commands/specweave.tdd-green.md → specweave/commands/tdd-green.md} +0 -0
- /package/plugins/{specweave-core/commands/specweave.tdd-red.md → specweave/commands/tdd-red.md} +0 -0
- /package/plugins/{specweave-core/commands/specweave.tdd-refactor.md → specweave/commands/tdd-refactor.md} +0 -0
- /package/plugins/{specweave-core → specweave}/hooks/README.md +0 -0
- /package/plugins/{specweave-core → specweave}/hooks/docs-changed.sh +0 -0
- /package/plugins/{specweave-core → specweave}/hooks/human-input-required.sh +0 -0
- /package/plugins/{specweave-core → specweave}/hooks/post-increment-plugin-detect.sh +0 -0
- /package/plugins/{specweave-core → specweave}/hooks/post-task-completion.sh +0 -0
- /package/plugins/{specweave-core → specweave}/hooks/pre-implementation.sh +0 -0
- /package/plugins/{specweave-core → specweave}/hooks/pre-task-plugin-detect.sh +0 -0
- /package/plugins/{specweave-core → specweave}/skills/SKILLS-INDEX.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/brownfield-analyzer/SKILL.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/brownfield-onboarder/SKILL.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/context-loader/SKILL.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/context-optimizer/SKILL.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/docs-updater/README.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/docs-updater/SKILL.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/increment-planner/SKILL.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/increment-planner/scripts/feature-utils.js +0 -0
- /package/plugins/{specweave-core → specweave}/skills/increment-quality-judge/SKILL.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/project-kickstarter/SKILL.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/project-kickstarter/test-cases/test-1-high-confidence-full-product.yaml +0 -0
- /package/plugins/{specweave-core → specweave}/skills/project-kickstarter/test-cases/test-2-medium-confidence-partial.yaml +0 -0
- /package/plugins/{specweave-core → specweave}/skills/project-kickstarter/test-cases/test-3-low-confidence-technical-question.yaml +0 -0
- /package/plugins/{specweave-core → specweave}/skills/project-kickstarter/test-cases/test-4-opt-out-explicit.yaml +0 -0
- /package/plugins/{specweave-core → specweave}/skills/rfc-generator/SKILL.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/role-orchestrator/README.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/role-orchestrator/SKILL.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/specweave-detector/SKILL.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/specweave-framework/SKILL.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/specweave-framework/test-cases/test-1-increment-naming.yaml +0 -0
- /package/plugins/{specweave-core → specweave}/skills/specweave-framework/test-cases/test-2-source-of-truth.yaml +0 -0
- /package/plugins/{specweave-core → specweave}/skills/specweave-framework/test-cases/test-3-increment-discipline.yaml +0 -0
- /package/plugins/{specweave-core → specweave}/skills/specweave-framework/test-cases/test-4-file-placement.yaml +0 -0
- /package/plugins/{specweave-core → specweave}/skills/task-builder/README.md +0 -0
- /package/plugins/{specweave-core → specweave}/skills/translator/SKILL.md +0 -0
package/.claude-plugin/README.md
CHANGED
|
@@ -14,7 +14,7 @@ When you clone this repo and **trust the folder** in Claude Code:
|
|
|
14
14
|
2. The `.claude/settings.json` file **automatically registers** the marketplace
|
|
15
15
|
3. Install the core plugin:
|
|
16
16
|
```
|
|
17
|
-
/plugin install specweave
|
|
17
|
+
/plugin install specweave@specweave
|
|
18
18
|
```
|
|
19
19
|
4. **Restart Claude Code**
|
|
20
20
|
5. Commands are now available: `/specweave:inc`, `/specweave:do`, etc.
|
|
@@ -43,7 +43,7 @@ If automatic setup doesn't work (or folder not trusted):
|
|
|
43
43
|
# Should show "specweave" marketplace
|
|
44
44
|
|
|
45
45
|
# 3. Install core plugin
|
|
46
|
-
/plugin install specweave
|
|
46
|
+
/plugin install specweave@specweave
|
|
47
47
|
|
|
48
48
|
# 4. (Optional) Install other plugins as needed
|
|
49
49
|
/plugin install specweave-github@specweave
|
|
@@ -76,7 +76,7 @@ Type `/github:` to see GitHub commands (if installed):
|
|
|
76
76
|
└── README.md # This file
|
|
77
77
|
|
|
78
78
|
plugins/ # Individual plugin locations
|
|
79
|
-
├── specweave
|
|
79
|
+
├── specweave/.claude-plugin/plugin.json # Core plugin manifest
|
|
80
80
|
├── specweave-github/.claude-plugin/plugin.json # GitHub plugin manifest
|
|
81
81
|
├── specweave-figma/.claude-plugin/plugin.json # Figma plugin manifest
|
|
82
82
|
└── ... (18 plugins total, each with plugin.json)
|
|
@@ -119,11 +119,8 @@ SpecWeave's marketplace.json follows Claude's official schema format. Here's the
|
|
|
119
119
|
- ✅ `source` - Relative path to plugin directory (e.g., `"../plugins/specweave-github"`)
|
|
120
120
|
- ✅ `category` - Plugin category: `development`, `productivity`, `security`, or `learning`
|
|
121
121
|
- ✅ `author.email` - Author email address (required by Claude's schema)
|
|
122
|
-
- ❌ No separate `path` field (
|
|
123
|
-
- ❌ No `source: "local"` type indicator (
|
|
124
|
-
|
|
125
|
-
**Migration Note**: Prior to v0.6.1, SpecWeave used a custom marketplace schema with separate `source` and `path` fields. This has been updated to match Claude's official schema for compatibility.
|
|
126
|
-
|
|
122
|
+
- ❌ No separate `path` field (follows Claude's schema)
|
|
123
|
+
- ❌ No `source: "local"` type indicator (follows Claude's schema)
|
|
127
124
|
|
|
128
125
|
## How It Works
|
|
129
126
|
|
|
@@ -133,23 +130,23 @@ SpecWeave's marketplace.json follows Claude's official schema format. Here's the
|
|
|
133
130
|
- No namespacing
|
|
134
131
|
|
|
135
132
|
**With Plugin System** (new):
|
|
136
|
-
- Commands: `/specweave
|
|
133
|
+
- Commands: `/specweave:inc`, `/specweave:do`, `/specweave-github:sync`
|
|
137
134
|
- Plugin-namespaced via `.claude-plugin/`
|
|
138
135
|
- Proper marketplace structure
|
|
139
|
-
- Each plugin has its own namespace (e.g., `specweave
|
|
136
|
+
- Each plugin has its own namespace (e.g., `specweave`, `specweave-github`)
|
|
140
137
|
|
|
141
138
|
## Available Plugins
|
|
142
139
|
|
|
143
|
-
### 1. SpecWeave Core (`specweave
|
|
144
|
-
**Commands** (invoked as `/specweave
|
|
140
|
+
### 1. SpecWeave Core (`specweave`)
|
|
141
|
+
**Commands** (invoked as `/specweave:command`):
|
|
145
142
|
- `increment` - Plan new product increment
|
|
146
143
|
- `do` - Execute implementation tasks
|
|
147
144
|
- `next` - Smart increment transition
|
|
148
145
|
- `done` - Close increment with validation
|
|
149
146
|
- `progress` - Show increment progress
|
|
150
147
|
- `validate` - Validate increment quality
|
|
151
|
-
- `status` - Show all increments
|
|
152
|
-
- `close-previous` - Close incomplete increments
|
|
148
|
+
- `status` - Show all increments
|
|
149
|
+
- `close-previous` - Close incomplete increments
|
|
153
150
|
|
|
154
151
|
**Skills**:
|
|
155
152
|
- `increment-planner` - PM-led planning workflow
|
|
@@ -209,8 +206,8 @@ SpecWeave's marketplace.json follows Claude's official schema format. Here's the
|
|
|
209
206
|
# Check installed plugins
|
|
210
207
|
/plugin list
|
|
211
208
|
|
|
212
|
-
# If specweave
|
|
213
|
-
/plugin install specweave
|
|
209
|
+
# If specweave is missing, install it
|
|
210
|
+
/plugin install specweave@specweave
|
|
214
211
|
|
|
215
212
|
# Restart Claude Code
|
|
216
213
|
```
|
|
@@ -222,8 +219,8 @@ ls .claude/commands/
|
|
|
222
219
|
|
|
223
220
|
# Should show specweave.*.md files
|
|
224
221
|
# If missing, reinstall plugin:
|
|
225
|
-
/plugin uninstall specweave
|
|
226
|
-
/plugin install specweave
|
|
222
|
+
/plugin uninstall specweave
|
|
223
|
+
/plugin install specweave@specweave
|
|
227
224
|
|
|
228
225
|
# Then restart Claude Code
|
|
229
226
|
```
|
|
@@ -281,7 +278,7 @@ cd plugins/
|
|
|
281
278
|
|
|
282
279
|
4. **Install specific plugin**:
|
|
283
280
|
```bash
|
|
284
|
-
/plugin install specweave
|
|
281
|
+
/plugin install specweave@specweave
|
|
285
282
|
```
|
|
286
283
|
|
|
287
284
|
### ".claude/settings.json not working"
|
|
@@ -308,16 +305,6 @@ git add -f .claude/settings.json
|
|
|
308
305
|
git commit -m "feat: add Claude settings for auto-marketplace registration"
|
|
309
306
|
```
|
|
310
307
|
|
|
311
|
-
## Version
|
|
312
|
-
|
|
313
|
-
**Current**: v0.6.0 (Increment Discipline Enforcement)
|
|
314
|
-
|
|
315
|
-
**Changelog**:
|
|
316
|
-
- v0.6.0: Added `/specweave:status` and `/specweave:close-previous` commands
|
|
317
|
-
- v0.5.1: Cross-platform path detection
|
|
318
|
-
- v0.5.0: Plugin architecture foundation
|
|
319
|
-
- v0.4.0: GitHub plugin
|
|
320
|
-
|
|
321
308
|
## Support
|
|
322
309
|
|
|
323
310
|
- **Docs**: https://spec-weave.com
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://anthropic.com/claude-code/marketplace.schema.json",
|
|
3
3
|
"name": "specweave",
|
|
4
|
-
"version": "0.6.
|
|
4
|
+
"version": "0.6.1",
|
|
5
5
|
"description": "SpecWeave - Spec-Driven Development Framework. PM-led planning, intelligent model selection, living documentation, multi-tool support.",
|
|
6
6
|
"owner": {
|
|
7
7
|
"name": "Anton Abyzov",
|
|
@@ -9,11 +9,11 @@
|
|
|
9
9
|
},
|
|
10
10
|
"plugins": [
|
|
11
11
|
{
|
|
12
|
-
"name": "specweave
|
|
13
|
-
"description": "SpecWeave
|
|
14
|
-
"source": "./plugins/specweave
|
|
12
|
+
"name": "specweave",
|
|
13
|
+
"description": "SpecWeave framework - increment lifecycle, living docs, PM-led planning",
|
|
14
|
+
"source": "./plugins/specweave",
|
|
15
15
|
"category": "development",
|
|
16
|
-
"version": "0.6.
|
|
16
|
+
"version": "0.6.1",
|
|
17
17
|
"author": {
|
|
18
18
|
"name": "Anton Abyzov",
|
|
19
19
|
"email": "anton@spec-weave.com"
|
package/CLAUDE.md
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
# SpecWeave - Development Guide
|
|
2
2
|
|
|
3
3
|
**Project**: SpecWeave - Spec-Driven Development Framework
|
|
4
|
-
**Version**: 0.6.0 (LLM-Native i18n Complete! - Ready for Release)
|
|
5
|
-
**NPM Version**: 0.5.1 (Latest Published)
|
|
6
4
|
**Type**: Open Source NPM Package (TypeScript CLI)
|
|
7
5
|
**Repository**: https://github.com/anton-abyzov/specweave
|
|
8
6
|
**Website**: https://spec-weave.com
|
|
@@ -601,7 +599,7 @@ if (parentSpecweave) {
|
|
|
601
599
|
|
|
602
600
|
### Core Plugin (Always Auto-Loaded)
|
|
603
601
|
|
|
604
|
-
**Plugin**: `specweave
|
|
602
|
+
**Plugin**: `specweave` - The essential SpecWeave plugin loaded in every project:
|
|
605
603
|
- **Skills**: 9 skills (increment-planner, tdd-workflow, rfc-generator, context-loader, project-kickstarter, brownfield-analyzer, brownfield-onboarder, increment-quality-judge, context-optimizer)
|
|
606
604
|
- **Agents**: 22 agents (PM, Architect, Tech Lead, + 19 specialized including tdd-orchestrator)
|
|
607
605
|
- **Commands**: 22 commands (/specweave:inc, /specweave:do, /specweave:next, /specweave:done, /specweave:progress, /specweave:validate, /specweave:sync-docs, + 15 specialized)
|
|
@@ -678,26 +676,96 @@ if (parentSpecweave) {
|
|
|
678
676
|
- ML pipeline: Core + ml-ops + github ≈ **18K tokens** (64% reduction!)
|
|
679
677
|
- SpecWeave itself: Core + github + diagrams ≈ **15K tokens** (70% reduction!)
|
|
680
678
|
|
|
681
|
-
### How
|
|
679
|
+
### How Plugins Are Loaded (Intelligent Auto-Loading)
|
|
682
680
|
|
|
683
|
-
**
|
|
684
|
-
```bash
|
|
685
|
-
specweave init # Auto-detects and suggests plugins
|
|
686
|
-
```
|
|
681
|
+
**SpecWeave's plugin system is designed to be intelligent and non-intrusive:**
|
|
687
682
|
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
683
|
+
#### Phase 1: Initialize (FULLY AUTOMATED!)
|
|
684
|
+
|
|
685
|
+
When you run `specweave init`:
|
|
686
|
+
|
|
687
|
+
1. ✅ **Marketplace Auto-Registration**
|
|
688
|
+
- Creates `.claude/settings.json` with marketplace reference
|
|
689
|
+
- Claude Code automatically discovers plugins
|
|
690
|
+
- No manual `/plugin marketplace add` needed!
|
|
691
|
+
|
|
692
|
+
2. ✅ **Core Plugin Auto-Installation** (NEW! v0.6.1+)
|
|
693
|
+
- Automatically runs: `claude plugin marketplace add` and `claude plugin install specweave@specweave`
|
|
694
|
+
- Works via CLI during init (uses user's shell to access `claude` command)
|
|
695
|
+
- Slash commands available IMMEDIATELY - no manual install!
|
|
696
|
+
- Success message: "✔ SpecWeave core plugin installed automatically!"
|
|
697
|
+
- Graceful fallback: If CLI unavailable, shows manual install instructions
|
|
698
|
+
|
|
699
|
+
3. ℹ️ **Optional Plugins Suggested**
|
|
700
|
+
- Based on project detection (Git, package.json, etc.)
|
|
701
|
+
- User can install now or later
|
|
702
|
+
|
|
703
|
+
#### Phase 2: Increment Planning (On-Demand Loading)
|
|
704
|
+
|
|
705
|
+
When you create increments (e.g., `/specweave:inc "Add Stripe billing"`):
|
|
706
|
+
|
|
707
|
+
1. **Spec Analysis** (NEW! v0.6.0+)
|
|
708
|
+
- increment-planner skill scans spec.md content
|
|
709
|
+
- Detects keywords: "Stripe", "GitHub", "Kubernetes", "React", etc.
|
|
710
|
+
- Maps keywords → required plugins (see Step 6 in increment-planner/SKILL.md)
|
|
711
|
+
|
|
712
|
+
2. **Plugin Suggestion** (Non-Blocking)
|
|
713
|
+
```
|
|
714
|
+
🔌 This increment requires additional plugins:
|
|
715
|
+
|
|
716
|
+
Required:
|
|
717
|
+
• specweave-payments - Stripe integration (detected: "billing", "Stripe")
|
|
718
|
+
|
|
719
|
+
📦 Install: /plugin install specweave-payments@specweave
|
|
720
|
+
|
|
721
|
+
Or continue without it (can install later)
|
|
722
|
+
```
|
|
723
|
+
|
|
724
|
+
3. **User Decision**
|
|
725
|
+
- Install now → Plugin activates immediately (after Claude Code restart)
|
|
726
|
+
- Install later → Skills won't be available until plugin installed
|
|
727
|
+
- Skip → Increment creation continues (not blocked)
|
|
728
|
+
|
|
729
|
+
#### Phase 3: Implementation (Auto-Activation)
|
|
730
|
+
|
|
731
|
+
When plugins are installed:
|
|
732
|
+
|
|
733
|
+
1. **Skills Auto-Activate**
|
|
734
|
+
- Based on description keywords (Claude Code native behavior)
|
|
735
|
+
- No manual invocation needed
|
|
736
|
+
- Example: Mention "GitHub" → github-sync skill activates
|
|
737
|
+
|
|
738
|
+
2. **Context Efficiency**
|
|
739
|
+
- Only loaded plugins consume tokens
|
|
740
|
+
- 70%+ reduction vs. monolithic approach
|
|
741
|
+
- Real-time: Simple React app = 16K tokens (was 50K in v0.3.7)
|
|
742
|
+
|
|
743
|
+
### Manual Plugin Management
|
|
744
|
+
|
|
745
|
+
All plugin management happens through Claude Code's native commands:
|
|
694
746
|
|
|
695
|
-
**Spec-Based** (during increment planning):
|
|
696
747
|
```bash
|
|
697
|
-
|
|
698
|
-
|
|
748
|
+
# List installed plugins
|
|
749
|
+
/plugin list --installed
|
|
750
|
+
|
|
751
|
+
# Install a specific plugin
|
|
752
|
+
/plugin install specweave-kubernetes@specweave
|
|
753
|
+
|
|
754
|
+
# Uninstall a plugin
|
|
755
|
+
/plugin uninstall specweave-kubernetes
|
|
756
|
+
|
|
757
|
+
# List all available plugins from marketplace
|
|
758
|
+
/plugin list specweave
|
|
699
759
|
```
|
|
700
760
|
|
|
761
|
+
**Key Insight**: SpecWeave uses **ONLY** Claude Code's native plugin system:
|
|
762
|
+
- Plugins install globally via `/plugin install specweave-{name}@specweave`
|
|
763
|
+
- Work across ALL projects (like VS Code extensions)
|
|
764
|
+
- Auto-activate based on skills' description keywords
|
|
765
|
+
- Managed by Claude Code (updates, uninstall, etc.)
|
|
766
|
+
|
|
767
|
+
No per-project installation needed!
|
|
768
|
+
|
|
701
769
|
---
|
|
702
770
|
|
|
703
771
|
## Project Architecture
|
|
@@ -721,7 +789,7 @@ src/ ← SOURCE OF TRUTH (TypeScript code only)
|
|
|
721
789
|
└── utils/ ← Utility functions
|
|
722
790
|
|
|
723
791
|
plugins/ ← ROOT: All plugins (version controlled)
|
|
724
|
-
├── specweave
|
|
792
|
+
├── specweave/ ← CORE PLUGIN (framework essentials)
|
|
725
793
|
│ ├── .claude-plugin/ ← plugin.json (Claude native)
|
|
726
794
|
│ ├── skills/ ← Core skills (9 total)
|
|
727
795
|
│ │ ├── rfc-generator/
|
|
@@ -734,8 +802,8 @@ plugins/ ← ROOT: All plugins (version controlled)
|
|
|
734
802
|
│ │ ├── tech-lead/
|
|
735
803
|
│ │ └── ...
|
|
736
804
|
│ ├── commands/ ← Core commands (7 core + 15 specialized)
|
|
737
|
-
│ │ ├──
|
|
738
|
-
│ │ ├──
|
|
805
|
+
│ │ ├── inc.md
|
|
806
|
+
│ │ ├── do.md
|
|
739
807
|
│ │ └── ...
|
|
740
808
|
│ ├── hooks/ ← Lifecycle hooks (8 total)
|
|
741
809
|
│ │ ├── post-task-completion.sh
|
|
@@ -765,7 +833,7 @@ plugins/ ← ROOT: All plugins (version controlled)
|
|
|
765
833
|
**Rules**:
|
|
766
834
|
- ✅ `src/` = TypeScript code ONLY (compiled to `dist/`)
|
|
767
835
|
- ✅ ALL skills/agents/commands/hooks = Inside plugins (including core!)
|
|
768
|
-
- ✅ `plugins/specweave
|
|
836
|
+
- ✅ `plugins/specweave/` = Core framework plugin (always loaded)
|
|
769
837
|
- ✅ `.claude/` = Installed from all enabled plugins
|
|
770
838
|
- ❌ NEVER mix `*.ts` and `SKILL.md` in the same directory
|
|
771
839
|
- ❌ NEVER edit files in `.claude/` directly (they get overwritten)
|
|
@@ -774,7 +842,7 @@ plugins/ ← ROOT: All plugins (version controlled)
|
|
|
774
842
|
**Key Architectural Principle**:
|
|
775
843
|
- TypeScript code (`*.ts`) goes in `src/` → compiled to `dist/`
|
|
776
844
|
- Claude-native files (`SKILL.md`, `AGENT.md`, `*.md`) go in `plugins/` → copied to `.claude/`
|
|
777
|
-
- Even "core" framework components are in `plugins/specweave
|
|
845
|
+
- Even "core" framework components are in `plugins/specweave/` (everything is a plugin!)
|
|
778
846
|
- This separation ensures clean builds and prevents mixing compiled code with runtime files
|
|
779
847
|
|
|
780
848
|
### Tech Stack
|
|
@@ -836,7 +904,7 @@ specweave/
|
|
|
836
904
|
│ └── utils/ # Utility functions
|
|
837
905
|
│
|
|
838
906
|
├── plugins/ # ALL PLUGINS (root level)
|
|
839
|
-
│ ├── specweave
|
|
907
|
+
│ ├── specweave/ # CORE PLUGIN (framework essentials)
|
|
840
908
|
│ │ ├── .claude-plugin/
|
|
841
909
|
│ │ │ └── plugin.json # Claude native manifest
|
|
842
910
|
│ │ ├── skills/ # Core skills (9 total)
|
|
@@ -855,9 +923,9 @@ specweave/
|
|
|
855
923
|
│ │ │ ├── tech-lead/ # Tech Lead agent
|
|
856
924
|
│ │ │ └── ...
|
|
857
925
|
│ │ ├── commands/ # Core commands (22 total)
|
|
858
|
-
│ │ │ ├──
|
|
859
|
-
│ │ │ ├──
|
|
860
|
-
│ │ │ ├──
|
|
926
|
+
│ │ │ ├── inc.md # /specweave:inc
|
|
927
|
+
│ │ │ ├── do.md # /specweave:do
|
|
928
|
+
│ │ │ ├── done.md # /specweave:done
|
|
861
929
|
│ │ │ └── ...
|
|
862
930
|
│ │ ├── hooks/ # Lifecycle hooks (8 total)
|
|
863
931
|
│ │ │ ├── post-task-completion.sh # Auto-runs after tasks complete
|
|
@@ -996,7 +1064,7 @@ specweave/
|
|
|
996
1064
|
**1. Editing Skills** (any plugin):
|
|
997
1065
|
```bash
|
|
998
1066
|
# Core plugin (auto-loaded):
|
|
999
|
-
vim plugins/specweave
|
|
1067
|
+
vim plugins/specweave/skills/rfc-generator/SKILL.md
|
|
1000
1068
|
|
|
1001
1069
|
# Other plugins (opt-in):
|
|
1002
1070
|
vim plugins/specweave-github/skills/github-sync/SKILL.md
|
|
@@ -1007,7 +1075,7 @@ vim plugins/specweave-github/skills/github-sync/SKILL.md
|
|
|
1007
1075
|
**2. Editing Agents** (any plugin):
|
|
1008
1076
|
```bash
|
|
1009
1077
|
# Core plugin (auto-loaded):
|
|
1010
|
-
vim plugins/specweave
|
|
1078
|
+
vim plugins/specweave/agents/pm/AGENT.md
|
|
1011
1079
|
|
|
1012
1080
|
# Other plugins (opt-in):
|
|
1013
1081
|
vim plugins/specweave-github/agents/github-manager/AGENT.md
|
|
@@ -1018,7 +1086,7 @@ vim plugins/specweave-github/agents/github-manager/AGENT.md
|
|
|
1018
1086
|
**3. Editing Commands** (any plugin):
|
|
1019
1087
|
```bash
|
|
1020
1088
|
# Core plugin (auto-loaded):
|
|
1021
|
-
vim plugins/specweave
|
|
1089
|
+
vim plugins/specweave/commands/do.md
|
|
1022
1090
|
|
|
1023
1091
|
# Other plugins (opt-in):
|
|
1024
1092
|
vim plugins/specweave-github/commands/github-sync.md
|
|
@@ -1122,14 +1190,14 @@ Solution: Inactivity-based detection
|
|
|
1122
1190
|
|
|
1123
1191
|
```
|
|
1124
1192
|
SpecWeave = Collection of Claude Code Plugins
|
|
1125
|
-
├── specweave
|
|
1193
|
+
├── specweave (auto-loaded) ← The "framework" IS a plugin
|
|
1126
1194
|
├── specweave-github (opt-in)
|
|
1127
1195
|
├── specweave-figma (opt-in)
|
|
1128
1196
|
└── ...all other plugins (opt-in)
|
|
1129
1197
|
```
|
|
1130
1198
|
|
|
1131
1199
|
**What this means**:
|
|
1132
|
-
- ✅ `specweave
|
|
1200
|
+
- ✅ `specweave` is a Claude Code plugin (happens to auto-load)
|
|
1133
1201
|
- ✅ All plugins follow identical structure (`.claude-plugin/plugin.json`, `skills/`, `agents/`, `commands/`)
|
|
1134
1202
|
- ✅ Adding a skill = adding it to a plugin (always)
|
|
1135
1203
|
- ❌ There are NO "core framework components" outside plugins
|
|
@@ -1165,7 +1233,7 @@ plugins/specweave-{name}/
|
|
|
1165
1233
|
```
|
|
1166
1234
|
|
|
1167
1235
|
**Key Plugins** (for reference):
|
|
1168
|
-
- `specweave
|
|
1236
|
+
- `specweave` - Framework essentials (always loaded)
|
|
1169
1237
|
- `specweave-github` - GitHub Issues integration
|
|
1170
1238
|
- `specweave-{frontend|backend|infrastructure}` - Tech stack plugins
|
|
1171
1239
|
|
|
@@ -1179,10 +1247,10 @@ plugins/specweave-{name}/
|
|
|
1179
1247
|
|
|
1180
1248
|
```
|
|
1181
1249
|
Is this feature...
|
|
1182
|
-
├─ Used by EVERY project? → specweave
|
|
1250
|
+
├─ Used by EVERY project? → specweave (auto-loaded)
|
|
1183
1251
|
│ Examples: increment-planner, rfc-generator, tdd-workflow, PM/Architect agents
|
|
1184
1252
|
│
|
|
1185
|
-
├─ Part of increment lifecycle? → specweave
|
|
1253
|
+
├─ Part of increment lifecycle? → specweave (auto-loaded)
|
|
1186
1254
|
│ Examples: /specweave:inc, /specweave:do, living docs hooks
|
|
1187
1255
|
│
|
|
1188
1256
|
├─ Tech stack specific? → New plugin: specweave-{stack}
|
|
@@ -1343,7 +1411,7 @@ Other tools simply can't match these capabilities. The adapters remain in the co
|
|
|
1343
1411
|
**All components go into plugins** (see "Plugins" section above for complete instructions).
|
|
1344
1412
|
|
|
1345
1413
|
**Quick reference**:
|
|
1346
|
-
- **Core components**: `plugins/specweave
|
|
1414
|
+
- **Core components**: `plugins/specweave/{skills|agents|commands|hooks}/`
|
|
1347
1415
|
- **Plugin components**: `plugins/specweave-{name}/{skills|agents|commands}/`
|
|
1348
1416
|
- **Tests**: `tests/integration/{component-name}/` or `tests/unit/`
|
|
1349
1417
|
|