@alexnetrebskii/hive-agent 0.24.0 → 0.26.0

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 (61) hide show
  1. package/dist/agent.d.ts +2 -2
  2. package/dist/agent.d.ts.map +1 -1
  3. package/dist/agent.js +48 -360
  4. package/dist/agent.js.map +1 -1
  5. package/dist/executor.d.ts +1 -1
  6. package/dist/executor.d.ts.map +1 -1
  7. package/dist/index.d.ts +2 -2
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +6 -2
  10. package/dist/index.js.map +1 -1
  11. package/dist/prompt/index.d.ts +10 -0
  12. package/dist/prompt/index.d.ts.map +1 -0
  13. package/dist/prompt/index.js +11 -0
  14. package/dist/prompt/index.js.map +1 -0
  15. package/dist/prompt/main-agent-builder.d.ts +76 -0
  16. package/dist/prompt/main-agent-builder.d.ts.map +1 -0
  17. package/dist/prompt/main-agent-builder.js +216 -0
  18. package/dist/prompt/main-agent-builder.js.map +1 -0
  19. package/dist/prompt/sub-agent-builder.d.ts +133 -0
  20. package/dist/prompt/sub-agent-builder.d.ts.map +1 -0
  21. package/dist/prompt/sub-agent-builder.js +332 -0
  22. package/dist/prompt/sub-agent-builder.js.map +1 -0
  23. package/dist/prompt/templates.d.ts +87 -0
  24. package/dist/prompt/templates.d.ts.map +1 -0
  25. package/dist/prompt/templates.js +338 -0
  26. package/dist/prompt/templates.js.map +1 -0
  27. package/dist/prompt/types.d.ts +159 -0
  28. package/dist/prompt/types.d.ts.map +1 -0
  29. package/dist/prompt/types.js +5 -0
  30. package/dist/prompt/types.js.map +1 -0
  31. package/dist/prompt.d.ts +1 -0
  32. package/dist/prompt.d.ts.map +1 -1
  33. package/dist/prompt.js +2 -0
  34. package/dist/prompt.js.map +1 -1
  35. package/dist/providers/dataset/recorder.d.ts.map +1 -1
  36. package/dist/providers/dataset/recorder.js +8 -2
  37. package/dist/providers/dataset/recorder.js.map +1 -1
  38. package/dist/tools/ask-user.d.ts +11 -0
  39. package/dist/tools/ask-user.d.ts.map +1 -0
  40. package/dist/tools/ask-user.js +88 -0
  41. package/dist/tools/ask-user.js.map +1 -0
  42. package/dist/tools/index.d.ts +10 -0
  43. package/dist/tools/index.d.ts.map +1 -0
  44. package/dist/tools/index.js +14 -0
  45. package/dist/tools/index.js.map +1 -0
  46. package/dist/tools/output.d.ts +15 -0
  47. package/dist/tools/output.d.ts.map +1 -0
  48. package/dist/tools/output.js +40 -0
  49. package/dist/tools/output.js.map +1 -0
  50. package/dist/tools/task.d.ts +25 -0
  51. package/dist/tools/task.d.ts.map +1 -0
  52. package/dist/tools/task.js +292 -0
  53. package/dist/tools/task.js.map +1 -0
  54. package/dist/{todo.d.ts → tools/todo.d.ts} +1 -1
  55. package/dist/tools/todo.d.ts.map +1 -0
  56. package/dist/tools/todo.js +476 -0
  57. package/dist/tools/todo.js.map +1 -0
  58. package/package.json +1 -1
  59. package/dist/todo.d.ts.map +0 -1
  60. package/dist/todo.js +0 -325
  61. package/dist/todo.js.map +0 -1
package/dist/agent.d.ts CHANGED
@@ -3,8 +3,8 @@
3
3
  *
4
4
  * Main agent class that orchestrates tool execution, sub-agents, and context management.
5
5
  */
6
- import type { HiveConfig, RunOptions, AgentResult } from './types.js';
7
- import { TraceBuilder } from './trace.js';
6
+ import type { HiveConfig, RunOptions, AgentResult } from "./types.js";
7
+ import { TraceBuilder } from "./trace.js";
8
8
  /**
9
9
  * Hive Agent Class
10
10
  */
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,UAAU,EAGV,UAAU,EACV,WAAW,EAIZ,MAAM,YAAY,CAAA;AAInB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAqWzC;;GAEG;AACH,qBAAa,IAAI;IACf,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;IAC3B,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,KAAK,CAAQ;IACrB,oEAAoE;IACpE,OAAO,CAAC,mBAAmB,CAAC,CAAc;gBAE9B,MAAM,EAAE,UAAU;IA2B9B;;OAEG;IACH,sBAAsB,IAAI,YAAY,GAAG,SAAS;IAIlD;;OAEG;IACH,sBAAsB,CAAC,OAAO,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI;IAI/D;;OAEG;IACH,OAAO,CAAC,WAAW;IAcnB;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CA2I3E"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,UAAU,EAGV,UAAU,EACV,WAAW,EAEZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAS1C;;GAEG;AACH,qBAAa,IAAI;IACf,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,KAAK,CAAS;IACtB,oEAAoE;IACpE,OAAO,CAAC,mBAAmB,CAAC,CAAe;gBAE/B,MAAM,EAAE,UAAU;IAoC9B;;OAEG;IACH,sBAAsB,IAAI,YAAY,GAAG,SAAS;IAIlD;;OAEG;IACH,sBAAsB,CAAC,OAAO,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI;IAI/D;;OAEG;IACH,OAAO,CAAC,WAAW;IAenB;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAqK3E"}
package/dist/agent.js CHANGED
@@ -3,331 +3,11 @@
3
3
  *
