@monoes/monomindcli 1.10.25 → 1.10.27

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.
@@ -167,26 +167,61 @@ function _recordGraphTelemetry(event) {
167
167
  } catch (e) { /* non-fatal */ }
168
168
  }
169
169
 
170
- // Re-inject graph god nodes after compaction so the LLM doesn't lose its spatial map.
170
+ // Re-inject graph context after compaction so the LLM doesn't lose its spatial map.
171
+ // Prefers recently-edited files (session context) over pure degree centrality so
172
+ // the injected anchors match what the LLM was actually working on.
171
173
  function _injectCompactGraphMap() {
172
174
  try {
173
175
  var db = _openMonographDb();
174
176
  if (!db) return;
175
177
  try {
176
178
  var nodeC = db.prepare("SELECT COUNT(*) AS c FROM nodes").get().c;
177
- var gods = db.prepare(
178
- "SELECT n.name, n.label, n.file_path, " +
179
- "(SELECT COUNT(*) FROM edges WHERE source_id=n.id OR target_id=n.id) AS deg " +
180
- "FROM nodes n " +
181
- "WHERE n.label NOT IN ('Concept') AND n.file_path IS NOT NULL AND n.file_path != '' " +
182
- "AND n.name NOT LIKE '(%' AND n.name NOT LIKE '%=>%' AND length(n.name) >= 3 " +
183
- "ORDER BY deg DESC LIMIT 8"
184
- ).all();
185
- if (gods.length > 0) {
186
- console.log('[COMPACT_GRAPH] ' + nodeC + ' nodes available. Top spatial anchors:');
187
- for (var ci = 0; ci < gods.length; ci++) {
188
- var g = gods[ci];
189
- console.log(' · ' + g.name + ' [' + g.label + '] — ' + g.file_path + ' (deg ' + g.deg + ')');
179
+ var anchors = [];
180
+ var seenPaths = {};
181
+
182
+ // 1. Prefer recently-edited files (up to 5) — these are what matters NOW.
183
+ var recentEdits = _getRecentEdits();
184
+ for (var ri = 0; ri < Math.min(recentEdits.length, 5); ri++) {
185
+ var rfile = recentEdits[ri].file;
186
+ // Normalise to relative path for DB lookup
187
+ var rrel = (rfile.indexOf(CWD) === 0) ? rfile.slice(CWD.length + 1) : rfile;
188
+ try {
189
+ var rnode = db.prepare(
190
+ "SELECT n.name, n.label, n.file_path, " +
191
+ "(SELECT COUNT(*) FROM edges WHERE source_id=n.id OR target_id=n.id) AS deg " +
192
+ "FROM nodes n WHERE n.label='File' AND (n.file_path=? OR n.file_path=?) LIMIT 1"
193
+ ).get(rfile, rrel);
194
+ if (rnode && !seenPaths[rnode.file_path]) {
195
+ seenPaths[rnode.file_path] = 1;
196
+ anchors.push({ name: rnode.name, label: rnode.label, file_path: rnode.file_path, deg: rnode.deg, tag: '✎' });
197
+ }
198
+ } catch (e) { /* ignore — file may not be in graph yet */ }
199
+ }
200
+
201
+ // 2. Fill remaining slots (up to 8 total) with god nodes (high centrality).
202
+ var slotsLeft = 8 - anchors.length;
203
+ if (slotsLeft > 0) {
204
+ var gods = db.prepare(
205
+ "SELECT n.name, n.label, n.file_path, " +
206
+ "(SELECT COUNT(*) FROM edges WHERE source_id=n.id OR target_id=n.id) AS deg " +
207
+ "FROM nodes n " +
208
+ "WHERE n.label NOT IN ('Concept') AND n.file_path IS NOT NULL AND n.file_path != '' " +
209
+ "AND n.name NOT LIKE '(%' AND n.name NOT LIKE '%=>%' AND length(n.name) >= 3 " +
210
+ "ORDER BY deg DESC LIMIT 15"
211
+ ).all();
212
+ for (var gi = 0; gi < gods.length && anchors.length < 8; gi++) {
213
+ if (!seenPaths[gods[gi].file_path]) {
214
+ seenPaths[gods[gi].file_path] = 1;
215
+ anchors.push({ name: gods[gi].name, label: gods[gi].label, file_path: gods[gi].file_path, deg: gods[gi].deg, tag: '' });
216
+ }
217
+ }
218
+ }
219
+
220
+ if (anchors.length > 0) {
221
+ console.log('[COMPACT_GRAPH] ' + nodeC + ' nodes. Session context (✎ = recently edited):');
222
+ for (var ci = 0; ci < anchors.length; ci++) {
223
+ var g = anchors[ci];
224
+ console.log(' ' + (g.tag || ' ') + ' ' + g.name + ' [' + g.label + '] — ' + g.file_path + ' (deg ' + g.deg + ')');
190
225
  }
191
226
  console.log(' Use mcp__monomind__monograph_suggest first when navigating.');
192
227
  }
@@ -194,6 +229,37 @@ function _injectCompactGraphMap() {
194
229
  } catch (e) {}
195
230
  }
196
231
 
232
+ // ── Recent edit history ────────────────────────────────────────────────────────
233
+ // Track last N edited file paths so compact injection and pre-resolve can surface
234
+ // the files the LLM was actively working on instead of pure centrality anchors.
235
+ function _recordRecentEdit(filePath) {
236
+ if (!filePath) return;
237
+ try {
238
+ var f = path.join(CWD, '.monomind', 'metrics', 'recent-edits.json');
239
+ fs.mkdirSync(path.dirname(f), { recursive: true });
240
+ var d = { edits: [] };
241
+ try { d = JSON.parse(fs.readFileSync(f, 'utf-8')); } catch (_) {}
242
+ if (!Array.isArray(d.edits)) d.edits = [];
243
+ // Remove stale entry for same file, then prepend fresh one
244
+ d.edits = d.edits.filter(function(e) { return e.file !== filePath; });
245
+ d.edits.unshift({ file: filePath, editedAt: Date.now() });
246
+ if (d.edits.length > 10) d.edits = d.edits.slice(0, 10);
247
+ fs.writeFileSync(f, JSON.stringify(d));
248
+ } catch (e) { /* non-fatal */ }
249
+ }
250
+
251
+ function _getRecentEdits() {
252
+ try {
253
+ var f = path.join(CWD, '.monomind', 'metrics', 'recent-edits.json');
254
+ if (!fs.existsSync(f)) return [];
255
+ var d = JSON.parse(fs.readFileSync(f, 'utf-8'));
256
+ if (!Array.isArray(d.edits)) return [];
257
+ // Only return edits from the last 2 hours (session-scoped)
258
+ var cutoff = Date.now() - 2 * 60 * 60 * 1000;
259
+ return d.edits.filter(function(e) { return e.editedAt > cutoff; });
260
+ } catch (e) { return []; }
261
+ }
262
+
197
263
  // ── Loop drift detection ───────────────────────────────────────────────────────
198
264
  // Record tool call signatures per session, warn when the same call recurs ≥3×.
199
265
  function _recordToolCall(signature) {
@@ -910,11 +976,14 @@ const handlers = {
910
976
  else if (topGraph.label === 'Class' || topGraph.label === 'Interface') agent = 'system-architect';
911
977
  // Functions, files, methods → coder
912
978
  else agent = 'coder';
979
+ // Scale confidence by graph degree: well-connected nodes are stronger anchors.
980
+ var topDeg = topGraph.deg || 0;
981
+ var graphConf = topDeg > 30 ? 0.80 : (topDeg > 10 ? 0.75 : 0.70);
913
982
  result = Object.assign({}, result, {
914
983
  agent: agent,
915
984
  agentSlug: agent,
916
- confidence: 0.70,
917
- reason: 'Graph fallback: top file ' + (topGraph.name || '').substring(0, 30) + ' [' + topGraph.label + ']',
985
+ confidence: graphConf,
986
+ reason: 'Graph fallback: top file ' + (topGraph.name || '').substring(0, 30) + ' [' + topGraph.label + '] deg=' + topDeg,
918
987
  specificAgents: [],
919
988
  extrasMatches: [],
920
989
  });
@@ -1133,11 +1202,46 @@ const handlers = {
1133
1202
  // Pre-resolve top-5 relevant files for the user's prompt — the LLM
1134
1203
  // sees the answer inline instead of being told to call a tool.
1135
1204
  var suggestions = getMonographSuggestions(prompt, 5);
1205
+
1206
+ // Boost recently-edited files to the top of pre-resolve suggestions.
1207
+ // Even when the FTS index hasn't caught up to the latest edits, the
1208
+ // LLM should see the files it just modified as the primary context.
1209
+ try {
1210
+ var recentEditsForRoute = _getRecentEdits();
1211
+ if (recentEditsForRoute.length > 0) {
1212
+ // Extract prompt keywords for relevance gating
1213
+ var promptWords = (prompt || '').toLowerCase().match(/[a-z][a-z0-9_-]{2,}/g) || [];
1214
+ var promptWordSet = {};
1215
+ for (var pw = 0; pw < promptWords.length; pw++) promptWordSet[promptWords[pw]] = 1;
1216
+
1217
+ var existingFiles = {};
1218
+ for (var se = 0; se < suggestions.length; se++) existingFiles[suggestions[se].file || ''] = 1;
1219
+
1220
+ var editBoosts = [];
1221
+ for (var re = 0; re < recentEditsForRoute.length && editBoosts.length < 2; re++) {
1222
+ var reFile = recentEditsForRoute[re].file;
1223
+ // Skip if already in suggestions
1224
+ if (existingFiles[reFile]) continue;
1225
+ var reName = path.basename(reFile, path.extname(reFile)).toLowerCase();
1226
+ // Only boost if filename shares a keyword with the prompt OR the edit is very recent (<3 min)
1227
+ var veryRecent = (Date.now() - recentEditsForRoute[re].editedAt) < 3 * 60 * 1000;
1228
+ var matches = promptWordSet[reName] || veryRecent;
1229
+ if (matches) {
1230
+ editBoosts.push({ name: path.basename(reFile), label: 'File', file: reFile, deg: 0, _editBoost: true });
1231
+ }
1232
+ }
1233
+ if (editBoosts.length > 0) {
1234
+ suggestions = editBoosts.concat(suggestions).slice(0, 5);
1235
+ }
1236
+ }
1237
+ } catch (e) { /* non-fatal */ }
1238
+
1136
1239
  if (suggestions.length > 0) {
1137
1240
  console.log('\n[MONOGRAPH] ' + nodeCount + ' nodes indexed. Top files for this task (pre-resolved from graph):');
1138
1241
  for (var si = 0; si < suggestions.length; si++) {
1139
1242
  var s = suggestions[si];
1140
- console.log(' · ' + s.name + ' [' + s.label + '] — ' + (s.file || '') + ' (deg ' + s.deg + ')');
1243
+ var editTag = s._editBoost ? ' ' : '';
1244
+ console.log(' · ' + s.name + ' [' + s.label + '] — ' + (s.file || '') + (s.deg ? ' (deg ' + s.deg + ')' : '') + editTag);
1141
1245
  }
1142
1246
  console.log(' Use mcp__monomind__monograph_query / monograph_impact for deeper drill-down.');
1143
1247
  _recordGraphTelemetry('preresolve_hit');
@@ -1347,6 +1451,12 @@ const handlers = {
1347
1451
  intelligence.recordEdit(file);
1348
1452
  } catch (e) { /* non-fatal */ }
1349
1453
  }
1454
+ // Track recently-edited files for compact injection and pre-resolve boosting.
1455
+ try {
1456
+ var editedForRecent = hookInput.file_path || toolInput.file_path
1457
+ || process.env.TOOL_INPUT_file_path || args[0] || '';
1458
+ if (editedForRecent) _recordRecentEdit(editedForRecent);
1459
+ } catch (e) { /* non-fatal */ }
1350
1460
  // Increment write counter and rebuild monograph when threshold hit.
1351
1461
  _maybeRebuildMonograph();
1352
1462
 
@@ -143,11 +143,46 @@ function matchSkills(task, topN = 5) {
143
143
  .slice(0, topN);
144
144
  }
145
145
 
146
+ // Categories that are almost never relevant in a software project context.
147
+ // We exclude these from extras suggestions UNLESS the prompt has explicit
148
+ // keywords that opt them back in. Default-conservative: in a code repo,
149
+ // an "Anthropologist" for "community docs" or "Unity Architect" for a
150
+ // "community module" is noise, not signal.
151
+ const _NON_DEV_EXTRA_CATEGORIES = new Set([
152
+ 'academic', // Anthropologist, Geographer, Historian, Narratologist, Psychologist
153
+ 'game-development', // Unity/Unreal/Godot/Blender — irrelevant for non-game codebases
154
+ 'marketing',
155
+ 'sales',
156
+ 'paid-media',
157
+ 'design', // brand/UI/UX specialists — irrelevant for code reviews
158
+ ]);
159
+
160
+ // Per-category opt-in keywords. If the prompt mentions one of these, that
161
+ // category is allowed back into extras.
162
+ const _CATEGORY_OPTIN_KEYWORDS = {
163
+ 'academic': /\b(anthropolog|sociolog|cultural|ritual|kinship|ethnograph|histor(?:y|ical|ian)|geograph|narratolog|psycholog|belief\s*system)\b/i,
164
+ 'game-development': /\b(unity|unreal|godot|blender|game\s*(?:design|dev|engine)|gameplay|shader\s*graph|level\s*design|ugc|roblox)\b/i,
165
+ 'marketing': /\b(marketing|advertis|seo|tiktok|instagram|linkedin\s*content|brand|campaign|growth\s*hack|copywrit|blog\s*post|press\s*release|launch\s*strategy|pitch|investor)\b/i,
166
+ 'sales': /\b(sales|prospect|outbound|pipeline|crm|cold\s*email|deal|account\s*strategy|quota|forecast|qbr)\b/i,
167
+ 'paid-media': /\b(paid\s*media|ads?|google\s*ads|meta\s*ads|programmatic|ppc|cpa|conversion\s*tracking)\b/i,
168
+ 'design': /\b(figma|brand\s*identity|design\s*system|ux\s*research|persona|usability|wireframe|prototype|color\s*palette|typography|moodboard)\b/i,
169
+ };
170
+
171
+ function _allowedExtraCategories(taskLower) {
172
+ const allowed = new Set();
173
+ for (const [cat, re] of Object.entries(_CATEGORY_OPTIN_KEYWORDS)) {
174
+ if (re.test(taskLower)) allowed.add(cat);
175
+ }
176
+ return allowed;
177
+ }
178
+
146
179
  function matchExtras(task, topN = 8) {
147
180
  if (typeof task !== 'string') return [];
148
181
  const registry = loadExtrasRegistry();
149
182
  const taskLower = task.toLowerCase();
183
+ const optedIn = _allowedExtraCategories(taskLower);
150
184
  return registry.extras
185
+ .filter(e => !_NON_DEV_EXTRA_CATEGORIES.has(e.category) || optedIn.has(e.category))
151
186
  .map(e => ({ slug: e.slug, name: e.name, description: e.description, category: e.category, filePath: e.filePath, score: scoreEntry(e.keywords, taskLower) }))
152
187
  .filter(e => e.score > 0)
153
188
  .sort((a, b) => b.score - a.score)
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;AAk3B1E,eAAO,MAAM,WAAW,EAAE,OAkFzB,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;AAg6B1E,eAAO,MAAM,WAAW,EAAE,OAkFzB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -6,7 +6,7 @@ import { output } from '../output.js';
6
6
  import { confirm, select, multiSelect, input } from '../prompt.js';
7
7
  import * as fs from 'fs';
8
8
  import * as path from 'path';
9
- import { executeInit, executeUpgrade, executeUpgradeWithMissing, DEFAULT_INIT_OPTIONS, MINIMAL_INIT_OPTIONS, FULL_INIT_OPTIONS, } from '../init/index.js';
9
+ import { executeInit, executeUpgrade, executeUpgradeWithMissing, findMonomindProjects, DEFAULT_INIT_OPTIONS, MINIMAL_INIT_OPTIONS, FULL_INIT_OPTIONS, } from '../init/index.js';
10
10
  // Check if project is already initialized
11
11
  function isInitialized(cwd) {
12
12
  const claudePath = path.join(cwd, '.claude', 'settings.json');
@@ -663,10 +663,57 @@ const upgradeCommand = {
663
663
  type: 'boolean',
664
664
  default: false,
665
665
  },
666
+ {
667
+ name: 'all',
668
+ description: 'Upgrade all known monomind projects on this machine (scans ~/Desktop, ~/projects, etc.)',
669
+ type: 'boolean',
670
+ default: false,
671
+ },
666
672
  ],
667
673
  action: async (ctx) => {
668
674
  const addMissing = (ctx.flags['add-missing'] || ctx.flags.addMissing);
669
675
  const upgradeSettings = (ctx.flags.settings);
676
+ const upgradeAll = (ctx.flags.all);
677
+ // ── --all: scan for every monomind project and upgrade each ──────────────
678
+ if (upgradeAll) {
679
+ output.writeln();
680
+ output.writeln(output.bold('Upgrading all monomind projects'));
681
+ output.writeln(output.dim('Scanning ~/Desktop, ~/projects, ~/code… (this may take a moment)'));
682
+ output.writeln();
683
+ const projects = findMonomindProjects();
684
+ if (projects.length === 0) {
685
+ output.printInfo('No monomind projects found. Install monomind in a project first: npx monomind init');
686
+ return { success: true, exitCode: 0 };
687
+ }
688
+ output.printInfo(`Found ${projects.length} project(s). Upgrading…`);
689
+ output.writeln();
690
+ let succeeded = 0;
691
+ let failed = 0;
692
+ for (const projDir of projects) {
693
+ const spinner = output.createSpinner({ text: projDir });
694
+ spinner.start();
695
+ try {
696
+ const res = addMissing
697
+ ? await executeUpgradeWithMissing(projDir, upgradeSettings)
698
+ : await executeUpgrade(projDir, upgradeSettings);
699
+ if (res.success) {
700
+ spinner.succeed(projDir + ' (' + res.updated.length + ' updated)');
701
+ succeeded++;
702
+ }
703
+ else {
704
+ spinner.fail(projDir + ' — ' + (res.errors[0] || 'unknown error'));
705
+ failed++;
706
+ }
707
+ }
708
+ catch (e) {
709
+ spinner.fail(projDir + ' — ' + (e instanceof Error ? e.message : String(e)));
710
+ failed++;
711
+ }
712
+ }
713
+ output.writeln();
714
+ output.printInfo(`Done: ${succeeded} upgraded, ${failed} failed out of ${projects.length} projects.`);
715
+ return { success: failed === 0, exitCode: failed > 0 ? 1 : 0 };
716
+ }
670
717
  output.writeln();
671
718
  output.writeln(output.bold('Upgrading MonoMind'));
672
719
  if (addMissing && upgradeSettings) {
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -34,5 +34,11 @@ export declare function executeUpgrade(targetDir: string, upgradeSettings?: bool
34
34
  * @param upgradeSettings - If true, merge new settings into existing settings.json
35
35
  */
36
36
  export declare function executeUpgradeWithMissing(targetDir: string, upgradeSettings?: boolean): Promise<UpgradeResult>;
37
+ /**
38
+ * Scan common locations for directories that have monomind installed
39
+ * (presence of .claude/helpers/hook-handler.cjs is the definitive signal).
40
+ * Searches up to maxDepth directory levels below each search root.
41
+ */
42
+ export declare function findMonomindProjects(maxDepth?: number): string[];
37
43
  export default executeInit;
38
44
  //# sourceMappingURL=executor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/init/executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA8BH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAgB,MAAM,YAAY,CAAC;AA4PxE,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CA0G3E;AAmID;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,+BAA+B;IAC/B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAoID;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,UAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAgNvG;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,UAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAsGlH;AAo1CD,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/init/executor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA8BH,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAgB,MAAM,YAAY,CAAC;AA4PxE,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CA0G3E;AAmID;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,+BAA+B;IAC/B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAoID;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,UAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAgNvG;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,UAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAsGlH;AAo1CD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,SAAI,GAAG,MAAM,EAAE,CA4C3D;AAED,eAAe,WAAW,CAAC"}
@@ -2168,5 +2168,65 @@ function countEnabledHooks(options) {
2168
2168
  count++;
2169
2169
  return count;
2170
2170
  }
2171
+ /**
2172
+ * Scan common locations for directories that have monomind installed
2173
+ * (presence of .claude/helpers/hook-handler.cjs is the definitive signal).
2174
+ * Searches up to maxDepth directory levels below each search root.
2175
+ */
2176
+ export function findMonomindProjects(maxDepth = 3) {
2177
+ const os = require('os');
2178
+ const home = os.homedir();
2179
+ const searchRoots = [
2180
+ path.join(home, 'Desktop'),
2181
+ path.join(home, 'projects'),
2182
+ path.join(home, 'code'),
2183
+ path.join(home, 'work'),
2184
+ path.join(home, 'dev'),
2185
+ path.join(home, 'repos'),
2186
+ path.join(home, 'src'),
2187
+ ].filter(r => fs.existsSync(r));
2188
+ // Also check known-projects registry if it exists
2189
+ const registryPath = path.join(home, '.monomind-projects.json');
2190
+ if (fs.existsSync(registryPath)) {
2191
+ try {
2192
+ const reg = JSON.parse(fs.readFileSync(registryPath, 'utf-8'));
2193
+ if (Array.isArray(reg.projects)) {
2194
+ for (const p of reg.projects) {
2195
+ if (!searchRoots.includes(p) && fs.existsSync(p))
2196
+ searchRoots.push(p);
2197
+ }
2198
+ }
2199
+ }
2200
+ catch { }
2201
+ }
2202
+ const found = new Set();
2203
+ function walk(dir, depth) {
2204
+ if (depth > maxDepth)
2205
+ return;
2206
+ const marker = path.join(dir, '.claude', 'helpers', 'hook-handler.cjs');
2207
+ if (fs.existsSync(marker)) {
2208
+ found.add(dir);
2209
+ return;
2210
+ } // don't recurse into a monomind project
2211
+ let entries;
2212
+ try {
2213
+ entries = fs.readdirSync(dir, { withFileTypes: true });
2214
+ }
2215
+ catch {
2216
+ return;
2217
+ }
2218
+ for (const e of entries) {
2219
+ if (!e.isDirectory())
2220
+ continue;
2221
+ if (e.name.startsWith('.') || e.name === 'node_modules')
2222
+ continue;
2223
+ walk(path.join(dir, e.name), depth + 1);
2224
+ }
2225
+ }
2226
+ for (const root of searchRoots) {
2227
+ walk(root, 0);
2228
+ }
2229
+ return [...found];
2230
+ }
2171
2231
  export default executeInit;
2172
2232
  //# sourceMappingURL=executor.js.map