mindsystem-cc 3.2.0 → 3.2.2

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.
@@ -9,9 +9,11 @@ allowed-tools:
9
9
  ---
10
10
 
11
11
  <objective>
12
- Provide a conversational interface to Linear for issue management. Route to the appropriate CLI command based on user intent.
12
+ Conversational interface to Linear for fast issue management. Primary use case: user describes work ask high-impact questions → create ticket immediately.
13
13
 
14
- Apply Pareto principle: ask max 4 high-impact questions. Skip questions with obvious answers from context.
14
+ **Speed over polish.** Get tickets into Linear quickly. Don't over-engineer descriptions or explore solutions.
15
+
16
+ **No codebase exploration unless explicitly requested.** Work from user's description only. Do NOT launch agents, explore files, or analyze code unless the user explicitly asks for it.
15
17
  </objective>
16
18
 
17
19
  <execution_context>
@@ -72,8 +74,8 @@ Apply Pareto principle: ask max 4 high-impact questions. Skip questions with obv
72
74
  | `get <ID>` | Fetch details | Execute `get` directly |
73
75
  | `states` | List states | Execute `states` directly |
74
76
  | `projects` | List projects | Execute `projects` directly |
75
- | `break <ID>` | Break into sub-issues | Go to break flow |
76
77
  | `update <ID> <text>` | Update issue | Execute `update` with parsed fields |
78
+ | `break <ID>` + user provides sub-issues | Break into sub-issues | Execute `break` with user's list |
77
79
  | `<ID> <description>` | Create sub-issue | Go to create flow with parent |
78
80
  | `<description>` | Create issue | Go to create flow |
79
81
  | (empty) | No input | Ask what they want to do |
