specsmd 0.1.13 → 0.1.14

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.
@@ -20,8 +20,8 @@ You are the **Builder Agent** for FIRE (Fast Intent-Run Engineering).
20
20
  <constraint>ALWAYS create plan.md BEFORE implementation</constraint>
21
21
  <constraint>ALWAYS create test-report.md AFTER tests pass</constraint>
22
22
  <constraint>ALWAYS run code-review after tests complete</constraint>
23
- <constraint>MUST use init-run.js to create runs — no mkdir</constraint>
24
- <constraint>MUST use complete-run.js to finalize — no manual edits</constraint>
23
+ <constraint>MUST use init-run.cjs to create runs — no mkdir</constraint>
24
+ <constraint>MUST use complete-run.cjs to finalize — no manual edits</constraint>
25
25
  </constraints>
26
26
 
27
27
  <on_activation>
@@ -73,7 +73,7 @@ You are the **Builder Agent** for FIRE (Fast Intent-Run Engineering).
73
73
  <mode name="autopilot" checkpoints="0">
74
74
  <description>For bug fixes, minor updates, low-complexity tasks</description>
75
75
  <flow>
76
- <step n="1">Call init-run.js to initialize run (creates run folder + run.md)</step>
76
+ <step n="1">Call init-run.cjs to initialize run (creates run folder + run.md)</step>
77
77
  <step n="2">Load work item and context</step>
78
78
  <step n="3">Create plan.md (no checkpoint pause)</step>
79
79
  <step n="4">Execute implementation directly</step>
@@ -81,14 +81,14 @@ You are the **Builder Agent** for FIRE (Fast Intent-Run Engineering).
81
81
  <step n="6">Create test-report.md</step>
82
82
  <step n="7">Run code-review skill</step>
83
83
  <step n="8">Generate walkthrough</step>
84
- <step n="9">Call complete-run.js to finalize</step>
84
+ <step n="9">Call complete-run.cjs to finalize</step>
85
85
  </flow>
86
86
  </mode>
87
87
 
88
88
  <mode name="confirm" checkpoints="1">
89
89
  <description>For standard features, medium-complexity tasks</description>
90
90
  <flow>
91
- <step n="1">Call init-run.js to initialize run</step>
91
+ <step n="1">Call init-run.cjs to initialize run</step>
92
92
  <step n="2">Load work item and context</step>
93
93
  <step n="3">Generate implementation plan → save to plan.md</step>
94
94
  <step n="4"><checkpoint>Present plan to user for approval</checkpoint></step>
@@ -97,14 +97,14 @@ You are the **Builder Agent** for FIRE (Fast Intent-Run Engineering).
97
97
  <step n="7">Create test-report.md</step>
98
98
  <step n="8">Run code-review skill</step>
99
99
  <step n="9">Generate walkthrough</step>
100
- <step n="10">Call complete-run.js to finalize</step>
100
+ <step n="10">Call complete-run.cjs to finalize</step>
101
101
  </flow>
102
102
  </mode>
103
103
 
104
104
  <mode name="validate" checkpoints="2">
105
105
  <description>For security features, payments, core architecture</description>
106
106
  <flow>
107
- <step n="1">Call init-run.js to initialize run</step>
107
+ <step n="1">Call init-run.cjs to initialize run</step>
108
108
  <step n="2">Load work item and design doc</step>
109
109
  <step n="3"><checkpoint>Design doc review (done by Planner)</checkpoint></step>
110
110
  <step n="4">Generate implementation plan → save to plan.md</step>
@@ -114,7 +114,7 @@ You are the **Builder Agent** for FIRE (Fast Intent-Run Engineering).
114
114
  <step n="8">Create test-report.md</step>
115
115
  <step n="9">Run code-review skill</step>
116
116
  <step n="10">Generate walkthrough</step>
117
- <step n="11">Call complete-run.js to finalize</step>
117
+ <step n="11">Call complete-run.cjs to finalize</step>
118
118
  </flow>
119
119
  </mode>
120
120
  </execution_modes>
@@ -152,21 +152,21 @@ You are the **Builder Agent** for FIRE (Fast Intent-Run Engineering).
152
152
 
153
153
  | Action | Script | Direct Editing |
154
154
  |--------|--------|----------------|
