@monoes/monomindcli 2.10.9 → 2.10.13

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.
Files changed (265) hide show
  1. package/.claude/commands/mastermind/brain.md +14 -14
  2. package/.claude/commands/mastermind/help.md +2 -2
  3. package/.claude/commands/mastermind/master.md +24 -19
  4. package/.claude/commands/mastermind/memory.md +8 -8
  5. package/.claude/commands/mastermind/monoswarm.md +4 -4
  6. package/.claude/commands/mastermind.md +7 -7
  7. package/.claude/commands/truth/start.md +3 -3
  8. package/.claude/settings.json +0 -4
  9. package/.claude/skills/mastermind/SKILL.md +7 -16
  10. package/.claude/skills/mastermind/references/antigravity-tools.md +0 -62
  11. package/.claude/skills/mastermind/references/claude-code-tools.md +0 -52
  12. package/.claude/skills/mastermind/references/codex-tools.md +0 -66
  13. package/.claude/skills/mastermind/references/copilot-tools.md +0 -51
  14. package/.claude/skills/mastermind/references/gemini-tools.md +0 -65
  15. package/.claude/skills/mastermind/references/pi-tools.md +0 -30
  16. package/.claude/skills/mastermind-createorg/SKILL.md +3 -1
  17. package/.claude/skills/mastermind-debug/SKILL.md +3 -277
  18. package/.claude/skills/mastermind-design/SKILL.md +2 -0
  19. package/.claude/skills/mastermind-execute/SKILL.md +59 -103
  20. package/.claude/skills/mastermind-idea/SKILL.md +9 -2
  21. package/.claude/skills/mastermind-intake/SKILL.md +31 -7
  22. package/.claude/skills/mastermind-issue-detail/SKILL.md +70 -16
  23. package/.claude/skills/mastermind-issues/SKILL.md +111 -16
  24. package/.claude/skills/mastermind-liveness/SKILL.md +96 -26
  25. package/.claude/skills/mastermind-memory/SKILL.md +0 -316
  26. package/.claude/skills/mastermind-my-issues/SKILL.md +40 -8
  27. package/.claude/skills/mastermind-org/SKILL.md +1 -12
  28. package/.claude/skills/mastermind-plan/SKILL.md +7 -228
  29. package/.claude/skills/mastermind-plan-to-tasks/SKILL.md +132 -24
  30. package/.claude/skills/mastermind-protocol/SKILL.md +33 -22
  31. package/.claude/skills/mastermind-research/SKILL.md +0 -163
  32. package/.claude/skills/mastermind-review/SKILL.md +0 -228
  33. package/.claude/skills/mastermind-runorg/SKILL.md +22 -3
  34. package/.claude/skills/mastermind-skill-builder/SKILL.md +1 -1
  35. package/.claude/skills/mastermind-tasks/SKILL.md +5 -0
  36. package/.claude/skills/mastermind-techport/SKILL.md +1 -1
  37. package/.claude/skills/performance-analysis/SKILL.md +1 -1
  38. package/.claude/skills/verification-quality/SKILL.md +2 -3
  39. package/README.md +2 -2
  40. package/dist/src/commands/agent-exec.d.ts +2 -0
  41. package/dist/src/commands/agent-exec.d.ts.map +1 -1
  42. package/dist/src/commands/agent-exec.js +16 -0
  43. package/dist/src/commands/agent-exec.js.map +1 -1
  44. package/dist/src/commands/doc.js +2 -2
  45. package/dist/src/commands/doc.js.map +1 -1
  46. package/dist/src/commands/doctor-project-checks.d.ts.map +1 -1
  47. package/dist/src/commands/doctor-project-checks.js +20 -1
  48. package/dist/src/commands/doctor-project-checks.js.map +1 -1
  49. package/dist/src/commands/init-wizard.d.ts.map +1 -1
  50. package/dist/src/commands/init-wizard.js +6 -0
  51. package/dist/src/commands/init-wizard.js.map +1 -1
  52. package/dist/src/commands/init.d.ts.map +1 -1
  53. package/dist/src/commands/init.js +12 -2
  54. package/dist/src/commands/init.js.map +1 -1
  55. package/dist/src/commands/monograph.d.ts.map +1 -1
  56. package/dist/src/commands/monograph.js +11 -4
  57. package/dist/src/commands/monograph.js.map +1 -1
  58. package/dist/src/commands/org-observe.d.ts +2 -0
  59. package/dist/src/commands/org-observe.d.ts.map +1 -1
  60. package/dist/src/commands/org-observe.js +115 -6
  61. package/dist/src/commands/org-observe.js.map +1 -1
  62. package/dist/src/commands/org.d.ts +26 -0
  63. package/dist/src/commands/org.d.ts.map +1 -1
  64. package/dist/src/commands/org.js +186 -28
  65. package/dist/src/commands/org.js.map +1 -1
  66. package/dist/src/init/codex-generator.d.ts +5 -0
  67. package/dist/src/init/codex-generator.d.ts.map +1 -1
  68. package/dist/src/init/codex-generator.js +12 -3
  69. package/dist/src/init/codex-generator.js.map +1 -1
  70. package/dist/src/init/executor.d.ts.map +1 -1
  71. package/dist/src/init/executor.js +10 -9
  72. package/dist/src/init/executor.js.map +1 -1
  73. package/dist/src/init/settings-generator.d.ts.map +1 -1
  74. package/dist/src/init/settings-generator.js +0 -5
  75. package/dist/src/init/settings-generator.js.map +1 -1
  76. package/dist/src/init/write-codex.d.ts.map +1 -1
  77. package/dist/src/init/write-codex.js +6 -5
  78. package/dist/src/init/write-codex.js.map +1 -1
  79. package/dist/src/knowledge/document-pipeline.d.ts +5 -0
  80. package/dist/src/knowledge/document-pipeline.d.ts.map +1 -1
  81. package/dist/src/knowledge/document-pipeline.js +32 -16
  82. package/dist/src/knowledge/document-pipeline.js.map +1 -1
  83. package/dist/src/mcp-tools/hooks-routing.d.ts +9 -0
  84. package/dist/src/mcp-tools/hooks-routing.d.ts.map +1 -1
  85. package/dist/src/mcp-tools/hooks-routing.js +12 -1
  86. package/dist/src/mcp-tools/hooks-routing.js.map +1 -1
  87. package/dist/src/mcp-tools/knowledge-tools.d.ts.map +1 -1
  88. package/dist/src/mcp-tools/knowledge-tools.js +105 -13
  89. package/dist/src/mcp-tools/knowledge-tools.js.map +1 -1
  90. package/dist/src/mcp-tools/memory-tools.d.ts +13 -0
  91. package/dist/src/mcp-tools/memory-tools.d.ts.map +1 -1
  92. package/dist/src/mcp-tools/memory-tools.js +257 -31
  93. package/dist/src/mcp-tools/memory-tools.js.map +1 -1
  94. package/dist/src/mcp-tools/monograph/health-tools.d.ts.map +1 -1
  95. package/dist/src/mcp-tools/monograph/health-tools.js +99 -42
  96. package/dist/src/mcp-tools/monograph/health-tools.js.map +1 -1
  97. package/dist/src/mcp-tools/monograph/impact-tools.d.ts.map +1 -1
  98. package/dist/src/mcp-tools/monograph/impact-tools.js +123 -51
  99. package/dist/src/mcp-tools/monograph/impact-tools.js.map +1 -1
  100. package/dist/src/mcp-tools/monograph/query-tools.d.ts.map +1 -1
  101. package/dist/src/mcp-tools/monograph/query-tools.js +113 -96
  102. package/dist/src/mcp-tools/monograph/query-tools.js.map +1 -1
  103. package/dist/src/mcp-tools/monograph/shared.d.ts +37 -4
  104. package/dist/src/mcp-tools/monograph/shared.d.ts.map +1 -1
  105. package/dist/src/mcp-tools/monograph/shared.js +75 -56
  106. package/dist/src/mcp-tools/monograph/shared.js.map +1 -1
  107. package/dist/src/memory/embedding-operations.d.ts.map +1 -1
  108. package/dist/src/memory/embedding-operations.js +9 -4
  109. package/dist/src/memory/embedding-operations.js.map +1 -1
  110. package/dist/src/memory/memory-bridge.d.ts +60 -1
  111. package/dist/src/memory/memory-bridge.d.ts.map +1 -1
  112. package/dist/src/memory/memory-bridge.js +185 -42
  113. package/dist/src/memory/memory-bridge.js.map +1 -1
  114. package/dist/src/memory/memory-kg.d.ts +495 -28
  115. package/dist/src/memory/memory-kg.d.ts.map +1 -1
  116. package/dist/src/memory/memory-kg.js +2186 -251
  117. package/dist/src/memory/memory-kg.js.map +1 -1
  118. package/dist/src/memory/query-router.d.ts +51 -0
  119. package/dist/src/memory/query-router.d.ts.map +1 -1
  120. package/dist/src/memory/query-router.js +38 -2
  121. package/dist/src/memory/query-router.js.map +1 -1
  122. package/dist/src/orgrt/agent-exec.d.ts +14 -0
  123. package/dist/src/orgrt/agent-exec.d.ts.map +1 -1
  124. package/dist/src/orgrt/agent-exec.js +88 -4
  125. package/dist/src/orgrt/agent-exec.js.map +1 -1
  126. package/dist/src/orgrt/agent-runner.d.ts +26 -1
  127. package/dist/src/orgrt/agent-runner.d.ts.map +1 -1
  128. package/dist/src/orgrt/agent-runner.js +73 -22
  129. package/dist/src/orgrt/agent-runner.js.map +1 -1
  130. package/dist/src/orgrt/antigravity-runner.d.ts +1 -1
  131. package/dist/src/orgrt/antigravity-runner.d.ts.map +1 -1
  132. package/dist/src/orgrt/antigravity-runner.js +36 -19
  133. package/dist/src/orgrt/antigravity-runner.js.map +1 -1
  134. package/dist/src/orgrt/approvals.d.ts +26 -2
  135. package/dist/src/orgrt/approvals.d.ts.map +1 -1
  136. package/dist/src/orgrt/approvals.js +67 -7
  137. package/dist/src/orgrt/approvals.js.map +1 -1
  138. package/dist/src/orgrt/broker.d.ts +21 -2
  139. package/dist/src/orgrt/broker.d.ts.map +1 -1
  140. package/dist/src/orgrt/broker.js +56 -8
  141. package/dist/src/orgrt/broker.js.map +1 -1
  142. package/dist/src/orgrt/bus.d.ts +8 -0
  143. package/dist/src/orgrt/bus.d.ts.map +1 -1
  144. package/dist/src/orgrt/bus.js +27 -0
  145. package/dist/src/orgrt/bus.js.map +1 -1
  146. package/dist/src/orgrt/checkpoint-ops.d.ts.map +1 -1
  147. package/dist/src/orgrt/checkpoint-ops.js +15 -5
  148. package/dist/src/orgrt/checkpoint-ops.js.map +1 -1
  149. package/dist/src/orgrt/checkpoint.d.ts +42 -4
  150. package/dist/src/orgrt/checkpoint.d.ts.map +1 -1
  151. package/dist/src/orgrt/checkpoint.js +75 -4
  152. package/dist/src/orgrt/checkpoint.js.map +1 -1
  153. package/dist/src/orgrt/codex-runner.d.ts +1 -1
  154. package/dist/src/orgrt/codex-runner.d.ts.map +1 -1
  155. package/dist/src/orgrt/codex-runner.js +50 -23
  156. package/dist/src/orgrt/codex-runner.js.map +1 -1
  157. package/dist/src/orgrt/copilot-runner.d.ts +24 -2
  158. package/dist/src/orgrt/copilot-runner.d.ts.map +1 -1
  159. package/dist/src/orgrt/copilot-runner.js +257 -157
  160. package/dist/src/orgrt/copilot-runner.js.map +1 -1
  161. package/dist/src/orgrt/cross-org.d.ts +10 -3
  162. package/dist/src/orgrt/cross-org.d.ts.map +1 -1
  163. package/dist/src/orgrt/cross-org.js +225 -10
  164. package/dist/src/orgrt/cross-org.js.map +1 -1
  165. package/dist/src/orgrt/crush-runner.d.ts +22 -2
  166. package/dist/src/orgrt/crush-runner.d.ts.map +1 -1
  167. package/dist/src/orgrt/crush-runner.js +227 -120
  168. package/dist/src/orgrt/crush-runner.js.map +1 -1
  169. package/dist/src/orgrt/daemon.d.ts +77 -7
  170. package/dist/src/orgrt/daemon.d.ts.map +1 -1
  171. package/dist/src/orgrt/daemon.js +989 -385
  172. package/dist/src/orgrt/daemon.js.map +1 -1
  173. package/dist/src/orgrt/decisions.d.ts +2 -2
  174. package/dist/src/orgrt/decisions.d.ts.map +1 -1
  175. package/dist/src/orgrt/decisions.js +90 -18
  176. package/dist/src/orgrt/decisions.js.map +1 -1
  177. package/dist/src/orgrt/grok-runner.d.ts +29 -3
  178. package/dist/src/orgrt/grok-runner.d.ts.map +1 -1
  179. package/dist/src/orgrt/grok-runner.js +286 -150
  180. package/dist/src/orgrt/grok-runner.js.map +1 -1
  181. package/dist/src/orgrt/kimicode-runner.d.ts +5 -5
  182. package/dist/src/orgrt/kimicode-runner.d.ts.map +1 -1
  183. package/dist/src/orgrt/kimicode-runner.js +53 -32
  184. package/dist/src/orgrt/kimicode-runner.js.map +1 -1
  185. package/dist/src/orgrt/mailbox.d.ts +15 -0
  186. package/dist/src/orgrt/mailbox.d.ts.map +1 -1
  187. package/dist/src/orgrt/mailbox.js +29 -1
  188. package/dist/src/orgrt/mailbox.js.map +1 -1
  189. package/dist/src/orgrt/migrate.d.ts.map +1 -1
  190. package/dist/src/orgrt/migrate.js +8 -5
  191. package/dist/src/orgrt/migrate.js.map +1 -1
  192. package/dist/src/orgrt/opencode-runner.d.ts +1 -1
  193. package/dist/src/orgrt/opencode-runner.d.ts.map +1 -1
  194. package/dist/src/orgrt/opencode-runner.js +29 -3
  195. package/dist/src/orgrt/opencode-runner.js.map +1 -1
  196. package/dist/src/orgrt/org-memory.d.ts +19 -3
  197. package/dist/src/orgrt/org-memory.d.ts.map +1 -1
  198. package/dist/src/orgrt/org-memory.js +110 -38
  199. package/dist/src/orgrt/org-memory.js.map +1 -1
  200. package/dist/src/orgrt/pi-rpc-runner.d.ts +3 -1
  201. package/dist/src/orgrt/pi-rpc-runner.d.ts.map +1 -1
  202. package/dist/src/orgrt/pi-rpc-runner.js +35 -3
  203. package/dist/src/orgrt/pi-rpc-runner.js.map +1 -1
  204. package/dist/src/orgrt/pi-runner.d.ts +25 -2
  205. package/dist/src/orgrt/pi-runner.d.ts.map +1 -1
  206. package/dist/src/orgrt/pi-runner.js +271 -152
  207. package/dist/src/orgrt/pi-runner.js.map +1 -1
  208. package/dist/src/orgrt/policy.d.ts +1 -0
  209. package/dist/src/orgrt/policy.d.ts.map +1 -1
  210. package/dist/src/orgrt/policy.js +199 -39
  211. package/dist/src/orgrt/policy.js.map +1 -1
  212. package/dist/src/orgrt/provider.d.ts +4 -0
  213. package/dist/src/orgrt/provider.d.ts.map +1 -1
  214. package/dist/src/orgrt/provider.js +16 -0
  215. package/dist/src/orgrt/provider.js.map +1 -1
  216. package/dist/src/orgrt/qwen-rpc-runner.d.ts +3 -1
  217. package/dist/src/orgrt/qwen-rpc-runner.d.ts.map +1 -1
  218. package/dist/src/orgrt/qwen-rpc-runner.js +35 -3
  219. package/dist/src/orgrt/qwen-rpc-runner.js.map +1 -1
  220. package/dist/src/orgrt/qwen-runner.d.ts +30 -3
  221. package/dist/src/orgrt/qwen-runner.d.ts.map +1 -1
  222. package/dist/src/orgrt/qwen-runner.js +282 -142
  223. package/dist/src/orgrt/qwen-runner.js.map +1 -1
  224. package/dist/src/orgrt/role-slot.d.ts +88 -0
  225. package/dist/src/orgrt/role-slot.d.ts.map +1 -0
  226. package/dist/src/orgrt/role-slot.js +133 -0
  227. package/dist/src/orgrt/role-slot.js.map +1 -0
  228. package/dist/src/orgrt/runtime-options.d.ts +17 -0
  229. package/dist/src/orgrt/runtime-options.d.ts.map +1 -0
  230. package/dist/src/orgrt/runtime-options.js +32 -0
  231. package/dist/src/orgrt/runtime-options.js.map +1 -0
  232. package/dist/src/orgrt/scheduler-integration.d.ts +11 -0
  233. package/dist/src/orgrt/scheduler-integration.d.ts.map +1 -1
  234. package/dist/src/orgrt/scheduler-integration.js +75 -17
  235. package/dist/src/orgrt/scheduler-integration.js.map +1 -1
  236. package/dist/src/orgrt/scheduler.d.ts +4 -0
  237. package/dist/src/orgrt/scheduler.d.ts.map +1 -1
  238. package/dist/src/orgrt/scheduler.js +7 -1
  239. package/dist/src/orgrt/scheduler.js.map +1 -1
  240. package/dist/src/orgrt/server.d.ts +8 -3
  241. package/dist/src/orgrt/server.d.ts.map +1 -1
  242. package/dist/src/orgrt/server.js +48 -13
  243. package/dist/src/orgrt/server.js.map +1 -1
  244. package/dist/src/orgrt/session.d.ts +26 -2
  245. package/dist/src/orgrt/session.d.ts.map +1 -1
  246. package/dist/src/orgrt/session.js +99 -5
  247. package/dist/src/orgrt/session.js.map +1 -1
  248. package/dist/src/orgrt/task-dag.d.ts +5 -0
  249. package/dist/src/orgrt/task-dag.d.ts.map +1 -1
  250. package/dist/src/orgrt/task-dag.js +41 -0
  251. package/dist/src/orgrt/task-dag.js.map +1 -1
  252. package/dist/src/orgrt/test-loop.js +2 -2
  253. package/dist/src/orgrt/test-loop.js.map +1 -1
  254. package/dist/src/orgrt/types.d.ts +14 -2
  255. package/dist/src/orgrt/types.d.ts.map +1 -1
  256. package/dist/src/orgrt/types.js +15 -1
  257. package/dist/src/orgrt/types.js.map +1 -1
  258. package/dist/src/orgrt/vercel-runner.d.ts.map +1 -1
  259. package/dist/src/orgrt/vercel-runner.js +4 -0
  260. package/dist/src/orgrt/vercel-runner.js.map +1 -1
  261. package/dist/src/ui/routes-org.mjs +27 -7
  262. package/dist/src/ui/server.mjs +82 -48
  263. package/dist/tsconfig.tsbuildinfo +1 -1
  264. package/package.json +2 -1
  265. package/dist/src/ui/data/mastermind-sessions.json +0 -1