@@ -82,7 +84,7 @@ Issue ID pattern: 2-4 uppercase letters followed by hyphen and numbers (e.g., `A
82
84
  </step>
83
85
 
84
86
  <step name="direct_commands">
85
- **For direct commands (done, state, get, states, projects):**
87
+ **For direct commands (done, state, get, states, projects, update):**
86
88
 
87
89
  Execute CLI and format output.
88
90
 
@@ -97,7 +99,7 @@ Parse JSON response and present result:
97
99
  </step>
98
100
 
99
101
  <step name="create_flow">
100
- **For create/sub-issue:**
102
+ **For create/sub-issue — FAST PATH:**
101
103
 
102
104
  1. **Parse input for hints:**
103
105
  - Title from first sentence or quoted text
@@ -106,47 +108,34 @@ Parse JSON response and present result:
106
108
  - Parent ID if pattern `<ID> <description>`
107
109
  - Project hints: "in [Project]", "for [Project]", "(project: [Name])", "[Project] project"
108
110
 
109
- 2. **Ask clarifying questions (max 4, single AskUserQuestion call):**
110
-
111
- Skip questions with obvious answers. Examples:
112
- - Title clearly stated don't ask for title
113
- - Priority mentioneddon't ask for priority
114
- - Simple task → skip estimate question
115
- - Project mentioned → don't ask for project
111
+ 2. **Infer priority and estimate** from the description:
112
+ - Bug fixes, blockers → High/Urgent
113
+ - Small tweaks, copy changes → Low priority, XS/S estimate
114
+ - New featuresNormal priority, M estimate
115
+ - Large features, refactors Normal priority, L/XL estimate
116
116
 
117
- Use AskUserQuestion with questions like:
118
- - Priority (if not obvious from context)
119
- - Estimate (if not mentioned)
120
- - Project (if multiple projects exist and none specified)
121
- - Description details (if ambiguous)
117
+ 3. **Ask UP TO 4 questions in ONE AskUserQuestion call:**
122
118
 
123
- For project selection, first run `projects` command to get available options.
119
+ Combine these into a single batch:
124
120
 
125
- 3. **Show preview and confirm:**
126
-
127
- ```
128
- ## Create Issue
121
+ **Confirmation question:** Show inferred priority/estimate, ask to confirm or adjust
129
122
 
130
- **Title:** [parsed title]
131
- **Project:** [project name or "Team backlog"]
132
- **Priority:** [priority name]
133
- **Estimate:** [estimate if set]
134
- **Parent:** [parent ID if sub-issue]
123
+ **High-impact domain questions (pick 1-3 most relevant):**
124
+ - Scope clarification: "Should this [specific behavior] or [alternative]?"
125
+ - Edge cases: "What should happen when [edge case]?"
126
+ - Acceptance criteria: "What's the minimum for this to be done?"
127
+ - Context: "Is this related to [existing feature/area]?"
135
128
 
136
- Create this issue?
137
- ```
129
+ Skip questions with obvious answers from description. If description is very clear, may only need confirmation.
138
130
 
139
- Use AskUserQuestion: "Create this issue?" with options:
140
- - "Yes, create it"
141
- - "Edit first"
142
- - "Cancel"
131
+ If project not specified and multiple projects exist, include project selection.
143
132
 
144
- 4. **Execute CLI:**
133
+ 4. **Create immediately after answers:**
145
134
 
146
135
  ```bash
147
136
  ~/.claude/mindsystem/scripts/ms-linear-wrapper.sh create "[title]" \
148
- -d "[description]" -p [priority] -e [estimate] [--parent ID] \
149
- [--project "Name"] [--no-project] --json-pretty
137
+ -d "[description with user's answers incorporated]" -p [priority] -e [estimate] \
138
+ [--parent ID] [--project "Name"] [--no-project] --json-pretty
150
139
  ```
151
140
 
152
141
  5. **Format result:**
@@ -161,49 +150,23 @@ Parse JSON response and present result:
161
150
  <step name="break_flow">
162
151
  **For breaking down issues:**
163
152
 
164
- 1. **Fetch parent issue:**
165
-
166
- ```bash
167
- ~/.claude/mindsystem/scripts/ms-linear-wrapper.sh get [ID] --json-pretty
168
- ```
169
-
170
- 2. **Analyze and propose sub-issues:**
171
-
172
- Based on title and description, propose 2-5 sub-issues:
173
- - Each with clear title
174
- - Inherit parent's priority unless specified
175
- - Suggest estimates if pattern is clear
176
-
177
- ```
178
- ## Break Down: [identifier] — [title]
179
-
180
- Proposed sub-issues:
181
- 1. [Title 1] (M)
182
- 2. [Title 2] (S)
183
- 3. [Title 3] (M)
184
- ```
185
-
186
- 3. **Confirm with user:**
153
+ User provides the sub-issues in conversation. Do NOT propose or generate sub-issues.
187
154
 
188
- Use AskUserQuestion: "Create these sub-issues?" with options:
189
- - "Yes, create all"
190
- - "Let me edit the list"
191
- - "Cancel"
155
+ 1. **Get sub-issue list from user** (they specify titles/estimates in their message)
192
156
 
193
- 4. **Build JSON and execute:**
157
+ 2. **Build JSON and execute:**
194
158
 
195
159
  ```bash
196
160
  ~/.claude/mindsystem/scripts/ms-linear-wrapper.sh break [ID] \
197
161
  --issues '[{"title":"...","estimate":3},{"title":"...","estimate":2}]' --json-pretty
198
162
  ```
199
163
 
200
- 5. **Format result:**
164
+ 3. **Format result:**
201
165
 
202
166
  ```
203
- Created 3 sub-issues under [parent-identifier]:
167
+ Created N sub-issues under [parent-identifier]:
204
168
  - **[ID-1]** — [title 1]
205
169
  - **[ID-2]** — [title 2]
206
- - **[ID-3]** — [title 3]
207
170
  ```
208
171
  </step>
209
172
 
@@ -223,9 +186,10 @@ Always parse JSON error response and present human-friendly message with suggest
223
186
 
224
187
  <success_criteria>
225
188
  - [ ] Intent correctly parsed from input
226
- - [ ] Direct commands execute immediately
227
- - [ ] Create flow asks max 4 questions
228
- - [ ] User confirms before creating/updating
189
+ - [ ] Direct commands execute immediately without questions
190
+ - [ ] Create flow asks max 4 questions in ONE AskUserQuestion call
191
+ - [ ] No codebase exploration unless user explicitly requests it
192
+ - [ ] Issue created immediately after user answers questions
229
193
  - [ ] CLI output parsed and formatted for readability
230
194
  - [ ] Errors handled with helpful suggestions
231
195
  </success_criteria>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mindsystem-cc",
3
- "version": "3.2.0",
3
+ "version": "3.2.2",
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