@inkeep/agents-sdk 0.1.1 → 0.1.6

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 (60) hide show
  1. package/SUPPLEMENTAL_TERMS.md +40 -0
  2. package/dist/index.cjs +2863 -0
  3. package/dist/index.d.cts +919 -0
  4. package/dist/index.d.ts +919 -11
  5. package/dist/index.js +2840 -10
  6. package/package.json +7 -6
  7. package/dist/__tests__/utils/testTenant.d.ts +0 -7
  8. package/dist/__tests__/utils/testTenant.d.ts.map +0 -1
  9. package/dist/__tests__/utils/testTenant.js +0 -10
  10. package/dist/__tests__/utils/testTenant.js.map +0 -1
  11. package/dist/agent.d.ts +0 -47
  12. package/dist/agent.d.ts.map +0 -1
  13. package/dist/agent.js +0 -601
  14. package/dist/agent.js.map +0 -1
  15. package/dist/artifact-component.d.ts +0 -27
  16. package/dist/artifact-component.d.ts.map +0 -1
  17. package/dist/artifact-component.js +0 -116
  18. package/dist/artifact-component.js.map +0 -1
  19. package/dist/builders.d.ts +0 -211
  20. package/dist/builders.d.ts.map +0 -1
  21. package/dist/builders.js +0 -244
  22. package/dist/builders.js.map +0 -1
  23. package/dist/data-component.d.ts +0 -25
  24. package/dist/data-component.d.ts.map +0 -1
  25. package/dist/data-component.js +0 -112
  26. package/dist/data-component.js.map +0 -1
  27. package/dist/environment-settings.d.ts +0 -28
  28. package/dist/environment-settings.d.ts.map +0 -1
  29. package/dist/environment-settings.js +0 -78
  30. package/dist/environment-settings.js.map +0 -1
  31. package/dist/externalAgent.d.ts +0 -58
  32. package/dist/externalAgent.d.ts.map +0 -1
  33. package/dist/externalAgent.js +0 -161
  34. package/dist/externalAgent.js.map +0 -1
  35. package/dist/graph.d.ts +0 -200
  36. package/dist/graph.d.ts.map +0 -1
  37. package/dist/graph.js +0 -1294
  38. package/dist/graph.js.map +0 -1
  39. package/dist/graphFullClient.d.ts +0 -22
  40. package/dist/graphFullClient.d.ts.map +0 -1
  41. package/dist/graphFullClient.js +0 -189
  42. package/dist/graphFullClient.js.map +0 -1
  43. package/dist/index.d.ts.map +0 -1
  44. package/dist/index.js.map +0 -1
  45. package/dist/module-hosted-tool-manager.d.ts +0 -37
  46. package/dist/module-hosted-tool-manager.d.ts.map +0 -1
  47. package/dist/module-hosted-tool-manager.js +0 -375
  48. package/dist/module-hosted-tool-manager.js.map +0 -1
  49. package/dist/runner.d.ts +0 -38
  50. package/dist/runner.d.ts.map +0 -1
  51. package/dist/runner.js +0 -164
  52. package/dist/runner.js.map +0 -1
  53. package/dist/tool.d.ts +0 -29
  54. package/dist/tool.d.ts.map +0 -1
  55. package/dist/tool.js +0 -122
  56. package/dist/tool.js.map +0 -1
  57. package/dist/types.d.ts +0 -285
  58. package/dist/types.d.ts.map +0 -1
  59. package/dist/types.js +0 -37
  60. package/dist/types.js.map +0 -1