155
- | Initialize run | `node scripts/init-run.js ...` | ❌ FORBIDDEN |
156
- | Complete work item | `node scripts/complete-run.js ... --complete-item` | ❌ FORBIDDEN |
157
- | Complete run | `node scripts/complete-run.js ... --complete-run` | ❌ FORBIDDEN |
158
- | Create run folder | (handled by init-run.js) | ❌ NO mkdir |
159
- | Create run.md | (handled by init-run.js) | ❌ NO direct write |
155
+ | Initialize run | `node scripts/init-run.cjs ...` | ❌ FORBIDDEN |
156
+ | Complete work item | `node scripts/complete-run.cjs ... --complete-item` | ❌ FORBIDDEN |
157
+ | Complete run | `node scripts/complete-run.cjs ... --complete-run` | ❌ FORBIDDEN |
158
+ | Create run folder | (handled by init-run.cjs) | ❌ NO mkdir |
159
+ | Create run.md | (handled by init-run.cjs) | ❌ NO direct write |
160
160
  | Update state.yaml | (handled by scripts) | ❌ NO direct edit |
161
161
 
162
162
  <check if="about to mkdir .specs-fire/runs/run-XXX">
163
- <action>STOP — use init-run.js instead</action>
163
+ <action>STOP — use init-run.cjs instead</action>
164
164
  </check>
165
165
  <check if="about to edit state.yaml directly">
166
- <action>STOP — use complete-run.js instead</action>
166
+ <action>STOP — use complete-run.cjs instead</action>
167
167
  </check>
168
168
  <check if="about to write run.md directly">
169
- <action>STOP — use init-run.js instead</action>
169
+ <action>STOP — use init-run.cjs instead</action>
170
170
  </check>
171
171
  </script_usage>
172
172
 
@@ -192,7 +192,7 @@ You are the **Builder Agent** for FIRE (Fast Intent-Run Engineering).
192
192
  <artifact_timing critical="true">
193
193
  | Artifact | Created By | When |
194
194
  |----------|------------|------|
195
- | run.md | init-run.js script | At run START |
195
+ | run.md | init-run.cjs script | At run START |
196
196
  | plan.md | Agent (template) | BEFORE implementation |
197
197
  | test-report.md | Agent (template) | AFTER tests pass |
198
198
  | review-report.md | code-review skill | AFTER test report |
@@ -80,7 +80,7 @@ Supports both single-item and multi-item (batch/wide) runs.
80
80
  </degrees_of_freedom>
81
81
 
82
82
  <llm critical="true">
83
- <mandate>USE SCRIPTS — NEVER bypass init-run.js or complete-run.js</mandate>
83
+ <mandate>USE SCRIPTS — NEVER bypass init-run.cjs or complete-run.cjs</mandate>
84
84
  <mandate>ALWAYS CREATE plan.md — Create plan BEFORE implementation starts (ALL modes)</mandate>
85
85
  <mandate>ALWAYS CREATE test-report.md — Create test report AFTER tests complete</mandate>
86
86
  <mandate>ALWAYS RUN code-review — Invoke code-review skill after tests pass</mandate>
@@ -94,7 +94,7 @@ Supports both single-item and multi-item (batch/wide) runs.
94
94
 
95
95
  | Artifact | When Created | Created By |
96
96
  |----------|--------------|------------|
97
- | run.md | Start of run | init-run.js script |
97
+ | run.md | Start of run | init-run.cjs script |
98
98
  | plan.md | BEFORE implementation (Step 4) | Agent using template |
99
99
  | test-report.md | AFTER tests pass (Step 6) | Agent using template |
100
100
  | review-report.md | AFTER test report (Step 6b) | code-review skill |
@@ -105,16 +105,16 @@ Supports both single-item and multi-item (batch/wide) runs.
105
105
 
106
106
  <flow>
107
107
  <step n="1" title="Initialize Run">
108
- <critical>MUST call init-run.js script. DO NOT use mkdir directly.</critical>
108
+ <critical>MUST call init-run.cjs script. DO NOT use mkdir directly.</critical>
109
109
  <note>The script creates BOTH the folder AND run.md file.</note>
110
110
 
111
111
  <action>Prepare work items JSON array:</action>
112
112
  <code>
113
113
  # For single item:
114
- node scripts/init-run.js {rootPath} {workItemId} {intentId} {mode}
114
+ node scripts/init-run.cjs {rootPath} {workItemId} {intentId} {mode}
115
115
 
116
116
  # For batch/wide (multiple items):
117
- node scripts/init-run.js {rootPath} --batch '[
117
+ node scripts/init-run.cjs {rootPath} --batch '[
118
118
  {"id": "item-1", "intent": "intent-1", "mode": "autopilot"},
119
119
  {"id": "item-2", "intent": "intent-1", "mode": "confirm"}
120
120
  ]' --scope=batch
@@ -124,7 +124,7 @@ Supports both single-item and multi-item (batch/wide) runs.
124
124
  <action>Verify run.md was created in .specs-fire/runs/{run-id}/</action>
125
125
 
126
126
  <check if="run.md not found">
127
- <error>init-run.js failed to create run.md. Check script output.</error>
127
+ <error>init-run.cjs failed to create run.md. Check script output.</error>
128
128
  </check>
129
129
  </step>
130
130
 
@@ -457,9 +457,9 @@ Supports both single-item and multi-item (batch/wide) runs.
457
457
  <substep n="7b" title="Route Based on Batch Status">
458
458
  <check if="scope in [batch, wide] AND pending_count > 0">
459
459
  <critical>DO NOT call --complete-run yet - more items remain!</critical>
460
- <action>Call complete-run.js with --complete-item flag:</action>
460
+ <action>Call complete-run.cjs with --complete-item flag:</action>
461
461
  <code>
462
- node scripts/complete-run.js {rootPath} {runId} --complete-item
462
+ node scripts/complete-run.cjs {rootPath} {runId} --complete-item
463
463
  </code>
464
464
  <action>Parse output JSON for nextItem and remainingItems</action>
465
465
  <output>
@@ -472,9 +472,9 @@ Supports both single-item and multi-item (batch/wide) runs.
472
472
 
473
473
  <check if="scope == single OR pending_count == 0">
474
474
  <action>All items complete - finalize the run</action>
475
- <action>Call complete-run.js with --complete-run flag:</action>
475
+ <action>Call complete-run.cjs with --complete-run flag:</action>
476
476
  <code>
477
- node scripts/complete-run.js {rootPath} {runId} --complete-run \
477
+ node scripts/complete-run.cjs {rootPath} {runId} --complete-run \
478
478
  --files-created='[{"path":"...","purpose":"..."}]' \
479
479
  --files-modified='[{"path":"...","changes":"..."}]' \
480
480
  --tests=5 --coverage=85
@@ -510,16 +510,16 @@ Supports both single-item and multi-item (batch/wide) runs.
510
510
  <scripts>
511
511
  | Script | Purpose | Usage |
512
512
  |--------|---------|-------|
513
- | `scripts/init-run.js` | Initialize run record and folder | Creates run.md with all work items |
514
- | `scripts/complete-run.js` | Finalize run and update state | `--complete-item` or `--complete-run` |
513
+ | `scripts/init-run.cjs` | Initialize run record and folder | Creates run.md with all work items |
514
+ | `scripts/complete-run.cjs` | Finalize run and update state | `--complete-item` or `--complete-run` |
515
515
 
516
- <script name="init-run.js">
516
+ <script name="init-run.cjs">
517
517
  ```bash
518
518
  # Single work item
519
- node scripts/init-run.js /project work-item-id intent-id autopilot
519
+ node scripts/init-run.cjs /project work-item-id intent-id autopilot
520
520
 
521
521
  # Batch/wide (multiple items)
522
- node scripts/init-run.js /project --batch '[
522
+ node scripts/init-run.cjs /project --batch '[
523
523
  {"id": "wi-1", "intent": "int-1", "mode": "autopilot"},
524
524
  {"id": "wi-2", "intent": "int-1", "mode": "confirm"}
525
525
  ]' --scope=batch
@@ -539,13 +539,13 @@ Supports both single-item and multi-item (batch/wide) runs.
539
539
  </output_format>
540
540
  </script>
541
541
 
542
- <script name="complete-run.js">
542
+ <script name="complete-run.cjs">
543
543
  ```bash
544
544
  # Complete current item (batch runs - moves to next item)
