@roarpeng/graphflow 1.0.4 → 1.0.9

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 (137) hide show
  1. package/AGENTS.md +8 -0
  2. package/CHANGELOG.md +25 -0
  3. package/CLAUDE.md +2 -1
  4. package/README.md +16 -11
  5. package/dist/agents/insight.d.ts +7 -0
  6. package/dist/agents/insight.d.ts.map +1 -1
  7. package/dist/agents/insight.js +44 -0
  8. package/dist/agents/insight.js.map +1 -1
  9. package/dist/config/defaults.d.ts.map +1 -1
  10. package/dist/config/defaults.js +6 -1
  11. package/dist/config/defaults.js.map +1 -1
  12. package/dist/config/include-extensions.d.ts +17 -0
  13. package/dist/config/include-extensions.d.ts.map +1 -0
  14. package/dist/config/include-extensions.js +50 -0
  15. package/dist/config/include-extensions.js.map +1 -0
  16. package/dist/config/llm-availability.d.ts +7 -0
  17. package/dist/config/llm-availability.d.ts.map +1 -0
  18. package/dist/config/llm-availability.js +37 -0
  19. package/dist/config/llm-availability.js.map +1 -0
  20. package/dist/config/loader.d.ts.map +1 -1
  21. package/dist/config/loader.js +2 -8
  22. package/dist/config/loader.js.map +1 -1
  23. package/dist/config/scaffold.d.ts +9 -0
  24. package/dist/config/scaffold.d.ts.map +1 -1
  25. package/dist/config/scaffold.js +28 -0
  26. package/dist/config/scaffold.js.map +1 -1
  27. package/dist/config/schema.d.ts +1 -1
  28. package/dist/config/schema.d.ts.map +1 -1
  29. package/dist/config/workspace-packages.d.ts +8 -0
  30. package/dist/config/workspace-packages.d.ts.map +1 -0
  31. package/dist/config/workspace-packages.js +157 -0
  32. package/dist/config/workspace-packages.js.map +1 -0
  33. package/dist/core/agent-delegation.d.ts +24 -0
  34. package/dist/core/agent-delegation.d.ts.map +1 -0
  35. package/dist/core/agent-delegation.js +98 -0
  36. package/dist/core/agent-delegation.js.map +1 -0
  37. package/dist/core/merge-agent-insight.d.ts +20 -0
  38. package/dist/core/merge-agent-insight.d.ts.map +1 -0
  39. package/dist/core/merge-agent-insight.js +167 -0
  40. package/dist/core/merge-agent-insight.js.map +1 -0
  41. package/dist/core/orchestrator.d.ts +3 -1
  42. package/dist/core/orchestrator.d.ts.map +1 -1
  43. package/dist/core/orchestrator.js +66 -7
  44. package/dist/core/orchestrator.js.map +1 -1
  45. package/dist/core/submit-agent-insight.d.ts +33 -0
  46. package/dist/core/submit-agent-insight.d.ts.map +1 -0
  47. package/dist/core/submit-agent-insight.js +88 -0
  48. package/dist/core/submit-agent-insight.js.map +1 -0
  49. package/dist/core/types.d.ts +10 -0
  50. package/dist/core/types.d.ts.map +1 -1
  51. package/dist/graph/context-slicer.d.ts.map +1 -1
  52. package/dist/graph/context-slicer.js +92 -0
  53. package/dist/graph/context-slicer.js.map +1 -1
  54. package/dist/graph/file-indexer.d.ts +7 -0
  55. package/dist/graph/file-indexer.d.ts.map +1 -1
  56. package/dist/graph/file-indexer.js +23 -3
  57. package/dist/graph/file-indexer.js.map +1 -1
  58. package/dist/graph/language-indexers/c-cpp.d.ts.map +1 -1
  59. package/dist/graph/language-indexers/c-cpp.js +10 -2
  60. package/dist/graph/language-indexers/c-cpp.js.map +1 -1
  61. package/dist/graph/language-indexers/index.d.ts.map +1 -1
  62. package/dist/graph/language-indexers/index.js +4 -0
  63. package/dist/graph/language-indexers/index.js.map +1 -1
  64. package/dist/graph/language-indexers/kotlin.d.ts +8 -0
  65. package/dist/graph/language-indexers/kotlin.d.ts.map +1 -0
  66. package/dist/graph/language-indexers/kotlin.js +193 -0
  67. package/dist/graph/language-indexers/kotlin.js.map +1 -0
  68. package/dist/graph/language-indexers/swift.d.ts +8 -0
  69. package/dist/graph/language-indexers/swift.d.ts.map +1 -0
  70. package/dist/graph/language-indexers/swift.js +156 -0
  71. package/dist/graph/language-indexers/swift.js.map +1 -0
  72. package/dist/graph/language-indexers/tree-sitter-loader.d.ts +6 -1
  73. package/dist/graph/language-indexers/tree-sitter-loader.d.ts.map +1 -1
  74. package/dist/graph/language-indexers/tree-sitter-loader.js +49 -52
  75. package/dist/graph/language-indexers/tree-sitter-loader.js.map +1 -1
  76. package/dist/graph/snapshot-view.d.ts +10 -3
  77. package/dist/graph/snapshot-view.d.ts.map +1 -1
  78. package/dist/graph/snapshot-view.js +76 -12
  79. package/dist/graph/snapshot-view.js.map +1 -1
  80. package/dist/index.d.ts +4 -1
  81. package/dist/index.d.ts.map +1 -1
  82. package/dist/index.js +11 -1
  83. package/dist/index.js.map +1 -1
  84. package/dist/learning/skill-flywheel.d.ts.map +1 -1
  85. package/dist/learning/skill-flywheel.js +57 -13
  86. package/dist/learning/skill-flywheel.js.map +1 -1
  87. package/dist/surfaces/cli/index.js +11 -1
  88. package/dist/surfaces/cli/index.js.map +1 -1
  89. package/dist/surfaces/cli/init.d.ts +7 -0
  90. package/dist/surfaces/cli/init.d.ts.map +1 -1
  91. package/dist/surfaces/cli/init.js +121 -7
  92. package/dist/surfaces/cli/init.js.map +1 -1
  93. package/dist/surfaces/cli/output.d.ts.map +1 -1
  94. package/dist/surfaces/cli/output.js +1 -0
  95. package/dist/surfaces/cli/output.js.map +1 -1
  96. package/dist/surfaces/cli/runtime/facade.d.ts +3 -1
  97. package/dist/surfaces/cli/runtime/facade.d.ts.map +1 -1
  98. package/dist/surfaces/cli/runtime/facade.js.map +1 -1
  99. package/dist/surfaces/cli/runtime/graph.d.ts.map +1 -1
  100. package/dist/surfaces/cli/runtime/graph.js +9 -1
  101. package/dist/surfaces/cli/runtime/graph.js.map +1 -1
  102. package/dist/surfaces/cli/runtime/routing.d.ts +10 -0
  103. package/dist/surfaces/cli/runtime/routing.d.ts.map +1 -1
  104. package/dist/surfaces/cli/runtime/routing.js +42 -3
  105. package/dist/surfaces/cli/runtime/routing.js.map +1 -1
  106. package/dist/surfaces/cli/runtime.d.ts +1 -1
  107. package/dist/surfaces/cli/runtime.d.ts.map +1 -1
  108. package/dist/surfaces/cli/runtime.js +3 -1
  109. package/dist/surfaces/cli/runtime.js.map +1 -1
  110. package/dist/surfaces/mcp/server.d.ts +6 -28
  111. package/dist/surfaces/mcp/server.d.ts.map +1 -1
  112. package/dist/surfaces/mcp/server.js +16 -433
  113. package/dist/surfaces/mcp/server.js.map +1 -1
  114. package/dist/surfaces/mcp/tool-definitions.d.ts +12 -0
  115. package/dist/surfaces/mcp/tool-definitions.d.ts.map +1 -0
  116. package/dist/surfaces/mcp/tool-definitions.js +278 -0
  117. package/dist/surfaces/mcp/tool-definitions.js.map +1 -0
  118. package/dist/surfaces/mcp/tool-handlers.d.ts +22 -0
  119. package/dist/surfaces/mcp/tool-handlers.d.ts.map +1 -0
  120. package/dist/surfaces/mcp/tool-handlers.js +174 -0
  121. package/dist/surfaces/mcp/tool-handlers.js.map +1 -0
  122. package/dist/surfaces/mcp/version.d.ts +3 -0
  123. package/dist/surfaces/mcp/version.d.ts.map +1 -0
  124. package/dist/surfaces/mcp/version.js +26 -0
  125. package/dist/surfaces/mcp/version.js.map +1 -0
  126. package/dist/surfaces/trae-skill/graphflow/SKILL.md +535 -0
  127. package/package.json +6 -4
  128. package/scripts/safe-postinstall.cjs +24 -4
  129. package/wasm/tree-sitter-c.wasm +0 -0
  130. package/wasm/tree-sitter-cpp.wasm +0 -0
  131. package/wasm/tree-sitter-go.wasm +0 -0
  132. package/wasm/tree-sitter-java.wasm +0 -0
  133. package/wasm/tree-sitter-kotlin.wasm +0 -0
  134. package/wasm/tree-sitter-python.wasm +0 -0
  135. package/wasm/tree-sitter-ruby.wasm +0 -0
  136. package/wasm/tree-sitter-rust.wasm +0 -0
  137. package/wasm/tree-sitter-swift.wasm +0 -0