4
4
  * Main agent class that orchestrates tool execution, sub-agents, and context management.
5
5
  */
6
- import { ContextManager } from './context-manager.js';
7
- import { executeLoop } from './executor.js';
8
- import { TodoManager, createTodoTool } from './todo.js';
9
- import { TraceBuilder } from './trace.js';
10
- import { createContextTools } from './context.js';
11
- /**
12
- * Create the __ask_user__ tool
13
- */
14
- function createAskUserTool() {
15
- return {
16
- name: '__ask_user__',
17
- description: `Ask the user clarifying question(s) when you need more information.
18
-
19
- Format:
20
- {
21
- "questions": [
22
- {
23
- "question": "Which database should we use?",
24
- "header": "Database",
25
- "options": [
26
- { "label": "PostgreSQL", "description": "Best for complex queries" },
27
- { "label": "MongoDB", "description": "Best for flexible schemas" }
28
- ]
29
- }
30
- ]
31
- }
32
-
33
- Usage:
34
- - Use when requirements are ambiguous
35
- - Use when you need the user to make a decision
36
- - questions array can have 1-4 questions`,
37
- parameters: {
38
- type: 'object',
39
- properties: {
40
- questions: {
41
- type: 'array',
42
- description: 'Array of 1-4 questions. Each item has: question (string, required), header (short label, optional), options (array of {label, description}, optional)'
43
- }
44
- },
45
- required: ['questions']
46
- },
47
- execute: async () => {
48
- // This tool is handled specially in the executor
49
- return { success: true, data: 'Question sent to user' };
50
- }
51
- };
52
- }
53
- /**
54
- * Output tool name constant
55
- */
56
- const OUTPUT_TOOL_NAME = '__output__';
57
- /**
58
- * Create the __output__ tool for sub-agents to return structured data
59
- */
60
- function createOutputTool(outputSchema) {
61
- return {
62
- name: OUTPUT_TOOL_NAME,
63
- description: `Return structured output data to the parent agent.
64
-
65
- Use this tool when you have completed your task and want to return results.
66
- Include a brief summary and the structured data.
67
-
68
- IMPORTANT: Call this tool ONCE when your task is complete.`,
69
- parameters: {
70
- type: 'object',
71
- properties: {
72
- summary: {
73
- type: 'string',
74
- description: 'Brief summary of what was done (1-2 sentences)'
75
- },
76
- data: outputSchema
77
- },
78
- required: ['summary', 'data']
79
- },
80
- execute: async (params) => {
81
- // This tool doesn't actually execute - it's intercepted by the parent
82
- // The executor will capture this and return it as the result
83
- return { success: true, data: params };
84
- }
85
- };
86
- }
87
- /**
88
- * Build description for agent in __task__ tool
89
- */
90
- function buildAgentDescription(agent) {
91
- let desc = `- **${agent.name}**: ${agent.description}`;
92
- if (agent.inputSchema?.properties) {
93
- const props = agent.inputSchema.properties;
94
- const paramList = Object.entries(props)
95
- .map(([name, schema]) => `${name}: ${schema.description || schema.type || 'any'}`)
96
- .join(', ');
97
- desc += `\n Parameters: { ${paramList} }`;
98
- }
99
- if (agent.outputSchema) {
100
- desc += `\n Returns: structured data (summary + data object)`;
101
- }
102
- return desc;
103
- }
104
- /**
105
- * Create the __task__ tool for spawning sub-agents
106
- */
107
- function createTaskTool(hive, agents) {
108
- const agentNames = agents.map(a => a.name);
109
- const agentDescriptions = agents.map(buildAgentDescription).join('\n');
110
- // Build combined properties from all agents
111
- // Runtime validation will check agent-specific requirements
112
- const combinedProperties = {
113
- agent: {
114
- type: 'string',
115
- enum: agentNames,
116
- description: 'Which agent to spawn'
117
- }
118
- };
119
- // Add properties from all agent inputSchemas
120
- for (const agent of agents) {
121
- if (agent.inputSchema?.properties) {
122
- const props = agent.inputSchema.properties;
123
- for (const [key, schema] of Object.entries(props)) {
124
- if (!combinedProperties[key]) {
125
- combinedProperties[key] = {
126
- type: schema.type || 'string',
127
- description: `[${agent.name}] ${schema.description || ''}`
128
- };
129
- }
130
- }
131
- }
132
- }
133
- // Add prompt for legacy agents
134
- const hasLegacyAgent = agents.some(a => !a.inputSchema);
135
- if (hasLegacyAgent && !combinedProperties.prompt) {
136
- combinedProperties.prompt = {
137
- type: 'string',
138
- description: 'The task for the agent to perform (for agents without inputSchema)'
139
- };
140
- }
141
- return {
142
- name: '__task__',
143
- description: `Spawn a sub-agent to handle a specific task.
144
-
145
- Available agents:
146
- ${agentDescriptions}
147
-
148
- Usage:
149
- - Select the agent and provide required parameters
150
- - Sub-agents are isolated and don't see your conversation history
151
- - They return a summary and optional structured data`,
152
- parameters: {
153
- type: 'object',
154
- properties: combinedProperties,
155
- required: ['agent']
156
- },
157
- execute: async (params, toolCtx) => {
158
- const { agent: agentName, ...inputParams } = params;
159
- const agentConfig = agents.find(a => a.name === agentName);
160
- if (!agentConfig) {
161
- return { success: false, error: `Unknown agent: ${agentName}` };
162
- }
163
- // Build the input message for the sub-agent
164
- let inputMessage;
165
- if (agentConfig.inputSchema) {
166
- // Schema-based: pass parameters as JSON
167
- inputMessage = `Task parameters:\n${JSON.stringify(inputParams, null, 2)}`;
168
- }
169
- else {
170
- // Legacy: use prompt directly
171
- inputMessage = inputParams.prompt || '';
172
- }
173
- // Log sub-agent start
174
- hive.config.logger?.info(`[Sub-Agent: ${agentName}] Starting...`);
175
- hive.config.logger?.debug(`[Sub-Agent: ${agentName}] Input: ${inputMessage.slice(0, 200)}${inputMessage.length > 200 ? '...' : ''}`);
176
- // Progress: sub-agent starting
177
- hive.config.logger?.onProgress?.({
178
- type: 'sub_agent_start',
179
- message: `Starting ${agentName}...`,
180
- details: { agentName }
181
- });
182
- try {
183
- // Create a wrapper logger that prefixes sub-agent logs
184
- const subLogger = hive.config.logger ? {
185
- ...hive.config.logger,
186
- debug: (msg, data) => hive.config.logger?.debug(`[${agentName}] ${msg}`, data),
187
- info: (msg, data) => hive.config.logger?.info(`[${agentName}] ${msg}`, data),
188
- warn: (msg, data) => hive.config.logger?.warn(`[${agentName}] ${msg}`, data),
189
- error: (msg, data) => hive.config.logger?.error(`[${agentName}] ${msg}`, data),
190
- onToolCall: (toolName, toolParams) => {
191
- hive.config.logger?.info(`[${agentName}] Tool: ${toolName}`);
192
- hive.config.logger?.onToolCall?.(toolName, toolParams);
193
- },
194
- onToolResult: (toolName, result, durationMs) => {
195
- const status = result.success ? 'OK' : 'ERROR';
196
- hive.config.logger?.info(`[${agentName}] Tool ${toolName}: ${status} (${durationMs}ms)`);
197
- hive.config.logger?.onToolResult?.(toolName, result, durationMs);
198
- },
199
- onProgress: (update) => {
200
- // Prefix sub-agent progress messages
201
- hive.config.logger?.onProgress?.({
202
- ...update,
203
- message: `[${agentName}] ${update.message}`
204
- });
205
- }
206
- } : undefined;
207
- // Use agent-specific LLM/model or fall back to parent's
208
- const subLlm = agentConfig.llm || hive.config.llm;
209
- // Build sub-agent tools - include __output__ if outputSchema is defined
210
- const subTools = agentConfig.outputSchema
211
- ? [...agentConfig.tools, createOutputTool(agentConfig.outputSchema)]
212
- : agentConfig.tools;
213
- // Get parent's trace builder for nested tracing
214
- const parentTraceBuilder = hive.getCurrentTraceBuilder();
215
- // Start sub-agent span in trace
216
- if (parentTraceBuilder) {
217
- parentTraceBuilder.startSubAgent(agentName, inputMessage);
218
- }
219
- const subHive = new Hive({
220
- systemPrompt: agentConfig.systemPrompt,
221
- tools: subTools,
222
- llm: subLlm,
223
- logger: subLogger,
224
- maxIterations: agentConfig.maxIterations || hive.config.maxIterations,
225
- disableAskUser: true, // Sub-agents return questions as text, not via __ask_user__
226
- // Pass parent's trace config for nested sub-agents
227
- trace: hive.config.trace,
228
- agentName: agentName
229
- });
230
- const result = await subHive.run(inputMessage, {
231
- // Pass trace builder for nested tracing
232
- _traceBuilder: parentTraceBuilder,
233
- // Pass context to sub-agent so its tools receive the same context
234
- conversationId: toolCtx.conversationId,
235
- userId: toolCtx.userId,
236
- // Pass context so sub-agent can read/write to same context
237
- context: toolCtx.context
238
- });
239
- // End sub-agent span in trace
240
- if (parentTraceBuilder) {
241
- const status = result.status === 'complete' ? 'complete' :
242
- result.status === 'interrupted' ? 'interrupted' : 'error';
243
- parentTraceBuilder.endSubAgent(status, result.response);
244
- }
245
- // Log sub-agent completion with details
246
- hive.config.logger?.info(`[Sub-Agent: ${agentName}] Completed with status: ${result.status}`);
247
- hive.config.logger?.debug(`[Sub-Agent: ${agentName}] Tool calls: ${result.toolCalls.length}`, result.toolCalls.map(tc => tc.name));
248
- hive.config.logger?.debug(`[Sub-Agent: ${agentName}] Response length: ${result.response?.length || 0}`);
249
- if (result.response) {
250
- hive.config.logger?.debug(`[Sub-Agent: ${agentName}] Response preview: ${result.response.slice(0, 200)}${result.response.length > 200 ? '...' : ''}`);
251
- }
252
- if (result.thinking && result.thinking.length > 0) {
253
- hive.config.logger?.debug(`[Sub-Agent: ${agentName}] Thinking blocks: ${result.thinking.length}`);
254
- }
255
- // Progress: sub-agent completed
256
- hive.config.logger?.onProgress?.({
257
- type: 'sub_agent_end',
258
- message: `${agentName} completed`,
259
- details: { agentName, success: true }
260
- });
261
- if (result.status === 'needs_input') {
262
- hive.config.logger?.debug(`[Sub-Agent: ${agentName}] Returning: needs_input`);
263
- return {
264
- success: false,
265
- error: 'Sub-agent needs user input',
266
- data: result.pendingQuestion
267
- };
268
- }
269
- if (result.status === 'interrupted') {
270
- hive.config.logger?.warn(`[Sub-Agent: ${agentName}] Was interrupted: ${result.interrupted?.reason}`);
271
- return {
272
- success: false,
273
- error: `Sub-agent was interrupted: ${result.interrupted?.reason || 'unknown'}`,
274
- data: {
275
- reason: result.interrupted?.reason,
276
- iterationsCompleted: result.interrupted?.iterationsCompleted
277
- }
278
- };
279
- }
280
- // Check if sub-agent used __output__ tool to return structured data
281
- const outputCall = result.toolCalls.find(tc => tc.name === OUTPUT_TOOL_NAME);
282
- hive.config.logger?.debug(`[Sub-Agent: ${agentName}] __output__ tool used: ${!!outputCall}`);
283
- if (outputCall && outputCall.output?.success && outputCall.output?.data) {
284
- const outputData = outputCall.output.data;
285
- hive.config.logger?.debug(`[Sub-Agent: ${agentName}] Returning structured output`, {
286
- summaryLength: outputData.summary?.length || 0,
287
- hasData: outputData.data !== null && outputData.data !== undefined
288
- });
289
- return {
290
- success: true,
291
- data: {
292
- summary: outputData.summary,
293
- data: outputData.data
294
- }
295
- };
296
- }
297
- // Legacy: return response text as summary
298
- hive.config.logger?.debug(`[Sub-Agent: ${agentName}] Returning legacy response`, {
299
- responseLength: result.response?.length || 0,
300
- isEmpty: !result.response
301
- });
302
- return {
303
- success: true,
304
- data: {
305
- summary: result.response,
306
- data: null
307
- }
308
- };
309
- }
310
- catch (error) {
311
- // End sub-agent span with error status
312
- const parentTraceBuilder = hive.getCurrentTraceBuilder();
313
- if (parentTraceBuilder) {
314
- parentTraceBuilder.endSubAgent('error');
315
- }
316
- hive.config.logger?.error(`[Sub-Agent: ${agentName}] Failed: ${error instanceof Error ? error.message : String(error)}`);
317
- // Progress: sub-agent failed
318
- hive.config.logger?.onProgress?.({
319
- type: 'sub_agent_end',
320
- message: `${agentName} failed`,
321
- details: { agentName, success: false }
322
- });
323
- return {
324
- success: false,
325
- error: error instanceof Error ? error.message : String(error)
326
- };
327
- }
328
- }
329
- };
330
- }
6
+ import { ContextManager } from "./context-manager.js";
7
+ import { executeLoop } from "./executor.js";
8
+ import { TraceBuilder } from "./trace.js";
9
+ import { createContextTools } from "./context.js";
10
+ import { createAskUserTool, createTaskTool, TodoManager, createTodoTool, } from "./tools/index.js";
331
11
  /**
332
12
  * Hive Agent Class
333
13
  */