545
- node scripts/complete-run.js /project run-001 --complete-item
545
+ node scripts/complete-run.cjs /project run-001 --complete-item
546
546
 
547
547
  # Complete entire run (single runs or final item in batch)
548
- node scripts/complete-run.js /project run-001 --complete-run \
548
+ node scripts/complete-run.cjs /project run-001 --complete-run \
549
549
  --files-created='[{"path":"src/new.ts","purpose":"New feature"}]' \
550
550
  --files-modified='[{"path":"src/old.ts","changes":"Added import"}]' \
551
551
  --tests=5 --coverage=85
@@ -597,11 +597,11 @@ Supports both single-item and multi-item (batch/wide) runs.
597
597
  </file_tracking_format>
598
598
 
599
599
  <run_folder_structure>
600
- After init-run.js creates a run:
600
+ After init-run.cjs creates a run:
601
601
 
602
602
  ```
603
603
  .specs-fire/runs/run-001/
604
- ├── run.md # Created by init-run.js, updated by complete-run.js
604
+ ├── run.md # Created by init-run.cjs, updated by complete-run.cjs
605
605
  ├── plan.md # Created BEFORE implementation (ALL modes - required)
606
606
  ├── test-report.md # Created AFTER tests pass (required)
607
607
  ├── review-report.md # Created by code-review skill (Step 6b)
@@ -609,7 +609,7 @@ Supports both single-item and multi-item (batch/wide) runs.
609
609
  ```
610
610
 
611
611
  <timeline>
612
- 1. `run.md` — Created at run start by init-run.js
612
+ 1. `run.md` — Created at run start by init-run.cjs
613
613
  2. `plan.md` — Created BEFORE implementation begins (Step 4)
614
614
  3. `test-report.md` — Created AFTER tests pass (Step 6)
615
615
  4. `review-report.md` — Created by code-review skill (Step 6b)
@@ -626,7 +626,7 @@ Supports both single-item and multi-item (batch/wide) runs.
626
626
  </run_folder_structure>
627
627
 
628
628
  <success_criteria>
629
- <criterion>Run initialized via init-run.js script</criterion>
629
+ <criterion>Run initialized via init-run.cjs script</criterion>
630
630
  <criterion>Standards loaded with hierarchical resolution</criterion>
631
631
  <criterion>Constitution loaded from root (if exists)</criterion>
632
632
  <criterion>Module-specific standards applied to module files</criterion>
@@ -636,6 +636,6 @@ Supports both single-item and multi-item (batch/wide) runs.
636
636
  <criterion>test-report.md created AFTER tests pass</criterion>
637
637
  <criterion>code-review skill invoked and completed</criterion>
638
638
  <criterion>review-report.md created</criterion>
639
- <criterion>Run completed via complete-run.js script</criterion>
639
+ <criterion>Run completed via complete-run.cjs script</criterion>
640
640
  <criterion>walkthrough.md generated</criterion>
641
641
  </success_criteria>
@@ -11,9 +11,9 @@
11
11
  * - --complete-run: Marks all items done and finalizes entire run
12
12
  *
13
13
  * Usage:
14
- * Complete current item: node complete-run.js <rootPath> <runId> --complete-item [options]
15
- * Complete entire run: node complete-run.js <rootPath> <runId> --complete-run [options]
16
- * Complete (single/auto): node complete-run.js <rootPath> <runId> [options]
14
+ * Complete current item: node complete-run.cjs <rootPath> <runId> --complete-item [options]
15
+ * Complete entire run: node complete-run.cjs <rootPath> <runId> --complete-run [options]
16
+ * Complete (single/auto): node complete-run.cjs <rootPath> <runId> [options]
17
17
  *
18
18
  * Options:
19
19
  * --files-created=JSON - JSON array of {path, purpose}
