@lleverage-ai/agent-sdk 0.0.6 → 0.0.7
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.
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +56 -95
- package/dist/agent.js.map +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -4
- package/dist/index.js.map +1 -1
- package/dist/mcp/manager.d.ts +14 -0
- package/dist/mcp/manager.d.ts.map +1 -1
- package/dist/mcp/manager.js +19 -0
- package/dist/mcp/manager.js.map +1 -1
- package/dist/plugins.d.ts.map +1 -1
- package/dist/plugins.js +2 -0
- package/dist/plugins.js.map +1 -1
- package/dist/prompt-builder/components.d.ts.map +1 -1
- package/dist/prompt-builder/components.js +2 -0
- package/dist/prompt-builder/components.js.map +1 -1
- package/dist/prompt-builder/delegation-component.d.ts +27 -0
- package/dist/prompt-builder/delegation-component.d.ts.map +1 -0
- package/dist/prompt-builder/delegation-component.js +53 -0
- package/dist/prompt-builder/delegation-component.js.map +1 -0
- package/dist/testing/mock-agent.d.ts.map +1 -1
- package/dist/testing/mock-agent.js +0 -4
- package/dist/testing/mock-agent.js.map +1 -1
- package/dist/testing/recorder.d.ts.map +1 -1
- package/dist/testing/recorder.js +0 -3
- package/dist/testing/recorder.js.map +1 -1
- package/dist/tools/call-tool.d.ts +59 -0
- package/dist/tools/call-tool.d.ts.map +1 -0
- package/dist/tools/call-tool.js +93 -0
- package/dist/tools/call-tool.js.map +1 -0
- package/dist/tools/factory.d.ts +10 -2
- package/dist/tools/factory.d.ts.map +1 -1
- package/dist/tools/factory.js +10 -1
- package/dist/tools/factory.js.map +1 -1
- package/dist/tools/index.d.ts +2 -2
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +2 -2
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/search.d.ts +8 -0
- package/dist/tools/search.d.ts.map +1 -1
- package/dist/tools/search.js +41 -2
- package/dist/tools/search.js.map +1 -1
- package/dist/types.d.ts +99 -44
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +5 -3
- package/dist/tools/tool-registry.d.ts +0 -424
- package/dist/tools/tool-registry.d.ts.map +0 -1
- package/dist/tools/tool-registry.js +0 -607
- package/dist/tools/tool-registry.js.map +0 -1
|
@@ -1,424 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Tool Registry for progressive tool disclosure.
|
|
3
|
-
*
|
|
4
|
-
* The ToolRegistry enables deferred tool loading to keep initial context small.
|
|
5
|
-
* Instead of loading all tool schemas upfront, tools are registered with lightweight
|
|
6
|
-
* metadata and loaded on-demand when the agent needs them.
|
|
7
|
-
*
|
|
8
|
-
* This mirrors the MCP Tool Search pattern used in Claude Code, where hundreds
|
|
9
|
-
* of tools can be available without consuming context window until needed.
|
|
10
|
-
*
|
|
11
|
-
* @packageDocumentation
|
|
12
|
-
*/
|
|
13
|
-
import type { Tool, ToolSet } from "ai";
|
|
14
|
-
/**
|
|
15
|
-
* Lightweight metadata for a registered tool.
|
|
16
|
-
*
|
|
17
|
-
* This is what the agent sees before loading - just enough information
|
|
18
|
-
* to decide whether to load the full tool definition.
|
|
19
|
-
*
|
|
20
|
-
* @category Tools
|
|
21
|
-
*/
|
|
22
|
-
export interface ToolMetadata {
|
|
23
|
-
/** Tool name (unique identifier) */
|
|
24
|
-
name: string;
|
|
25
|
-
/** Brief description for search/discovery */
|
|
26
|
-
description: string;
|
|
27
|
-
/** Plugin that provides this tool (if any) */
|
|
28
|
-
plugin?: string;
|
|
29
|
-
/** Category for grouping related tools */
|
|
30
|
-
category?: string;
|
|
31
|
-
/** Tags for semantic search */
|
|
32
|
-
tags?: string[];
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Result from loading tools.
|
|
36
|
-
*
|
|
37
|
-
* @category Tools
|
|
38
|
-
*/
|
|
39
|
-
export interface ToolLoadResult {
|
|
40
|
-
/** Whether loading was successful */
|
|
41
|
-
success: boolean;
|
|
42
|
-
/** Names of tools that were loaded */
|
|
43
|
-
loaded: string[];
|
|
44
|
-
/** Names of tools that were already loaded (skipped) */
|
|
45
|
-
skipped: string[];
|
|
46
|
-
/** Names of tools that weren't found */
|
|
47
|
-
notFound: string[];
|
|
48
|
-
/** The loaded tools as a ToolSet */
|
|
49
|
-
tools: ToolSet;
|
|
50
|
-
/** Error message if something went wrong */
|
|
51
|
-
error?: string;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Options for creating a tool registry.
|
|
55
|
-
*
|
|
56
|
-
* @category Tools
|
|
57
|
-
*/
|
|
58
|
-
export interface ToolRegistryOptions {
|
|
59
|
-
/**
|
|
60
|
-
* Callback when tools are loaded.
|
|
61
|
-
*/
|
|
62
|
-
onToolsLoaded?: (result: ToolLoadResult) => void;
|
|
63
|
-
/**
|
|
64
|
-
* Callback when the registry is updated.
|
|
65
|
-
*/
|
|
66
|
-
onRegistryUpdated?: () => void;
|
|
67
|
-
/**
|
|
68
|
-
* Callback when a tool is registered.
|
|
69
|
-
*/
|
|
70
|
-
onToolRegistered?: (input: {
|
|
71
|
-
tool_name: string;
|
|
72
|
-
description: string;
|
|
73
|
-
source?: string;
|
|
74
|
-
}) => void | Promise<void>;
|
|
75
|
-
/**
|
|
76
|
-
* Callback when a tool fails to load.
|
|
77
|
-
*/
|
|
78
|
-
onToolLoadError?: (input: {
|
|
79
|
-
tool_name: string;
|
|
80
|
-
error: Error;
|
|
81
|
-
source?: string;
|
|
82
|
-
}) => void | Promise<void>;
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Options for searching tools.
|
|
86
|
-
*
|
|
87
|
-
* @category Tools
|
|
88
|
-
*/
|
|
89
|
-
export interface ToolSearchOptions {
|
|
90
|
-
/** Search query (matches name, description, tags) */
|
|
91
|
-
query?: string;
|
|
92
|
-
/** Filter by plugin name */
|
|
93
|
-
plugin?: string;
|
|
94
|
-
/** Filter by category */
|
|
95
|
-
category?: string;
|
|
96
|
-
/** Filter by tags (any match) */
|
|
97
|
-
tags?: string[];
|
|
98
|
-
/** Include already-loaded tools in results */
|
|
99
|
-
includeLoaded?: boolean;
|
|
100
|
-
/** Maximum results to return */
|
|
101
|
-
limit?: number;
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Registry for managing tools with deferred loading.
|
|
105
|
-
*
|
|
106
|
-
* The ToolRegistry stores tools with lightweight metadata and loads full
|
|
107
|
-
* definitions on-demand. This enables agents to have access to hundreds of
|
|
108
|
-
* tools without consuming context window until needed.
|
|
109
|
-
*
|
|
110
|
-
* @example
|
|
111
|
-
* ```typescript
|
|
112
|
-
* const registry = new ToolRegistry();
|
|
113
|
-
*
|
|
114
|
-
* // Register tools (does not load them)
|
|
115
|
-
* registry.register({
|
|
116
|
-
* name: "stripe_create_payment",
|
|
117
|
-
* description: "Create a payment intent in Stripe",
|
|
118
|
-
* plugin: "stripe",
|
|
119
|
-
* tool: stripeCreatePaymentTool,
|
|
120
|
-
* });
|
|
121
|
-
*
|
|
122
|
-
* // Agent searches for tools
|
|
123
|
-
* const matches = registry.search({ query: "payment" });
|
|
124
|
-
* // Returns: [{ name: "stripe_create_payment", description: "..." }]
|
|
125
|
-
*
|
|
126
|
-
* // Agent loads tools when needed
|
|
127
|
-
* const result = registry.load(["stripe_create_payment"]);
|
|
128
|
-
* // Tools are now available for use
|
|
129
|
-
* ```
|
|
130
|
-
*
|
|
131
|
-
* @category Tools
|
|
132
|
-
*/
|
|
133
|
-
export declare class ToolRegistry {
|
|
134
|
-
/** All registered tools */
|
|
135
|
-
private entries;
|
|
136
|
-
/** Callbacks */
|
|
137
|
-
private onToolsLoaded?;
|
|
138
|
-
private onRegistryUpdated?;
|
|
139
|
-
private onToolRegistered?;
|
|
140
|
-
private onToolLoadError?;
|
|
141
|
-
/**
|
|
142
|
-
* Creates a new tool registry.
|
|
143
|
-
*
|
|
144
|
-
* @param options - Configuration options
|
|
145
|
-
*/
|
|
146
|
-
constructor(options?: ToolRegistryOptions);
|
|
147
|
-
/**
|
|
148
|
-
* Register a tool with the registry.
|
|
149
|
-
*
|
|
150
|
-
* The tool is stored but not loaded - only metadata is exposed until
|
|
151
|
-
* the tool is explicitly loaded.
|
|
152
|
-
*
|
|
153
|
-
* @param metadata - Tool metadata
|
|
154
|
-
* @param toolDef - The full tool definition
|
|
155
|
-
* @throws Error if a tool with the same name is already registered
|
|
156
|
-
*
|
|
157
|
-
* @example
|
|
158
|
-
* ```typescript
|
|
159
|
-
* registry.register(
|
|
160
|
-
* {
|
|
161
|
-
* name: "send_email",
|
|
162
|
-
* description: "Send an email via SMTP",
|
|
163
|
-
* plugin: "email",
|
|
164
|
-
* category: "communication",
|
|
165
|
-
* tags: ["email", "notification"],
|
|
166
|
-
* },
|
|
167
|
-
* sendEmailTool
|
|
168
|
-
* );
|
|
169
|
-
* ```
|
|
170
|
-
*/
|
|
171
|
-
register(metadata: ToolMetadata, toolDef: Tool): void;
|
|
172
|
-
/**
|
|
173
|
-
* Register multiple tools at once.
|
|
174
|
-
*
|
|
175
|
-
* @param tools - Array of [metadata, tool] tuples
|
|
176
|
-
*
|
|
177
|
-
* @example
|
|
178
|
-
* ```typescript
|
|
179
|
-
* registry.registerMany([
|
|
180
|
-
* [{ name: "tool1", description: "..." }, tool1],
|
|
181
|
-
* [{ name: "tool2", description: "..." }, tool2],
|
|
182
|
-
* ]);
|
|
183
|
-
* ```
|
|
184
|
-
*/
|
|
185
|
-
registerMany(tools: Array<[ToolMetadata, Tool]>): void;
|
|
186
|
-
/**
|
|
187
|
-
* Register all tools from a plugin.
|
|
188
|
-
*
|
|
189
|
-
* Convenience method that extracts tool metadata and registers each tool
|
|
190
|
-
* with the plugin name attached.
|
|
191
|
-
*
|
|
192
|
-
* @param pluginName - Name of the plugin
|
|
193
|
-
* @param tools - ToolSet from the plugin
|
|
194
|
-
* @param options - Optional metadata overrides
|
|
195
|
-
*
|
|
196
|
-
* @example
|
|
197
|
-
* ```typescript
|
|
198
|
-
* registry.registerPlugin("stripe", stripePlugin.tools, {
|
|
199
|
-
* category: "payments",
|
|
200
|
-
* });
|
|
201
|
-
* ```
|
|
202
|
-
*/
|
|
203
|
-
registerPlugin(pluginName: string, tools: ToolSet, options?: {
|
|
204
|
-
category?: string;
|
|
205
|
-
tags?: string[];
|
|
206
|
-
}): void;
|
|
207
|
-
/**
|
|
208
|
-
* Unregister a tool from the registry.
|
|
209
|
-
*
|
|
210
|
-
* @param name - The tool name to unregister
|
|
211
|
-
* @returns True if the tool was found and removed
|
|
212
|
-
*/
|
|
213
|
-
unregister(name: string): boolean;
|
|
214
|
-
/**
|
|
215
|
-
* Check if a tool is registered.
|
|
216
|
-
*
|
|
217
|
-
* @param name - The tool name to check
|
|
218
|
-
*/
|
|
219
|
-
has(name: string): boolean;
|
|
220
|
-
/**
|
|
221
|
-
* Check if a tool is currently loaded.
|
|
222
|
-
*
|
|
223
|
-
* @param name - The tool name to check
|
|
224
|
-
*/
|
|
225
|
-
isLoaded(name: string): boolean;
|
|
226
|
-
/**
|
|
227
|
-
* Get metadata for a registered tool.
|
|
228
|
-
*
|
|
229
|
-
* @param name - The tool name
|
|
230
|
-
* @returns Tool metadata or undefined if not found
|
|
231
|
-
*/
|
|
232
|
-
getMetadata(name: string): ToolMetadata | undefined;
|
|
233
|
-
/**
|
|
234
|
-
* Search for tools matching criteria.
|
|
235
|
-
*
|
|
236
|
-
* Searches tool metadata (name, description, tags) without loading
|
|
237
|
-
* the full tool definitions.
|
|
238
|
-
*
|
|
239
|
-
* @param options - Search options
|
|
240
|
-
* @returns Array of matching tool metadata
|
|
241
|
-
*
|
|
242
|
-
* @example
|
|
243
|
-
* ```typescript
|
|
244
|
-
* // Search by query
|
|
245
|
-
* const paymentTools = registry.search({ query: "payment" });
|
|
246
|
-
*
|
|
247
|
-
* // Filter by plugin
|
|
248
|
-
* const stripeTools = registry.search({ plugin: "stripe" });
|
|
249
|
-
*
|
|
250
|
-
* // Combined search
|
|
251
|
-
* const results = registry.search({
|
|
252
|
-
* query: "create",
|
|
253
|
-
* plugin: "stripe",
|
|
254
|
-
* limit: 5,
|
|
255
|
-
* });
|
|
256
|
-
* ```
|
|
257
|
-
*/
|
|
258
|
-
search(options?: ToolSearchOptions): ToolMetadata[];
|
|
259
|
-
/**
|
|
260
|
-
* Load tools, making them available for use.
|
|
261
|
-
*
|
|
262
|
-
* @param names - Tool names to load
|
|
263
|
-
* @returns Result containing loaded tools and status
|
|
264
|
-
*
|
|
265
|
-
* @example
|
|
266
|
-
* ```typescript
|
|
267
|
-
* const result = registry.load(["stripe_create_payment", "stripe_refund"]);
|
|
268
|
-
* if (result.success) {
|
|
269
|
-
* // result.tools contains the loaded ToolSet
|
|
270
|
-
* // Inject into agent's active tools
|
|
271
|
-
* }
|
|
272
|
-
* ```
|
|
273
|
-
*/
|
|
274
|
-
load(names: string[]): ToolLoadResult;
|
|
275
|
-
/**
|
|
276
|
-
* Load tools matching a search query.
|
|
277
|
-
*
|
|
278
|
-
* Convenience method combining search and load.
|
|
279
|
-
*
|
|
280
|
-
* @param options - Search options (same as search())
|
|
281
|
-
* @returns Result containing loaded tools
|
|
282
|
-
*
|
|
283
|
-
* @example
|
|
284
|
-
* ```typescript
|
|
285
|
-
* const result = registry.loadMatching({ query: "stripe", limit: 5 });
|
|
286
|
-
* ```
|
|
287
|
-
*/
|
|
288
|
-
loadMatching(options: ToolSearchOptions): ToolLoadResult;
|
|
289
|
-
/**
|
|
290
|
-
* Get all currently loaded tools as a ToolSet.
|
|
291
|
-
*
|
|
292
|
-
* @returns ToolSet containing all loaded tools
|
|
293
|
-
*/
|
|
294
|
-
getLoadedTools(): ToolSet;
|
|
295
|
-
/**
|
|
296
|
-
* List all available (not yet loaded) tools.
|
|
297
|
-
*
|
|
298
|
-
* @returns Array of tool metadata
|
|
299
|
-
*/
|
|
300
|
-
listAvailable(): ToolMetadata[];
|
|
301
|
-
/**
|
|
302
|
-
* List all loaded tools.
|
|
303
|
-
*
|
|
304
|
-
* @returns Array of tool names
|
|
305
|
-
*/
|
|
306
|
-
listLoaded(): string[];
|
|
307
|
-
/**
|
|
308
|
-
* List all registered tools with their load status.
|
|
309
|
-
*
|
|
310
|
-
* @returns Array of tool metadata with loaded flag
|
|
311
|
-
*/
|
|
312
|
-
listAll(): Array<ToolMetadata & {
|
|
313
|
-
loaded: boolean;
|
|
314
|
-
}>;
|
|
315
|
-
/**
|
|
316
|
-
* Get all plugins that have registered tools.
|
|
317
|
-
*
|
|
318
|
-
* @returns Array of unique plugin names
|
|
319
|
-
*/
|
|
320
|
-
listPlugins(): string[];
|
|
321
|
-
/**
|
|
322
|
-
* Reset all tools to unloaded state.
|
|
323
|
-
*
|
|
324
|
-
* Does not unregister tools, only marks them as unloaded.
|
|
325
|
-
*/
|
|
326
|
-
reset(): void;
|
|
327
|
-
/**
|
|
328
|
-
* Clear all registered tools.
|
|
329
|
-
*/
|
|
330
|
-
clear(): void;
|
|
331
|
-
/**
|
|
332
|
-
* Get the number of registered tools.
|
|
333
|
-
*/
|
|
334
|
-
get size(): number;
|
|
335
|
-
/**
|
|
336
|
-
* Get the number of loaded tools.
|
|
337
|
-
*/
|
|
338
|
-
get loadedCount(): number;
|
|
339
|
-
/**
|
|
340
|
-
* Build the tool index string for the use_tools description.
|
|
341
|
-
*
|
|
342
|
-
* This creates a compact representation of available tools that fits
|
|
343
|
-
* in the meta-tool description.
|
|
344
|
-
*
|
|
345
|
-
* @param options - Formatting options
|
|
346
|
-
* @returns Formatted tool index string
|
|
347
|
-
*/
|
|
348
|
-
buildToolIndex(options?: {
|
|
349
|
-
includePlugins?: boolean;
|
|
350
|
-
}): string;
|
|
351
|
-
}
|
|
352
|
-
/**
|
|
353
|
-
* Options for creating the use_tools meta-tool.
|
|
354
|
-
*
|
|
355
|
-
* @category Tools
|
|
356
|
-
*/
|
|
357
|
-
export interface UseToolsToolOptions {
|
|
358
|
-
/** The tool registry to use */
|
|
359
|
-
registry: ToolRegistry;
|
|
360
|
-
/**
|
|
361
|
-
* Custom name for the tool.
|
|
362
|
-
* @defaultValue "use_tools"
|
|
363
|
-
*/
|
|
364
|
-
name?: string;
|
|
365
|
-
/**
|
|
366
|
-
* Custom description prefix.
|
|
367
|
-
*/
|
|
368
|
-
descriptionPrefix?: string;
|
|
369
|
-
/**
|
|
370
|
-
* Whether to include plugin groupings in tool index.
|
|
371
|
-
* @defaultValue true
|
|
372
|
-
*/
|
|
373
|
-
groupByPlugin?: boolean;
|
|
374
|
-
}
|
|
375
|
-
/**
|
|
376
|
-
* Creates the use_tools meta-tool for discovering and loading tools.
|
|
377
|
-
*
|
|
378
|
-
* This tool allows agents to search available tools and load them on-demand.
|
|
379
|
-
* Tools loaded through this tool become available in subsequent agent steps.
|
|
380
|
-
*
|
|
381
|
-
* @param options - Configuration options
|
|
382
|
-
* @returns An AI SDK compatible tool
|
|
383
|
-
*
|
|
384
|
-
* @example
|
|
385
|
-
* ```typescript
|
|
386
|
-
* const registry = new ToolRegistry();
|
|
387
|
-
* registry.registerPlugin("stripe", stripePlugin.tools);
|
|
388
|
-
*
|
|
389
|
-
* const useToolsTool = createUseToolsTool({ registry });
|
|
390
|
-
*
|
|
391
|
-
* const agent = createAgent({
|
|
392
|
-
* model,
|
|
393
|
-
* tools: {
|
|
394
|
-
* ...coreTools,
|
|
395
|
-
* use_tools: useToolsTool,
|
|
396
|
-
* },
|
|
397
|
-
* toolRegistry: registry,
|
|
398
|
-
* });
|
|
399
|
-
* ```
|
|
400
|
-
*
|
|
401
|
-
* @category Tools
|
|
402
|
-
*/
|
|
403
|
-
export declare function createUseToolsTool(options: UseToolsToolOptions): Tool<{
|
|
404
|
-
query?: string | undefined;
|
|
405
|
-
tools?: string[] | undefined;
|
|
406
|
-
plugin?: string | undefined;
|
|
407
|
-
}, Record<string, unknown>>;
|
|
408
|
-
/**
|
|
409
|
-
* Creates a new tool registry.
|
|
410
|
-
*
|
|
411
|
-
* @param options - Configuration options
|
|
412
|
-
* @returns A new ToolRegistry instance
|
|
413
|
-
*
|
|
414
|
-
* @example
|
|
415
|
-
* ```typescript
|
|
416
|
-
* const registry = createToolRegistry({
|
|
417
|
-
* onToolsLoaded: (result) => console.log("Loaded:", result.loaded),
|
|
418
|
-
* });
|
|
419
|
-
* ```
|
|
420
|
-
*
|
|
421
|
-
* @category Tools
|
|
422
|
-
*/
|
|
423
|
-
export declare function createToolRegistry(options?: ToolRegistryOptions): ToolRegistry;
|
|
424
|
-
//# sourceMappingURL=tool-registry.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool-registry.d.ts","sourceRoot":"","sources":["../../src/tools/tool-registry.ts"],"names":[],"mappings":"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"}
|