@@ -341,8 +21,8 @@ export class Hive {
341
21
  this.config = {
342
22
  maxIterations: 50,
343
23
  maxContextTokens: 100000,
344
- contextStrategy: 'truncate_old',
345
- ...config
24
+ contextStrategy: "truncate_old",
25
+ ...config,
346
26
  };
347
27
  this.contextManager = new ContextManager(this.config.maxContextTokens, this.config.contextStrategy);
348
28
  // Build tools list with internal tools (todo tool added per-run)
@@ -353,7 +33,10 @@ export class Hive {
353
33
  }
354
34
  // Add __task__ tool if sub-agents are defined
355
35
  if (config.agents && config.agents.length > 0) {
356
- this.tools.push(createTaskTool(this, config.agents));
36
+ this.tools.push(createTaskTool({
37
+ config: this.config,
38
+ getCurrentTraceBuilder: () => this.getCurrentTraceBuilder(),
39
+ }, config.agents, (subConfig) => new Hive(subConfig)));
357
40
  }
358
41
  }
359
42
  /**
@@ -372,10 +55,7 @@ export class Hive {
372
55
  * Get tools including internal tools for a specific run
373
56
  */
374
57
  getRunTools(todoManager, context, agentName) {
375
- const tools = [
376
- ...this.tools,
377
- createTodoTool(todoManager)
378
- ];
58
+ const tools = [...this.tools, createTodoTool(todoManager)];
379
59
  // Add context tools if Context is provided
380
60
  if (context) {
381
61
  tools.push(...createContextTools(context, agentName));
@@ -386,7 +66,7 @@ export class Hive {
386
66
  * Run the agent with a user message
387
67
  */
388
68
  async run(message, options = {}) {
389
- const { conversationId, userId, history: providedHistory, signal, shouldContinue, context } = options;
69
+ const { conversationId, userId, history: providedHistory, signal, shouldContinue, context, } = options;
390
70
  // Load history from repository or use provided
391
71
  let history = [];
392
72
  if (providedHistory) {
@@ -399,56 +79,60 @@ export class Hive {
399
79
  const messages = [...history];
400
80
  const lastMessage = messages[messages.length - 1];
401
81
  // Check if last message is assistant with tool_use blocks that need results
402
- if (lastMessage?.role === 'assistant' && Array.isArray(lastMessage.content)) {
403
- const toolUseBlocks = lastMessage.content.filter((block) => block.type === 'tool_use');
82
+ if (lastMessage?.role === "assistant" &&
83
+ Array.isArray(lastMessage.content)) {
84
+ const toolUseBlocks = lastMessage.content.filter((block) => block.type === "tool_use");
404
85
  if (toolUseBlocks.length > 0) {
405
86
  // Find __ask_user__ tool if present
406
- const askUserToolUse = toolUseBlocks.find(block => block.name === '__ask_user__');
87
+ const askUserToolUse = toolUseBlocks.find((block) => block.name === "__ask_user__");
407
88
  // Build tool_results for all tool_use blocks
408
- const toolResults = toolUseBlocks.map(toolUse => {
409
- if (toolUse.name === '__ask_user__') {
89
+ const toolResults = toolUseBlocks.map((toolUse) => {
90
+ if (toolUse.name === "__ask_user__") {
410
91
  // User's message is the answer to __ask_user__
411
92
  return {
412
- type: 'tool_result',
93
+ type: "tool_result",
413
94
  tool_use_id: toolUse.id,
414
- content: JSON.stringify({ success: true, data: { answer: message } })
95
+ content: JSON.stringify({
96
+ success: true,
97
+ data: { answer: message },
98
+ }),
415
99
  };
416
100
  }
417
101
  else {
418
102
  // Other tools were interrupted - mark as cancelled
419
103
  return {
420
- type: 'tool_result',
104
+ type: "tool_result",
421
105
  tool_use_id: toolUse.id,
422
- content: JSON.stringify({ success: false, error: 'Operation cancelled - execution was interrupted' }),
423
- is_error: true
106
+ content: JSON.stringify({
107
+ success: false,
108
+ error: "Operation cancelled - execution was interrupted",
109
+ }),
110
+ is_error: true,
424
111
  };
425
112
  }
426
113
  });
427
114
  // If there was an __ask_user__, the user's message is already the answer
428
115
  // Otherwise, we need to include both the tool_results and the user message
429
116
  if (askUserToolUse) {
430
- messages.push({ role: 'user', content: toolResults });
117
+ messages.push({ role: "user", content: toolResults });
431
118
  }
432
119
  else {
433
120
  // Combine tool_results and user message in a single user message
434
121
  // (API doesn't allow consecutive user messages)
435
122
  messages.push({
436
- role: 'user',
437
- content: [
438
- ...toolResults,
439
- { type: 'text', text: message }
440
- ]
123
+ role: "user",
124
+ content: [...toolResults, { type: "text", text: message }],
441
125
  });
442
126
  }
443
127
  }
444
128
  else {
445
129
  // No tool_use blocks, normal user message
446
- messages.push({ role: 'user', content: message });
130
+ messages.push({ role: "user", content: message });
447
131
  }
448
132
  }
449
133
  else {
450
134
  // Normal user message
451
- messages.push({ role: 'user', content: message });
135
+ messages.push({ role: "user", content: message });
452
136
  }
453
137
  // Create todo manager for this run
454
138
  const todoManager = new TodoManager();
@@ -457,15 +141,16 @@ export class Hive {
457
141
  remainingTokens: this.contextManager.getRemainingTokens(),
458
142
  conversationId,
459
143
  userId,
460
- context
144
+ context,
461
145
  };
462
146
  // Create or use existing trace builder
463
147
  // If _traceBuilder is passed (from parent agent), use it
464
148
  // Otherwise create a new one if trace provider is configured
465
- const traceBuilder = options._traceBuilder || (this.config.trace
466
- ? new TraceBuilder(this.config.agentName || 'agent', this.config.trace, message // Pass input message to trace
467
- )
468
- : undefined);
149
+ const traceBuilder = options._traceBuilder ||
150
+ (this.config.trace
151
+ ? new TraceBuilder(this.config.agentName || "agent", this.config.trace, message // Pass input message to trace
152
+ )
153
+ : undefined);
469
154
  // Store trace builder for __task__ tool to access
470
155
  this.setCurrentTraceBuilder(traceBuilder);
471
156
  // Execute the agent loop
@@ -480,7 +165,7 @@ export class Hive {
480
165
  llmOptions: {},
481
166
  signal,
482
167
  shouldContinue,
483
- traceBuilder
168
+ traceBuilder,
484
169
  }, messages, toolContext);
485
170
  // Save history to repository
486
171
  if (conversationId && this.config.repository) {
@@ -488,8 +173,11 @@ export class Hive {
488
173
  }
489
174
  // End trace and attach to result (only for root agent, not sub-agents)
490
175
  if (traceBuilder && !options._traceBuilder) {
491
- const status = result.status === 'complete' ? 'complete' :
492
- result.status === 'interrupted' ? 'interrupted' : 'complete';
176
+ const status = result.status === "complete"
177
+ ? "complete"
178
+ : result.status === "interrupted"
179
+ ? "interrupted"
180
+ : "complete";
493
181
  result.trace = traceBuilder.endTrace(status, result.response);
494
182
  }
495
183
  // Record the run (only for root agent, not sub-agents)
@@ -498,7 +186,7 @@ export class Hive {
498
186
  await this.config.recorder.record(message, history, this.config, result);
499
187
  }
500
188
  catch (error) {
501
- this.config.logger?.warn('Failed to record run', error);
189
+ this.config.logger?.warn("Failed to record run", error);
502
190
  }
503
191
  }
504
192
  return result;
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAW,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,cAAc,GACf,MAAM,kBAAkB,CAAC;AAE1B;;GAEG;AACH,MAAM,OAAO,IAAI;IACN,MAAM,CAAa;IACpB,cAAc,CAAiB;IAC/B,KAAK,CAAS;IACtB,oEAAoE;IAC5D,mBAAmB,CAAgB;IAE3C,YAAY,MAAkB;QAC5B,IAAI,CAAC,MAAM,GAAG;YACZ,aAAa,EAAE,EAAE;YACjB,gBAAgB,EAAE,MAAM;YACxB,eAAe,EAAE,cAAc;YAC/B,GAAG,MAAM;SACV,CAAC;QAEF,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CACtC,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAC5B,IAAI,CAAC,MAAM,CAAC,eAAe,CAC5B,CAAC;QAEF,iEAAiE;QACjE,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAE/B,sEAAsE;QACtE,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACvC,CAAC;QAED,8CAA8C;QAC9C,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,cAAc,CACZ;gBACE,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,sBAAsB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE;aAC5D,EACD,MAAM,CAAC,MAAM,EACb,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CACnC,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,sBAAsB;QACpB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,sBAAsB,CAAC,OAAiC;QACtD,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC;IACrC,CAAC;IAED;;OAEG;IACK,WAAW,CACjB,WAAwB,EACxB,OAAiB,EACjB,SAAkB;QAElB,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC;QAE3D,2CAA2C;QAC3C,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;QACxD,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,OAAe,EAAE,UAAsB,EAAE;QACjD,MAAM,EACJ,cAAc,EACd,MAAM,EACN,OAAO,EAAE,eAAe,EACxB,MAAM,EACN,cAAc,EACd,OAAO,GACR,GAAG,OAAO,CAAC;QAEZ,+CAA+C;QAC/C,IAAI,OAAO,GAAc,EAAE,CAAC;QAE5B,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,GAAG,eAAe,CAAC;QAC5B,CAAC;aAAM,IAAI,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACpD,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QACpE,CAAC;QAED,4EAA4E;QAC5E,MAAM,QAAQ,GAAc,CAAC,GAAG,OAAO,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAElD,4EAA4E;QAC5E,IACE,WAAW,EAAE,IAAI,KAAK,WAAW;YACjC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,EAClC,CAAC;YACD,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAC9C,CAAC,KAAK,EAA8C,EAAE,CACpD,KAAK,CAAC,IAAI,KAAK,UAAU,CAC5B,CAAC;YAEF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,oCAAoC;gBACpC,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CACvC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,cAAc,CACzC,CAAC;gBAEF,6CAA6C;gBAC7C,MAAM,WAAW,GACf,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;oBAC5B,IAAI,OAAO,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;wBACpC,+CAA+C;wBAC/C,OAAO;4BACL,IAAI,EAAE,aAAsB;4BAC5B,WAAW,EAAE,OAAO,CAAC,EAAE;4BACvB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;gCACtB,OAAO,EAAE,IAAI;gCACb,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;6BAC1B,CAAC;yBACH,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,mDAAmD;wBACnD,OAAO;4BACL,IAAI,EAAE,aAAsB;4BAC5B,WAAW,EAAE,OAAO,CAAC,EAAE;4BACvB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;gCACtB,OAAO,EAAE,KAAK;gCACd,KAAK,EAAE,iDAAiD;6BACzD,CAAC;4BACF,QAAQ,EAAE,IAAI;yBACf,CAAC;oBACJ,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEL,yEAAyE;gBACzE,2EAA2E;gBAC3E,IAAI,cAAc,EAAE,CAAC;oBACnB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;gBACxD,CAAC;qBAAM,CAAC;oBACN,iEAAiE;oBACjE,gDAAgD;oBAChD,QAAQ,CAAC,IAAI,CAAC;wBACZ,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,CAAC,GAAG,WAAW,EAAE,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;qBACpE,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,0CAA0C;gBAC1C,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,sBAAsB;YACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QACpD,CAAC;QAED,mCAAmC;QACnC,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;QAEtC,sBAAsB;QACtB,MAAM,WAAW,GAAgB;YAC/B,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE;YACzD,cAAc;YACd,MAAM;YACN,OAAO;SACR,CAAC;QAEF,uCAAuC;QACvC,yDAAyD;QACzD,6DAA6D;QAC7D,MAAM,YAAY,GAChB,OAAO,CAAC,aAAa;YACrB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK;gBAChB,CAAC,CAAC,IAAI,YAAY,CACd,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,OAAO,EAChC,IAAI,CAAC,MAAM,CAAC,KAAK,EACjB,OAAO,CAAC,8BAA8B;iBACvC;gBACH,CAAC,CAAC,SAAS,CAAC,CAAC;QAEjB,kDAAkD;QAClD,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;QAE1C,yBAAyB;QACzB,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B;YACE,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY;YACtC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;YACpE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;YACpB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YAC1B,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,aAAc;YACzC,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,WAAW;YACX,UAAU,EAAE,EAAE;YACd,MAAM;YACN,cAAc;YACd,YAAY;SACb,EACD,QAAQ,EACR,WAAW,CACZ,CAAC;QAEF,6BAA6B;QAC7B,IAAI,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3E,CAAC;QAED,uEAAuE;QACvE,IAAI,YAAY,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAC3C,MAAM,MAAM,GACV,MAAM,CAAC,MAAM,KAAK,UAAU;gBAC1B,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,aAAa;oBACjC,CAAC,CAAC,aAAa;oBACf,CAAC,CAAC,UAAU,CAAC;YACjB,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChE,CAAC;QAED,uDAAuD;QACvD,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YACnD,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAC/B,OAAO,EACP,OAAO,EACP,IAAI,CAAC,MAAM,EACX,MAAM,CACP,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import type { Message, Tool, ToolContext, LLMProvider, LLMOptions, LogProvider, AgentResult } from './types.js';
7
7
  import { ContextManager } from './context-manager.js';
8
- import { TodoManager } from './todo.js';
8
+ import { TodoManager } from './tools/todo.js';
9
9
  export interface ExecutorConfig {
10
10
  systemPrompt: string;
11
11
  tools: Tool[];
@@ -1 +1 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,OAAO,EACP,IAAI,EAIJ,WAAW,EAIX,WAAW,EACX,UAAU,EACV,WAAW,EACX,WAAW,EAEZ,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAIvC,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,IAAI,EAAE,CAAA;IACb,GAAG,EAAE,WAAW,CAAA;IAChB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,cAAc,CAAA;IAC9B,WAAW,EAAE,WAAW,CAAA;IACxB,UAAU,CAAC,EAAE,UAAU,CAAA;IAEvB,mCAAmC;IACnC,MAAM,CAAC,EAAE,WAAW,CAAA;IAEpB,iDAAiD;IACjD,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IAEvC,0CAA0C;IAC1C,YAAY,CAAC,EAAE,OAAO,YAAY,EAAE,YAAY,CAAA;CACjD;AA+LD;;GAEG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,cAAc,EACtB,eAAe,EAAE,OAAO,EAAE,EAC1B,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,WAAW,CAAC,CAoOtB"}
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,OAAO,EACP,IAAI,EAIJ,WAAW,EAIX,WAAW,EACX,UAAU,EACV,WAAW,EACX,WAAW,EAEZ,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAI7C,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,IAAI,EAAE,CAAA;IACb,GAAG,EAAE,WAAW,CAAA;IAChB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,cAAc,CAAA;IAC9B,WAAW,EAAE,WAAW,CAAA;IACxB,UAAU,CAAC,EAAE,UAAU,CAAA;IAEvB,mCAAmC;IACnC,MAAM,CAAC,EAAE,WAAW,CAAA;IAEpB,iDAAiD;IACjD,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IAEvC,0CAA0C;IAC1C,YAAY,CAAC,EAAE,OAAO,YAAY,EAAE,YAAY,CAAA;CACjD;AA+LD;;GAEG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,cAAc,EACtB,eAAe,EAAE,OAAO,EAAE,EAC1B,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,WAAW,CAAC,CAoOtB"}
package/dist/index.d.ts CHANGED
@@ -10,8 +10,8 @@ export { OpenAIProvider, type OpenAIProviderConfig } from './providers/llm/opena
10
10
  export { ConsoleLogger, type ConsoleLoggerConfig, type LogLevel } from './providers/logger/console.js';
11
11
  export { MemoryRepository } from './providers/repository/memory.js';
12
12
  export { estimateTokens, estimateMessageTokens, estimateTotalTokens, truncateOldMessages, ContextManager } from './context-manager.js';
13
- export { buildSystemPrompt, buildEnvironmentSection, buildRemindersSection, getCurrentEnvironment, DEFAULT_SYSTEM_PROMPT } from './prompt.js';
14
- export { TodoManager, formatTodoList } from './todo.js';
13
+ export { buildSystemPrompt, buildEnvironmentSection, buildRemindersSection, getCurrentEnvironment, DEFAULT_SYSTEM_PROMPT, MainAgentBuilder, SubAgentBuilder, roleSection, subAgentsTable, questionHandlingSection, directToolsSection, contextStorageSection, rulesSection, taskExamplesSection, subAgentRoleSection, taskSection, workflowSection, guidelinesSection, outputSection, type SubAgentDef, type ToolDef, type ContextPathDef, type TaskExample, type WorkflowStep, type OutputFormat, type MainAgentPromptConfig, type SubAgentPromptConfig } from './prompt.js';
14
+ export { TodoManager, formatTodoList } from './tools/todo.js';
15
15
  export { TraceBuilder, ConsoleTraceProvider, generateTraceId, generateSpanId, calculateCost, DEFAULT_MODEL_PRICING, type TraceProvider, type TraceId, type SpanId, type Trace, type AgentSpan, type TraceEvent, type LLMCallEvent, type ToolCallEvent, type TraceContext, type ModelPricing, type ConsoleTraceConfig } from './trace.js';
16
16
  export { Context, createContextTools, type ContextEntry, type ContextListItem, type ContextConfig, type PathConfig, type ValidatorFn, type ZodLike, type ValidationError, type WriteResult } from './context.js';
17
17
  export { RunRecorder, RunReplayer, RunTester, type RunRecorderConfig, type RunRecord, type RunRecordConfig, type RunRecordResult, type SerializedTool, type SerializedSubAgentConfig, type RunTesterConfig, type TestResult, type TestSummary } from './providers/dataset/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAGjC,YAAY,EAEV,OAAO,EACP,WAAW,EACX,YAAY,EACZ,SAAS,EACT,aAAa,EACb,YAAY,EACZ,eAAe,EAGf,IAAI,EACJ,UAAU,EACV,UAAU,EACV,WAAW,EACX,WAAW,EACX,UAAU,EAGV,UAAU,EACV,cAAc,EACd,UAAU,EACV,WAAW,EACX,WAAW,EACX,eAAe,EACf,cAAc,EACd,gBAAgB,EAGhB,QAAQ,EACR,UAAU,EACV,QAAQ,EAGR,WAAW,EACX,WAAW,EACX,UAAU,EACV,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,cAAc,EAGd,UAAU,EAGV,eAAe,EACf,kBAAkB,EAClB,eAAe,EAChB,MAAM,YAAY,CAAA;AAGnB,OAAO,EACL,cAAc,EACd,KAAK,oBAAoB,EAC1B,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,cAAc,EACd,KAAK,oBAAoB,EAC1B,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,aAAa,EACb,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACd,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EACL,gBAAgB,EACjB,MAAM,kCAAkC,CAAA;AAGzC,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACf,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,aAAa,CAAA;AAGpB,OAAO,EACL,WAAW,EACX,cAAc,EACf,MAAM,WAAW,CAAA;AAGlB,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,aAAa,EACb,qBAAqB,EACrB,KAAK,aAAa,EAClB,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACxB,MAAM,YAAY,CAAA;AAGnB,OAAO,EACL,OAAO,EACP,kBAAkB,EAClB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,OAAO,EACZ,KAAK,eAAe,EACpB,KAAK,WAAW,EACjB,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,WAAW,EACX,WAAW,EACX,SAAS,EACT,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,WAAW,EACjB,MAAM,8BAA8B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAGjC,YAAY,EAEV,OAAO,EACP,WAAW,EACX,YAAY,EACZ,SAAS,EACT,aAAa,EACb,YAAY,EACZ,eAAe,EAGf,IAAI,EACJ,UAAU,EACV,UAAU,EACV,WAAW,EACX,WAAW,EACX,UAAU,EAGV,UAAU,EACV,cAAc,EACd,UAAU,EACV,WAAW,EACX,WAAW,EACX,eAAe,EACf,cAAc,EACd,gBAAgB,EAGhB,QAAQ,EACR,UAAU,EACV,QAAQ,EAGR,WAAW,EACX,WAAW,EACX,UAAU,EACV,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,cAAc,EAGd,UAAU,EAGV,eAAe,EACf,kBAAkB,EAClB,eAAe,EAChB,MAAM,YAAY,CAAA;AAGnB,OAAO,EACL,cAAc,EACd,KAAK,oBAAoB,EAC1B,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,cAAc,EACd,KAAK,oBAAoB,EAC1B,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,aAAa,EACb,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACd,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EACL,gBAAgB,EACjB,MAAM,kCAAkC,CAAA;AAGzC,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACf,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EAErB,gBAAgB,EAChB,eAAe,EAEf,WAAW,EACX,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,aAAa,EAEb,KAAK,WAAW,EAChB,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EAC1B,MAAM,aAAa,CAAA;AAGpB,OAAO,EACL,WAAW,EACX,cAAc,EACf,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,aAAa,EACb,qBAAqB,EACrB,KAAK,aAAa,EAClB,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACxB,MAAM,YAAY,CAAA;AAGnB,OAAO,EACL,OAAO,EACP,kBAAkB,EAClB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,OAAO,EACZ,KAAK,eAAe,EACpB,KAAK,WAAW,EACjB,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,WAAW,EACX,WAAW,EACX,SAAS,EACT,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,WAAW,EACjB,MAAM,8BAA8B,CAAA"}
package/dist/index.js CHANGED
@@ -12,9 +12,13 @@ export { ConsoleLogger } from './providers/logger/console.js';
12
12
  export { MemoryRepository } from './providers/repository/memory.js';
13
13
  // Utilities
14
14
  export { estimateTokens, estimateMessageTokens, estimateTotalTokens, truncateOldMessages, ContextManager } from './context-manager.js';
15
- export { buildSystemPrompt, buildEnvironmentSection, buildRemindersSection, getCurrentEnvironment, DEFAULT_SYSTEM_PROMPT } from './prompt.js';
15
+ export { buildSystemPrompt, buildEnvironmentSection, buildRemindersSection, getCurrentEnvironment, DEFAULT_SYSTEM_PROMPT,
16
+ // Prompt builders
17
+ MainAgentBuilder, SubAgentBuilder,
18
+ // Template functions (for advanced customization)
19
+ roleSection, subAgentsTable, questionHandlingSection, directToolsSection, contextStorageSection, rulesSection, taskExamplesSection, subAgentRoleSection, taskSection, workflowSection, guidelinesSection, outputSection } from './prompt.js';
16
20
  // Todo utilities
17
- export { TodoManager, formatTodoList } from './todo.js';
21
+ export { TodoManager, formatTodoList } from './tools/todo.js';
18
22
  // Tracing
19
23
  export { TraceBuilder, ConsoleTraceProvider, generateTraceId, generateSpanId, calculateCost, DEFAULT_MODEL_PRICING } from './trace.js';
20
24
  // Context
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,mBAAmB;AACnB,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAsDjC,YAAY;AACZ,OAAO,EACL,cAAc,EAEf,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,cAAc,EAEf,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,aAAa,EAGd,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EACL,gBAAgB,EACjB,MAAM,kCAAkC,CAAA;AAEzC,YAAY;AACZ,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACf,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,aAAa,CAAA;AAEpB,iBAAiB;AACjB,OAAO,EACL,WAAW,EACX,cAAc,EACf,MAAM,WAAW,CAAA;AAElB,UAAU;AACV,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,aAAa,EACb,qBAAqB,EAYtB,MAAM,YAAY,CAAA;AAEnB,UAAU;AACV,OAAO,EACL,OAAO,EACP,kBAAkB,EASnB,MAAM,cAAc,CAAA;AAErB,4CAA4C;AAC5C,OAAO,EACL,WAAW,EACX,WAAW,EACX,SAAS,EAUV,MAAM,8BAA8B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,mBAAmB;AACnB,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAsDjC,YAAY;AACZ,OAAO,EACL,cAAc,EAEf,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,cAAc,EAEf,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,aAAa,EAGd,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EACL,gBAAgB,EACjB,MAAM,kCAAkC,CAAA;AAEzC,YAAY;AACZ,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACf,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB;AACrB,kBAAkB;AAClB,gBAAgB,EAChB,eAAe;AACf,kDAAkD;AAClD,WAAW,EACX,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,aAAa,EAUd,MAAM,aAAa,CAAA;AAEpB,iBAAiB;AACjB,OAAO,EACL,WAAW,EACX,cAAc,EACf,MAAM,iBAAiB,CAAA;AAExB,UAAU;AACV,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,aAAa,EACb,qBAAqB,EAYtB,MAAM,YAAY,CAAA;AAEnB,UAAU;AACV,OAAO,EACL,OAAO,EACP,kBAAkB,EASnB,MAAM,cAAc,CAAA;AAErB,4CAA4C;AAC5C,OAAO,EACL,WAAW,EACX,WAAW,EACX,SAAS,EAUV,MAAM,8BAA8B,CAAA"}