@@ -678,9 +678,9 @@ function parseArgs(args) {
678
678
 
679
679
  function printUsage() {
680
680
  console.error('Usage:');
681
- console.error(' Complete current item: node complete-run.js <rootPath> <runId> --complete-item [options]');
682
- console.error(' Complete entire run: node complete-run.js <rootPath> <runId> --complete-run [options]');
683
- console.error(' Auto (single runs): node complete-run.js <rootPath> <runId> [options]');
681
+ console.error(' Complete current item: node complete-run.cjs <rootPath> <runId> --complete-item [options]');
682
+ console.error(' Complete entire run: node complete-run.cjs <rootPath> <runId> --complete-run [options]');
683
+ console.error(' Auto (single runs): node complete-run.cjs <rootPath> <runId> [options]');
684
684
  console.error('');
685
685
  console.error('Arguments:');
686
686
  console.error(' rootPath - Project root directory');
@@ -698,8 +698,8 @@ function printUsage() {
698
698
  console.error(' --coverage=N - Coverage percentage');
699
699
  console.error('');
700
700
  console.error('Examples:');
701
- console.error(' node complete-run.js /project run-003 --complete-item');
702
- console.error(' node complete-run.js /project run-003 --complete-run --tests=5 --coverage=85');
701
+ console.error(' node complete-run.cjs /project run-003 --complete-item');
702
+ console.error(' node complete-run.cjs /project run-003 --complete-run --tests=5 --coverage=85');
703
703
  }
704
704
 
705
705
  // =============================================================================
@@ -11,12 +11,12 @@
11
11
  * - existing run folders in .specs-fire/runs/
12
12
  *
13
13
  * Usage:
14
- * Single item: node init-run.js <rootPath> <workItemId> <intentId> <mode>
15
- * Batch/Wide: node init-run.js <rootPath> --batch '<workItemsJson>'
14
+ * Single item: node init-run.cjs <rootPath> <workItemId> <intentId> <mode>
15
+ * Batch/Wide: node init-run.cjs <rootPath> --batch '<workItemsJson>'
16
16
  *
17
17
  * Examples:
18
- * node init-run.js /project login-endpoint user-auth confirm
19
- * node init-run.js /project --batch '[{"id":"wi-1","intent":"int-1","mode":"autopilot"}]'
18
+ * node init-run.cjs /project login-endpoint user-auth confirm
19
+ * node init-run.cjs /project --batch '[{"id":"wi-1","intent":"int-1","mode":"autopilot"}]'
20
20
  */
21
21
 
22
22
  const fs = require('fs');
@@ -377,8 +377,8 @@ function initRun(rootPath, workItems, scope) {
377
377
 
378
378
  function printUsage() {
379
379
  console.error('Usage:');
380
- console.error(' Single item: node init-run.js <rootPath> <workItemId> <intentId> <mode>');
381
- console.error(' Batch/Wide: node init-run.js <rootPath> --batch \'<workItemsJson>\' [--scope=<scope>]');
380
+ console.error(' Single item: node init-run.cjs <rootPath> <workItemId> <intentId> <mode>');
381
+ console.error(' Batch/Wide: node init-run.cjs <rootPath> --batch \'<workItemsJson>\' [--scope=<scope>]');
382
382
  console.error('');
383
383
  console.error('Arguments:');
384
384
  console.error(' rootPath - Project root directory');
@@ -394,8 +394,8 @@ function printUsage() {
394
394
  console.error(' [{"id": "wi-1", "intent": "int-1", "mode": "autopilot"}, ...]');
395
395
  console.error('');
396
396
  console.error('Examples:');
397
- console.error(' node init-run.js /project login-endpoint user-auth confirm');
398
- console.error(' node init-run.js /project --batch \'[{"id":"wi-1","intent":"int-1","mode":"autopilot"}]\'');
397
+ console.error(' node init-run.cjs /project login-endpoint user-auth confirm');
398
+ console.error(' node init-run.cjs /project --batch \'[{"id":"wi-1","intent":"int-1","mode":"autopilot"}]\'');
399
399
  }
400
400
 
401
401
  if (require.main === module) {
@@ -97,7 +97,7 @@ naming:
97
97
  example: "run-001/"
98
98
  note: "Sequential 3-digit number, folder per run"
99
99
  contents:
100
- - "run.md" # Run log (created by init-run.js)
100
+ - "run.md" # Run log (created by init-run.cjs)
101
101
  - "plan.md" # Implementation plan (ALL modes, created BEFORE implementation)
102
102
  - "test-report.md" # Test results and coverage (created AFTER tests pass)
103
103
  - "review-report.md" # Code review findings (created by code-review skill)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "specsmd",
3
- "version": "0.1.13",
3
+ "version": "0.1.14",
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": {