@@ -1,375 +0,0 @@
1
- import { spawn } from 'node:child_process';
2
- import { existsSync, mkdirSync, writeFileSync } from 'node:fs';
3
- import { join } from 'node:path';
4
- import { getLogger } from '@inkeep/agents-core';
5
- const logger = getLogger('module-hosted-tool-manager');
6
- export class ModuleHostedToolManager {
7
- servers = new Map();
8
- portCounter = 3011;
9
- baseDir;
10
- toolModules = new Map();
11
- constructor() {
12
- this.baseDir = join(process.cwd(), '.hosted-tools');
13
- if (!existsSync(this.baseDir)) {
14
- mkdirSync(this.baseDir, { recursive: true });
15
- }
16
- }
17
- async deployInlineTool(toolFunction) {
18
- const toolId = this.getToolId(toolFunction.name);
19
- // Check if tool is already deployed
20
- if (this.servers.has(toolId)) {
21
- const existingServer = this.servers.get(toolId);
22
- if (existingServer.status === 'running') {
23
- logger.info({ toolId }, 'Inline tool already deployed and running');
24
- return existingServer;
25
- }
26
- }
27
- const port = this.getNextPort();
28
- const serverUrl = `http://localhost:${port}/mcp`;
29
- // Store the tool function in our registry
30
- this.toolModules.set(toolId, toolFunction);
31
- const server = {
32
- toolFunction,
33
- port,
34
- serverUrl,
35
- status: 'starting',
36
- moduleFile: '',
37
- };
38
- this.servers.set(toolId, server);
39
- try {
40
- await this.generateModuleFiles(server);
41
- await this.startServer(server);
42
- // Wait for server to be ready
43
- await this.waitForServerReady(server);
44
- server.status = 'running';
45
- logger.info({ toolId, port, serverUrl }, 'Inline tool deployed successfully');
46
- return server;
47
- }
48
- catch (error) {
49
- server.status = 'error';
50
- logger.error({ toolId, error: error instanceof Error ? error.message : 'Unknown error' }, 'Failed to deploy inline tool');
51
- throw error;
52
- }
53
- }
54
- async stopTool(toolName) {
55
- const toolId = this.getToolId(toolName);
56
- const server = this.servers.get(toolId);
57
- if (!server || !server.process) {
58
- logger.warn({ toolId }, 'Inline tool not found or not running');
59
- return;
60
- }
61
- return new Promise((resolve) => {
62
- server.process.on('exit', () => {
63
- server.status = 'stopped';
64
- server.process = undefined;
65
- server.pid = undefined;
66
- // Clean up the module registry
67
- this.toolModules.delete(toolId);
68
- logger.info({ toolId }, 'Inline tool stopped successfully');
69
- resolve();
70
- });
71
- server.process.kill('SIGTERM');
72
- // Force kill after 5 seconds
73
- setTimeout(() => {
74
- if (server.process && !server.process.killed) {
75
- server.process.kill('SIGKILL');
76
- }
77
- }, 5000);
78
- });
79
- }
80
- getServer(toolName) {
81
- const toolId = this.getToolId(toolName);
82
- return this.servers.get(toolId);
83
- }
84
- getAllServers() {
85
- return Array.from(this.servers.values());
86
- }
87
- getToolId(name) {
88
- return name
89
- .toLowerCase()
90
- .replace(/[^a-z0-9]+/g, '-')
91
- .replace(/^-+|-+$/g, '');
92
- }
93
- getNextPort() {
94
- return this.portCounter++;
95
- }
96
- async generateModuleFiles(server) {
97
- const toolId = this.getToolId(server.toolFunction.name);
98
- const serverDir = join(this.baseDir, toolId);
99
- if (!existsSync(serverDir)) {
100
- mkdirSync(serverDir, { recursive: true });
101
- }
102
- // Create a separate module file for the tool function
103
- const toolModuleFile = join(serverDir, 'tool-function.mjs');
104
- const toolModuleCode = this.createToolModule(server.toolFunction);
105
- writeFileSync(toolModuleFile, toolModuleCode, 'utf8');
106
- // Create the MCP server file that imports the tool module
107
- const serverFile = join(serverDir, 'server.mjs');
108
- const serverCode = this.createMCPServerCode(server, toolId);
109
- writeFileSync(serverFile, serverCode, 'utf8');
110
- server.moduleFile = serverFile;
111
- // Create package.json for the tool server
112
- const packageJson = {
113
- name: `hosted-tool-${toolId}`,
114
- version: '1.0.0',
115
- type: 'module',
116
- main: 'server.mjs',
117
- dependencies: {
118
- '@modelcontextprotocol/sdk': '^1.12.1',
119
- zod: '^3.25.31',
120
- },
121
- };
122
- writeFileSync(join(serverDir, 'package.json'), JSON.stringify(packageJson, null, 2), 'utf8');
123
- logger.info({ toolId, serverFile, toolModuleFile }, 'Generated module-based MCP server code');
124
- }
125
- createToolModule(toolFunction) {
126
- // Extract the function body without serializing to string
127
- // We'll use a different approach - create a module that exports the function
128
- return `// Auto-generated tool function module
129
- export const toolName = '${toolFunction.name}';
130
- export const toolDescription = '${toolFunction.description || ''}';
131
-
132
- // Re-export the tool function
133
- // Note: This approach requires the function to be passed through a registry
134
- export async function execute(params) {
135
- // This will be resolved at runtime through the parent process communication
136
- const result = await parentProcessExecute(params);
137
- return result;
138
- }
139
-
140
- // Parameters schema (if provided)
141
- export const parameters = ${toolFunction.parameters ? JSON.stringify(toolFunction.parameters, null, 2) : 'undefined'};
142
- `;
143
- }
144
- createMCPServerCode(server, toolId) {
145
- return `#!/usr/bin/env node
146
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp';
147
- import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp';
148
- import { z } from 'zod';
149
- import { createServer } from 'node:http';
150
-
151
- const server = new McpServer({
152
- name: '${server.toolFunction.name}',
153
- version: '1.0.0',
154
- }, { capabilities: { logging: {} } });
155
-
156
- // Parameter schema
157
- const parameterSchema = z.object({${server.toolFunction.parameters
158
- ? Object.keys(server.toolFunction.parameters)
159
- .map((key) => `\n ${key}: z.any()`)
160
- .join(',') + '\n'
161
- : ''}});
162
-
163
- // Communication with parent process for function execution
164
- let parentProcess = null;
165
-
166
- // Set up IPC communication
167
- process.on('message', (message) => {
168
- if (message.type === 'function-result') {
169
- // Handle function execution result
170
- const { requestId, result, error } = message;
171
- // Resolve the pending promise (this would need a proper promise registry)
172
- handleFunctionResult(requestId, result, error);
173
- }
174
- });
175
-
176
- const pendingRequests = new Map();
177
- let requestIdCounter = 0;
178
-
179
- async function executeToolFunction(params) {
180
- return new Promise((resolve, reject) => {
181
- const requestId = ++requestIdCounter;
182
- pendingRequests.set(requestId, { resolve, reject });
183
-
184
- // Send execution request to parent process
185
- process.send({
186
- type: 'execute-function',
187
- requestId,
188
- toolName: '${server.toolFunction.name}',
189
- params
190
- });
191
-
192
- // Timeout after 30 seconds
193
- setTimeout(() => {
194
- if (pendingRequests.has(requestId)) {
195
- pendingRequests.delete(requestId);
196
- reject(new Error('Function execution timeout'));
197
- }
198
- }, 30000);
199
- });
200
- }
201
-
202
- function handleFunctionResult(requestId, result, error) {
203
- const pending = pendingRequests.get(requestId);
204
- if (pending) {
205
- pendingRequests.delete(requestId);
206
- if (error) {
207
- pending.reject(new Error(error));
208
- } else {
209
- pending.resolve(result);
210
- }
211
- }
212
- }
213
-
214
- // Register the tool
215
- server.tool('${toolId}', '${server.toolFunction.description || ''}', parameterSchema.shape, async (params) => {
216
- try {
217
- const result = await executeToolFunction(params);
218
- return {
219
- content: [{
220
- type: 'text',
221
- text: typeof result === 'string' ? result : JSON.stringify(result)
222
- }]
223
- };
224
- } catch (error) {
225
- return {
226
- content: [{
227
- type: 'text',
228
- text: \`Error executing tool: \${error instanceof Error ? error.message : 'Unknown error'}\`
229
- }],
230
- isError: true
231
- };
232
- }
233
- });
234
-
235
- // Create HTTP server
236
- const httpServer = createServer();
237
- const transport = new StreamableHTTPServerTransport({});
238
-
239
- httpServer.on('request', async (req, res) => {
240
- if (req.url === '/mcp' && req.method === 'POST') {
241
- let body = '';
242
- req.on('data', chunk => body += chunk);
243
- req.on('end', async () => {
244
- try {
245
- const jsonBody = JSON.parse(body);
246
- await transport.handleRequest(req, res, jsonBody);
247
- } catch (error) {
248
- res.writeHead(500, { 'Content-Type': 'application/json' });
249
- res.end(JSON.stringify({ error: 'Invalid JSON' }));
250
- }
251
- });
252
- } else if (req.url === '/health' && req.method === 'GET') {
253
- res.writeHead(200, { 'Content-Type': 'application/json' });
254
- res.end(JSON.stringify({ status: 'healthy', tool: '${server.toolFunction.name}' }));
255
- } else {
256
- res.writeHead(404, { 'Content-Type': 'application/json' });
257
- res.end(JSON.stringify({ error: 'Not found' }));
258
- }
259
- });
260
-
261
- // Start the server
262
- await server.connect(transport);
263
- httpServer.listen(${server.port}, () => {
264
- console.log(\`MCP tool server '${server.toolFunction.name}' listening on port ${server.port}\`);
265
-
266
- // Notify parent that server is ready
267
- if (process.send) {
268
- process.send({ type: 'server-ready' });
269
- }
270
- });
271
-
272
- process.on('SIGTERM', () => {
273
- httpServer.close(() => {
274
- console.log('Server stopped');
275
- process.exit(0);
276
- });
277
- });
278
- `;
279
- }
280
- async startServer(server) {
281
- const toolId = this.getToolId(server.toolFunction.name);
282
- const serverDir = join(this.baseDir, toolId);
283
- const serverFile = server.moduleFile;
284
- return new Promise((resolve, reject) => {
285
- const childProcess = spawn('node', [serverFile], {
286
- cwd: serverDir,
287
- stdio: ['ignore', 'pipe', 'pipe', 'ipc'], // Enable IPC
288
- detached: false,
289
- });
290
- server.process = childProcess;
291
- server.pid = childProcess.pid;
292
- // Handle IPC messages from child process
293
- childProcess.on('message', (message) => {
294
- if (message.type === 'execute-function') {
295
- // Execute the function in the parent process context
296
- this.handleFunctionExecution(message, childProcess);
297
- }
298
- else if (message.type === 'server-ready') {
299
- logger.info({ toolId }, 'Tool server reported ready via IPC');
300
- }
301
- });
302
- childProcess.stdout?.on('data', (data) => {
303
- logger.info({ toolId }, `Tool server stdout: ${data.toString().trim()}`);
304
- });
305
- childProcess.stderr?.on('data', (data) => {
306
- logger.error({ toolId }, `Tool server stderr: ${data.toString().trim()}`);
307
- });
308
- childProcess.on('error', (error) => {
309
- logger.error({ toolId, error: error.message }, 'Failed to start tool server');
310
- reject(error);
311
- });
312
- childProcess.on('exit', (code, signal) => {
313
- logger.info({ toolId, code, signal }, 'Tool server process exited');
314
- server.status = 'stopped';
315
- server.process = undefined;
316
- server.pid = undefined;
317
- });
318
- // Give the process a moment to start
319
- setTimeout(() => {
320
- if (childProcess.pid) {
321
- resolve();
322
- }
323
- else {
324
- reject(new Error('Failed to start server process'));
325
- }
326
- }, 1000);
327
- });
328
- }
329
- async handleFunctionExecution(message, childProcess) {
330
- const { requestId, toolName, params } = message;
331
- const toolFunction = this.toolModules.get(this.getToolId(toolName));
332
- if (!toolFunction) {
333
- childProcess.send({
334
- type: 'function-result',
335
- requestId,
336
- error: `Tool function not found: ${toolName}`,
337
- });
338
- return;
339
- }
340
- try {
341
- const result = await toolFunction.execute(params);
342
- childProcess.send({
343
- type: 'function-result',
344
- requestId,
345
- result,
346
- });
347
- }
348
- catch (error) {
349
- childProcess.send({
350
- type: 'function-result',
351
- requestId,
352
- error: error instanceof Error ? error.message : 'Unknown error',
353
- });
354
- }
355
- }
356
- async waitForServerReady(server, maxRetries = 10) {
357
- for (let i = 0; i < maxRetries; i++) {
358
- try {
359
- const response = await fetch(`http://localhost:${server.port}/health`);
360
- if (response.ok) {
361
- logger.info({ toolId: this.getToolId(server.toolFunction.name) }, 'Server health check passed');
362
- return;
363
- }
364
- }
365
- catch (error) {
366
- // Server not ready yet
367
- }
368
- await new Promise((resolve) => setTimeout(resolve, 500));
369
- }
370
- throw new Error(`Server failed to become ready after ${maxRetries} attempts`);
371
- }
372
- }
373
- // Singleton instance
374
- export const moduleHostedToolManager = new ModuleHostedToolManager();
375
- //# sourceMappingURL=module-hosted-tool-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"module-hosted-tool-manager.js","sourceRoot":"","sources":["../src/module-hosted-tool-manager.ts"],"names":[],"mappings":"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"}
package/dist/runner.d.ts DELETED
@@ -1,38 +0,0 @@
1
- import type { GenerateOptions, GraphInterface, MessageInput, RunResult, StreamResponse } from './types';
2
- export declare class Runner {
3
- /**
4
- * Run a graph until completion, handling transfers and tool calls
5
- * Similar to OpenAI's Runner.run() pattern
6
- * NOTE: This now requires a graph instead of an agent
7
- */
8
- static run(graph: GraphInterface, messages: MessageInput, options?: GenerateOptions): Promise<RunResult>;
9
- /**
10
- * Stream a graph's response
11
- */
12
- static stream(graph: GraphInterface, messages: MessageInput, options?: GenerateOptions): Promise<StreamResponse>;
13
- /**
14
- * Execute multiple graphs in parallel and return the first successful result
15
- */
16
- static raceGraphs(graphs: GraphInterface[], messages: MessageInput, options?: GenerateOptions): Promise<RunResult>;
17
- private static normalizeToMessageHistory;
18
- /**
19
- * Validate graph configuration before running
20
- */
21
- static validateGraph(graph: GraphInterface): {
22
- valid: boolean;
23
- errors: string[];
24
- };
25
- /**
26
- * Get execution statistics for a graph
27
- */
28
- static getExecutionStats(graph: GraphInterface, messages: MessageInput, options?: GenerateOptions): Promise<{
29
- estimatedTurns: number;
30
- estimatedTokens: number;
31
- agentCount: number;
32
- defaultAgent: string | undefined;
33
- }>;
34
- }
35
- export declare const run: typeof Runner.run;
36
- export declare const stream: typeof Runner.stream;
37
- export declare const raceGraphs: typeof Runner.raceGraphs;
38
- //# sourceMappingURL=runner.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,eAAe,EACf,cAAc,EAEd,YAAY,EACZ,SAAS,EACT,cAAc,EAEf,MAAM,SAAS,CAAC;AAKjB,qBAAa,MAAM;IACjB;;;;OAIG;WACU,GAAG,CACd,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,YAAY,EACtB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,SAAS,CAAC;IAoErB;;OAEG;WACU,MAAM,CACjB,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,YAAY,EACtB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,cAAc,CAAC;IAa1B;;OAEG;WACU,UAAU,CACrB,MAAM,EAAE,cAAc,EAAE,EACxB,QAAQ,EAAE,YAAY,EACtB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,SAAS,CAAC;IA2CrB,OAAO,CAAC,MAAM,CAAC,yBAAyB;IAYxC;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,cAAc,GAAG;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE;IAqCjF;;OAEG;WACU,iBAAiB,CAC5B,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,YAAY,EACtB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC;QACT,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,MAAM,CAAC;QACxB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;KAClC,CAAC;CAYH;AAGD,eAAO,MAAM,GAAG,mBAA0B,CAAC;AAC3C,eAAO,MAAM,MAAM,sBAA6B,CAAC;AACjD,eAAO,MAAM,UAAU,0BAAiC,CAAC"}
package/dist/runner.js DELETED
@@ -1,164 +0,0 @@
1
- import { getLogger } from '@inkeep/agents-core';
2
- import { MaxTurnsExceededError } from './types';
3
- const logger = getLogger('runner');
4
- export class Runner {
5
- /**
6
- * Run a graph until completion, handling transfers and tool calls
7
- * Similar to OpenAI's Runner.run() pattern
8
- * NOTE: This now requires a graph instead of an agent
9
- */
10
- static async run(graph, messages, options) {
11
- const maxTurns = options?.maxTurns || 10;
12
- let turnCount = 0;
13
- const messageHistory = Runner.normalizeToMessageHistory(messages);
14
- const allToolCalls = [];
15
- const allTransfers = [];
16
- logger.info({
17
- graphId: graph.getId(),
18
- defaultAgent: graph.getDefaultAgent()?.getName(),
19
- maxTurns,
20
- initialMessageCount: messageHistory.length,
21
- }, 'Starting graph run');
22
- while (turnCount < maxTurns) {
23
- logger.debug({
24
- graphId: graph.getId(),
25
- turnCount,
26
- messageHistoryLength: messageHistory.length,
27
- }, 'Starting turn');
28
- // Use graph.generate to handle agent orchestration
29
- const response = await graph.generate(messageHistory, options);
30
- turnCount++;
31
- // Since graph.generate returns a string (the final response),
32
- // we need to treat this as a completed generation
33
- logger.info({
34
- graphId: graph.getId(),
35
- turnCount,
36
- responseLength: response.length,
37
- }, 'Graph generation completed');
38
- // Return the result wrapped in RunResult format
39
- return {
40
- finalOutput: response,
41
- agent: graph.getDefaultAgent() || {},
42
- turnCount,
43
- usage: { inputTokens: 0, outputTokens: 0 },
44
- metadata: {
45
- toolCalls: allToolCalls,
46
- transfers: [], // Graph handles transfers internally
47
- },
48
- };
49
- }
50
- // Max turns exceeded
51
- logger.error({
52
- graphId: graph.getId(),
53
- maxTurns,
54
- finalTurnCount: turnCount,
55
- }, 'Maximum turns exceeded');
56
- throw new MaxTurnsExceededError(maxTurns);
57
- }
58
- /**
59
- * Stream a graph's response
60
- */
61
- static async stream(graph, messages, options) {
62
- logger.info({
63
- graphId: graph.getId(),
64
- defaultAgent: graph.getDefaultAgent()?.getName(),
65
- }, 'Starting graph stream');
66
- // Delegate to graph's stream method
67
- return graph.stream(messages, options);
68
- }
69
- /**
70
- * Execute multiple graphs in parallel and return the first successful result
71
- */
72
- static async raceGraphs(graphs, messages, options) {
73
- if (graphs.length === 0) {
74
- throw new Error('No graphs provided for race');
75
- }
76
- logger.info({
77
- graphCount: graphs.length,
78
- graphIds: graphs.map((g) => g.getId()),
79
- }, 'Starting graph race');
80
- const promises = graphs.map(async (graph, index) => {
81
- try {
82
- const result = await Runner.run(graph, messages, options);
83
- return { ...result, raceIndex: index };
84
- }
85
- catch (error) {
86
- logger.error({
87
- graphId: graph.getId(),
88
- error: error instanceof Error ? error.message : 'Unknown error',
89
- }, 'Graph failed in race');
90
- throw error;
91
- }
92
- });
93
- const result = await Promise.race(promises);
94
- logger.info({
95
- winningGraphId: result.graphId || 'unknown',
96
- raceIndex: result.raceIndex,
97
- }, 'Graph race completed');
98
- return result;
99
- }
100
- // Private helper methods
101
- static normalizeToMessageHistory(messages) {
102
- if (typeof messages === 'string') {
103
- return [{ role: 'user', content: messages }];
104
- }
105
- if (Array.isArray(messages)) {
106
- return messages.map((msg) => typeof msg === 'string' ? { role: 'user', content: msg } : msg);
107
- }
108
- return [messages];
109
- }
110
- /**
111
- * Validate graph configuration before running
112
- */
113
- static validateGraph(graph) {
114
- const errors = [];
115
- if (!graph.getId()) {
116
- errors.push('Graph ID is required');
117
- }
118
- const defaultAgent = graph.getDefaultAgent();
119
- if (!defaultAgent) {
120
- errors.push('Default agent is required');
121
- }
122
- else {
123
- if (!defaultAgent.getName()) {
124
- errors.push('Default agent name is required');
125
- }
126
- if (!defaultAgent.getInstructions()) {
127
- errors.push('Default agent instructions are required');
128
- }
129
- }
130
- // Validate all agents in the graph
131
- const agents = graph.getAgents();
132
- if (agents.length === 0) {
133
- errors.push('Graph must contain at least one agent');
134
- }
135
- for (const agent of agents) {
136
- if (!agent.getName()) {
137
- errors.push(`Agent missing name`);
138
- }
139
- }
140
- return {
141
- valid: errors.length === 0,
142
- errors,
143
- };
144
- }
145
- /**
146
- * Get execution statistics for a graph
147
- */
148
- static async getExecutionStats(graph, messages, options) {
149
- const agents = graph.getAgents();
150
- const defaultAgent = graph.getDefaultAgent();
151
- const messageCount = Array.isArray(messages) ? messages.length : 1;
152
- return {
153
- estimatedTurns: Math.min(Math.max(messageCount, 1), options?.maxTurns || 10),
154
- estimatedTokens: messageCount * 100, // Rough estimate
155
- agentCount: agents.length,
156
- defaultAgent: defaultAgent?.getName(),
157
- };
158
- }
159
- }
160
- // Export convenience functions that match OpenAI's pattern
161
- export const run = Runner.run.bind(Runner);
162
- export const stream = Runner.stream.bind(Runner);
163
- export const raceGraphs = Runner.raceGraphs.bind(Runner);
164
- //# sourceMappingURL=runner.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAWhD,OAAO,EAAE,qBAAqB,EAAsB,MAAM,SAAS,CAAC;AAEpE,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAEnC,MAAM,OAAO,MAAM;IACjB;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,GAAG,CACd,KAAqB,EACrB,QAAsB,EACtB,OAAyB;QAEzB,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,EAAE,CAAC;QACzC,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,MAAM,cAAc,GAAG,MAAM,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC;QAClE,MAAM,YAAY,GAAe,EAAE,CAAC;QACpC,MAAM,YAAY,GAAyD,EAAE,CAAC;QAE9E,MAAM,CAAC,IAAI,CACT;YACE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE;YACtB,YAAY,EAAE,KAAK,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE;YAChD,QAAQ;YACR,mBAAmB,EAAE,cAAc,CAAC,MAAM;SAC3C,EACD,oBAAoB,CACrB,CAAC;QAEF,OAAO,SAAS,GAAG,QAAQ,EAAE,CAAC;YAC5B,MAAM,CAAC,KAAK,CACV;gBACE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE;gBACtB,SAAS;gBACT,oBAAoB,EAAE,cAAc,CAAC,MAAM;aAC5C,EACD,eAAe,CAChB,CAAC;YAEF,mDAAmD;YACnD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;YAC/D,SAAS,EAAE,CAAC;YAEZ,8DAA8D;YAC9D,kDAAkD;YAClD,MAAM,CAAC,IAAI,CACT;gBACE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE;gBACtB,SAAS;gBACT,cAAc,EAAE,QAAQ,CAAC,MAAM;aAChC,EACD,4BAA4B,CAC7B,CAAC;YAEF,gDAAgD;YAChD,OAAO;gBACL,WAAW,EAAE,QAAQ;gBACrB,KAAK,EAAE,KAAK,CAAC,eAAe,EAAE,IAAK,EAAqB;gBACxD,SAAS;gBACT,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;gBAC1C,QAAQ,EAAE;oBACR,SAAS,EAAE,YAAY;oBACvB,SAAS,EAAE,EAAE,EAAE,qCAAqC;iBACrD;aACF,CAAC;QACJ,CAAC;QAED,qBAAqB;QACrB,MAAM,CAAC,KAAK,CACV;YACE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE;YACtB,QAAQ;YACR,cAAc,EAAE,SAAS;SAC1B,EACD,wBAAwB,CACzB,CAAC;QAEF,MAAM,IAAI,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CACjB,KAAqB,EACrB,QAAsB,EACtB,OAAyB;QAEzB,MAAM,CAAC,IAAI,CACT;YACE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE;YACtB,YAAY,EAAE,KAAK,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE;SACjD,EACD,uBAAuB,CACxB,CAAC;QAEF,oCAAoC;QACpC,OAAO,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,UAAU,CACrB,MAAwB,EACxB,QAAsB,EACtB,OAAyB;QAEzB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,CAAC,IAAI,CACT;YACE,UAAU,EAAE,MAAM,CAAC,MAAM;YACzB,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;SACvC,EACD,qBAAqB,CACtB,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YACjD,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC1D,OAAO,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;YACzC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CACV;oBACE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE;oBACtB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;iBAChE,EACD,sBAAsB,CACvB,CAAC;gBACF,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE5C,MAAM,CAAC,IAAI,CACT;YACE,cAAc,EAAG,MAAc,CAAC,OAAO,IAAI,SAAS;YACpD,SAAS,EAAG,MAAc,CAAC,SAAS;SACrC,EACD,sBAAsB,CACvB,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,yBAAyB;IACjB,MAAM,CAAC,yBAAyB,CAAC,QAAsB;QAC7D,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC1B,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAC/D,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,KAAqB;QACxC,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,YAAY,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;QAC7C,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC5B,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;YAChD,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,EAAE,CAAC;gBACpC,MAAM,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QAED,mCAAmC;QACnC,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QACjC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;QACvD,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAED,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;YAC1B,MAAM;SACP,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAC5B,KAAqB,EACrB,QAAsB,EACtB,OAAyB;QAOzB,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QACjC,MAAM,YAAY,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;QAC7C,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnE,OAAO;YACL,cAAc,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,IAAI,EAAE,CAAC;YAC5E,eAAe,EAAE,YAAY,GAAG,GAAG,EAAE,iBAAiB;YACtD,UAAU,EAAE,MAAM,CAAC,MAAM;YACzB,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE;SACtC,CAAC;IACJ,CAAC;CACF;AAED,2DAA2D;AAC3D,MAAM,CAAC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACjD,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC"}
package/dist/tool.d.ts DELETED
@@ -1,29 +0,0 @@
1
- import type { MCPToolConfig } from '@inkeep/agents-core';
2
- export interface ToolInterface {
3
- config: MCPToolConfig;
4
- init(): Promise<void>;
5
- getId(): string;
6
- getName(): string;
7
- getDescription(): string;
8
- getServerUrl(): string;
9
- getActiveTools(): string[] | undefined;
10
- getCredentialReferenceId(): string | null | undefined;
11
- }
12
- export declare class Tool implements ToolInterface {
13
- config: MCPToolConfig;
14
- private baseURL;
15
- private tenantId;
16
- private initialized;
17
- constructor(config: MCPToolConfig);
18
- getId(): string;
19
- getName(): string;
20
- getDescription(): string;
21
- getServerUrl(): string;
22
- getActiveTools(): string[] | undefined;
23
- getCredentialReferenceId(): string | null | undefined;
24
- init(options?: {
25
- skipDatabaseRegistration?: boolean;
26
- }): Promise<void>;
27
- private upsertTool;
28
- }
29
- //# sourceMappingURL=tool.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../src/tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAKzD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,KAAK,IAAI,MAAM,CAAC;IAChB,OAAO,IAAI,MAAM,CAAC;IAClB,cAAc,IAAI,MAAM,CAAC;IACzB,YAAY,IAAI,MAAM,CAAC;IACvB,cAAc,IAAI,MAAM,EAAE,GAAG,SAAS,CAAC;IACvC,wBAAwB,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CACvD;AAED,qBAAa,IAAK,YAAW,aAAa;IACjC,MAAM,EAAE,aAAa,CAAC;IAC7B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,WAAW,CAAS;gBAEhB,MAAM,EAAE,aAAa;IAcjC,KAAK,IAAI,MAAM;IAIf,OAAO,IAAI,MAAM;IAIjB,cAAc,IAAI,MAAM;IAIxB,YAAY,IAAI,MAAM;IAItB,cAAc,IAAI,MAAM,EAAE,GAAG,SAAS;IAItC,wBAAwB,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS;IAK/C,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,wBAAwB,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YA8B7D,UAAU;CAoFzB"}