specweave 0.30.17 → 0.30.19
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 +22 -0
- package/dist/src/adapters/README.md +275 -0
- package/dist/src/adapters/adapter-base.d.ts +1 -1
- package/dist/src/adapters/adapter-base.js +3 -3
- package/dist/src/adapters/adapter-base.js.map +1 -1
- package/dist/src/adapters/adapter-loader.d.ts +11 -10
- package/dist/src/adapters/adapter-loader.d.ts.map +1 -1
- package/dist/src/adapters/adapter-loader.js +31 -21
- package/dist/src/adapters/adapter-loader.js.map +1 -1
- package/dist/src/adapters/claude/README.md +233 -0
- package/dist/src/adapters/codex/README.md +105 -0
- package/dist/src/adapters/cursor/.cursor/context/docs-context.md +62 -0
- package/dist/src/adapters/cursor/.cursor/context/increments-context.md +71 -0
- package/dist/src/adapters/cursor/.cursor/context/strategy-context.md +73 -0
- package/dist/src/adapters/cursor/.cursor/context/tests-context.md +89 -0
- package/dist/src/adapters/cursor/README.md +283 -0
- package/dist/src/adapters/cursor/adapter.d.ts +5 -1
- package/dist/src/adapters/cursor/adapter.d.ts.map +1 -1
- package/dist/src/adapters/cursor/adapter.js +18 -115
- package/dist/src/adapters/cursor/adapter.js.map +1 -1
- package/dist/src/adapters/gemini/README.md +97 -0
- package/dist/src/adapters/generic/README.md +277 -0
- package/dist/src/adapters/registry.yaml +197 -0
- package/dist/src/cli/commands/plan/increment-detector.js +2 -2
- package/dist/src/cli/commands/plan/increment-detector.js.map +1 -1
- package/dist/src/cli/commands/plan/plan-orchestrator.js +1 -1
- package/dist/src/cli/commands/plan/plan-orchestrator.js.map +1 -1
- package/dist/src/cli/commands/plan/plan-validator.js +1 -1
- package/dist/src/cli/commands/plan/plan-validator.js.map +1 -1
- package/dist/src/cli/helpers/init/living-docs-preflight.js +12 -12
- package/dist/src/cli/helpers/init/living-docs-preflight.js.map +1 -1
- package/dist/src/config/types.d.ts +1208 -203
- package/dist/src/config/types.d.ts.map +1 -1
- package/dist/src/core/increment/active-increment-manager.js +1 -1
- package/dist/src/core/increment/active-increment-manager.js.map +1 -1
- package/dist/src/core/increment/metadata-manager.d.ts +1 -1
- package/dist/src/core/increment/metadata-manager.d.ts.map +1 -1
- package/dist/src/core/increment/metadata-manager.js +7 -7
- package/dist/src/core/increment/metadata-manager.js.map +1 -1
- package/dist/src/core/living-docs/hierarchy-mapper.d.ts.map +1 -1
- package/dist/src/core/living-docs/hierarchy-mapper.js +12 -18
- package/dist/src/core/living-docs/hierarchy-mapper.js.map +1 -1
- package/dist/src/core/living-docs/living-docs-sync.d.ts +23 -10
- package/dist/src/core/living-docs/living-docs-sync.d.ts.map +1 -1
- package/dist/src/core/living-docs/living-docs-sync.js +70 -25
- package/dist/src/core/living-docs/living-docs-sync.js.map +1 -1
- package/dist/src/core/llm/providers/bedrock-provider.d.ts.map +1 -1
- package/dist/src/core/llm/providers/bedrock-provider.js +2 -3
- package/dist/src/core/llm/providers/bedrock-provider.js.map +1 -1
- package/dist/src/importers/ado-importer.d.ts.map +1 -1
- package/dist/src/importers/ado-importer.js +2 -1
- package/dist/src/importers/ado-importer.js.map +1 -1
- package/dist/src/importers/github-importer.d.ts.map +1 -1
- package/dist/src/importers/github-importer.js +2 -1
- package/dist/src/importers/github-importer.js.map +1 -1
- package/dist/src/importers/jira-importer.d.ts.map +1 -1
- package/dist/src/importers/jira-importer.js +2 -1
- package/dist/src/importers/jira-importer.js.map +1 -1
- package/dist/src/init/architecture/types.d.ts +140 -33
- package/dist/src/init/architecture/types.d.ts.map +1 -1
- package/dist/src/init/compliance/types.d.ts +27 -30
- package/dist/src/init/compliance/types.d.ts.map +1 -1
- package/dist/src/init/repo/types.d.ts +34 -11
- package/dist/src/init/repo/types.d.ts.map +1 -1
- package/dist/src/init/research/src/config/types.d.ts +82 -15
- package/dist/src/init/research/src/config/types.d.ts.map +1 -1
- package/dist/src/init/research/types.d.ts +93 -38
- package/dist/src/init/research/types.d.ts.map +1 -1
- package/dist/src/init/team/types.d.ts +42 -4
- package/dist/src/init/team/types.d.ts.map +1 -1
- package/dist/src/utils/feature-id-collision.d.ts +28 -0
- package/dist/src/utils/feature-id-collision.d.ts.map +1 -1
- package/dist/src/utils/feature-id-collision.js +83 -0
- package/dist/src/utils/feature-id-collision.js.map +1 -1
- package/dist/src/utils/fs-native.d.ts +2 -1
- package/dist/src/utils/fs-native.d.ts.map +1 -1
- package/dist/src/utils/fs-native.js +6 -1
- package/dist/src/utils/fs-native.js.map +1 -1
- package/dist/src/utils/html-to-mdx.d.ts +37 -0
- package/dist/src/utils/html-to-mdx.d.ts.map +1 -0
- package/dist/src/utils/html-to-mdx.js +98 -0
- package/dist/src/utils/html-to-mdx.js.map +1 -0
- package/package.json +6 -2
- package/plugins/specweave/commands/specweave-judge.md +11 -0
- package/plugins/specweave/commands/specweave-qa.md +34 -4
- package/plugins/specweave/commands/specweave-validate.md +41 -1
- package/plugins/specweave/hooks/lib/update-status-line.sh +16 -4
- package/plugins/specweave/lib/vendor/core/increment/active-increment-manager.js +1 -1
- package/plugins/specweave/lib/vendor/core/increment/active-increment-manager.js.map +1 -1
- package/plugins/specweave/lib/vendor/core/increment/metadata-manager.d.ts +1 -1
- package/plugins/specweave/lib/vendor/core/increment/metadata-manager.js +7 -7
- package/plugins/specweave/lib/vendor/core/increment/metadata-manager.js.map +1 -1
- package/plugins/specweave/lib/vendor/utils/fs-native.d.ts +2 -1
- package/plugins/specweave/lib/vendor/utils/fs-native.js +6 -1
- package/plugins/specweave/lib/vendor/utils/fs-native.js.map +1 -1
- package/plugins/specweave/skills/increment-quality-judge-v2/SKILL.md +41 -2
- package/plugins/specweave-docs/commands/build.md +47 -73
- package/plugins/specweave-docs/commands/preview.md +181 -87
- package/plugins/specweave-docs/skills/preview/SKILL.md +45 -56
- package/plugins/specweave-github/hooks/.specweave/logs/hooks-debug.log +330 -0
- package/plugins/specweave-release/hooks/.specweave/logs/dora-tracking.log +495 -0
|
@@ -1,135 +1,229 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: specweave-docs:preview
|
|
3
|
-
description: Launch Docusaurus documentation server
|
|
3
|
+
description: Launch Docusaurus documentation server for internal living docs. Auto-setup on first run. Port 3015.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Documentation Preview Command
|
|
7
7
|
|
|
8
8
|
Launch Docusaurus development server with hot reload, Mermaid diagrams, and auto-generated sidebar.
|
|
9
9
|
|
|
10
|
-
##
|
|
11
|
-
|
|
12
|
-
```bash
|
|
13
|
-
# Preview INTERNAL docs (SpecWeave living documentation) - DEFAULT
|
|
14
|
-
/specweave-docs:preview
|
|
10
|
+
## Your Task
|
|
15
11
|
|
|
16
|
-
|
|
17
|
-
/specweave-docs:preview --public
|
|
18
|
-
```
|
|
12
|
+
**IMPORTANT**: This command must work in ANY SpecWeave user project, not just the SpecWeave repo itself.
|
|
19
13
|
|
|
20
|
-
|
|
14
|
+
### Step 1: Check Prerequisites
|
|
21
15
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
| **Public** | 3016 | `docs-site/docs/` | `docs:dev` |
|
|
16
|
+
```bash
|
|
17
|
+
# Verify internal docs exist
|
|
18
|
+
ls -la .specweave/docs/internal/
|
|
26
19
|
|
|
27
|
-
|
|
20
|
+
# If missing, inform user:
|
|
21
|
+
# "No internal documentation found at .specweave/docs/internal/.
|
|
22
|
+
# Run 'specweave init' first or create the folder structure."
|
|
23
|
+
```
|
|
28
24
|
|
|
29
|
-
|
|
25
|
+
### Step 2: Check for Cached Installation
|
|
30
26
|
|
|
31
27
|
```bash
|
|
32
|
-
# Check if
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
if [ "$PUBLIC_FLAG" = "--public" ]; then
|
|
38
|
-
echo "Launching PUBLIC documentation on port 3016..."
|
|
39
|
-
echo "Content: docs-site/docs/"
|
|
40
|
-
echo ""
|
|
41
|
-
npm run docs:dev
|
|
28
|
+
# Check if Docusaurus is already set up in cache
|
|
29
|
+
if [ -d ".specweave/cache/docs-site/node_modules" ]; then
|
|
30
|
+
echo "✓ Docusaurus installation found in cache"
|
|
31
|
+
NEEDS_INSTALL=false
|
|
42
32
|
else
|
|
43
|
-
echo "
|
|
44
|
-
|
|
45
|
-
echo ""
|
|
46
|
-
npm run docs:internal
|
|
33
|
+
echo "⚙ First-time setup: Installing Docusaurus (~30 seconds)..."
|
|
34
|
+
NEEDS_INSTALL=true
|
|
47
35
|
fi
|
|
48
36
|
```
|
|
49
37
|
|
|
50
|
-
###
|
|
38
|
+
### Step 3: First-Time Setup (if needed)
|
|
51
39
|
|
|
52
|
-
If
|
|
40
|
+
If `NEEDS_INSTALL=true`, create the cached Docusaurus installation:
|
|
53
41
|
|
|
54
42
|
```bash
|
|
55
|
-
#
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
#
|
|
59
|
-
|
|
43
|
+
# Create cache directory
|
|
44
|
+
mkdir -p .specweave/cache/docs-site
|
|
45
|
+
|
|
46
|
+
# Create package.json
|
|
47
|
+
cat > .specweave/cache/docs-site/package.json << 'EOF'
|
|
48
|
+
{
|
|
49
|
+
"name": "specweave-docs-preview",
|
|
50
|
+
"version": "1.0.0",
|
|
51
|
+
"private": true,
|
|
52
|
+
"scripts": {
|
|
53
|
+
"start": "docusaurus start --port 3015",
|
|
54
|
+
"build": "docusaurus build",
|
|
55
|
+
"clear": "docusaurus clear"
|
|
56
|
+
},
|
|
57
|
+
"dependencies": {
|
|
58
|
+
"@docusaurus/core": "^3.9.2",
|
|
59
|
+
"@docusaurus/preset-classic": "^3.9.2",
|
|
60
|
+
"@docusaurus/theme-mermaid": "^3.9.2",
|
|
61
|
+
"@mdx-js/react": "^3.0.0",
|
|
62
|
+
"clsx": "^2.0.0",
|
|
63
|
+
"prism-react-renderer": "^2.3.0",
|
|
64
|
+
"react": "^19.0.0",
|
|
65
|
+
"react-dom": "^19.0.0"
|
|
66
|
+
},
|
|
67
|
+
"engines": {
|
|
68
|
+
"node": ">=20.0"
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
EOF
|
|
72
|
+
|
|
73
|
+
# Create Docusaurus config pointing to internal docs
|
|
74
|
+
cat > .specweave/cache/docs-site/docusaurus.config.ts << 'EOF'
|
|
75
|
+
import {themes as prismThemes} from 'prism-react-renderer';
|
|
76
|
+
import type {Config} from '@docusaurus/types';
|
|
77
|
+
import type * as Preset from '@docusaurus/preset-classic';
|
|
78
|
+
|
|
79
|
+
const config: Config = {
|
|
80
|
+
title: 'Internal Documentation',
|
|
81
|
+
tagline: 'SpecWeave Living Documentation',
|
|
82
|
+
favicon: 'img/favicon.ico',
|
|
83
|
+
future: { v4: true },
|
|
84
|
+
url: 'http://localhost:3015',
|
|
85
|
+
baseUrl: '/',
|
|
86
|
+
onBrokenLinks: 'warn',
|
|
87
|
+
onBrokenMarkdownLinks: 'warn',
|
|
88
|
+
i18n: { defaultLocale: 'en', locales: ['en'] },
|
|
89
|
+
markdown: { mermaid: true, format: 'md' },
|
|
90
|
+
themes: ['@docusaurus/theme-mermaid'],
|
|
91
|
+
presets: [
|
|
92
|
+
[
|
|
93
|
+
'classic',
|
|
94
|
+
{
|
|
95
|
+
docs: {
|
|
96
|
+
// Path relative to this config file → ../../docs/internal/
|
|
97
|
+
path: '../../docs/internal',
|
|
98
|
+
routeBasePath: '/',
|
|
99
|
+
sidebarPath: './sidebars.ts',
|
|
100
|
+
showLastUpdateTime: true,
|
|
101
|
+
sidebarCollapsible: true,
|
|
102
|
+
sidebarCollapsed: true,
|
|
103
|
+
},
|
|
104
|
+
blog: false,
|
|
105
|
+
theme: { customCss: './src/css/custom.css' },
|
|
106
|
+
} satisfies Preset.Options,
|
|
107
|
+
],
|
|
108
|
+
],
|
|
109
|
+
themeConfig: {
|
|
110
|
+
colorMode: {
|
|
111
|
+
defaultMode: 'dark',
|
|
112
|
+
disableSwitch: false,
|
|
113
|
+
respectPrefersColorScheme: true,
|
|
114
|
+
},
|
|
115
|
+
navbar: {
|
|
116
|
+
title: 'Internal Docs',
|
|
117
|
+
items: [
|
|
118
|
+
{to: '/', label: 'Home', position: 'left'},
|
|
119
|
+
{type: 'search', position: 'right'},
|
|
120
|
+
],
|
|
121
|
+
},
|
|
122
|
+
footer: {
|
|
123
|
+
style: 'dark',
|
|
124
|
+
copyright: `SpecWeave Living Documentation`,
|
|
125
|
+
},
|
|
126
|
+
prism: {
|
|
127
|
+
theme: prismThemes.github,
|
|
128
|
+
darkTheme: prismThemes.dracula,
|
|
129
|
+
additionalLanguages: ['bash', 'typescript', 'yaml', 'json'],
|
|
130
|
+
},
|
|
131
|
+
mermaid: { theme: {light: 'neutral', dark: 'dark'} },
|
|
132
|
+
} satisfies Preset.ThemeConfig,
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
export default config;
|
|
136
|
+
EOF
|
|
137
|
+
|
|
138
|
+
# Create auto-generated sidebar
|
|
139
|
+
cat > .specweave/cache/docs-site/sidebars.ts << 'EOF'
|
|
140
|
+
import type {SidebarsConfig} from '@docusaurus/plugin-content-docs';
|
|
141
|
+
|
|
142
|
+
const sidebars: SidebarsConfig = {
|
|
143
|
+
docs: [
|
|
144
|
+
{
|
|
145
|
+
type: 'autogenerated',
|
|
146
|
+
dirName: '.',
|
|
147
|
+
},
|
|
148
|
+
],
|
|
149
|
+
};
|
|
150
|
+
|
|
151
|
+
export default sidebars;
|
|
152
|
+
EOF
|
|
153
|
+
|
|
154
|
+
# Create minimal CSS
|
|
155
|
+
mkdir -p .specweave/cache/docs-site/src/css
|
|
156
|
+
cat > .specweave/cache/docs-site/src/css/custom.css << 'EOF'
|
|
157
|
+
:root {
|
|
158
|
+
--ifm-color-primary: #2563eb;
|
|
159
|
+
--ifm-code-font-size: 95%;
|
|
160
|
+
}
|
|
161
|
+
[data-theme='dark'] {
|
|
162
|
+
--ifm-color-primary: #60a5fa;
|
|
163
|
+
}
|
|
164
|
+
EOF
|
|
165
|
+
|
|
166
|
+
# Create static folder with placeholder favicon
|
|
167
|
+
mkdir -p .specweave/cache/docs-site/static/img
|
|
168
|
+
echo '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><text y=".9em" font-size="90">📚</text></svg>' > .specweave/cache/docs-site/static/img/favicon.ico
|
|
169
|
+
|
|
170
|
+
# Install dependencies using PUBLIC npm registry (avoids Azure DevOps/private registry issues)
|
|
171
|
+
cd .specweave/cache/docs-site && npm install --registry=https://registry.npmjs.org --legacy-peer-deps
|
|
60
172
|
```
|
|
61
173
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
- **Hot reload** - Edit markdown, see changes instantly
|
|
65
|
-
- **Auto sidebar** - Generated from folder structure
|
|
66
|
-
- **Mermaid diagrams** - Architecture diagrams render beautifully
|
|
67
|
-
- **Dark/light mode** - Toggle in navbar
|
|
68
|
-
- **Local search** - Instant search across all docs
|
|
69
|
-
- **Mobile responsive** - Works on any device
|
|
70
|
-
|
|
71
|
-
## First-Time Setup
|
|
72
|
-
|
|
73
|
-
If `docs-site/node_modules` doesn't exist:
|
|
174
|
+
### Step 4: Start the Server
|
|
74
175
|
|
|
75
176
|
```bash
|
|
76
|
-
npm
|
|
177
|
+
cd .specweave/cache/docs-site && npm start
|
|
77
178
|
```
|
|
78
179
|
|
|
79
|
-
This
|
|
80
|
-
|
|
81
|
-
|
|
180
|
+
This will:
|
|
181
|
+
- Start Docusaurus on **http://localhost:3015**
|
|
182
|
+
- Enable hot reload (edit markdown, see changes instantly)
|
|
183
|
+
- Render Mermaid diagrams
|
|
184
|
+
- Auto-generate sidebar from folder structure
|
|
82
185
|
|
|
83
|
-
|
|
84
|
-
|--------|------|-----|
|
|
85
|
-
| `docs:dev` | 3016 | http://localhost:3016 |
|
|
86
|
-
| `docs:internal` | 3015 | http://localhost:3015 |
|
|
186
|
+
### Output to User
|
|
87
187
|
|
|
88
|
-
|
|
188
|
+
After starting, display:
|
|
89
189
|
|
|
90
190
|
```
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
191
|
+
📚 Documentation Preview Server Started!
|
|
192
|
+
|
|
193
|
+
URL: http://localhost:3015
|
|
194
|
+
Content: .specweave/docs/internal/
|
|
195
|
+
|
|
196
|
+
Features:
|
|
197
|
+
• Hot reload - edit markdown, see changes instantly
|
|
198
|
+
• Mermaid diagrams - architecture diagrams render beautifully
|
|
199
|
+
• Auto sidebar - generated from folder structure
|
|
200
|
+
• Dark/light mode - toggle in navbar
|
|
201
|
+
|
|
202
|
+
Press Ctrl+C to stop the server.
|
|
102
203
|
```
|
|
103
204
|
|
|
104
|
-
##
|
|
205
|
+
## What You Get
|
|
105
206
|
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
| `sidebars.internal.ts` | Internal docs sidebar |
|
|
207
|
+
- **Hot reload** - Edit markdown, see changes instantly
|
|
208
|
+
- **Auto sidebar** - Generated from folder structure
|
|
209
|
+
- **Mermaid diagrams** - Architecture diagrams render beautifully
|
|
210
|
+
- **Dark/light mode** - Toggle in navbar
|
|
211
|
+
- **Local search** - Instant search across all docs
|
|
112
212
|
|
|
113
213
|
## Troubleshooting
|
|
114
214
|
|
|
115
215
|
### Port already in use
|
|
116
216
|
```bash
|
|
117
|
-
|
|
118
|
-
lsof -i :3015
|
|
119
|
-
|
|
120
|
-
# Kill it
|
|
121
|
-
kill -9 <PID>
|
|
217
|
+
lsof -i :3015 && kill -9 $(lsof -t -i :3015)
|
|
122
218
|
```
|
|
123
219
|
|
|
124
|
-
###
|
|
220
|
+
### Reinstall from scratch
|
|
125
221
|
```bash
|
|
126
|
-
|
|
222
|
+
rm -rf .specweave/cache/docs-site && /specweave-docs:preview
|
|
127
223
|
```
|
|
128
224
|
|
|
129
|
-
###
|
|
130
|
-
|
|
131
|
-
cd docs-site && npm run clear && npm run start:internal
|
|
132
|
-
```
|
|
225
|
+
### npm registry issues
|
|
226
|
+
The setup uses `--registry=https://registry.npmjs.org` to bypass private registry configurations.
|
|
133
227
|
|
|
134
228
|
## See Also
|
|
135
229
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: preview
|
|
3
|
-
description: Documentation preview expert for Docusaurus integration. Launches interactive preview server for SpecWeave living documentation with hot reload, auto-generated sidebar, and Mermaid diagrams. Activates for preview docs, view documentation, Docusaurus server, docs UI, documentation website, local docs server, hot reload docs, static site build.
|
|
3
|
+
description: Documentation preview expert for Docusaurus integration. Launches interactive preview server for SpecWeave living documentation with hot reload, auto-generated sidebar, and Mermaid diagrams. Works in ANY SpecWeave project with auto-setup. Activates for preview docs, view documentation, Docusaurus server, docs UI, documentation website, local docs server, hot reload docs, static site build.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Documentation Preview Skill
|
|
@@ -9,27 +9,26 @@ Expert in launching and managing Docusaurus documentation preview for SpecWeave
|
|
|
9
9
|
|
|
10
10
|
## What I Do
|
|
11
11
|
|
|
12
|
-
I help you preview
|
|
12
|
+
I help you preview your SpecWeave living documentation with Docusaurus:
|
|
13
13
|
|
|
14
|
-
###
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
-
- Hot reload -
|
|
18
|
-
- Mermaid
|
|
19
|
-
-
|
|
20
|
-
-
|
|
14
|
+
### Key Features
|
|
15
|
+
- **Zero-config setup** - Works in any SpecWeave project automatically
|
|
16
|
+
- **Cached installation** - Docusaurus cached in `.specweave/cache/docs-site/` (gitignored)
|
|
17
|
+
- **Hot reload** - Edit markdown, see changes instantly
|
|
18
|
+
- **Mermaid diagrams** - Architecture diagrams render beautifully
|
|
19
|
+
- **Auto sidebar** - Generated from folder structure
|
|
20
|
+
- **Bypasses private registries** - Uses public npm to avoid Azure DevOps/corporate issues
|
|
21
21
|
|
|
22
|
-
|
|
23
|
-
- Build production-ready static site
|
|
24
|
-
- Output to `.specweave/docs-site-internal/build/`
|
|
25
|
-
- Ready for deployment to any static host
|
|
26
|
-
- Optimized for performance
|
|
22
|
+
## How It Works
|
|
27
23
|
|
|
28
|
-
|
|
29
|
-
-
|
|
30
|
-
-
|
|
31
|
-
-
|
|
32
|
-
|
|
24
|
+
1. **First run (~30 seconds)**:
|
|
25
|
+
- Creates Docusaurus in `.specweave/cache/docs-site/`
|
|
26
|
+
- Installs dependencies from public npm registry
|
|
27
|
+
- Configures to read from `.specweave/docs/internal/`
|
|
28
|
+
|
|
29
|
+
2. **Subsequent runs (instant)**:
|
|
30
|
+
- Uses cached installation
|
|
31
|
+
- Starts server immediately
|
|
33
32
|
|
|
34
33
|
## Available Commands
|
|
35
34
|
|
|
@@ -39,11 +38,10 @@ I help you preview and build your SpecWeave living documentation with Docusaurus
|
|
|
39
38
|
```
|
|
40
39
|
|
|
41
40
|
**What it does:**
|
|
42
|
-
1. Checks if
|
|
43
|
-
2.
|
|
44
|
-
3. Starts
|
|
45
|
-
4.
|
|
46
|
-
5. Enables hot reload
|
|
41
|
+
1. Checks if `.specweave/docs/internal/` exists
|
|
42
|
+
2. Sets up Docusaurus in cache (if first run)
|
|
43
|
+
3. Starts dev server on **http://localhost:3015**
|
|
44
|
+
4. Enables hot reload
|
|
47
45
|
|
|
48
46
|
### Build Static Site
|
|
49
47
|
```bash
|
|
@@ -51,55 +49,46 @@ I help you preview and build your SpecWeave living documentation with Docusaurus
|
|
|
51
49
|
```
|
|
52
50
|
|
|
53
51
|
**What it does:**
|
|
54
|
-
1.
|
|
55
|
-
2.
|
|
56
|
-
3.
|
|
57
|
-
4. Shows build stats and output path
|
|
52
|
+
1. Builds production-ready static site
|
|
53
|
+
2. Outputs to `.specweave/cache/docs-site/build/`
|
|
54
|
+
3. Ready for deployment to any static host
|
|
58
55
|
|
|
59
56
|
## When to Use This Skill
|
|
60
57
|
|
|
61
|
-
### Activate for
|
|
62
|
-
- "
|
|
63
|
-
- "Show me my docs in a
|
|
64
|
-
- "Launch Docusaurus
|
|
58
|
+
### Activate for:
|
|
59
|
+
- "Preview my documentation"
|
|
60
|
+
- "Show me my docs in a browser"
|
|
61
|
+
- "Launch Docusaurus"
|
|
65
62
|
- "View my living documentation"
|
|
66
63
|
- "Start docs preview"
|
|
67
|
-
- "
|
|
64
|
+
- "I want to see my internal docs"
|
|
68
65
|
|
|
69
|
-
###
|
|
66
|
+
### Workflow
|
|
70
67
|
|
|
71
|
-
**1. First-time preview:**
|
|
72
68
|
```
|
|
73
69
|
User: "I want to preview my docs"
|
|
74
|
-
You: "I'll
|
|
70
|
+
You: "I'll launch the documentation preview server."
|
|
75
71
|
[Run: /specweave-docs:preview]
|
|
76
72
|
```
|
|
77
73
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
74
|
+
## Troubleshooting
|
|
75
|
+
|
|
76
|
+
### Port 3015 already in use
|
|
77
|
+
```bash
|
|
78
|
+
lsof -i :3015 && kill -9 $(lsof -t -i :3015)
|
|
83
79
|
```
|
|
84
80
|
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
"documentation": {
|
|
90
|
-
"preview": {
|
|
91
|
-
"enabled": true,
|
|
92
|
-
"autoInstall": true,
|
|
93
|
-
"port": 3016,
|
|
94
|
-
"openBrowser": true,
|
|
95
|
-
"theme": "default"
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
}
|
|
81
|
+
### Reinstall from scratch
|
|
82
|
+
```bash
|
|
83
|
+
rm -rf .specweave/cache/docs-site
|
|
84
|
+
# Then run /specweave-docs:preview again
|
|
99
85
|
```
|
|
100
86
|
|
|
87
|
+
### npm registry issues
|
|
88
|
+
The setup explicitly uses `--registry=https://registry.npmjs.org` to bypass private/corporate registry configurations.
|
|
89
|
+
|
|
101
90
|
## See Also
|
|
102
91
|
|
|
92
|
+
- `/specweave-docs:build` - Build static site for deployment
|
|
103
93
|
- `/specweave-docs:organize` - Organize large folders with themed indexes
|
|
104
94
|
- `/specweave-docs:health` - Documentation health report
|
|
105
|
-
- `/specweave-docs:generate` - Generate docs from code
|