@angflow/angular 0.0.14 → 0.0.17

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 (72) hide show
  1. package/dist/esm/lib/agent/agent-bridge.service.d.ts +91 -0
  2. package/dist/esm/lib/agent/agent-bridge.service.d.ts.map +1 -0
  3. package/dist/esm/lib/agent/agent-bridge.service.js +935 -0
  4. package/dist/esm/lib/agent/agent-bridge.service.js.map +1 -0
  5. package/dist/esm/lib/agent/history.d.ts +45 -0
  6. package/dist/esm/lib/agent/history.d.ts.map +1 -0
  7. package/dist/esm/lib/agent/history.js +89 -0
  8. package/dist/esm/lib/agent/history.js.map +1 -0
  9. package/dist/esm/lib/agent/index.d.ts +8 -0
  10. package/dist/esm/lib/agent/index.d.ts.map +1 -0
  11. package/dist/esm/lib/agent/index.js +6 -0
  12. package/dist/esm/lib/agent/index.js.map +1 -0
  13. package/dist/esm/lib/agent/provide-agent-bridge.d.ts +47 -0
  14. package/dist/esm/lib/agent/provide-agent-bridge.d.ts.map +1 -0
  15. package/dist/esm/lib/agent/provide-agent-bridge.js +32 -0
  16. package/dist/esm/lib/agent/provide-agent-bridge.js.map +1 -0
  17. package/dist/esm/lib/agent/tool-schemas.d.ts +10 -0
  18. package/dist/esm/lib/agent/tool-schemas.d.ts.map +1 -0
  19. package/dist/esm/lib/agent/tool-schemas.js +635 -0
  20. package/dist/esm/lib/agent/tool-schemas.js.map +1 -0
  21. package/dist/esm/lib/agent/transports/websocket.d.ts +39 -0
  22. package/dist/esm/lib/agent/transports/websocket.d.ts.map +1 -0
  23. package/dist/esm/lib/agent/transports/websocket.js +95 -0
  24. package/dist/esm/lib/agent/transports/websocket.js.map +1 -0
  25. package/dist/esm/lib/agent/transports/window.d.ts +29 -0
  26. package/dist/esm/lib/agent/transports/window.d.ts.map +1 -0
  27. package/dist/esm/lib/agent/transports/window.js +73 -0
  28. package/dist/esm/lib/agent/transports/window.js.map +1 -0
  29. package/dist/esm/lib/agent/types.d.ts +66 -0
  30. package/dist/esm/lib/agent/types.d.ts.map +1 -0
  31. package/dist/esm/lib/agent/types.js +9 -0
  32. package/dist/esm/lib/agent/types.js.map +1 -0
  33. package/dist/esm/lib/components/edge-toolbar/edge-toolbar.component.d.ts +1 -1
  34. package/dist/esm/lib/components/handle/handle.component.d.ts.map +1 -1
  35. package/dist/esm/lib/components/handle/handle.component.js +25 -11
  36. package/dist/esm/lib/components/handle/handle.component.js.map +1 -1
  37. package/dist/esm/lib/components/nodes/default-node.component.js +4 -4
  38. package/dist/esm/lib/components/nodes/input-node.component.js +2 -2
  39. package/dist/esm/lib/components/nodes/output-node.component.js +2 -2
  40. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.d.ts +14 -0
  41. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.d.ts.map +1 -1
  42. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.js +66 -19
  43. package/dist/esm/lib/container/edge-renderer/edge-renderer.component.js.map +1 -1
  44. package/dist/esm/lib/container/ng-flow/ng-flow.component.d.ts +12 -12
  45. package/dist/esm/lib/container/ng-flow/ng-flow.component.d.ts.map +1 -1
  46. package/dist/esm/lib/container/ng-flow/ng-flow.component.js +16 -16
  47. package/dist/esm/lib/container/ng-flow/ng-flow.component.js.map +1 -1
  48. package/dist/esm/lib/container/node-renderer/node-renderer.component.d.ts +2 -0
  49. package/dist/esm/lib/container/node-renderer/node-renderer.component.d.ts.map +1 -1
  50. package/dist/esm/lib/container/node-renderer/node-renderer.component.js +35 -10
  51. package/dist/esm/lib/container/node-renderer/node-renderer.component.js.map +1 -1
  52. package/dist/esm/lib/directives/drag.directive.d.ts.map +1 -1
  53. package/dist/esm/lib/directives/drag.directive.js +9 -1
  54. package/dist/esm/lib/directives/drag.directive.js.map +1 -1
  55. package/dist/esm/lib/public-api.d.ts +1 -0
  56. package/dist/esm/lib/public-api.d.ts.map +1 -1
  57. package/dist/esm/lib/public-api.js +2 -0
  58. package/dist/esm/lib/public-api.js.map +1 -1
  59. package/dist/esm/lib/services/flow-store.service.d.ts.map +1 -1
  60. package/dist/esm/lib/services/flow-store.service.js +5 -0
  61. package/dist/esm/lib/services/flow-store.service.js.map +1 -1
  62. package/dist/esm/lib/services/ng-flow.service.d.ts +24 -0
  63. package/dist/esm/lib/services/ng-flow.service.d.ts.map +1 -1
  64. package/dist/esm/lib/services/ng-flow.service.js +70 -29
  65. package/dist/esm/lib/services/ng-flow.service.js.map +1 -1
  66. package/dist/esm/lib/types/edges.d.ts +18 -5
  67. package/dist/esm/lib/types/edges.d.ts.map +1 -1
  68. package/dist/esm/lib/types/general.d.ts +10 -0
  69. package/dist/esm/lib/types/general.d.ts.map +1 -1
  70. package/dist/esm/lib/types/nodes.d.ts +2 -1
  71. package/dist/esm/lib/types/nodes.d.ts.map +1 -1
  72. package/package.json +2 -2