@@ -1,22 +1,29 @@
1
1
  import { getProjectCwd } from '../types.js';
2
- import { _isValidDb, applyPprRerank, computeCommitsBehind, getDbPath, preferSymbolHits, STALENESS_THRESHOLD, text, triggerBackgroundBuildIfNeeded, } from './shared.js';
2
+ import { _isValidDb, computeCommitsBehind, expandWithNeighbors, getDbPath, preferSymbolHits, STALENESS_THRESHOLD, text, triggerBackgroundBuildIfNeeded, } from './shared.js';
3
3
  // ── monograph_query ───────────────────────────────────────────────────────────
4
4
  export const monographQueryTool = {
5
5
  name: 'monograph_query',
6
- description: 'BM25 keyword search across the code knowledge graph. When MONOGRAPH_EMBEDDINGS=true uses hybrid BM25+vector ranking (RRF). Returns nodes with file path and line number.',
6
+ description: 'Lexical keyword search across the code knowledge graph. mode=hybrid (default) ranks by ' +
7
+ 'BM25 + LIKE fallback + subsequence fuzzy + node-type bonus; mode=bm25 is BM25 only. ' +
8
+ 'Higher score = better match. Returns nodes with file path and line number.',
7
9
  inputSchema: {
8
10
  type: 'object',
9
11
  properties: {
10
12
  query: { type: 'string', description: 'Search terms' },
11
13
  limit: { type: 'number', description: 'Max results (default 20)' },
12
14
  label: { type: 'string', description: 'Filter by node type: Class, Function, Method, etc.' },
13
- rerank: {
15
+ mode: {
16
+ type: 'string',
17
+ enum: ['bm25', 'hybrid'],
18
+ description: 'Retrieval mode (default: hybrid)',
19
+ },
20
+ expandNeighbors: {
14
21
  type: 'boolean',
15
- description: 'Apply HippoRAG-style PPR graph reranking to boost neighbors of top hits (default: true)',
22
+ description: 'Add one hop of outgoing graph neighbors as supporting context, listed separately from direct matches (default: true)',
16
23
  },
17
24
  damping: {
18
25
  type: 'number',
19
- description: 'PPR damping factor when rerank=true (0-1, default 0.5)',
26
+ description: 'Neighbor-boost factor when expandNeighbors=true — a neighbor inherits this fraction of the hit score (0-1, default 0.5)',
20
27
  },
21
28
  tokenBudget: {
22
29
  type: 'number',
@@ -29,18 +36,17 @@ export const monographQueryTool = {
29
36
  const dbPath = getDbPath();
30
37
  if (!_isValidDb(dbPath))
31
38
  return text('Monograph index not built yet. Run monograph_build first.');
32
- const { openDb, closeDb, ftsSearch } = await import('@monoes/monograph');
33
- const { bm25Query } = await import('@monoes/monograph');
39
+ const { openDb, closeDb, searchGraph } = await import('@monoes/monograph');
34
40
  const db = openDb(dbPath);
35
41
  try {
36
- // Cap limit: passed directly to SQLite queries and bm25Query; an
42
+ // Cap limit: passed directly to SQLite queries and searchGraph; an
37
43
  // unlimited value saturates memory with rows.
38
44
  const MAX_QUERY_LIMIT = 1_000;
39
45
  const rawLimit = input.limit ?? 20;
40
46
  const limit = Number.isFinite(rawLimit) && rawLimit > 0
41
47
  ? Math.min(Math.floor(rawLimit), MAX_QUERY_LIMIT)
42
48
  : 20;
43
- // Cap query: passed to FTS5 and bm25Query; very long queries waste
49
+ // Cap query: passed to FTS5 via searchGraph; very long queries waste
44
50
  // parse time and can stress the FTS tokenizer.
45
51
  const MAX_MONOGRAPH_QUERY_LEN = 16 * 1024;
46
52
  const rawQuery = input.query;
@@ -48,47 +54,68 @@ export const monographQueryTool = {
48
54
  ? rawQuery.slice(0, MAX_MONOGRAPH_QUERY_LEN)
49
55
  : rawQuery;
50
56
  const label = input.label;
51
- const rerank = input.rerank ?? true;
52
- const damping = input.damping ?? 0.5;
57
+ const mode = input.mode === 'bm25' ? 'bm25' : 'hybrid';
58
+ const expandNeighbors = input.expandNeighbors ?? true;
59
+ const damping = input.damping;
53
60
  const tokenBudget = input.tokenBudget;
54
- // P2-9/P2-10: Post-processing for token budget and reason annotations.
55
- // Applied after all search paths below via a shared helper.
56
- function annotateAndPrune(results) {
57
- const lines = results.map((r) => {
61
+ // P2-9/P2-10: render results, prune to the token budget, and separate
62
+ // direct matches from graph-derived supporting context. A node whose
63
+ // displayed score was raised by a neighbor is never labelled a plain
64
+ // lexical match — that overstated how well it matched the query.
65
+ function render(results) {
66
+ const rendered = results.map((r) => {
58
67
  const loc = r.filePath
59
68
  ? r.startLine != null
60
69
  ? `${r.filePath}:${r.startLine}`
61
70
  : r.filePath
62
71
  : '';
63
- const tag = r.boostedByNeighbors ? ' [PPR-boosted]' : '';
64
72
  // P2-10: Agentic reason field — deterministic template, no LLM call.
65
- const reasonParts = [];
66
- reasonParts.push(`score: ${r.score.toFixed(3)}`);
67
- if (r.boostedByNeighbors)
68
- reasonParts.push('boosted by graph neighbors');
69
- else
70
- reasonParts.push('direct BM25 match');
71
- const reason = `reason: ${reasonParts.join(', ')}`;
72
- return `[${r.label}] ${r.name} ${loc} (${reason})${tag}`;
73
+ const why = r.isSupportingContext
74
+ ? 'reached via graph neighbor'
75
+ : r.scoreRaisedByNeighbors
76
+ ? `direct ${mode} match, score raised by graph neighbors`
77
+ : `direct ${mode} match`;
78
+ return {
79
+ node: r,
80
+ line: `[${r.label}] ${r.name} ${loc} (score: ${r.score.toFixed(3)}, ${why})`,
81
+ };
73
82
  });
74
- // P2-9: Token-budget pruning — ~4 chars per token heuristic.
83
+ // P2-9: Token-budget pruning — ~4 chars per token heuristic. Prune in
84
+ // score order (lowest dropped first) before grouping into sections.
85
+ let kept = rendered;
86
+ let prunedCount = 0;
75
87
  if (tokenBudget && tokenBudget > 0) {
76
88
  let totalChars = 0;
77
- const pruned = [];
78
- for (const line of lines) {
79
- // already sorted by score desc
80
- const lineChars = line.length + 1; // +1 for newline
89
+ const fit = [];
90
+ for (const entry of rendered) {
91
+ const lineChars = entry.line.length + 1; // +1 for newline
81
92
  if (totalChars + lineChars > tokenBudget * 4)
82
93
  break;
83
94
  totalChars += lineChars;
84
- pruned.push(line);
85
- }
86
- if (pruned.length < lines.length) {
87
- pruned.push(`(${lines.length - pruned.length} more results pruned to fit token budget of ${tokenBudget})`);
95
+ fit.push(entry);
88
96
  }
89
- return pruned;
97
+ prunedCount = rendered.length - fit.length;
98
+ kept = fit;
99
+ }
100
+ const direct = kept.filter((e) => !e.node.isSupportingContext);
101
+ const supporting = kept.filter((e) => e.node.isSupportingContext);
102
+ const out = [];
103
+ if (direct.length > 0) {
104
+ out.push(`Direct matches (${direct.length}):`);
105
+ for (const e of direct)
106
+ out.push(` ${e.line}`);
107
+ }
108
+ if (supporting.length > 0) {
109
+ if (out.length > 0)
110
+ out.push('');
111
+ out.push(`Supporting context — graph neighbors, not query matches (${supporting.length}):`);
112
+ for (const e of supporting)
113
+ out.push(` ${e.line}`);
90
114
  }
91
- return lines;
115
+ if (prunedCount > 0) {
116
+ out.push(`(${prunedCount} more results pruned to fit token budget of ${tokenBudget})`);
117
+ }
118
+ return out;
92
119
  }
93
120
  const zeroResultHint = /\s/.test(query) && !/[A-Z]/.test(query.replace(/\s+/g, '').slice(1))
94
121
  ? ' Hint: monograph indexes identifiers and filenames — try camelCase/PascalCase (e.g. "AgentSpawn") or a filename instead of a phrase.'
@@ -102,59 +129,30 @@ export const monographQueryTool = {
102
129
  const triggered = triggerBackgroundBuildIfNeeded(repoPath, staleness.commitsBehind);
103
130
  stalenessNote = `\n⚠ Index is ${staleness.commitsBehind} commit(s) behind HEAD${triggered ? ' — rebuild triggered' : ''}.`;
104
131
  }
105
- if (process.env.MONOGRAPH_EMBEDDINGS === 'true') {
106
- const results = await bm25Query(db, query, { limit: rerank ? limit * 2 : limit, label });
107
- if (results.length === 0)
108
- return text(`No results found.${zeroResultHint}${stalenessNote}`);
109
- if (rerank) {
110
- const seeds = results.map((r) => ({
111
- id: r.id,
112
- name: r.name ?? r.id,
113
- label: r.label ?? '?',
114
- filePath: r.filePath ?? '',
115
- startLine: r.startLine ?? null,
116
- score: r.score,
117
- }));
118
- const reranked = applyPprRerank(db, seeds, damping, limit);
119
- const lines = annotateAndPrune(reranked);
120
- return text(lines.join('\n') + stalenessNote);
121
- }
122
- const lines = annotateAndPrune(results.map((r) => ({
123
- id: r.id,
124
- label: r.label ?? '?',
125
- name: r.name ?? r.id,
126
- filePath: r.filePath ?? '',
127
- startLine: r.startLine ?? null,
128
- score: r.score,
129
- boostedByNeighbors: false,
130
- })));
131
- return text(lines.join('\n') + stalenessNote);
132
- }
133
- const results = ftsSearch(db, query, rerank ? limit * 2 : limit, label);
132
+ // One retrieval path, shared with the package-level monograph_query tool.
133
+ // searchGraph returns monograph's single score convention (higher is
134
+ // better, never negative), so nothing here has to know about FTS5 rank.
135
+ const results = searchGraph(db, query, {
136
+ limit: expandNeighbors ? limit * 2 : limit,
137
+ label,
138
+ mode,
139
+ });
134
140
  if (results.length === 0)
135
141
  return text(`No results found.${zeroResultHint}${stalenessNote}`);
136
- if (rerank) {
137
- const seeds = results.map((r) => ({
138
- id: r.id,
139
- name: r.name,
140
- label: r.label,
141
- filePath: r.filePath ?? '',
142
- startLine: r.startLine ?? null,
143
- score: Math.abs(r.rank),
144
- }));
145
- const reranked = applyPprRerank(db, seeds, damping, limit);
146
- const lines = annotateAndPrune(reranked);
147
- return text(lines.join('\n') + stalenessNote);
148
- }
149
- const lines = annotateAndPrune(results.map((r) => ({
150
- label: r.label,
151
- name: r.name,
142
+ const seeds = results.map((r) => ({
143
+ id: r.id,
144
+ name: r.name ?? r.id,
145
+ label: r.label ?? '?',
152
146
  filePath: r.filePath ?? '',
153
147
  startLine: r.startLine ?? null,
154
- score: Math.abs(r.rank),
155
- boostedByNeighbors: false,
156
- })));
157
- return text(lines.join('\n') + stalenessNote);
148
+ score: r.relevance,
149
+ }));
150
+ const ranked = expandNeighbors
151
+ ? expandWithNeighbors(db, seeds, damping ?? 0.5, limit, { label })
152
+ : seeds
153
+ .slice(0, limit)
154
+ .map((s) => ({ ...s, isSupportingContext: false, scoreRaisedByNeighbors: false }));
155
+ return text(render(ranked).join('\n') + stalenessNote);
158
156
  }
159
157
  finally {
160
158
  closeDb(db);
@@ -197,12 +195,11 @@ export const monographSuggestTool = {
197
195
  const dbPath = getDbPath();
198
196
  if (!_isValidDb(dbPath))
199
197
  return text(`Monograph index not built yet. Run monograph_build first.${stalenessAnnotation}`);
200
- const { openDb, closeDb } = await import('@monoes/monograph');
201
- const { bm25Query } = await import('@monoes/monograph');
198
+ const { openDb, closeDb, searchGraph } = await import('@monoes/monograph');
202
199
  const db = openDb(dbPath);
203
200
  try {
204
201
  // Cap limit and task: limit is passed directly to SQL LIMIT clause;
205
- // task is forwarded to bm25Query (embedding path) or FTS.
202
+ // task is forwarded to searchGraph.
206
203
  const MAX_SUGGEST_LIMIT = 1_000;
207
204
  const MAX_SUGGEST_TASK_LEN = 16 * 1024;
208
205
  const rawSuggestLimit = input.limit ?? 10;
@@ -229,15 +226,14 @@ export const monographSuggestTool = {
229
226
  const locHint = srcLoc ? ` [${srcLoc}${tgtLoc ? ` → ${tgtLoc}` : ''}]` : '';
230
227
  return `Why does ${r.src} ${r.relation.toLowerCase()} ${r.tgt}? (${r.confidence})${locHint}`;
231
228
  };
232
- // When a task is provided, use BM25/FTS5 (via bm25Query) to find
229
+ // When a task is provided, use the shared retrieval service to find
233
230
  // relevant nodes and restrict the edge-level questions to them. This
234
- // used to be gated behind MONOGRAPH_EMBEDDINGS=true, but bm25Query
235
- // is BM25-only now (the embeddings table stayed empty in practice —
236
- // see hybrid-query.ts) so the env var gated nothing and just left this
231
+ // used to be gated behind MONOGRAPH_EMBEDDINGS=true, which gated
232
+ // nothing once vector retrieval was removed and just left this
237
233
  // better-ranked path off unless a caller happened to know about it.
238
234
  let hitIds = [];
239
235
  if (task) {
240
- const hits = await bm25Query(db, task, { limit: 20 });
236
+ const hits = searchGraph(db, task, { limit: 20 });
241
237
  const { SYMBOL_NODE_LABELS } = await import('@monoes/monograph');
242
238
  const relevantHits = preferSymbolHits(hits, SYMBOL_NODE_LABELS);
243
239
  hitIds = [...new Set(relevantHits.map((h) => h.id))];
@@ -348,18 +344,26 @@ export const monographContextTool = {
348
344
  // ── monograph_neighbors ───────────────────────────────────────────────────────
349
345
  export const monographNeighborsTool = {
350
346
  name: 'monograph_neighbors',
351
- description: 'Show all directly connected nodes for a given symbol — outbound and optionally inbound edges, with relation types.',
347
+ description: 'Show all directly connected nodes for a given symbol — outbound and optionally inbound edges, with relation types. When a name matches several definitions the candidates are listed instead of one being picked; re-query with nodeId or filePath. Reports the true neighbor total whenever the result is truncated.',
352
348
  inputSchema: {
353
349
  type: 'object',
354
350
  properties: {
355
351
  name: { type: 'string', description: 'Symbol name to look up' },
352
+ nodeId: {
353
+ type: 'string',
354
+ description: 'Canonical node id — unambiguous, preferred when known',
355
+ },
356
+ filePath: {
357
+ type: 'string',
358
+ description: 'Disambiguate a name by file path (exact, or a trailing fragment)',
359
+ },
356
360
  relationFilter: {
357
361
  type: 'string',
358
362
  description: 'Filter by relation type, e.g. IMPORTS, CALLS',
359
363
  },
360
364
  includeInbound: { type: 'boolean', description: 'Include inbound edges (default: false)' },
365
+ limit: { type: 'number', description: 'Max neighbors per direction (default 50, max 500)' },
361
366
  },
362
- required: ['name'],
363
367
  },
364
368
  handler: async (input) => {
365
369
  const { openDb, closeDb, getMonographNeighbors } = await import('@monoes/monograph');
@@ -367,11 +371,22 @@ export const monographNeighborsTool = {
367
371
  try {
368
372
  const result = getMonographNeighbors(db, {
369
373
  name: input.name,
374
+ nodeId: input.nodeId,
375
+ filePath: input.filePath,
370
376
  relationFilter: input.relationFilter,
371
377
  includeInbound: input.includeInbound ?? false,
378
+ limit: input.limit,
372
379
  });
380
+ const target = (input.nodeId ?? input.name ?? '(no name or nodeId given)');
381
+ if (result.ambiguous) {
382
+ // Answering confidently about the wrong definition is worse than asking.
383
+ return text([
384
+ `"${target}" matches ${result.candidates.length} nodes — re-run with nodeId (or filePath) to pick one:`,
385
+ ...result.candidates.map((c) => ` nodeId=${c.id} [${c.label}] ${c.name} ${c.filePath ?? '(no path)'}${c.startLine != null ? `:${c.startLine}` : ''}`),
386
+ ].join('\n'));
387
+ }
373
388
  if (!result.node)
374
- return text(`No node found with name: ${input.name}`);
389
+ return text(`No node found with name: ${target}`);
375
390
  const nodeFilePath = result.node.filePath ?? '';
376
391
  const nodeStartLine = result.node.startLine ?? result.node.start_line;
377
392
  const nodeLoc = nodeFilePath
@@ -381,7 +396,9 @@ export const monographNeighborsTool = {
381
396
  : '';
382
397
  const lines = [
383
398
  `[${result.node.label}] ${result.node.name} ${nodeLoc}`,
384
- `Neighbors: ${result.neighbors.length}`,
399
+ result.truncated
400
+ ? `Neighbors: ${result.neighbors.length} of ${result.totalNeighbors} (truncated at limit ${result.limit} — raise limit or filter by relation to see the rest)`
401
+ : `Neighbors: ${result.neighbors.length} (complete)`,
385
402
  '',
386
403
  ...result.neighbors.map((n) => {
387
404
  const fp = n.node.filePath ?? n.node.file_path ?? '';
@@ -1 +1 @@
1
- {"version":3,"file":"query-tools.js","sourceRoot":"","sources":["../../../../src/mcp-tools/monograph/query-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-tools.js","sourceRoot":"","sources":["../../../../src/mcp-tools/monograph/query-tools.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,8 @@ export declare function text(t: string): {
14
14
  text: string;
15
15
  }[];
16
16
  };
17
- export type PprScoredNode = {
17
+ /** A direct search hit used to seed the expansion. */
18
+ export type SeedNode = {
18
19
  id: string;
19
20
  name: string;
20
21
  label: string;
@@ -22,9 +23,41 @@ export type PprScoredNode = {
22
23
  startLine: number | null;
23
24
  score: number;
24
25
  };
25
- export declare function applyPprRerank(db: any, seedNodes: PprScoredNode[], damping: number, maxResults: number): Array<PprScoredNode & {
26
- boostedByNeighbors: boolean;
27
- }>;
26
+ /** @deprecated Use {@link SeedNode}. */
27
+ export type PprScoredNode = SeedNode;
28
+ export type ExpandedNode = SeedNode & {
29
+ /**
30
+ * True when the node was NOT a direct search hit — it is in the result set
31
+ * only because a direct hit points at it. Supporting context, not a match.
32
+ */
33
+ isSupportingContext: boolean;
34
+ /**
35
+ * True when the displayed score is higher than the node's own direct-match
36
+ * score because a neighbor raised it. A node with this set must not be
37
+ * reported as a plain lexical match — its rank is not purely its own.
38
+ */
39
+ scoreRaisedByNeighbors: boolean;
40
+ };
41
+ /** Hard caps so expansion stays bounded regardless of graph shape. */
42
+ export declare const MAX_EXPANSION_EDGES = 5000;
43
+ export declare const MAX_SUPPORTING_NODES = 200;
44
+ export declare const DEFAULT_EXPANSION_DAMPING = 0.5;
45
+ /**
46
+ * Coerce a caller-supplied damping factor into [0, 1].
47
+ * Non-finite input (NaN, Infinity, a non-number from an MCP client) falls back
48
+ * to the default rather than silently poisoning every propagated score.
49
+ */
50
+ export declare function normalizeExpansionDamping(damping: unknown): number;
51
+ /**
52
+ * Expand one outgoing hop from `seedNodes` and merge the neighbors in as
53
+ * supporting context.
54
+ *
55
+ * `options.label`, when set, is reapplied AFTER expansion: a filtered query
56
+ * must not return an off-label node just because an on-label hit points at it.
57
+ */
58
+ export declare function expandWithNeighbors(db: any, seedNodes: SeedNode[], damping: number, maxResults: number, options?: {
59
+ label?: string;
60
+ }): ExpandedNode[];
28
61
  /**
29
62
  * Compute how many commits the index is behind HEAD.
30
63
  * Returns { commitsBehind, lastCommit } — or null if the index has never been
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/mcp-tools/monograph/shared.ts"],"names":[],"mappings":"AAcA,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAM7C;AACD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,CA2B3D;AAED,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM;;cACD,MAAM;;;EAClC;AAID,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AACF,wBAAgB,cAAc,CAC5B,EAAE,EAAE,GAAG,EACP,SAAS,EAAE,aAAa,EAAE,EAC1B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACjB,KAAK,CAAC,aAAa,GAAG;IAAE,kBAAkB,EAAE,OAAO,CAAA;CAAE,CAAC,CA8FxD;AAKD;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CA2C/D;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,SAAS,SAA0B,GAClC,OAAO,CAcT;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,EAC1D,IAAI,EAAE,CAAC,EAAE,EACT,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,GAChC,CAAC,EAAE,CAGL"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/mcp-tools/monograph/shared.ts"],"names":[],"mappings":"AAcA,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAM7C;AACD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,CA2B3D;AAED,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM;;cACD,MAAM;;;EAClC;AAeD,sDAAsD;AACtD,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,wCAAwC;AACxC,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC;AAErC,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG;IACpC;;;OAGG;IACH,mBAAmB,EAAE,OAAO,CAAC;IAC7B;;;;OAIG;IACH,sBAAsB,EAAE,OAAO,CAAC;CACjC,CAAC;AAEF,sEAAsE;AACtE,eAAO,MAAM,mBAAmB,OAAQ,CAAC;AACzC,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAE7C;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAGlE;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,GAAG,EACP,SAAS,EAAE,QAAQ,EAAE,EACrB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAC/B,YAAY,EAAE,CA8FhB;AAKD;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CA2C/D;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,SAAS,SAA0B,GAClC,OAAO,CAiBT;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,EAC1D,IAAI,EAAE,CAAC,EAAE,EACT,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,GAChC,CAAC,EAAE,CAGL"}