specsmd 0.1.4 → 0.1.5
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/README.md +10 -2
- package/{scripts → flows/aidlc/scripts}/artifact-validator.js +3 -3
- package/{scripts → flows/aidlc/scripts}/bolt-complete.js +2 -2
- package/{scripts → flows/aidlc/scripts}/status-integrity.js +4 -4
- package/flows/aidlc/skills/construction/bolt-start.md +2 -2
- package/lib/installer.js +3 -14
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -29,8 +29,9 @@ Track your AI-DLC progress with our sidebar extension for VS Code and compatible
|
|
|
29
29
|
> **Note:** Works with any VS Code-based IDE including [Cursor](https://cursor.sh), [Google Antigravity](https://antigravity.google), [Windsurf](https://codeium.com/windsurf), and others.
|
|
30
30
|
|
|
31
31
|
**Install from:**
|
|
32
|
-
- [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=fabriqaai.specsmd)
|
|
33
|
-
- [
|
|
32
|
+
- [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=fabriqaai.specsmd) — VS Code, GitHub Codespaces
|
|
33
|
+
- [Open VSX Registry](https://open-vsx.org/extension/fabriqaai/specsmd) — Cursor, Windsurf, Amazon Kiro, Google Antigravity, VSCodium, Gitpod, Google IDX
|
|
34
|
+
- [GitHub Releases (VSIX)](https://github.com/fabriqaai/specs.md/releases) — Manual installation
|
|
34
35
|
|
|
35
36
|
---
|
|
36
37
|
|
|
@@ -306,6 +307,13 @@ Specs and Memory Bank provide structured context for AI agents. Agents reload co
|
|
|
306
307
|
| **Cursor** | Full support | Rules in `.cursor/rules/` (`.mdc` format) |
|
|
307
308
|
| **GitHub Copilot** | Full support | Agents in `.github/agents/` (`.agent.md` format) |
|
|
308
309
|
| **Google Antigravity** | Full support | Agents in `.agent/agents/` |
|
|
310
|
+
| **Windsurf** | Full support | Workflows in `.windsurf/workflows/` |
|
|
311
|
+
| **Amazon Kiro** | Full support | Steering in `.kiro/steering/` |
|
|
312
|
+
| **Gemini CLI** | Full support | Commands in `.gemini/commands/` (`.toml` format) |
|
|
313
|
+
| **Cline** | Full support | Rules in `.clinerules/` |
|
|
314
|
+
| **Roo Code** | Full support | Commands in `.roo/commands/` |
|
|
315
|
+
| **OpenAI Codex** | Full support | Config in `.codex/` |
|
|
316
|
+
| **OpenCode** | Full support | Agents in `.opencode/agent/` |
|
|
309
317
|
|
|
310
318
|
---
|
|
311
319
|
|
|
@@ -10,9 +10,9 @@
|
|
|
10
10
|
* - Timestamp format (ISO 8601 without milliseconds)
|
|
11
11
|
*
|
|
12
12
|
* Usage:
|
|
13
|
-
* node .specsmd/scripts/artifact-validator.js
|
|
14
|
-
* node .specsmd/scripts/artifact-validator.js --json
|
|
15
|
-
* node .specsmd/scripts/artifact-validator.js --fix
|
|
13
|
+
* node .specsmd/aidlc/scripts/artifact-validator.js
|
|
14
|
+
* node .specsmd/aidlc/scripts/artifact-validator.js --json
|
|
15
|
+
* node .specsmd/aidlc/scripts/artifact-validator.js --fix
|
|
16
16
|
*
|
|
17
17
|
* Cross-platform: Works on Linux, macOS, Windows via Node.js
|
|
18
18
|
*/
|
|
@@ -115,11 +115,11 @@
|
|
|
115
115
|
*
|
|
116
116
|
* From agent skill (bolt-start.md Step 10):
|
|
117
117
|
*
|
|
118
|
-
* node .specsmd/scripts/bolt-complete.js 016-analytics-tracker
|
|
118
|
+
* node .specsmd/aidlc/scripts/bolt-complete.js 016-analytics-tracker
|
|
119
119
|
*
|
|
120
120
|
* With optional stage name:
|
|
121
121
|
*
|
|
122
|
-
* node .specsmd/scripts/bolt-complete.js 016-analytics-tracker --last-stage test
|
|
122
|
+
* node .specsmd/aidlc/scripts/bolt-complete.js 016-analytics-tracker --last-stage test
|
|
123
123
|
*
|
|
124
124
|
* ═══════════════════════════════════════════════════════════════════════════════
|
|
125
125
|
*/
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
* Status must cascade correctly: Bolt complete → Stories complete → Unit complete → Intent complete
|
|
8
8
|
*
|
|
9
9
|
* Usage:
|
|
10
|
-
* node .specsmd/scripts/status-integrity.js
|
|
11
|
-
* node .specsmd/scripts/status-integrity.js --fix
|
|
10
|
+
* node .specsmd/aidlc/scripts/status-integrity.js
|
|
11
|
+
* node .specsmd/aidlc/scripts/status-integrity.js --fix
|
|
12
12
|
*
|
|
13
13
|
* Cross-platform: Works on Linux, macOS, Windows via Node.js
|
|
14
14
|
*/
|
|
@@ -584,8 +584,8 @@ Options:
|
|
|
584
584
|
--help, -h Show this help message
|
|
585
585
|
|
|
586
586
|
Examples:
|
|
587
|
-
node .specsmd/scripts/status-integrity.js
|
|
588
|
-
node .specsmd/scripts/status-integrity.js --fix
|
|
587
|
+
node .specsmd/aidlc/scripts/status-integrity.js
|
|
588
|
+
node .specsmd/aidlc/scripts/status-integrity.js --fix
|
|
589
589
|
`);
|
|
590
590
|
process.exit(0);
|
|
591
591
|
}
|
|
@@ -194,7 +194,7 @@ If the bolt type specifies automatic validation criteria, follow those rules.
|
|
|
194
194
|
┌─────────────────────────────────────────────────────────────┐
|
|
195
195
|
│ FINAL STAGE DETECTED │
|
|
196
196
|
│ → Re-read Step 10 NOW │
|
|
197
|
-
│ → You MUST run: node .specsmd/scripts/bolt-complete.js
|
|
197
|
+
│ → You MUST run: node .specsmd/aidlc/scripts/bolt-complete.js │
|
|
198
198
|
│ → Do NOT manually edit story files │
|
|
199
199
|
└─────────────────────────────────────────────────────────────┘
|
|
200
200
|
```
|
|
@@ -245,7 +245,7 @@ Do NOT manually edit story files - the script handles everything.
|
|
|
245
245
|
**Run this command:**
|
|
246
246
|
|
|
247
247
|
```bash
|
|
248
|
-
node .specsmd/scripts/bolt-complete.js {bolt-id}
|
|
248
|
+
node .specsmd/aidlc/scripts/bolt-complete.js {bolt-id}
|
|
249
249
|
```
|
|
250
250
|
|
|
251
251
|
**What this command does (deterministically):**
|
package/lib/installer.js
CHANGED
|
@@ -229,6 +229,9 @@ async function installFlow(flowKey, toolKeys) {
|
|
|
229
229
|
if (await fs.pathExists(path.join(flowPath, 'shared'))) {
|
|
230
230
|
await fs.copy(path.join(flowPath, 'shared'), path.join(targetFlowDir, 'shared'));
|
|
231
231
|
}
|
|
232
|
+
if (await fs.pathExists(path.join(flowPath, 'scripts'))) {
|
|
233
|
+
await fs.copy(path.join(flowPath, 'scripts'), path.join(targetFlowDir, 'scripts'));
|
|
234
|
+
}
|
|
232
235
|
|
|
233
236
|
// Copy config files
|
|
234
237
|
if (await fs.pathExists(path.join(flowPath, 'memory-bank.yaml'))) {
|
|
@@ -250,20 +253,6 @@ async function installFlow(flowKey, toolKeys) {
|
|
|
250
253
|
|
|
251
254
|
CLIUtils.displayStatus('', 'Installed flow resources', 'success');
|
|
252
255
|
|
|
253
|
-
// Step 2.5: Install local scripts for deterministic operations
|
|
254
|
-
// These scripts are version-matched to the installed specsmd version
|
|
255
|
-
const scriptsDir = path.join(specsmdDir, 'scripts');
|
|
256
|
-
await fs.ensureDir(scriptsDir);
|
|
257
|
-
|
|
258
|
-
const sourceScriptsDir = path.join(__dirname, '..', 'scripts');
|
|
259
|
-
if (await fs.pathExists(sourceScriptsDir)) {
|
|
260
|
-
await fs.copy(sourceScriptsDir, scriptsDir);
|
|
261
|
-
CLIUtils.displayStatus('', 'Installed local scripts', 'success');
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
// Note: Scripts are invoked directly via relative path (e.g., node .specsmd/scripts/bolt-complete.js)
|
|
265
|
-
// No npm scripts added to package.json to avoid dependency on package.json for execution
|
|
266
|
-
|
|
267
256
|
// NOTE: memory-bank/ is NOT created during installation
|
|
268
257
|
// It will be created when user runs project-init
|
|
269
258
|
// This allows us to detect if project is initialized by checking for memory-bank/standards/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "specsmd",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"description": "Multi-agent orchestration system for AI-native software development. Delivers AI-DLC, Agile, and custom SDLC flows as markdown-based agent systems.",
|
|
5
5
|
"main": "lib/installer.js",
|
|
6
6
|
"bin": {
|