@@ -0,0 +1,635 @@
1
+ /**
2
+ * Canonical list of tools the agent bridge exposes. Pass this array straight
3
+ * to an LLM tool-use API (Anthropic `tools`, OpenAI `tools`) or use it to
4
+ * generate an MCP server.
5
+ *
6
+ * Every `name` here matches a method registered in `AngflowAgentBridge`.
7
+ */
8
+ export const AGENT_TOOL_SCHEMAS = [
9
+ {
10
+ name: 'list_flows',
11
+ description: 'List the ids of every flow currently registered with the bridge.',
12
+ inputSchema: { type: 'object', properties: {}, additionalProperties: false },
13
+ },
14
+ {
15
+ name: 'get_state',
16
+ description: 'Return a full snapshot of a flow: { nodes, edges, viewport }. ' +
17
+ 'Use this whenever you need to see the current canvas before deciding what to change.',
18
+ inputSchema: {
19
+ type: 'object',
20
+ properties: {
21
+ flowId: { type: 'string', description: 'Flow id. Omit if exactly one flow is registered.' },
22
+ },
23
+ additionalProperties: false,
24
+ },
25
+ },
26
+ {
27
+ name: 'get_nodes',
28
+ description: 'Return all nodes on a flow.',
29
+ inputSchema: {
30
+ type: 'object',
31
+ properties: { flowId: { type: 'string' } },
32
+ additionalProperties: false,
33
+ },
34
+ },
35
+ {
36
+ name: 'get_edges',
37
+ description: 'Return all edges on a flow.',
38
+ inputSchema: {
39
+ type: 'object',
40
+ properties: { flowId: { type: 'string' } },
41
+ additionalProperties: false,
42
+ },
43
+ },
44
+ {
45
+ name: 'get_node',
46
+ description: 'Return a single node by id, or null if absent.',
47
+ inputSchema: {
48
+ type: 'object',
49
+ properties: { flowId: { type: 'string' }, id: { type: 'string' } },
50
+ required: ['id'],
51
+ additionalProperties: false,
52
+ },
53
+ },
54
+ {
55
+ name: 'get_edge',
56
+ description: 'Return a single edge by id, or null if absent.',
57
+ inputSchema: {
58
+ type: 'object',
59
+ properties: { flowId: { type: 'string' }, id: { type: 'string' } },
60
+ required: ['id'],
61
+ additionalProperties: false,
62
+ },
63
+ },
64
+ {
65
+ name: 'add_node',
66
+ description: 'Append a node to the flow. The node must include id, position { x, y }, and data. ' +
67
+ 'Optional: type, width, height, draggable, selectable, hidden, etc.',
68
+ inputSchema: {
69
+ type: 'object',
70
+ properties: {
71
+ flowId: { type: 'string' },
72
+ node: {
73
+ type: 'object',
74
+ properties: {
75
+ id: { type: 'string' },
76
+ type: { type: 'string' },
77
+ position: {
78
+ type: 'object',
79
+ properties: { x: { type: 'number' }, y: { type: 'number' } },
80
+ required: ['x', 'y'],
81
+ },
82
+ data: { type: 'object' },
83
+ },
84
+ required: ['id', 'position', 'data'],
85
+ },
86
+ },
87
+ required: ['node'],
88
+ additionalProperties: false,
89
+ },
90
+ },
91
+ {
92
+ name: 'add_edge',
93
+ description: 'Append an edge to the flow. The edge must include id, source (node id), and target (node id). ' +
94
+ 'Optional: type, sourceHandle, targetHandle, label, animated, data.',
95
+ inputSchema: {
96
+ type: 'object',
97
+ properties: {
98
+ flowId: { type: 'string' },
99
+ edge: {
100
+ type: 'object',
101
+ properties: {
102
+ id: { type: 'string' },
103
+ source: { type: 'string' },
104
+ target: { type: 'string' },
105
+ sourceHandle: { type: ['string', 'null'] },
106
+ targetHandle: { type: ['string', 'null'] },
107
+ type: { type: 'string' },
108
+ animated: { type: 'boolean' },
109
+ label: { type: 'string' },
110
+ data: { type: 'object' },
111
+ },
112
+ required: ['id', 'source', 'target'],
113
+ },
114
+ },
115
+ required: ['edge'],
116
+ additionalProperties: false,
117
+ },
118
+ },
119
+ {
120
+ name: 'update_node',
121
+ description: 'Shallow-merge `patch` into the node with the given id. Use `patch.data` to update node data; ' +
122
+ 'use `patch.position` to move it. Other nodes are untouched.',
123
+ inputSchema: {
124
+ type: 'object',
125
+ properties: {
126
+ flowId: { type: 'string' },
127
+ id: { type: 'string' },
128
+ patch: { type: 'object' },
129
+ },
130
+ required: ['id', 'patch'],
131
+ additionalProperties: false,
132
+ },
133
+ },
134
+ {
135
+ name: 'update_edge',
136
+ description: 'Shallow-merge `patch` into the edge with the given id.',
137
+ inputSchema: {
138
+ type: 'object',
139
+ properties: {
140
+ flowId: { type: 'string' },
141
+ id: { type: 'string' },
142
+ patch: { type: 'object' },
143
+ },
144
+ required: ['id', 'patch'],
145
+ additionalProperties: false,
146
+ },
147
+ },
148
+ {
149
+ name: 'delete_elements',
150
+ description: 'Delete nodes and/or edges by id. Edges connected to deleted nodes are removed automatically. ' +
151
+ 'Returns { deletedNodes, deletedEdges }.',
152
+ inputSchema: {
153
+ type: 'object',
154
+ properties: {
155
+ flowId: { type: 'string' },
156
+ nodeIds: { type: 'array', items: { type: 'string' } },
157
+ edgeIds: { type: 'array', items: { type: 'string' } },
158
+ },
159
+ additionalProperties: false,
160
+ },
161
+ },
162
+ {
163
+ name: 'set_nodes',
164
+ description: 'Replace the entire nodes array. Prefer add_node / update_node / delete_elements for incremental edits.',
165
+ inputSchema: {
166
+ type: 'object',
167
+ properties: {
168
+ flowId: { type: 'string' },
169
+ nodes: { type: 'array', items: { type: 'object' } },
170
+ },
171
+ required: ['nodes'],
172
+ additionalProperties: false,
173
+ },
174
+ },
175
+ {
176
+ name: 'set_edges',
177
+ description: 'Replace the entire edges array. Prefer add_edge / update_edge / delete_elements for incremental edits.',
178
+ inputSchema: {
179
+ type: 'object',
180
+ properties: {
181
+ flowId: { type: 'string' },
182
+ edges: { type: 'array', items: { type: 'object' } },
183
+ },
184
+ required: ['edges'],
185
+ additionalProperties: false,
186
+ },
187
+ },
188
+ {
189
+ name: 'fit_view',
190
+ description: 'Zoom and pan so all (or the given) nodes are visible.',
191
+ inputSchema: {
192
+ type: 'object',
193
+ properties: {
194
+ flowId: { type: 'string' },
195
+ padding: { type: 'number' },
196
+ duration: { type: 'number' },
197
+ nodeIds: { type: 'array', items: { type: 'string' } },
198
+ },
199
+ additionalProperties: false,
200
+ },
201
+ },
202
+ {
203
+ name: 'set_viewport',
204
+ description: 'Set the viewport to an absolute { x, y, zoom }.',
205
+ inputSchema: {
206
+ type: 'object',
207
+ properties: {
208
+ flowId: { type: 'string' },
209
+ viewport: {
210
+ type: 'object',
211
+ properties: {
212
+ x: { type: 'number' },
213
+ y: { type: 'number' },
214
+ zoom: { type: 'number' },
215
+ },
216
+ required: ['x', 'y', 'zoom'],
217
+ },
218
+ duration: { type: 'number' },
219
+ },
220
+ required: ['viewport'],
221
+ additionalProperties: false,
222
+ },
223
+ },
224
+ {
225
+ name: 'get_viewport',
226
+ description: 'Return the current { x, y, zoom }.',
227
+ inputSchema: {
228
+ type: 'object',
229
+ properties: { flowId: { type: 'string' } },
230
+ additionalProperties: false,
231
+ },
232
+ },
233
+ {
234
+ name: 'get_internal_node',
235
+ description: 'Return computed internal data for a node: positionAbsolute (after parent transforms), measured size, ' +
236
+ 'and per-handle bounds. Returns null if the node does not exist. Slim, serializable view of the InternalNode.',
237
+ inputSchema: {
238
+ type: 'object',
239
+ properties: { flowId: { type: 'string' }, id: { type: 'string' } },
240
+ required: ['id'],
241
+ additionalProperties: false,
242
+ },
243
+ },
244
+ {
245
+ name: 'get_nodes_bounds',
246
+ description: 'Return the axis-aligned bounding rect that contains the given nodes ' +
247
+ '(or every node when nodeIds is omitted).',
248
+ inputSchema: {
249
+ type: 'object',
250
+ properties: {
251
+ flowId: { type: 'string' },
252
+ nodeIds: { type: 'array', items: { type: 'string' } },
253
+ },
254
+ additionalProperties: false,
255
+ },
256
+ },
257
+ {
258
+ name: 'get_intersecting_nodes',
259
+ description: 'Return nodes whose bounding box intersects the given node\'s bounding box. ' +
260
+ 'When partially is false, only fully-contained nodes are returned.',
261
+ inputSchema: {
262
+ type: 'object',
263
+ properties: {
264
+ flowId: { type: 'string' },
265
+ id: { type: 'string' },
266
+ partially: { type: 'boolean' },
267
+ },
268
+ required: ['id'],
269
+ additionalProperties: false,
270
+ },
271
+ },
272
+ {
273
+ name: 'is_node_in_area',
274
+ description: 'Whether the given node\'s bounding box intersects the rect. ' +
275
+ 'When partially is false, only full containment counts.',
276
+ inputSchema: {
277
+ type: 'object',
278
+ properties: {
279
+ flowId: { type: 'string' },
280
+ id: { type: 'string' },
281
+ area: {
282
+ type: 'object',
283
+ properties: {
284
+ x: { type: 'number' },
285
+ y: { type: 'number' },
286
+ width: { type: 'number' },
287
+ height: { type: 'number' },
288
+ },
289
+ required: ['x', 'y', 'width', 'height'],
290
+ },
291
+ partially: { type: 'boolean' },
292
+ },
293
+ required: ['id', 'area'],
294
+ additionalProperties: false,
295
+ },
296
+ },
297
+ {
298
+ name: 'get_outgoers',
299
+ description: 'Return nodes that have an incoming edge from the given node id.',
300
+ inputSchema: {
301
+ type: 'object',
302
+ properties: { flowId: { type: 'string' }, id: { type: 'string' } },
303
+ required: ['id'],
304
+ additionalProperties: false,
305
+ },
306
+ },
307
+ {
308
+ name: 'get_incomers',
309
+ description: 'Return nodes that have an outgoing edge into the given node id.',
310
+ inputSchema: {
311
+ type: 'object',
312
+ properties: { flowId: { type: 'string' }, id: { type: 'string' } },
313
+ required: ['id'],
314
+ additionalProperties: false,
315
+ },
316
+ },
317
+ {
318
+ name: 'get_connected_edges',
319
+ description: 'Return all edges that are incident to any of the given node ids (either end).',
320
+ inputSchema: {
321
+ type: 'object',
322
+ properties: {
323
+ flowId: { type: 'string' },
324
+ nodeIds: { type: 'array', items: { type: 'string' } },
325
+ },
326
+ required: ['nodeIds'],
327
+ additionalProperties: false,
328
+ },
329
+ },
330
+ {
331
+ name: 'get_node_connections',
332
+ description: 'Return all HandleConnection objects for every handle on the given node.',
333
+ inputSchema: {
334
+ type: 'object',
335
+ properties: { flowId: { type: 'string' }, nodeId: { type: 'string' } },
336
+ required: ['nodeId'],
337
+ additionalProperties: false,
338
+ },
339
+ },
340
+ {
341
+ name: 'get_handle_connections',
342
+ description: 'Return HandleConnections for a specific handle. Pass handleId to scope to a named handle, ' +
343
+ 'or omit to get every connection of that type on the node.',
344
+ inputSchema: {
345
+ type: 'object',
346
+ properties: {
347
+ flowId: { type: 'string' },
348
+ nodeId: { type: 'string' },
349
+ type: { type: 'string', enum: ['source', 'target'] },
350
+ handleId: { type: 'string' },
351
+ },
352
+ required: ['nodeId', 'type'],
353
+ additionalProperties: false,
354
+ },
355
+ },
356
+ {
357
+ name: 'get_handle_data',
358
+ description: 'Look up user-attached data on a handle (registered via <ng-flow-handle [data]="...">). ' +
359
+ 'Returns null if no data is attached.',
360
+ inputSchema: {
361
+ type: 'object',
362
+ properties: {
363
+ flowId: { type: 'string' },
364
+ nodeId: { type: 'string' },
365
+ handleId: { type: ['string', 'null'] },
366
+ type: { type: 'string', enum: ['source', 'target'] },
367
+ },
368
+ required: ['nodeId', 'handleId', 'type'],
369
+ additionalProperties: false,
370
+ },
371
+ },
372
+ {
373
+ name: 'screen_to_flow_position',
374
+ description: 'Convert a viewport/client coordinate (e.g., MouseEvent.clientX/clientY) into a position in flow coordinates. ' +
375
+ 'Honors snapToGrid unless overridden.',
376
+ inputSchema: {
377
+ type: 'object',
378
+ properties: {
379
+ flowId: { type: 'string' },
380
+ position: {
381
+ type: 'object',
382
+ properties: { x: { type: 'number' }, y: { type: 'number' } },
383
+ required: ['x', 'y'],
384
+ },
385
+ snapToGrid: { type: 'boolean' },
386
+ },
387
+ required: ['position'],
388
+ additionalProperties: false,
389
+ },
390
+ },
391
+ {
392
+ name: 'flow_to_screen_position',
393
+ description: 'Inverse of screen_to_flow_position: convert a flow-space point to viewport/client coordinates.',
394
+ inputSchema: {
395
+ type: 'object',
396
+ properties: {
397
+ flowId: { type: 'string' },
398
+ position: {
399
+ type: 'object',
400
+ properties: { x: { type: 'number' }, y: { type: 'number' } },
401
+ required: ['x', 'y'],
402
+ },
403
+ },
404
+ required: ['position'],
405
+ additionalProperties: false,
406
+ },
407
+ },
408
+ {
409
+ name: 'zoom_in',
410
+ description: 'Zoom the viewport in by one step. Optionally animate over duration ms.',
411
+ inputSchema: {
412
+ type: 'object',
413
+ properties: { flowId: { type: 'string' }, duration: { type: 'number' } },
414
+ additionalProperties: false,
415
+ },
416
+ },
417
+ {
418
+ name: 'zoom_out',
419
+ description: 'Zoom the viewport out by one step. Optionally animate over duration ms.',
420
+ inputSchema: {
421
+ type: 'object',
422
+ properties: { flowId: { type: 'string' }, duration: { type: 'number' } },
423
+ additionalProperties: false,
424
+ },
425
+ },
426
+ {
427
+ name: 'zoom_to',
428
+ description: 'Set the viewport zoom to an absolute level (clamped to minZoom/maxZoom).',
429
+ inputSchema: {
430
+ type: 'object',
431
+ properties: {
432
+ flowId: { type: 'string' },
433
+ level: { type: 'number' },
434
+ duration: { type: 'number' },
435
+ },
436
+ required: ['level'],
437
+ additionalProperties: false,
438
+ },
439
+ },
440
+ {
441
+ name: 'set_center',
442
+ description: 'Center the viewport on a flow-space coordinate. Optional zoom and animation duration.',
443
+ inputSchema: {
444
+ type: 'object',
445
+ properties: {
446
+ flowId: { type: 'string' },
447
+ x: { type: 'number' },
448
+ y: { type: 'number' },
449
+ zoom: { type: 'number' },
450
+ duration: { type: 'number' },
451
+ },
452
+ required: ['x', 'y'],
453
+ additionalProperties: false,
454
+ },
455
+ },
456
+ {
457
+ name: 'fit_bounds',
458
+ description: 'Fit the viewport to a specific Rect in flow coordinates.',
459
+ inputSchema: {
460
+ type: 'object',
461
+ properties: {
462
+ flowId: { type: 'string' },
463
+ bounds: {
464
+ type: 'object',
465
+ properties: {
466
+ x: { type: 'number' },
467
+ y: { type: 'number' },
468
+ width: { type: 'number' },
469
+ height: { type: 'number' },
470
+ },
471
+ required: ['x', 'y', 'width', 'height'],
472
+ },
473
+ padding: { type: 'number' },
474
+ duration: { type: 'number' },
475
+ },
476
+ required: ['bounds'],
477
+ additionalProperties: false,
478
+ },
479
+ },
480
+ {
481
+ name: 'add_nodes',
482
+ description: 'Append multiple nodes in a single call. Each node must include id, position, and data.',
483
+ inputSchema: {
484
+ type: 'object',
485
+ properties: {
486
+ flowId: { type: 'string' },
487
+ nodes: { type: 'array', items: { type: 'object' } },
488
+ },
489
+ required: ['nodes'],
490
+ additionalProperties: false,
491
+ },
492
+ },
493
+ {
494
+ name: 'add_edges',
495
+ description: 'Append multiple edges in a single call. Each edge must include id, source, and target.',
496
+ inputSchema: {
497
+ type: 'object',
498
+ properties: {
499
+ flowId: { type: 'string' },
500
+ edges: { type: 'array', items: { type: 'object' } },
501
+ },
502
+ required: ['edges'],
503
+ additionalProperties: false,
504
+ },
505
+ },
506
+ {
507
+ name: 'update_node_data',
508
+ description: 'Merge dataPatch into the named node\'s data object. Leaves other node fields untouched.',
509
+ inputSchema: {
510
+ type: 'object',
511
+ properties: {
512
+ flowId: { type: 'string' },
513
+ id: { type: 'string' },
514
+ dataPatch: { type: 'object' },
515
+ },
516
+ required: ['id', 'dataPatch'],
517
+ additionalProperties: false,
518
+ },
519
+ },
520
+ {
521
+ name: 'update_edge_data',
522
+ description: 'Merge dataPatch into the named edge\'s data object.',
523
+ inputSchema: {
524
+ type: 'object',
525
+ properties: {
526
+ flowId: { type: 'string' },
527
+ id: { type: 'string' },
528
+ dataPatch: { type: 'object' },
529
+ },
530
+ required: ['id', 'dataPatch'],
531
+ additionalProperties: false,
532
+ },
533
+ },
534
+ {
535
+ name: 'select_nodes',
536
+ description: 'Select the given node ids. additive=false (default) replaces the current selection; ' +
537
+ 'additive=true adds to it.',
538
+ inputSchema: {
539
+ type: 'object',
540
+ properties: {
541
+ flowId: { type: 'string' },
542
+ nodeIds: { type: 'array', items: { type: 'string' } },
543
+ additive: { type: 'boolean' },
544
+ },
545
+ required: ['nodeIds'],
546
+ additionalProperties: false,
547
+ },
548
+ },
549
+ {
550
+ name: 'select_edges',
551
+ description: 'Select the given edge ids. additive=false (default) replaces the current selection; ' +
552
+ 'additive=true adds to it.',
553
+ inputSchema: {
554
+ type: 'object',
555
+ properties: {
556
+ flowId: { type: 'string' },
557
+ edgeIds: { type: 'array', items: { type: 'string' } },
558
+ additive: { type: 'boolean' },
559
+ },
560
+ required: ['edgeIds'],
561
+ additionalProperties: false,
562
+ },
563
+ },
564
+ {
565
+ name: 'deselect_all',
566
+ description: 'Clear node and edge selection.',
567
+ inputSchema: {
568
+ type: 'object',
569
+ properties: { flowId: { type: 'string' } },
570
+ additionalProperties: false,
571
+ },
572
+ },
573
+ {
574
+ name: 'apply_changes',
575
+ description: 'Atomically apply a batch of mutating ops in a single reactivity cycle. On any error the entire ' +
576
+ 'batch is rolled back (snapshot of nodes/edges restored), and a JSON-RPC error returns with ' +
577
+ 'data.failedIndex pointing at the bad op. Use this to build/edit graphs in one round trip. ' +
578
+ 'Allowed ops: add_node, add_nodes, add_edge, add_edges, update_node, update_node_data, ' +
579
+ 'update_edge, update_edge_data, delete_elements, select_nodes, select_edges, deselect_all. ' +
580
+ 'Op shape mirrors the corresponding individual tool params, with an extra `op` field.',
581
+ inputSchema: {
582
+ type: 'object',
583
+ properties: {
584
+ flowId: { type: 'string' },
585
+ ops: { type: 'array', items: { type: 'object' } },
586
+ },
587
+ required: ['ops'],
588
+ additionalProperties: false,
589
+ },
590
+ },
591
+ {
592
+ name: 'undo',
593
+ description: 'Undo the last mutating tool call (or `steps` of them). Restores the snapshot taken before the mutation. ' +
594
+ 'No-op when there is nothing to undo. Returns { undone, canUndo, canRedo }.',
595
+ inputSchema: {
596
+ type: 'object',
597
+ properties: {
598
+ flowId: { type: 'string' },
599
+ steps: { type: 'number' },
600
+ },
601
+ additionalProperties: false,
602
+ },
603
+ },
604
+ {
605
+ name: 'redo',
606
+ description: 'Inverse of undo. Returns { redone, canUndo, canRedo }.',
607
+ inputSchema: {
608
+ type: 'object',
609
+ properties: {
610
+ flowId: { type: 'string' },
611
+ steps: { type: 'number' },
612
+ },
613
+ additionalProperties: false,
614
+ },
615
+ },
616
+ {
617
+ name: 'history_status',
618
+ description: 'Return { canUndo, canRedo, pastDepth, futureDepth } for the flow.',
619
+ inputSchema: {
620
+ type: 'object',
621
+ properties: { flowId: { type: 'string' } },
622
+ additionalProperties: false,
623
+ },
624
+ },
625
+ {
626
+ name: 'clear_history',
627
+ description: 'Drop both undo and redo stacks for the flow.',
628
+ inputSchema: {
629
+ type: 'object',
630
+ properties: { flowId: { type: 'string' } },
631
+ additionalProperties: false,
632
+ },
633
+ },
634
+ ];
635
+ //# sourceMappingURL=tool-schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-schemas.js","sourceRoot":"","sources":["../../../../src/lib/agent/tool-schemas.ts"],"names":[],"mappings":"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"}