@@ -1,359 +1,27 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.getToolDefinitions = getToolDefinitions;
4
+ exports.getToolDefinitions = void 0;
5
5
  exports.executeToolCall = executeToolCall;
6
6
  exports.createMcpServer = createMcpServer;
7
7
  exports.startStdioServer = startStdioServer;
8
8
  process.env.GRAPHFLOW_MCP_STDIO ??= "1";
9
9
  process.env.GRAPHFLOW_LOG_JSON ??= "1";
10
- const node_fs_1 = require("node:fs");
11
- const node_path_1 = require("node:path");
12
10
  const discover_workspace_js_1 = require("../../config/discover-workspace.js");
13
- const runtime_1 = require("../cli/runtime");
14
- const PACKAGE_VERSION = resolvePackageVersion();
15
- function getToolDefinitions() {
16
- return [
17
- {
18
- name: "graphflow_run",
19
- description: "Plan and package a task with compressed context, returning a structured execution descriptor for external coding agents (Cursor, Claude Code) to execute. Bridge mode by default.",
20
- inputSchema: {
21
- type: "object",
22
- properties: {
23
- task: { type: "string", description: "Task description to plan and package." },
24
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
25
- },
26
- required: ["task"],
27
- additionalProperties: false,
28
- },
29
- },
30
- {
31
- name: "graphflow_report_outcome",
32
- description: "Report the real execution outcome of a bridge-mode task back to GraphFlow. After an external coding agent executes the executionDescriptor returned by graphflow_run, it calls this tool to close the learning loop: updates the episode record and applies skill score updates that were skipped during delegation.",
33
- inputSchema: {
34
- type: "object",
35
- properties: {
36
- episodeId: { type: "string", description: "The episodeId returned by graphflow_run." },
37
- success: { type: "boolean", description: "Whether the external agent completed the task successfully." },
38
- lessons: {
39
- type: "array",
40
- items: { type: "string" },
41
- description: "Optional lessons learned (max 4).",
42
- },
43
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
44
- },
45
- required: ["episodeId", "success"],
46
- additionalProperties: false,
47
- },
48
- },
49
- {
50
- name: "graphflow_plan",
51
- description: "Generate brainstorming ideas and a DAG-style task plan for a request.",
52
- inputSchema: {
53
- type: "object",
54
- properties: {
55
- task: { type: "string", description: "Task description to plan." },
56
- },
57
- required: ["task"],
58
- additionalProperties: false,
59
- },
60
- },
61
- {
62
- name: "graphflow_preview_context",
63
- description: "Preview GraphFlow near-lossless context packaging for a query.",
64
- inputSchema: {
65
- type: "object",
66
- properties: {
67
- query: { type: "string", description: "Query to preview." },
68
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
69
- rootDir: { type: "string", description: "Optional workspace root override." },
70
- },
71
- required: ["query"],
72
- additionalProperties: false,
73
- },
74
- },
75
- {
76
- name: "graphflow_expand_anchor",
77
- description: "Expand a context anchor to its full content. Anchors returned by graphflow_preview_context are lightweight pointers (id/type/layer). This tool resolves an anchor id back to its full GraphNode content and, for Symbol nodes, reads the surrounding source code lines from the original file.",
78
- inputSchema: {
79
- type: "object",
80
- properties: {
81
- anchorId: { type: "string", description: "The anchor id returned by graphflow_preview_context (e.g. \"symbol:src/foo.ts:abc123\")." },
82
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
83
- rootDir: { type: "string", description: "Optional workspace root override." },
84
- },
85
- required: ["anchorId"],
86
- additionalProperties: false,
87
- },
88
- },
89
- {
90
- name: "graphflow_index",
91
- description: "Index a workspace path into the GraphFlow graph store.",
92
- inputSchema: {
93
- type: "object",
94
- properties: {
95
- rootDir: { type: "string", description: "Optional workspace path to index." },
96
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
97
- },
98
- additionalProperties: false,
99
- },
100
- },
101
- {
102
- name: "graphflow_index_file",
103
- description: "Incrementally index a single file into the graph store. Use this for file-watcher / onSave hooks to avoid full workspace re-walks. Skips unchanged files automatically.",
104
- inputSchema: {
105
- type: "object",
106
- properties: {
107
- filePath: { type: "string", description: "Absolute or workspace-relative path to the file to index." },
108
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
109
- },
110
- required: ["filePath"],
111
- additionalProperties: false,
112
- },
113
- },
114
- {
115
- name: "graphflow_rebuild",
116
- description: "Clear graph store and index cache, then perform a full workspace re-index.",
117
- inputSchema: {
118
- type: "object",
119
- properties: {
120
- rootDir: { type: "string", description: "Optional workspace path to index." },
121
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
122
- },
123
- additionalProperties: false,
124
- },
125
- },
126
- {
127
- name: "graphflow_enrich_graph",
128
- description: "Run semantic enrichment for pending Symbol nodes using configured network (cloud API) or local OpenBMB backend.",
129
- inputSchema: {
130
- type: "object",
131
- properties: {
132
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
133
- batchSize: { type: "number", description: "Optional enrichment batch size." },
134
- sleepMs: { type: "number", description: "Optional delay between node enrichments." },
135
- timeoutMs: { type: "number", description: "Optional provider timeout per enrichment call." },
136
- },
137
- additionalProperties: false,
138
- },
139
- },
140
- {
141
- name: "graphflow_model_download",
142
- description: "Download MiniCPM/OpenBMB model file to local path with optional checksum verification.",
143
- inputSchema: {
144
- type: "object",
145
- properties: {
146
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
147
- model: { type: "string", description: "Model name, default minicpm5-1b." },
148
- url: { type: "string", description: "Optional model URL override." },
149
- sha256: { type: "string", description: "Optional expected sha256 checksum." },
150
- targetPath: { type: "string", description: "Optional target file path." },
151
- force: { type: "boolean", description: "Force re-download even if file exists." },
152
- },
153
- additionalProperties: false,
154
- },
155
- },
156
- {
157
- name: "graphflow_inspect_graph",
158
- description: "Inspect current graph snapshot statistics and sample nodes/edges.",
159
- inputSchema: {
160
- type: "object",
161
- properties: {
162
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
163
- nodeLimit: { type: "number", description: "Max sample nodes." },
164
- edgeLimit: { type: "number", description: "Max sample edges." },
165
- rootDir: { type: "string", description: "Optional workspace root override." },
166
- },
167
- additionalProperties: false,
168
- },
169
- },
170
- {
171
- name: "graphflow_skill_insights",
172
- description: "Return top learned skill insights from the graph store.",
173
- inputSchema: {
174
- type: "object",
175
- properties: {
176
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
177
- limit: { type: "number", description: "Maximum skills to return." },
178
- rootDir: { type: "string", description: "Optional workspace root override." },
179
- },
180
- additionalProperties: false,
181
- },
182
- },
183
- {
184
- name: "graphflow_diagnose",
185
- description: "Return provider health, routing priority, and resolved planner/worker/validator models.",
186
- inputSchema: {
187
- type: "object",
188
- properties: {
189
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
190
- },
191
- additionalProperties: false,
192
- },
193
- },
194
- {
195
- name: "graphflow_export_artifact",
196
- description: "Export the current graph store to a portable gzip-compressed artifact file (analogous to codebase-memory-mcp's graph.db.zst) for team sharing. The artifact can be committed to git and imported by teammates to skip full workspace indexing. Supports --no-compress for plain JSON output.",
197
- inputSchema: {
198
- type: "object",
199
- properties: {
200
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
201
- outputPath: { type: "string", description: "Optional output path for the artifact file." },
202
- compression: { type: "string", description: "Compression mode: 'gzip' (default) or 'none'." },
203
- },
204
- additionalProperties: false,
205
- },
206
- },
207
- {
208
- name: "graphflow_import_artifact",
209
- description: "Import a graph artifact file into the current graph store. Teammates can use this after cloning a repo to skip the initial full workspace index.",
210
- inputSchema: {
211
- type: "object",
212
- properties: {
213
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
214
- inputPath: { type: "string", description: "Optional input path for the artifact file." },
215
- },
216
- additionalProperties: false,
217
- },
218
- },
219
- {
220
- name: "graphflow_stats",
221
- description: "Return cumulative token savings statistics, showing how much GraphFlow has reduced token consumption across all context preview and task runs.",
222
- inputSchema: {
223
- type: "object",
224
- properties: {
225
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
226
- rootDir: { type: "string", description: "Optional workspace root override." },
227
- },
228
- additionalProperties: false,
229
- },
230
- },
231
- {
232
- name: "graphflow_plan_insight",
233
- description: "Analyze a task through Six Thinking Hats (White/Red/Black/Yellow/Green/Blue) with automatic 5-Why chains on low-certainty observations, then generate a DAG-style plan informed by the insights. This runs a deeper analysis than graphflow_plan — use this for complex or ambiguous tasks where root-cause analysis is needed.",
234
- inputSchema: {
235
- type: "object",
236
- properties: {
237
- task: { type: "string", description: "Task description to analyze and plan." },
238
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
239
- },
240
- required: ["task"],
241
- additionalProperties: false,
242
- },
243
- },
244
- {
245
- name: "graphflow_metrics",
246
- description: "Return Prometheus-compatible metrics for GraphFlow observability: token savings, graph size, compression ratio, index cache stats. Output is Prometheus text exposition format.",
247
- inputSchema: {
248
- type: "object",
249
- properties: {
250
- configPath: { type: "string", description: "Optional path to graphflow.config.json." },
251
- rootDir: { type: "string", description: "Optional workspace root override." },
252
- },
253
- additionalProperties: false,
254
- },
255
- },
256
- ];
257
- }
258
- async function executeToolCall(call, _server = createMcpServer(), hooks) {
259
- const args = call.arguments ?? {};
260
- switch (call.name) {
261
- case "graphflow_run":
262
- return textResponse(await (0, runtime_1.runTaskResult)(readRequiredString(args.task, "task"), readOptionalString(args.configPath)));
263
- case "graphflow_report_outcome": {
264
- const lessonsRaw = args.lessons;
265
- const lessons = Array.isArray(lessonsRaw)
266
- ? lessonsRaw.filter((l) => typeof l === "string")
267
- : [];
268
- return textResponse(await (0, runtime_1.reportOutcome)(readRequiredString(args.episodeId, "episodeId"), typeof args.success === "boolean" ? args.success : false, lessons, readOptionalString(args.configPath)));
269
- }
270
- case "graphflow_plan":
271
- return textResponse((0, runtime_1.planAndBrainstormResult)(readRequiredString(args.task, "task")));
272
- case "graphflow_plan_insight":
273
- return textResponse(await (0, runtime_1.planInsightResult)(readRequiredString(args.task, "task"), readOptionalString(args.configPath)));
274
- case "graphflow_preview_context":
275
- return textResponse(await (0, runtime_1.previewContext)(readRequiredString(args.query, "query"), readOptionalString(args.configPath), readOptionalString(args.rootDir)));
276
- case "graphflow_expand_anchor":
277
- return textResponse(await (0, runtime_1.expandAnchor)(readRequiredString(args.anchorId, "anchorId"), readOptionalString(args.configPath), readOptionalString(args.rootDir)));
278
- case "graphflow_index":
279
- return textResponse(await (0, runtime_1.indexGraph)(readOptionalString(args.rootDir), readOptionalString(args.configPath)));
280
- case "graphflow_index_file":
281
- return textResponse(await (0, runtime_1.indexFile)(readRequiredString(args.filePath, "filePath"), readOptionalString(args.configPath)));
282
- case "graphflow_rebuild":
283
- return textResponse(await (0, runtime_1.rebuildGraph)(readOptionalString(args.rootDir), readOptionalString(args.configPath)));
284
- case "graphflow_enrich_graph":
285
- {
286
- const enrichOptions = {};
287
- const batchSize = readOptionalNumber(args.batchSize);
288
- if (batchSize !== undefined) {
289
- enrichOptions.batchSize = batchSize;
290
- }
291
- const sleepMs = readOptionalNumber(args.sleepMs);
292
- if (sleepMs !== undefined) {
293
- enrichOptions.sleepMs = sleepMs;
294
- }
295
- const timeoutMs = readOptionalNumber(args.timeoutMs);
296
- if (timeoutMs !== undefined) {
297
- enrichOptions.timeoutMs = timeoutMs;
298
- }
299
- return textResponse(await (0, runtime_1.enrichSemanticsSilent)(readOptionalString(args.configPath), enrichOptions));
300
- }
301
- case "graphflow_model_download":
302
- {
303
- const downloadOptions = {};
304
- const model = readOptionalString(args.model);
305
- if (model) {
306
- downloadOptions.model = model;
307
- }
308
- const url = readOptionalString(args.url);
309
- if (url) {
310
- downloadOptions.url = url;
311
- }
312
- const sha256 = readOptionalString(args.sha256);
313
- if (sha256) {
314
- downloadOptions.sha256 = sha256;
315
- }
316
- const targetPath = readOptionalString(args.targetPath);
317
- if (targetPath) {
318
- downloadOptions.targetPath = targetPath;
319
- }
320
- if (typeof args.force === "boolean") {
321
- downloadOptions.force = args.force;
322
- }
323
- return textResponse(await (0, runtime_1.downloadOpenBmbModel)(readOptionalString(args.configPath), {
324
- ...downloadOptions,
325
- ...(hooks?.onModelDownloadProgress ? { onProgress: hooks.onModelDownloadProgress } : {}),
326
- }));
327
- }
328
- case "graphflow_inspect_graph":
329
- return textResponse(await (0, runtime_1.inspectGraph)(readOptionalString(args.configPath), buildInspectOptions(args)));
330
- case "graphflow_skill_insights":
331
- return textResponse(await (0, runtime_1.getSkillInsights)(readOptionalString(args.configPath), readOptionalNumber(args.limit), readOptionalString(args.rootDir)));
332
- case "graphflow_diagnose":
333
- return textResponse((0, runtime_1.diagnoseRoutingResult)(readOptionalString(args.configPath)));
334
- case "graphflow_export_artifact": {
335
- const compressionRaw = readOptionalString(args.compression);
336
- const compression = compressionRaw === "none" || compressionRaw === "gzip"
337
- ? compressionRaw
338
- : undefined;
339
- return textResponse(await (0, runtime_1.exportArtifact)(readOptionalString(args.configPath), readOptionalString(args.outputPath), undefined, compression ? { compression } : undefined));
340
- }
341
- case "graphflow_import_artifact":
342
- return textResponse(await (0, runtime_1.importArtifact)(readOptionalString(args.configPath), readOptionalString(args.inputPath)));
343
- case "graphflow_stats":
344
- return textResponse((0, runtime_1.getTokenSavingsStats)(readOptionalString(args.configPath), readOptionalString(args.rootDir)));
345
- case "graphflow_metrics":
346
- return textResponse((0, runtime_1.getMetrics)(readOptionalString(args.configPath), readOptionalString(args.rootDir)));
347
- default:
348
- throw new Error(`Unknown tool: ${call.name}`);
349
- }
11
+ const tool_definitions_js_1 = require("./tool-definitions.js");
12
+ const tool_handlers_js_1 = require("./tool-handlers.js");
13
+ const version_js_1 = require("./version.js");
14
+ var tool_definitions_js_2 = require("./tool-definitions.js");
15
+ Object.defineProperty(exports, "getToolDefinitions", { enumerable: true, get: function () { return tool_definitions_js_2.getToolDefinitions; } });
16
+ async function executeToolCall(call, server = createMcpServer(), hooks) {
17
+ return (0, tool_handlers_js_1.executeToolCall)(call, server, hooks);
350
18
  }
351
19
  function createMcpServer(emitNotification) {
352
- const tools = getToolDefinitions();
20
+ const tools = (0, tool_definitions_js_1.getToolDefinitions)();
353
21
  return {
354
22
  serverInfo: {
355
23
  name: "graphflow",
356
- version: PACKAGE_VERSION,
24
+ version: version_js_1.PACKAGE_VERSION,
357
25
  },
358
26
  tools,
359
27
  async handleRequest(request) {
@@ -371,7 +39,7 @@ function createMcpServer(emitNotification) {
371
39
  },
372
40
  serverInfo: {
373
41
  name: "graphflow",
374
- version: PACKAGE_VERSION,
42
+ version: version_js_1.PACKAGE_VERSION,
375
43
  },
376
44
  },
377
45
  };
@@ -388,10 +56,10 @@ function createMcpServer(emitNotification) {
388
56
  if (request.method === "tools/call") {
389
57
  try {
390
58
  const params = request.params ?? {};
391
- const progressToken = readProgressToken(params);
392
- const result = await executeToolCall({
393
- name: readRequiredString(params.name, "name"),
394
- arguments: isRecord(params.arguments) ? params.arguments : {},
59
+ const progressToken = (0, tool_handlers_js_1.readProgressToken)(params);
60
+ const result = await (0, tool_handlers_js_1.executeToolCall)({
61
+ name: (0, tool_handlers_js_1.readRequiredString)(params.name, "name"),
62
+ arguments: (0, tool_handlers_js_1.isRecord)(params.arguments) ? params.arguments : {},
395
63
  }, undefined, progressToken && emitNotification
396
64
  ? {
397
65
  onModelDownloadProgress: (progress) => {
@@ -402,7 +70,7 @@ function createMcpServer(emitNotification) {
402
70
  progressToken,
403
71
  progress: progress.percent ?? 0,
404
72
  total: 100,
405
- message: `${progress.stage} ${progress.model} ${formatProgressMessage(progress)}`,
73
+ message: `${progress.stage} ${progress.model} ${(0, tool_handlers_js_1.formatProgressMessage)(progress)}`,
406
74
  data: progress,
407
75
  },
408
76
  });
@@ -467,91 +135,6 @@ function writeMessage(output, response) {
467
135
  const payload = JSON.stringify(response);
468
136
  output.write(`${payload}\n`);
469
137
  }
470
- function textResponse(data) {
471
- return {
472
- content: [
473
- {
474
- type: "text",
475
- text: JSON.stringify(data, null, 2),
476
- },
477
- ],
478
- };
479
- }
480
- const MAX_STRING_FIELD_LENGTH = 100_000;
481
- function readRequiredString(value, field) {
482
- if (typeof value !== "string" || !value.trim()) {
483
- throw new Error(`Field '${field}' must be a non-empty string.`);
484
- }
485
- if (value.length > MAX_STRING_FIELD_LENGTH) {
486
- throw new Error(`Field '${field}' exceeds maximum length of ${MAX_STRING_FIELD_LENGTH} characters.`);
487
- }
488
- return value;
489
- }
490
- function readOptionalString(value) {
491
- return typeof value === "string" && value.trim() ? value : undefined;
492
- }
493
- function readOptionalNumber(value) {
494
- return typeof value === "number" && Number.isFinite(value) ? value : undefined;
495
- }
496
- function buildInspectOptions(args) {
497
- const nodeLimit = readOptionalNumber(args.nodeLimit);
498
- const edgeLimit = readOptionalNumber(args.edgeLimit);
499
- const rootDir = readOptionalString(args.rootDir);
500
- return {
501
- ...(nodeLimit !== undefined ? { nodeLimit } : {}),
502
- ...(edgeLimit !== undefined ? { edgeLimit } : {}),
503
- ...(rootDir !== undefined ? { rootDir } : {}),
504
- };
505
- }
506
- function isRecord(value) {
507
- return Boolean(value) && typeof value === "object" && !Array.isArray(value);
508
- }
509
- function readProgressToken(params) {
510
- const direct = params.progressToken;
511
- if (typeof direct === "string" || typeof direct === "number") {
512
- return direct;
513
- }
514
- const meta = params._meta;
515
- if (!isRecord(meta)) {
516
- return undefined;
517
- }
518
- const token = meta.progressToken;
519
- return typeof token === "string" || typeof token === "number" ? token : undefined;
520
- }
521
- function formatProgressMessage(progress) {
522
- const current = formatBytes(progress.downloadedBytes);
523
- const total = progress.totalBytes !== undefined ? formatBytes(progress.totalBytes) : "unknown";
524
- const percent = progress.percent !== undefined ? `${progress.percent.toFixed(1)}%` : "...";
525
- return `${percent} ${current}/${total}`;
526
- }
527
- function formatBytes(value) {
528
- const units = ["B", "KB", "MB", "GB", "TB"];
529
- let size = value;
530
- let unitIndex = 0;
531
- while (size >= 1024 && unitIndex < units.length - 1) {
532
- size /= 1024;
533
- unitIndex += 1;
534
- }
535
- return `${size.toFixed(size >= 10 || unitIndex === 0 ? 0 : 1)} ${units[unitIndex]}`;
536
- }
537
- function resolvePackageVersion() {
538
- const candidates = [
539
- (0, node_path_1.join)(__dirname, "..", "..", "..", "package.json"),
540
- (0, node_path_1.join)(__dirname, "..", "..", "..", "..", "package.json"),
541
- ];
542
- for (const packageJsonPath of candidates) {
543
- try {
544
- const packageJson = JSON.parse((0, node_fs_1.readFileSync)(packageJsonPath, "utf8"));
545
- if (packageJson.version) {
546
- return packageJson.version;
547
- }
548
- }
549
- catch {
550
- // try next candidate
551
- }
552
- }
553
- return "0.0.0";
554
- }
555
138
  function installMcpProcessGuards() {
556
139
  process.on("uncaughtException", (error) => {
557
140
  console.error("[GraphFlow MCP] uncaughtException:", error);
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/surfaces/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/surfaces/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export interface ToolDefinition {
2
+ name: string;
3
+ description: string;
4
+ inputSchema: {
5
+ type: "object";
6
+ properties: Record<string, unknown>;
7
+ required?: string[];
8
+ additionalProperties?: boolean;
9
+ };
10
+ }
11
+ export declare function getToolDefinitions(): ToolDefinition[];
12
+ //# sourceMappingURL=tool-definitions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-definitions.d.ts","sourceRoot":"","sources":["../../../src/surfaces/mcp/tool-definitions.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;KAChC,CAAC;CACH;AAED,wBAAgB,kBAAkB,IAAI,cAAc,EAAE,CAiRrD"}