specweave 0.8.17 → 0.8.18
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 +71 -15
- package/README.md +11 -3
- package/README.md.bak +304 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +74 -20
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/helpers/issue-tracker/index.d.ts.map +1 -1
- package/dist/cli/helpers/issue-tracker/index.js +8 -3
- package/dist/cli/helpers/issue-tracker/index.js.map +1 -1
- package/dist/cli/helpers/issue-tracker/utils.d.ts +5 -2
- package/dist/cli/helpers/issue-tracker/utils.d.ts.map +1 -1
- package/dist/cli/helpers/issue-tracker/utils.js +13 -6
- package/dist/cli/helpers/issue-tracker/utils.js.map +1 -1
- package/dist/utils/agents-md-compiler.js +2 -2
- package/dist/utils/env-multi-project-parser.d.ts +210 -0
- package/dist/utils/env-multi-project-parser.d.ts.map +1 -0
- package/dist/utils/env-multi-project-parser.js +406 -0
- package/dist/utils/env-multi-project-parser.js.map +1 -0
- package/package.json +1 -1
- package/plugins/specweave/hooks/post-first-increment.sh +79 -0
- package/plugins/specweave/skills/increment-planner/SKILL.md +50 -16
- package/plugins/specweave/skills/plugin-expert/SKILL.md +344 -0
- package/plugins/specweave/skills/specweave-framework/SKILL.md +2 -2
- package/plugins/specweave/skills/translator/SKILL.md +29 -0
- package/plugins/specweave/skills/translator/SKILL.md.bak +172 -0
- package/src/templates/.gitignore.template +1 -0
package/CLAUDE.md
CHANGED
|
@@ -939,39 +939,58 @@ When you run `specweave init`:
|
|
|
939
939
|
- Success message: "✔ SpecWeave core plugin installed automatically!"
|
|
940
940
|
- Graceful fallback: If CLI unavailable, shows manual install instructions
|
|
941
941
|
|
|
942
|
-
3.
|
|
943
|
-
-
|
|
944
|
-
-
|
|
942
|
+
3. ✅ **Issue Tracker Plugin Auto-Installation** (NEW! v0.8.18+)
|
|
943
|
+
- Detects GitHub/Jira/Azure DevOps from project structure
|
|
944
|
+
- Prompts for credentials (API tokens, PATs)
|
|
945
|
+
- **Automatically installs** corresponding plugin (specweave-github, specweave-jira, specweave-ado)
|
|
946
|
+
- Happens AFTER marketplace registration (ensures plugin installation succeeds)
|
|
947
|
+
- Shows detailed error messages if auto-install fails
|
|
948
|
+
- Example: Jira detected → credentials saved → `specweave-jira` plugin installed automatically
|
|
949
|
+
|
|
950
|
+
4. ℹ️ **Optional Plugins Available**
|
|
951
|
+
- Suggested based on project type (frontend, backend, infrastructure)
|
|
952
|
+
- User can install later via `/plugin install specweave-{name}`
|
|
945
953
|
|
|
946
954
|
**Key Architectural Change**:
|
|
947
955
|
- ❌ Old: Copied `.claude-plugin/` + `plugins/` to every project (~2MB bloat)
|
|
948
956
|
- ✅ New: Reference GitHub marketplace (~2KB settings.json, always up-to-date)
|
|
949
957
|
|
|
950
|
-
#### Phase 2: Increment Planning (
|
|
958
|
+
#### Phase 2: Increment Planning (Intelligent Plugin Detection)
|
|
951
959
|
|
|
952
960
|
When you create increments (e.g., `/specweave:increment "Add Stripe billing"`):
|
|
953
961
|
|
|
954
|
-
1. **Spec Analysis** (
|
|
962
|
+
1. **Spec Analysis** (v0.6.0+, Enhanced v0.8.18+)
|
|
955
963
|
- increment-planner skill scans spec.md content
|
|
956
964
|
- Detects keywords: "Stripe", "GitHub", "Kubernetes", "React", etc.
|
|
957
965
|
- Maps keywords → required plugins (see Step 6 in increment-planner/SKILL.md)
|
|
958
966
|
|
|
959
|
-
2.
|
|
967
|
+
2. **🚨 AUTOMATIC Plugin Recommendation** (Enhanced v0.8.18+)
|
|
960
968
|
```
|
|
961
|
-
🔌
|
|
969
|
+
🔌 Detected plugin requirements from spec content:
|
|
962
970
|
|
|
963
|
-
|
|
964
|
-
• specweave-payments - Stripe integration
|
|
971
|
+
REQUIRED (will significantly improve implementation):
|
|
972
|
+
• specweave-payments - Stripe integration
|
|
973
|
+
Detected: "billing", "Stripe", "subscriptions"
|
|
974
|
+
Provides: Stripe expert agent, payment flow validation, webhook handling
|
|
975
|
+
→ Without this: Manual Stripe integration, no validation
|
|
965
976
|
|
|
966
|
-
📦 Install
|
|
977
|
+
📦 Install recommended plugins:
|
|
978
|
+
/plugin install specweave-payments
|
|
967
979
|
|
|
968
|
-
|
|
980
|
+
💡 Benefits:
|
|
981
|
+
• Plugins provide specialized AI agents (Stripe expert, etc.)
|
|
982
|
+
• Skills auto-activate based on context (zero manual invocation)
|
|
983
|
+
• 70%+ context reduction (only load what you need)
|
|
984
|
+
• Best practices built-in (from real-world experience)
|
|
985
|
+
|
|
986
|
+
Would you like me to wait while you install these plugins? (Recommended)
|
|
987
|
+
Or shall I continue without them? (Limited capabilities)
|
|
969
988
|
```
|
|
970
989
|
|
|
971
990
|
3. **User Decision**
|
|
972
|
-
- Install now → Plugin activates immediately (
|
|
973
|
-
- Install later → Skills won't be available until plugin installed
|
|
974
|
-
- Skip → Increment creation continues (not blocked)
|
|
991
|
+
- Install now → Plugin activates immediately (skills available during implementation)
|
|
992
|
+
- Install later → Skills won't be available until plugin installed (can add mid-work)
|
|
993
|
+
- Skip → Increment creation continues (not blocked, but capabilities limited)
|
|
975
994
|
|
|
976
995
|
#### Phase 3: Implementation (Auto-Activation)
|
|
977
996
|
|
|
@@ -987,6 +1006,43 @@ When plugins are installed:
|
|
|
987
1006
|
- 70%+ reduction vs. monolithic approach
|
|
988
1007
|
- Real-time: Simple React app = 16K tokens (was 50K in v0.3.7)
|
|
989
1008
|
|
|
1009
|
+
#### Phase 4: First Increment Completion (Documentation Preview)
|
|
1010
|
+
|
|
1011
|
+
After completing your first increment:
|
|
1012
|
+
|
|
1013
|
+
1. **🎉 Post-First-Increment Hook** (NEW! v0.8.18+)
|
|
1014
|
+
- Automatically triggers when first increment is marked complete
|
|
1015
|
+
- Suggests docs-preview plugin for beautiful documentation UI
|
|
1016
|
+
- Shows clear benefits and install command
|
|
1017
|
+
|
|
1018
|
+
2. **Suggestion Format**:
|
|
1019
|
+
```
|
|
1020
|
+
🎉 Congratulations! You completed your first increment!
|
|
1021
|
+
|
|
1022
|
+
📚 Preview your documentation in a beautiful UI?
|
|
1023
|
+
|
|
1024
|
+
The specweave-docs-preview plugin can generate a Docusaurus site from
|
|
1025
|
+
your .specweave/docs/ folder with:
|
|
1026
|
+
|
|
1027
|
+
✓ Auto-generated sidebar from folder structure
|
|
1028
|
+
✓ Hot reload (edit markdown, see changes instantly)
|
|
1029
|
+
✓ Mermaid diagram rendering
|
|
1030
|
+
✓ Priority sorting (Strategy → Specs → Architecture → ...)
|
|
1031
|
+
|
|
1032
|
+
📦 Install with:
|
|
1033
|
+
/plugin install specweave-docs-preview
|
|
1034
|
+
|
|
1035
|
+
🚀 Then launch:
|
|
1036
|
+
/specweave:docs preview
|
|
1037
|
+
```
|
|
1038
|
+
|
|
1039
|
+
3. **Benefits**:
|
|
1040
|
+
- Beautiful, searchable documentation site (Docusaurus 3.x)
|
|
1041
|
+
- Live preview with hot reload (see changes in real-time)
|
|
1042
|
+
- Auto-generated navigation from folder structure
|
|
1043
|
+
- Mermaid diagrams rendered automatically
|
|
1044
|
+
- Share docs with stakeholders (export static site)
|
|
1045
|
+
|
|
990
1046
|
### Manual Plugin Management
|
|
991
1047
|
|
|
992
1048
|
All plugin management happens through Claude Code's native commands:
|
|
@@ -2113,7 +2169,7 @@ vim .claude-plugin/marketplace.json
|
|
|
2113
2169
|
|
|
2114
2170
|
# 5. Test locally
|
|
2115
2171
|
/plugin marketplace add ./.claude-plugin
|
|
2116
|
-
/plugin install myplugin
|
|
2172
|
+
/plugin install specweave-myplugin
|
|
2117
2173
|
```
|
|
2118
2174
|
|
|
2119
2175
|
**See**: [.claude-plugin/README.md](/.claude-plugin/README.md) for marketplace documentation
|
package/README.md
CHANGED
|
@@ -149,10 +149,18 @@ Auto-updates after every task via Claude Code hooks - never outdated
|
|
|
149
149
|
### 🤖 Intelligent Agents
|
|
150
150
|
PM Agent, Architect, test-aware-planner, Quality Judge - specialized AI agents guide you
|
|
151
151
|
|
|
152
|
-
### 🌍 Multilingual Support
|
|
153
|
-
Work in 9 languages (Russian, Spanish, Chinese, German, French, Japanese, Korean, Portuguese) with zero-cost LLM-native translation
|
|
154
152
|
|
|
155
|
-
|
|
153
|
+
### 🌍 Multilingual Support ($0 Cost!)
|
|
154
|
+
|
|
155
|
+
Work in 11 languages with **FREE zero-cost translation**:
|
|
156
|
+
|
|
157
|
+
- **Primary Approach**: In-session translation (FREE, works with any model)
|
|
158
|
+
- **Optional Approach**: Automated hooks (convenience, ~$0.003/increment)
|
|
159
|
+
- **11 Languages**: English, Russian, Spanish, Chinese, German, French, Japanese, Korean, Portuguese, Arabic, Hebrew
|
|
160
|
+
- **Any Model**: Claude, GPT-4, Gemini, DeepSeek, and more
|
|
161
|
+
- **Any Tool**: Claude Code, Cursor, Copilot, ChatGPT
|
|
162
|
+
|
|
163
|
+
**Zero API costs** - uses your current conversation context for translation!
|
|
156
164
|
|
|
157
165
|
---
|
|
158
166
|
|
package/README.md.bak
ADDED
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
# SpecWeave
|
|
2
|
+
|
|
3
|
+
> **AI made us fast. SpecWeave makes us sustainable.**
|
|
4
|
+
|
|
5
|
+
[](https://opensource.org/licenses/MIT)
|
|
6
|
+
[](https://github.com/anton-abyzov/specweave/actions/workflows/test.yml)
|
|
7
|
+
[](https://github.com/anton-abyzov/specweave/actions/workflows/e2e-smoke-test.yml)
|
|
8
|
+
[](https://discord.gg/UYg4BGJ65V)
|
|
9
|
+
[](https://www.youtube.com/@antonabyzov)
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## The Problem Everyone Feels But Nobody Talks About
|
|
14
|
+
|
|
15
|
+
Your AI coding assistant writes features in 30 minutes.
|
|
16
|
+
|
|
17
|
+
You spend 3 days updating documentation.
|
|
18
|
+
|
|
19
|
+
By day 4, the code has changed again.
|
|
20
|
+
|
|
21
|
+
**The docs? Already wrong.**
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## The Dirty Secret of AI Coding
|
|
26
|
+
|
|
27
|
+
AI coding assistants made us:
|
|
28
|
+
- ✅ **10x faster at shipping**
|
|
29
|
+
- ❌ **100x worse at maintaining**
|
|
30
|
+
|
|
31
|
+
We're all "vibe coding" now. Fast. Fun. Chaotic.
|
|
32
|
+
|
|
33
|
+
No structure. No boundaries. No memory of why we built it this way.
|
|
34
|
+
|
|
35
|
+
New developers? Lost in 1 hour.
|
|
36
|
+
|
|
37
|
+
**This is not sustainable.**
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## The Fortune 500 Gap
|
|
42
|
+
|
|
43
|
+
Big companies don't have this problem.
|
|
44
|
+
|
|
45
|
+
They have systems:
|
|
46
|
+
- **PRDs** (Product Requirements) - What and why
|
|
47
|
+
- **HLDs** (High-Level Design) - Architecture decisions
|
|
48
|
+
- **ADRs** (Architecture Decision Records) - Why we chose X over Y
|
|
49
|
+
- **Runbooks** (Operations) - How to actually run this
|
|
50
|
+
- **Glossaries** (Terms) - What these acronyms mean
|
|
51
|
+
|
|
52
|
+
Their docs stay updated because there's a team, a process, a **discipline**.
|
|
53
|
+
|
|
54
|
+
But for solo developers and small teams?
|
|
55
|
+
|
|
56
|
+
**Impossible to maintain manually.**
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## What is SpecWeave?
|
|
61
|
+
|
|
62
|
+
**Fortune 500 discipline. Zero overhead. AI-native.**
|
|
63
|
+
|
|
64
|
+
SpecWeave is a spec-driven development framework that brings enterprise-grade processes to developers of any size—without the bureaucracy.
|
|
65
|
+
|
|
66
|
+
It's not just a tool. **It's a movement.**
|
|
67
|
+
|
|
68
|
+
> *"Dad, AI writes your code but you update docs MANUALLY?"*
|
|
69
|
+
> — My 14-year-old daughter (who was absolutely right)
|
|
70
|
+
|
|
71
|
+
**The new way:**
|
|
72
|
+
- Living docs that ACTUALLY stay synced (automatically)
|
|
73
|
+
- Complete knowledge system (PRDs, HLDs, ADRs, glossaries, runbooks)
|
|
74
|
+
- Tests embedded in tasks (BDD format, full traceability)
|
|
75
|
+
- Enterprise structure without enterprise overhead
|
|
76
|
+
- **Vibe coding... but with boundaries**
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## What Changes
|
|
81
|
+
|
|
82
|
+
**BEFORE (Vibe Coding):**
|
|
83
|
+
- "I think we used JWT tokens?"
|
|
84
|
+
- "Why did we choose PostgreSQL again?"
|
|
85
|
+
- "What does this acronym mean?"
|
|
86
|
+
- New developer: **Lost in 1 hour**
|
|
87
|
+
|
|
88
|
+
**AFTER (SpecWeave):**
|
|
89
|
+
- Check ADR-003: JWT vs Session Tokens (we chose JWT, here's why)
|
|
90
|
+
- Check HLD: Database section (Postgres for ACID compliance)
|
|
91
|
+
- Check Glossary: All technical terms defined
|
|
92
|
+
- New developer: **Productive in 1 hour**
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## 📊 Engineering Metrics (DORA)
|
|
97
|
+
|
|
98
|
+
[](https://spec-weave.com/docs/metrics)
|
|
99
|
+
[](https://spec-weave.com/docs/metrics)
|
|
100
|
+
[](https://spec-weave.com/docs/metrics)
|
|
101
|
+
[](https://spec-weave.com/docs/metrics)
|
|
102
|
+
|
|
103
|
+
[View detailed metrics dashboard →](https://spec-weave.com/docs/metrics)
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## 📖 Full Documentation
|
|
108
|
+
|
|
109
|
+
**For complete guides, tutorials, and API reference:**
|
|
110
|
+
|
|
111
|
+
### **[spec-weave.com](https://spec-weave.com)**
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## Quick Start
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
# Install SpecWeave CLI
|
|
119
|
+
npm install -g specweave
|
|
120
|
+
|
|
121
|
+
# Initialize your project
|
|
122
|
+
specweave init my-project
|
|
123
|
+
cd my-project
|
|
124
|
+
|
|
125
|
+
# Start building - SpecWeave guides you through the entire workflow
|
|
126
|
+
/specweave:increment "User authentication" # Plan increment
|
|
127
|
+
/specweave:do # Implement tasks (auto-pauses if blocked, auto-resumes when ready)
|
|
128
|
+
/specweave:done 0001 # Complete increment
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
**New to SpecWeave?** → **[Getting Started Guide](https://spec-weave.com/docs/guides/getting-started/quickstart)**
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
## Key Features
|
|
136
|
+
|
|
137
|
+
### 🧪 Test-Aware Planning
|
|
138
|
+
Embedded test plans in every task with BDD format (Given/When/Then) for clarity
|
|
139
|
+
|
|
140
|
+
### 🎯 Disciplined Progress
|
|
141
|
+
Cannot start increment N+1 until N is DONE - enforces completion before moving forward
|
|
142
|
+
|
|
143
|
+
### ⏸️ Intelligent Status Management
|
|
144
|
+
Automatically detects when you're blocked (missing API keys, waiting for approval), pauses work with clear context, and resumes when ready - no manual intervention needed
|
|
145
|
+
|
|
146
|
+
### 📚 Living Documentation
|
|
147
|
+
Auto-updates after every task via Claude Code hooks - never outdated
|
|
148
|
+
|
|
149
|
+
### 🤖 Intelligent Agents
|
|
150
|
+
PM Agent, Architect, test-aware-planner, Quality Judge - specialized AI agents guide you
|
|
151
|
+
|
|
152
|
+
### 🌍 Multilingual Support
|
|
153
|
+
Work in 9 languages (Russian, Spanish, Chinese, German, French, Japanese, Korean, Portuguese) with zero-cost LLM-native translation
|
|
154
|
+
|
|
155
|
+
**[→ Explore All Features](https://spec-weave.com/docs/overview/features)**
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## Enterprise Features
|
|
160
|
+
|
|
161
|
+
### 🏢 Multi-Project Support (v0.8.0+)
|
|
162
|
+
|
|
163
|
+
Organize documentation by team, repo, or microservice:
|
|
164
|
+
|
|
165
|
+
- **Team-Based Organization**: Frontend, Backend, Mobile, Platform teams with separate documentation
|
|
166
|
+
- **Microservices Architecture**: Each service gets its own specs, modules, and team playbooks
|
|
167
|
+
- **Per-Project Sync**: Link projects to different GitHub repos, JIRA projects, or ADO boards
|
|
168
|
+
- **Unified Architecture**: Single project = multi-project with 1 project (NO special cases!)
|
|
169
|
+
|
|
170
|
+
**Five Documentation Types Per Project**:
|
|
171
|
+
1. **specs/** - Living documentation specs (user stories, AC)
|
|
172
|
+
2. **modules/** - Module/component documentation (architecture, APIs)
|
|
173
|
+
3. **team/** - Team playbooks (onboarding, conventions, workflows)
|
|
174
|
+
4. **architecture/** - Project-specific ADRs (optional)
|
|
175
|
+
5. **legacy/** - Brownfield imports (temporary)
|
|
176
|
+
|
|
177
|
+
**[→ Multi-Project Setup Guide](https://spec-weave.com/docs/guides/multi-project-setup)**
|
|
178
|
+
|
|
179
|
+
### 📦 Brownfield Import
|
|
180
|
+
|
|
181
|
+
Import existing documentation from external sources:
|
|
182
|
+
|
|
183
|
+
- **Automatic Classification**: AI-powered keyword detection (85%+ accuracy)
|
|
184
|
+
- **Supported Sources**: Notion, Confluence, GitHub Wiki, custom markdown folders
|
|
185
|
+
- **Smart Organization**: Classifies into specs, modules, team docs, or legacy
|
|
186
|
+
- **Migration Reports**: Complete audit trail with confidence scores and manual review checklist
|
|
187
|
+
|
|
188
|
+
**Example**:
|
|
189
|
+
```bash
|
|
190
|
+
# Import Notion export to web-app project
|
|
191
|
+
/specweave:import-docs ~/Downloads/notion-export --source=notion --project=web-app
|
|
192
|
+
|
|
193
|
+
# Result:
|
|
194
|
+
# ✅ Classified 127 files
|
|
195
|
+
# - 37 specs → projects/web-app/specs/
|
|
196
|
+
# - 18 modules → projects/web-app/modules/
|
|
197
|
+
# - 12 team docs → projects/web-app/team/
|
|
198
|
+
# - 60 legacy → projects/web-app/legacy/notion/
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
**[→ Brownfield Integration Guide](https://spec-weave.com/docs/workflows/brownfield)**
|
|
202
|
+
|
|
203
|
+
---
|
|
204
|
+
|
|
205
|
+
## Documentation Hub
|
|
206
|
+
|
|
207
|
+
**Learn SpecWeave:**
|
|
208
|
+
- 📘 [What is SpecWeave?](https://spec-weave.com/docs/overview/introduction)
|
|
209
|
+
- 🚀 [Quickstart Guide](https://spec-weave.com/docs/guides/getting-started/quickstart)
|
|
210
|
+
- 🏗️ [Complete Workflow Journey](https://spec-weave.com/docs/workflows/overview)
|
|
211
|
+
- ❓ [FAQ - Common Questions](https://spec-weave.com/docs/faq)
|
|
212
|
+
|
|
213
|
+
**Commands & API:**
|
|
214
|
+
- 📋 [Commands Reference](https://spec-weave.com/docs/commands/status-management)
|
|
215
|
+
- 🔧 [API Documentation](https://spec-weave.com/docs/api)
|
|
216
|
+
|
|
217
|
+
**Advanced Topics:**
|
|
218
|
+
- 📊 [DORA Metrics Dashboard](https://spec-weave.com/docs/metrics)
|
|
219
|
+
- 🏢 [Brownfield Integration](https://spec-weave.com/docs/workflows/brownfield)
|
|
220
|
+
- 🌍 [Multilingual Support](https://spec-weave.com/docs/tutorial-extras/multilingual-support)
|
|
221
|
+
- 🔗 [GitHub Actions Setup](https://spec-weave.com/docs/guides/github-action-setup)
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
## Community & Support
|
|
226
|
+
|
|
227
|
+
**Join the Community:**
|
|
228
|
+
|
|
229
|
+
- 💬 **[Discord Server](https://discord.gg/UYg4BGJ65V)** - Get help, share tips, discuss features
|
|
230
|
+
- 🎥 **[YouTube Channel](https://www.youtube.com/@antonabyzov)** - Tutorials, demos, deep dives
|
|
231
|
+
- 📖 **[Documentation](https://spec-weave.com)** - Complete guides and API reference
|
|
232
|
+
- 🐛 **[GitHub Issues](https://github.com/anton-abyzov/specweave/issues)** - Bug reports and feature requests
|
|
233
|
+
- 💡 **[GitHub Discussions](https://github.com/anton-abyzov/specweave/discussions)** - Q&A and community discussions
|
|
234
|
+
|
|
235
|
+
**Need Help?**
|
|
236
|
+
1. Check the **[FAQ](https://spec-weave.com/docs/faq)** first
|
|
237
|
+
2. Ask in **[Discord](https://discord.gg/UYg4BGJ65V)** for quick answers
|
|
238
|
+
3. Create a **[GitHub Discussion](https://github.com/anton-abyzov/specweave/discussions)** for detailed questions
|
|
239
|
+
|
|
240
|
+
---
|
|
241
|
+
|
|
242
|
+
## Contributing
|
|
243
|
+
|
|
244
|
+
**Development Setup:**
|
|
245
|
+
|
|
246
|
+
```bash
|
|
247
|
+
# Clone and setup
|
|
248
|
+
git clone https://github.com/anton-abyzov/specweave.git
|
|
249
|
+
cd specweave
|
|
250
|
+
npm install
|
|
251
|
+
npm run build
|
|
252
|
+
|
|
253
|
+
# Run tests
|
|
254
|
+
npm test
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
**To Contribute:**
|
|
258
|
+
1. Fork repository
|
|
259
|
+
2. Create feature branch: `git checkout -b features/002-new-feature`
|
|
260
|
+
3. Follow SpecWeave conventions (see CLAUDE.md)
|
|
261
|
+
4. Add tests (minimum 3 test cases)
|
|
262
|
+
5. Create PR to `develop` branch
|
|
263
|
+
|
|
264
|
+
**[→ Contributor Guide](https://spec-weave.com/docs/guides/contributing)**
|
|
265
|
+
|
|
266
|
+
---
|
|
267
|
+
|
|
268
|
+
## Best Results with Claude Code
|
|
269
|
+
|
|
270
|
+
SpecWeave gives **best results with Claude Code** due to unique capabilities:
|
|
271
|
+
|
|
272
|
+
- ✅ **Native Plugin Marketplace** - Skills and agents auto-activate (no manual setup)
|
|
273
|
+
- ✅ **Auto-Activating Skills** - Context-aware activation (no @ mentions)
|
|
274
|
+
- ✅ **Isolated Agent Contexts** - True multi-agent role separation
|
|
275
|
+
- ✅ **Pre/Post Lifecycle Hooks** - Automated living docs sync after every task
|
|
276
|
+
- ✅ **MCP Protocol** - Industry standard for context management
|
|
277
|
+
|
|
278
|
+
**Also works with**: Cursor, GitHub Copilot, ChatGPT (with manual workflow, reduced automation)
|
|
279
|
+
|
|
280
|
+
**[→ Tool Comparison](https://spec-weave.com/docs/overview/features#claude-code-native)**
|
|
281
|
+
|
|
282
|
+
---
|
|
283
|
+
|
|
284
|
+
## Status & License
|
|
285
|
+
|
|
286
|
+
**Status**: Beta - Ready for testing and contributions
|
|
287
|
+
**License**: MIT
|
|
288
|
+
**Repository**: [github.com/anton-abyzov/specweave](https://github.com/anton-abyzov/specweave)
|
|
289
|
+
|
|
290
|
+
---
|
|
291
|
+
|
|
292
|
+
## Acknowledgments
|
|
293
|
+
|
|
294
|
+
SpecWeave is inspired by:
|
|
295
|
+
- [spec-kit](https://github.com/github/spec-kit) - GitHub's specification toolkit
|
|
296
|
+
- [BMAD-METHOD](https://github.com/bmad-code-org/BMAD-METHOD) - Agentic agile framework
|
|
297
|
+
- [Claude Code](https://claude.com/claude-code) - Anthropic's native plugin system
|
|
298
|
+
- [C4 Model](https://c4model.com/) - Software architecture diagrams
|
|
299
|
+
|
|
300
|
+
---
|
|
301
|
+
|
|
302
|
+
**SpecWeave** - AI made us fast. SpecWeave makes us sustainable.
|
|
303
|
+
|
|
304
|
+
**Get started**: `npm install -g specweave` → `specweave init my-project` → **[Read the Docs](https://spec-weave.com)**
|
|
@@ -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,
|
|
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"}
|
|
@@ -404,23 +404,6 @@ export async function initCommand(projectName, options = {}) {
|
|
|
404
404
|
spinner.text = 'Using existing Git repository...';
|
|
405
405
|
}
|
|
406
406
|
spinner.succeed('SpecWeave project created successfully!');
|
|
407
|
-
// 10.5 Issue Tracker Integration (NEW!)
|
|
408
|
-
// Ask user to configure GitHub/Jira/ADO integration
|
|
409
|
-
try {
|
|
410
|
-
const { setupIssueTracker } = await import('../helpers/issue-tracker/index.js');
|
|
411
|
-
await setupIssueTracker({
|
|
412
|
-
projectPath: targetDir,
|
|
413
|
-
language: language,
|
|
414
|
-
maxRetries: 3
|
|
415
|
-
});
|
|
416
|
-
}
|
|
417
|
-
catch (error) {
|
|
418
|
-
// Non-critical error - log but continue
|
|
419
|
-
if (process.env.DEBUG) {
|
|
420
|
-
console.error(chalk.red(`\n❌ Issue tracker setup error: ${error.message}`));
|
|
421
|
-
}
|
|
422
|
-
console.log(chalk.yellow('\n⚠️ Issue tracker setup skipped (can configure later)'));
|
|
423
|
-
}
|
|
424
407
|
// 11. Show tool-specific next steps
|
|
425
408
|
if (toolName !== 'claude') {
|
|
426
409
|
const adapter = adapterLoader.getAdapter(toolName);
|
|
@@ -433,8 +416,48 @@ export async function initCommand(projectName, options = {}) {
|
|
|
433
416
|
});
|
|
434
417
|
}
|
|
435
418
|
}
|
|
436
|
-
// 13.
|
|
437
|
-
|
|
419
|
+
// 13. Documentation preview prompt (Claude Code only)
|
|
420
|
+
let enableDocsPreview = true; // Default: enabled
|
|
421
|
+
if (toolName === 'claude') {
|
|
422
|
+
try {
|
|
423
|
+
spinner.stop();
|
|
424
|
+
console.log('');
|
|
425
|
+
console.log(chalk.cyan('📚 Documentation Preview'));
|
|
426
|
+
console.log('');
|
|
427
|
+
console.log(chalk.white(' View your living documentation in a beautiful UI:'));
|
|
428
|
+
console.log(chalk.gray(' • Auto-generated sidebar from folder structure'));
|
|
429
|
+
console.log(chalk.gray(' • Hot reload (edit markdown, see changes instantly)'));
|
|
430
|
+
console.log(chalk.gray(' • Mermaid diagram rendering'));
|
|
431
|
+
console.log(chalk.gray(' • Installs dependencies on first use'));
|
|
432
|
+
console.log('');
|
|
433
|
+
const response = await inquirer.prompt([
|
|
434
|
+
{
|
|
435
|
+
type: 'confirm',
|
|
436
|
+
name: 'enableDocsPreview',
|
|
437
|
+
message: 'Enable documentation preview?',
|
|
438
|
+
default: true
|
|
439
|
+
}
|
|
440
|
+
]);
|
|
441
|
+
enableDocsPreview = response.enableDocsPreview;
|
|
442
|
+
if (enableDocsPreview) {
|
|
443
|
+
console.log(chalk.green(' ✔ Documentation preview enabled'));
|
|
444
|
+
console.log(chalk.gray(' → Preview with: /specweave:docs preview'));
|
|
445
|
+
}
|
|
446
|
+
else {
|
|
447
|
+
console.log(chalk.gray(' → Skipped (can enable later in .specweave/config.json)'));
|
|
448
|
+
}
|
|
449
|
+
console.log('');
|
|
450
|
+
spinner.start();
|
|
451
|
+
}
|
|
452
|
+
catch (error) {
|
|
453
|
+
// Non-critical - continue with default (enabled)
|
|
454
|
+
if (process.env.DEBUG) {
|
|
455
|
+
console.error(chalk.red(`\n❌ Docs preview prompt error: ${error.message}`));
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
// 14. Create config.json with language setting and docs preview
|
|
460
|
+
createConfigFile(targetDir, finalProjectName, toolName, language, enableDocsPreview);
|
|
438
461
|
// 14. Setup Claude Code plugin auto-registration (if Claude detected)
|
|
439
462
|
let autoInstallSucceeded = false;
|
|
440
463
|
if (toolName === 'claude') {
|
|
@@ -592,6 +615,24 @@ export async function initCommand(projectName, options = {}) {
|
|
|
592
615
|
autoInstallSucceeded = false;
|
|
593
616
|
}
|
|
594
617
|
}
|
|
618
|
+
// 10.5 Issue Tracker Integration (NEW!)
|
|
619
|
+
// CRITICAL: Must happen AFTER marketplace registration and core plugin install
|
|
620
|
+
// Otherwise plugin installation will fail (marketplace not found)
|
|
621
|
+
try {
|
|
622
|
+
const { setupIssueTracker } = await import('../helpers/issue-tracker/index.js');
|
|
623
|
+
await setupIssueTracker({
|
|
624
|
+
projectPath: targetDir,
|
|
625
|
+
language: language,
|
|
626
|
+
maxRetries: 3
|
|
627
|
+
});
|
|
628
|
+
}
|
|
629
|
+
catch (error) {
|
|
630
|
+
// Non-critical error - log but continue
|
|
631
|
+
if (process.env.DEBUG) {
|
|
632
|
+
console.error(chalk.red(`\n❌ Issue tracker setup error: ${error.message}`));
|
|
633
|
+
}
|
|
634
|
+
console.log(chalk.yellow('\n⚠️ Issue tracker setup skipped (can configure later)'));
|
|
635
|
+
}
|
|
595
636
|
}
|
|
596
637
|
showNextSteps(finalProjectName, toolName, language, usedDotNotation, toolName === 'claude' ? autoInstallSucceeded : undefined);
|
|
597
638
|
}
|
|
@@ -1045,7 +1086,7 @@ function copyHooks(hooksDir, targetHooksDir, language = 'en') {
|
|
|
1045
1086
|
/**
|
|
1046
1087
|
* Create .specweave/config.json with project settings
|
|
1047
1088
|
*/
|
|
1048
|
-
function createConfigFile(targetDir, projectName, adapter, language) {
|
|
1089
|
+
function createConfigFile(targetDir, projectName, adapter, language, enableDocsPreview = true) {
|
|
1049
1090
|
const configPath = path.join(targetDir, '.specweave', 'config.json');
|
|
1050
1091
|
const config = {
|
|
1051
1092
|
project: {
|
|
@@ -1055,6 +1096,19 @@ function createConfigFile(targetDir, projectName, adapter, language) {
|
|
|
1055
1096
|
adapters: {
|
|
1056
1097
|
default: adapter,
|
|
1057
1098
|
},
|
|
1099
|
+
// Documentation preview settings (for Claude Code only)
|
|
1100
|
+
...(adapter === 'claude' && {
|
|
1101
|
+
documentation: {
|
|
1102
|
+
preview: {
|
|
1103
|
+
enabled: enableDocsPreview,
|
|
1104
|
+
autoInstall: false, // Lazy install on first use
|
|
1105
|
+
port: 3015, // Internal docs (avoid port 3000 - used by React/Next.js/Vite)
|
|
1106
|
+
openBrowser: true,
|
|
1107
|
+
theme: 'default',
|
|
1108
|
+
excludeFolders: ['legacy', 'node_modules']
|
|
1109
|
+
}
|
|
1110
|
+
}
|
|
1111
|
+
}),
|
|
1058
1112
|
// Only include language if non-English
|
|
1059
1113
|
...(language !== 'en' && {
|
|
1060
1114
|
language,
|