mindsystem-cc 3.2.1 → 3.2.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.
@@ -82,10 +82,9 @@ Common deviations:
82
82
  **`/ms:new-project`**
83
83
  Initialize new project with brief and configuration.
84
84
 
85
- - Use when: you want Mindsystem to set up `.planning/` and capture intent (new repo, or an existing repo where youre adding/changing work).
85
+ - Use when: you want Mindsystem to set up `.planning/` and capture intent (new repo, or an existing repo where you're adding/changing work).
86
86
  - Creates `.planning/PROJECT.md` (vision and requirements)
87
- - Creates `.planning/config.json` (workflow mode)
88
- - Asks for workflow mode (interactive/yolo) upfront
87
+ - Creates `.planning/config.json` (workflow settings)
89
88
  - Commits initialization files to git
90
89
 
91
90
  Usage: `/ms:new-project`
@@ -427,7 +426,7 @@ Usage: `/ms:update`
427
426
  ├── REQUIREMENTS.md # Scoped v1/v2 requirements
428
427
  ├── ROADMAP.md # Current phase breakdown
429
428
  ├── STATE.md # Project memory & context
430
- ├── config.json # Workflow mode & gates
429
+ ├── config.json # Workflow settings
431
430
  ├── research/ # Domain ecosystem research
432
431
  ├── todos/ # Captured ideas and tasks
433
432
  │ ├── pending/ # Todos waiting to be worked on
@@ -457,24 +456,6 @@ Usage: `/ms:update`
457
456
  └── 02-01-SUMMARY.md
458
457
  ```
459
458
 
460
- ## Workflow Modes
461
-
462
- Set during `/ms:new-project`:
463
-
464
- **Interactive Mode**
465
-
466
- - Confirms each major decision
467
- - Pauses at checkpoints for approval
468
- - More guidance throughout
469
-
470
- **YOLO Mode**
471
-
472
- - Auto-approves most decisions
473
- - Executes plans without confirmation
474
- - Only stops for critical checkpoints
475
-
476
- Change anytime by editing `.planning/config.json`
477
-
478
459
  ## Common Workflows
479
460
 
480
461
  **Starting a new project (greenfield):**
@@ -217,28 +217,19 @@ Do not compress. Capture everything gathered.
217
217
 
218
218
  <step name="workflow_preferences">
219
219
 
220
- Ask all workflow preferences in a single AskUserQuestion call (3 questions):
220
+ Ask workflow preferences in a single AskUserQuestion call (2 questions):
221
221
 
222
222
  Use AskUserQuestion with questions array:
223
223
 
224
224
  ```
225
225
  questions: [
226
- {
227
- header: "Mode",
228
- question: "How do you want to work?",
229
- multiSelect: false,
230
- options: [
231
- { label: "YOLO (Recommended)", description: "Auto-approve, just execute" },
232
- { label: "Interactive", description: "Confirm at each step" }
233
- ]
234
- },
235
226
  {
236
227
  header: "Depth",
237
228
  question: "How thorough should planning be?",
238
229
  multiSelect: false,
239
230
  options: [
240
231
  { label: "Quick", description: "Ship fast (3-5 phases, 1-3 plans each)" },
241
- { label: "Standard", description: "Balanced scope and speed (5-8 phases, 3-5 plans each)" },
232
+ { label: "Standard (Recommended)", description: "Balanced scope and speed (5-8 phases, 3-5 plans each)" },
242
233
  { label: "Comprehensive", description: "Thorough coverage (8-12 phases, 5-10 plans each)" }
243
234
  ]
244
235
  },
@@ -263,7 +254,7 @@ questions: [
263
254
 
264
255
  <step name="config">
265
256
 
266
- Create `.planning/config.json` with chosen mode, depth, and parallelization using `templates/config.json` structure.
257
+ Create `.planning/config.json` with chosen depth and parallelization using `templates/config.json` structure.
267
258
 
268
259
  </step>
269
260
 
@@ -291,7 +282,7 @@ Present completion with next steps (see ~/.claude/mindsystem/references/continua
291
282
  Project initialized:
292
283
 
293
284
  - Project: .planning/PROJECT.md
294
- - Config: .planning/config.json (mode: [chosen mode])
285
+ - Config: .planning/config.json
295
286
  [If .planning/codebase/ exists:] - Codebase: .planning/codebase/ (7 documents)
296
287
 
297
288
  ---
@@ -332,7 +323,7 @@ Skip research, define requirements from what you know, then create roadmap.
332
323
  - [ ] PROJECT.md captures full context with evolutionary structure
333
324
  - [ ] Requirements initialized as hypotheses (greenfield) or with inferred Validated (brownfield)
334
325
  - [ ] Key Decisions table initialized
335
- - [ ] config.json has workflow mode, depth, and parallelization
326
+ - [ ] config.json has depth and parallelization settings
336
327
  - [ ] All committed to git
337
328
 
338
329
  </success_criteria>
@@ -38,7 +38,7 @@ STOP here if no VERSION file.
38
38
  Fetch latest CHANGELOG.md from GitHub:
39
39
 
40
40
  Use WebFetch tool with:
41
- - URL: `https://raw.githubusercontent.com/rolandtolnay/gsd/main/CHANGELOG.md`
41
+ - URL: `https://raw.githubusercontent.com/rolandtolnay/mindsystem/main/CHANGELOG.md`
42
42
  - Prompt: "Extract all version entries with their dates and changes. Return in Keep-a-Changelog format."
43
43
 
44
44
  **If fetch fails:**
@@ -75,7 +75,7 @@ Format output clearly:
75
75
 
76
76
  You're on the latest version.
77
77
 
78
- [View full changelog](https://github.com/rolandtolnay/gsd/blob/main/CHANGELOG.md)
78
+ [View full changelog](https://github.com/rolandtolnay/mindsystem/blob/main/CHANGELOG.md)
79
79
  ```
80
80
 
81
81
  **If updates available:**
@@ -105,7 +105,7 @@ You're on the latest version.
105
105
 
106
106
  ---
107
107
 
108
- [View full changelog](https://github.com/rolandtolnay/gsd/blob/main/CHANGELOG.md)
108
+ [View full changelog](https://github.com/rolandtolnay/mindsystem/blob/main/CHANGELOG.md)
109
109
 
110
110
  **To update:** `npx mindsystem-cc --global`
111
111
  ```
@@ -1,5 +1,4 @@
1
1
  {
2
- "mode": "interactive",
3
2
  "depth": "standard",
4
3
  "parallelization": {
5
4
  "enabled": true,
@@ -9,16 +8,6 @@
9
8
  "max_concurrent_agents": 3,
10
9
  "min_plans_for_parallel": 2
11
10
  },
12
- "gates": {
13
- "confirm_project": true,
14
- "confirm_phases": true,
15
- "confirm_roadmap": true,
16
- "confirm_breakdown": true,
17
- "confirm_plan": true,
18
- "execute_next_plan": true,
19
- "issues_review": true,
20
- "confirm_transition": true
21
- },
22
11
  "safety": {
23
12
  "always_confirm_destructive": true,
24
13
  "always_confirm_external_services": true
@@ -90,8 +90,6 @@ cat .planning/config.json 2>/dev/null
90
90
 
91
91
  </config-check>
92
92
 
93
- <if mode="yolo">
94
-
95
93
  ```
96
94
  ⚡ Auto-approved: Milestone scope verification
97
95
 
@@ -102,22 +100,6 @@ Proceeding to stats gathering...
102
100
 
103
101
  Proceed directly to gather_stats step.
104
102
 
105
- </if>
106
-
107
- <if mode="interactive" OR="custom with gates.confirm_milestone_scope true">
108
-
109
- ```
110
- Ready to mark this milestone as shipped?
111
- (yes / wait / adjust scope)
112
- ```
113
-
114
- Wait for confirmation.
115
-
116
- If "adjust scope": Ask which phases should be included.
117
- If "wait": Stop, user will return when ready.
118
-
119
- </if>
120
-
121
103
  </step>
122
104
 
123
105
  <step name="gather_stats">
@@ -83,7 +83,6 @@ cat .planning/config.json 2>/dev/null
83
83
  ```
84
84
  </config-check>
85
85
 
86
- <if mode="yolo">
87
86
  ```
88
87
  ⚡ Auto-approved: Execute {phase}-{plan}-PLAN.md
89
88
  [Plan X of Y for Phase Z]
@@ -92,20 +91,6 @@ Starting execution...
92
91
  ```
93
92
 
94
93
  Proceed directly to parse_segments step.
95
- </if>
96
-
97
- <if mode="interactive" OR="custom with gates.execute_next_plan true">
98
- Present:
99
-
100
- ```
101
- Found plan to execute: {phase}-{plan}-PLAN.md
102
- [Plan X of Y for Phase Z]
103
-
104
- Proceed with execution?
105
- ```
106
-
107
- Wait for confirmation before proceeding.
108
- </if>
109
94
  </step>
110
95
 
111
96
  <step name="record_start_time">
@@ -1465,21 +1450,15 @@ Before proceeding, check SUMMARY.md content.
1465
1450
 
1466
1451
  If "Issues Encountered" is NOT "None":
1467
1452
 
1468
- <if mode="yolo">
1469
1453
  ```
1470
1454
  ⚡ Auto-approved: Issues acknowledgment
1471
1455
  ⚠️ Note: Issues were encountered during execution:
1472
1456
  - [Issue 1]
1473
1457
  - [Issue 2]
1474
- (Logged - continuing in yolo mode)
1458
+ (Logged - continuing)
1475
1459
  ```
1476
1460
 
1477
1461
  Continue without waiting.
1478
- </if>
1479
-
1480
- <if mode="interactive" OR="custom with gates.issues_review true">
1481
- Present issues and wait for acknowledgment before proceeding.
1482
- </if>
1483
1462
  </step>
1484
1463
 
1485
1464
  <step name="update_roadmap">
@@ -1670,7 +1649,6 @@ Identify the next unexecuted plan:
1670
1649
  - Find the first PLAN.md file that has no matching SUMMARY.md
1671
1650
  - Read its `<objective>` section
1672
1651
 
1673
- <if mode="yolo">
1674
1652
  ```
1675
1653
  Plan {phase}-{plan} complete.
1676
1654
  Summary: .planning/phases/{phase-dir}/{phase}-{plan}-SUMMARY.md
@@ -1681,36 +1659,6 @@ Summary: .planning/phases/{phase-dir}/{phase}-{plan}-SUMMARY.md
1681
1659
  ```
1682
1660
 
1683
1661
  Loop back to identify_plan step automatically.
1684
- </if>
1685
-
1686
- <if mode="interactive" OR="custom with gates.execute_next_plan true">
1687
- ```
1688
- Plan {phase}-{plan} complete.
1689
- Summary: .planning/phases/{phase-dir}/{phase}-{plan}-SUMMARY.md
1690
-
1691
- {Y} of {X} plans complete for Phase {Z}.
1692
-
1693
- ---
1694
-
1695
- ## ▶ Next Up
1696
-
1697
- **Phase {X}: [Phase Name]** — [goal from ROADMAP.md]
1698
-
1699
- `/ms:execute-phase {phase-number}`
1700
-
1701
- <sub>`/clear` first → fresh context window</sub>
1702
-
1703
- ---
1704
-
1705
- **Also available:**
1706
- - `/ms:verify-work {phase}` — manual acceptance testing before continuing
1707
- - Review what was built before continuing
1708
-
1709
- ---
1710
- ```
1711
-
1712
- Wait for user to clear and run next command.
1713
- </if>
1714
1662
 
1715
1663
  **STOP here if Route A applies. Do not continue to Step 3.**
1716
1664
 
@@ -629,46 +629,7 @@ See ~/.claude/mindsystem/references/scope-estimation.md for complete guidance.
629
629
  </step>
630
630
 
631
631
  <step name="confirm_breakdown">
632
- <if mode="yolo">
633
632
  Auto-approve and proceed to write_phase_prompt.
634
- </if>
635
-
636
- <if mode="interactive">
637
- Present breakdown with wave structure:
638
-
639
- ```
640
- Phase [X] breakdown:
641
-
642
- ## Execution Waves
643
-
644
- **Wave 1 (parallel):**
645
- {phase}-01: [Plan Name] [autonomous]
646
- - Task: [brief]
647
- - Task: [brief]
648
-
649
- {phase}-02: [Plan Name] [autonomous]
650
- - Task: [brief]
651
- - Task: [brief]
652
-
653
- **Wave 2 (parallel):**
654
- {phase}-03: [Plan Name] (depends: 01, 02) [autonomous]
655
- - Task: [brief]
656
-
657
- **Wave 3:**
658
- {phase}-04: [Plan Name] (depends: 03) [has checkpoint]
659
- - Task: [brief]
660
- - Checkpoint: [type]
661
-
662
- ---
663
- Total: [N] plans in [M] waves
664
- Parallel plans: [X]
665
- Sequential plans: [Y]
666
-
667
- Does this look right? (yes / adjust / start over)
668
- ```
669
-
670
- Wait for confirmation. If "adjust": revise. If "start over": return to gather_phase_context.
671
- </if>
672
633
  </step>
673
634
 
674
635
  <step name="write_phase_prompt">
@@ -60,8 +60,6 @@ cat .planning/config.json 2>/dev/null
60
60
 
61
61
  **If all plans complete:**
62
62
 
63
- <if mode="yolo">
64
-
65
63
  ```
66
64
  ⚡ Auto-approved: Transition Phase [X] → Phase [X+1]
67
65
  Phase [X] complete — all [Y] plans finished.
@@ -71,16 +69,6 @@ Proceeding to mark done and advance...
71
69
 
72
70
  Proceed directly to cleanup_handoff step.
73
71
 
74
- </if>
75
-
76
- <if mode="interactive" OR="custom with gates.confirm_transition true">
77
-
78
- Ask: "Phase [X] complete — all [Y] plans finished. Ready to mark done and move to Phase [X+1]?"
79
-
80
- Wait for confirmation before proceeding.
81
-
82
- </if>
83
-
84
72
  **If plans incomplete:**
85
73
 
86
74
  **SAFETY RAIL: always_confirm_destructive applies here.**
@@ -409,8 +397,6 @@ Read ROADMAP.md to get the next phase's name and goal.
409
397
 
410
398
  **If next phase exists:**
411
399
 
412
- <if mode="yolo">
413
-
414
400
  ```
415
401
  Phase [X] marked complete.
416
402
 
@@ -421,41 +407,10 @@ Next: Phase [X+1] — [Name]
421
407
 
422
408
  Exit skill and invoke SlashCommand("/ms:plan-phase [X+1]")
423
409
 
424
- </if>
425
-
426
- <if mode="interactive" OR="custom with gates.confirm_transition true">
427
-
428
- ```
429
- ## ✓ Phase [X] Complete
430
-
431
- ---
432
-
433
- ## ▶ Next Up
434
-
435
- **Phase [X+1]: [Name]** — [Goal from ROADMAP.md]
436
-
437
- `/ms:plan-phase [X+1]`
438
-
439
- <sub>`/clear` first → fresh context window</sub>
440
-
441
- ---
442
-
443
- **Also available:**
444
- - `/ms:discuss-phase [X+1]` — gather context first
445
- - `/ms:research-phase [X+1]` — investigate unknowns
446
- - Review roadmap
447
-
448
- ---
449
- ```
450
-
451
- </if>
452
-
453
410
  ---
454
411
 
455
412
  **Route B: Milestone complete (all phases done)**
456
413
 
457
- <if mode="yolo">
458
-
459
414
  ```
460
415
  Phase {X} marked complete.
461
416
 
@@ -466,35 +421,6 @@ Phase {X} marked complete.
466
421
 
467
422
  Exit skill and invoke SlashCommand("/ms:complete-milestone {version}")
468
423
 
469
- </if>
470
-
471
- <if mode="interactive" OR="custom with gates.confirm_transition true">
472
-
473
- ```
474
- ## ✓ Phase {X}: {Phase Name} Complete
475
-
476
- 🎉 Milestone {version} is 100% complete — all {N} phases finished!
477
-
478
- ---
479
-
480
- ## ▶ Next Up
481
-
482
- **Complete Milestone {version}** — archive and prepare for next
483
-
484
- `/ms:complete-milestone {version}`
485
-
486
- <sub>`/clear` first → fresh context window</sub>
487
-
488
- ---
489
-
490
- **Also available:**
491
- - Review accomplishments before archiving
492
-
493
- ---
494
- ```
495
-
496
- </if>
497
-
498
424
  </step>
499
425
 
500
426
  </process>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mindsystem-cc",
3
- "version": "3.2.1",
3
+ "version": "3.2.3",
4
4
  "description": "A meta-prompting, context engineering and spec-driven development system for Claude Code by TÂCHES.",
5
5
  "bin": {
6
6
  "mindsystem-cc": "bin/install.js"
@@ -85,8 +85,10 @@ def load_config(config_path: Path | None = None) -> LinearConfig:
85
85
 
86
86
 
87
87
  def find_config_file() -> Path | None:
88
- """Find .linear.json by searching upward from current directory."""
89
- current = Path.cwd()
88
+ """Find .linear.json by searching upward from original working directory."""
89
+ # Use MS_LINEAR_CWD if set (passed from wrapper script), otherwise fall back to cwd
90
+ start_dir = os.environ.get("MS_LINEAR_CWD")
91
+ current = Path(start_dir) if start_dir else Path.cwd()
90
92
 
91
93
  while current != current.parent:
92
94
  config_path = current / ".linear.json"
@@ -8,14 +8,15 @@ if [ -f "$HOME/.local/bin/env" ]; then
8
8
  fi
9
9
 
10
10
  SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
11
+ ORIGINAL_CWD="$(pwd)"
11
12
  cd "$SCRIPT_DIR/ms-linear"
12
13
 
13
14
  if command -v uv &> /dev/null; then
14
15
  # Prefer uv if available (faster)
15
16
  uv sync --quiet 2>/dev/null
16
- uv run python -m ms_linear "$@"
17
+ MS_LINEAR_CWD="$ORIGINAL_CWD" uv run python -m ms_linear "$@"
17
18
  else
18
19
  # Fall back to pip
19
20
  pip install -q -e . 2>/dev/null
20
- python3 -m ms_linear "$@"
21
+ MS_LINEAR_CWD="$ORIGINAL_CWD" python3 -m ms_linear "$@"
21
22
  fi