@codebolt/agent 1.1.0 → 2.2.2

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 (183) hide show
  1. package/README.md +157 -66
  2. package/dist/builderpattern/agent.d.ts +86 -0
  3. package/dist/builderpattern/agent.js +324 -0
  4. package/dist/builderpattern/followupquestionbuilder.d.ts +75 -0
  5. package/dist/builderpattern/followupquestionbuilder.js +197 -0
  6. package/dist/builderpattern/index.d.ts +14 -0
  7. package/dist/builderpattern/index.js +23 -0
  8. package/dist/builderpattern/llmoutputhandler.d.ts +102 -0
  9. package/dist/builderpattern/llmoutputhandler.js +452 -0
  10. package/dist/builderpattern/promptbuilder.d.ts +382 -0
  11. package/dist/builderpattern/promptbuilder.js +805 -0
  12. package/dist/builderpattern/systemprompt.d.ts +20 -0
  13. package/dist/builderpattern/systemprompt.js +48 -0
  14. package/dist/builderpattern/taskInstruction.d.ts +37 -0
  15. package/dist/builderpattern/taskInstruction.js +57 -0
  16. package/dist/builderpattern/usermessage.d.ts +70 -0
  17. package/dist/builderpattern/usermessage.js +123 -0
  18. package/dist/composablepattern/agent.d.ts +169 -0
  19. package/dist/composablepattern/agent.js +598 -0
  20. package/dist/composablepattern/codebolt-storage.d.ts +67 -0
  21. package/dist/composablepattern/codebolt-storage.js +320 -0
  22. package/dist/composablepattern/document.d.ts +149 -0
  23. package/dist/composablepattern/document.js +405 -0
  24. package/dist/composablepattern/examples/codebolt-integration-example.d.ts +12 -0
  25. package/dist/composablepattern/examples/codebolt-integration-example.js +218 -0
  26. package/dist/composablepattern/examples/codebolt-storage-example.d.ts +40 -0
  27. package/dist/composablepattern/examples/codebolt-storage-example.js +223 -0
  28. package/dist/composablepattern/examples/custom-steps-example.d.ts +20 -0
  29. package/dist/composablepattern/examples/custom-steps-example.js +455 -0
  30. package/dist/composablepattern/examples/document-agent.d.ts +17 -0
  31. package/dist/composablepattern/examples/document-agent.js +107 -0
  32. package/dist/composablepattern/examples/simple-codebolt-integration.d.ts +8 -0
  33. package/dist/composablepattern/examples/simple-codebolt-integration.js +164 -0
  34. package/dist/composablepattern/examples/weather-agent.d.ts +18 -0
  35. package/dist/composablepattern/examples/weather-agent.js +86 -0
  36. package/dist/composablepattern/examples/workflow-example.d.ts +12 -0
  37. package/dist/composablepattern/examples/workflow-example.js +463 -0
  38. package/dist/composablepattern/index.d.ts +63 -0
  39. package/dist/composablepattern/index.js +115 -0
  40. package/dist/composablepattern/memory.d.ts +89 -0
  41. package/dist/composablepattern/memory.js +141 -0
  42. package/dist/composablepattern/tool.d.ts +84 -0
  43. package/dist/composablepattern/tool.js +260 -0
  44. package/dist/composablepattern/types.d.ts +194 -0
  45. package/dist/composablepattern/types.js +6 -0
  46. package/dist/composablepattern/user-context.d.ts +214 -0
  47. package/dist/composablepattern/user-context.js +275 -0
  48. package/dist/composablepattern/workflow.d.ts +388 -0
  49. package/dist/composablepattern/workflow.js +562 -0
  50. package/dist/processor/agent/agentStep.d.ts +49 -0
  51. package/dist/processor/agent/agentStep.js +241 -0
  52. package/dist/processor/agent/toolExecutor.d.ts +19 -0
  53. package/dist/processor/agent/toolExecutor.js +90 -0
  54. package/dist/processor/index.d.ts +7 -0
  55. package/dist/processor/index.js +36 -0
  56. package/dist/processor/messageModifiers/baseMessageModifier.d.ts +20 -0
  57. package/dist/processor/messageModifiers/baseMessageModifier.js +55 -0
  58. package/dist/processor/processors/baseProcessor.d.ts +14 -0
  59. package/dist/processor/processors/baseProcessor.js +29 -0
  60. package/dist/processor/tools/baseTool.d.ts +10 -0
  61. package/dist/processor/tools/baseTool.js +20 -0
  62. package/dist/processor/tools/toolList.d.ts +9 -0
  63. package/dist/processor/tools/toolList.js +22 -0
  64. package/dist/processor/types/interfaces.d.ts +94 -0
  65. package/dist/processor/types/interfaces.js +2 -0
  66. package/dist/processor-pieces/base/baseMessageModifier.d.ts +12 -0
  67. package/dist/processor-pieces/base/baseMessageModifier.js +15 -0
  68. package/dist/processor-pieces/base/basePostInferenceProcessor.d.ts +13 -0
  69. package/dist/processor-pieces/base/basePostInferenceProcessor.js +18 -0
  70. package/dist/processor-pieces/base/basePostToolCallProcessor.d.ts +15 -0
  71. package/dist/processor-pieces/base/basePostToolCallProcessor.js +25 -0
  72. package/dist/processor-pieces/base/basePreInferenceProcessor.d.ts +12 -0
  73. package/dist/processor-pieces/base/basePreInferenceProcessor.js +17 -0
  74. package/dist/processor-pieces/base/basePreToolCallProcessor.d.ts +18 -0
  75. package/dist/processor-pieces/base/basePreToolCallProcessor.js +66 -0
  76. package/dist/processor-pieces/base/index.d.ts +9 -0
  77. package/dist/processor-pieces/base/index.js +18 -0
  78. package/dist/processor-pieces/index.d.ts +1 -0
  79. package/dist/processor-pieces/index.js +59 -0
  80. package/dist/processor-pieces/messageModifiers/addToolsListMessageModifier.d.ts +22 -0
  81. package/dist/processor-pieces/messageModifiers/addToolsListMessageModifier.js +144 -0
  82. package/dist/processor-pieces/messageModifiers/argumentProcessorModifier.d.ts +13 -0
  83. package/dist/processor-pieces/messageModifiers/argumentProcessorModifier.js +68 -0
  84. package/dist/processor-pieces/messageModifiers/atFileProcessorModifier.d.ts +25 -0
  85. package/dist/processor-pieces/messageModifiers/atFileProcessorModifier.js +453 -0
  86. package/dist/processor-pieces/messageModifiers/baseContextMessageModifier.d.ts +15 -0
  87. package/dist/processor-pieces/messageModifiers/baseContextMessageModifier.js +75 -0
  88. package/dist/processor-pieces/messageModifiers/baseSystemInstructionMessageModifier.d.ts +11 -0
  89. package/dist/processor-pieces/messageModifiers/baseSystemInstructionMessageModifier.js +46 -0
  90. package/dist/processor-pieces/messageModifiers/chatHistoryMessageModifier.d.ts +18 -0
  91. package/dist/processor-pieces/messageModifiers/chatHistoryMessageModifier.js +104 -0
  92. package/dist/processor-pieces/messageModifiers/chatRecordingModifier.d.ts +23 -0
  93. package/dist/processor-pieces/messageModifiers/chatRecordingModifier.js +173 -0
  94. package/dist/processor-pieces/messageModifiers/coreSystemPromptModifier.d.ts +14 -0
  95. package/dist/processor-pieces/messageModifiers/coreSystemPromptModifier.js +130 -0
  96. package/dist/processor-pieces/messageModifiers/directoryContextModifier.d.ts +36 -0
  97. package/dist/processor-pieces/messageModifiers/directoryContextModifier.js +418 -0
  98. package/dist/processor-pieces/messageModifiers/environmentContextModifier.d.ts +26 -0
  99. package/dist/processor-pieces/messageModifiers/environmentContextModifier.js +260 -0
  100. package/dist/processor-pieces/messageModifiers/handleUrlMessageModifier.d.ts +12 -0
  101. package/dist/processor-pieces/messageModifiers/handleUrlMessageModifier.js +60 -0
  102. package/dist/processor-pieces/messageModifiers/ideContextModifier.d.ts +34 -0
  103. package/dist/processor-pieces/messageModifiers/ideContextModifier.js +157 -0
  104. package/dist/processor-pieces/messageModifiers/imageAttachmentMessageModifier.d.ts +18 -0
  105. package/dist/processor-pieces/messageModifiers/imageAttachmentMessageModifier.js +222 -0
  106. package/dist/processor-pieces/messageModifiers/index.d.ts +11 -0
  107. package/dist/processor-pieces/messageModifiers/index.js +26 -0
  108. package/dist/processor-pieces/messageModifiers/memoryImportModifier.d.ts +15 -0
  109. package/dist/processor-pieces/messageModifiers/memoryImportModifier.js +129 -0
  110. package/dist/processor-pieces/messageModifiers/toolInjectionModifier.d.ts +20 -0
  111. package/dist/processor-pieces/messageModifiers/toolInjectionModifier.js +152 -0
  112. package/dist/processor-pieces/messageModifiers/workingDirectoryMessageModifier.d.ts +22 -0
  113. package/dist/processor-pieces/messageModifiers/workingDirectoryMessageModifier.js +194 -0
  114. package/dist/processor-pieces/postInferenceProcessors/loopDetectionModifier.d.ts +29 -0
  115. package/dist/processor-pieces/postInferenceProcessors/loopDetectionModifier.js +174 -0
  116. package/dist/processor-pieces/postToolCallProcessors/index.d.ts +1 -0
  117. package/dist/processor-pieces/postToolCallProcessors/index.js +2 -0
  118. package/dist/processor-pieces/postToolCallProcessors/shellProcessorModifier.d.ts +25 -0
  119. package/dist/processor-pieces/postToolCallProcessors/shellProcessorModifier.js +225 -0
  120. package/dist/processor-pieces/preInferenceProcessors/chatCompressionModifier.d.ts +35 -0
  121. package/dist/processor-pieces/preInferenceProcessors/chatCompressionModifier.js +255 -0
  122. package/dist/processor-pieces/preInferenceProcessors/index.d.ts +1 -0
  123. package/dist/processor-pieces/preInferenceProcessors/index.js +2 -0
  124. package/dist/processor-pieces/pretoolCallProcessors/index.d.ts +1 -0
  125. package/dist/processor-pieces/pretoolCallProcessors/index.js +2 -0
  126. package/dist/processor-pieces/processors/advancedLoopDetectionProcessor.d.ts +41 -0
  127. package/dist/processor-pieces/processors/advancedLoopDetectionProcessor.js +197 -0
  128. package/dist/processor-pieces/processors/chatCompressionProcessor.d.ts +26 -0
  129. package/dist/processor-pieces/processors/chatCompressionProcessor.js +90 -0
  130. package/dist/processor-pieces/processors/chatRecordingProcessor.d.ts +81 -0
  131. package/dist/processor-pieces/processors/chatRecordingProcessor.js +329 -0
  132. package/dist/processor-pieces/processors/contextManagementProcessor.d.ts +40 -0
  133. package/dist/processor-pieces/processors/contextManagementProcessor.js +305 -0
  134. package/dist/processor-pieces/processors/loopDetectionProcessor.d.ts +30 -0
  135. package/dist/processor-pieces/processors/loopDetectionProcessor.js +137 -0
  136. package/dist/processor-pieces/processors/responseValidationProcessor.d.ts +30 -0
  137. package/dist/processor-pieces/processors/responseValidationProcessor.js +228 -0
  138. package/dist/processor-pieces/processors/telemetryProcessor.d.ts +99 -0
  139. package/dist/processor-pieces/processors/telemetryProcessor.js +311 -0
  140. package/dist/processor-pieces/processors/tokenManagementProcessor.d.ts +37 -0
  141. package/dist/processor-pieces/processors/tokenManagementProcessor.js +178 -0
  142. package/dist/processor-pieces/processors/toolExecutionProcessor.d.ts +43 -0
  143. package/dist/processor-pieces/processors/toolExecutionProcessor.js +207 -0
  144. package/dist/processor-pieces/tools/fileTools.d.ts +26 -0
  145. package/dist/processor-pieces/tools/fileTools.js +162 -0
  146. package/dist/processor-pieces/utils/messageModifierHelper.d.ts +4 -0
  147. package/dist/processor-pieces/utils/messageModifierHelper.js +58 -0
  148. package/dist/types/commonTypes.d.ts +4 -0
  149. package/dist/types/processorTypes.d.ts +67 -0
  150. package/dist/types/processorTypes.js +58 -0
  151. package/dist/unified/agent/agent.d.ts +17 -0
  152. package/dist/unified/agent/agent.js +79 -0
  153. package/dist/unified/agent/team.d.ts +2 -0
  154. package/dist/unified/agent/team.js +6 -0
  155. package/dist/unified/agent/tools.d.ts +44 -0
  156. package/dist/unified/agent/tools.js +487 -0
  157. package/dist/unified/agent/workflow.d.ts +24 -0
  158. package/dist/unified/agent/workflow.js +275 -0
  159. package/dist/unified/agent/workflowControls.d.ts +11 -0
  160. package/dist/unified/agent/workflowControls.js +20 -0
  161. package/dist/unified/agent/workflowSteps.d.ts +63 -0
  162. package/dist/unified/agent/workflowSteps.js +284 -0
  163. package/dist/unified/base/agentStep.d.ts +32 -0
  164. package/dist/unified/base/agentStep.js +96 -0
  165. package/dist/unified/base/create/createInitialPromptGenerators.d.ts +5 -0
  166. package/dist/unified/base/create/createInitialPromptGenerators.js +17 -0
  167. package/dist/unified/base/index.d.ts +5 -0
  168. package/dist/unified/base/index.js +13 -0
  169. package/dist/unified/base/initialPromptGenerator.d.ts +48 -0
  170. package/dist/unified/base/initialPromptGenerator.js +118 -0
  171. package/dist/unified/base/responseExecutor.d.ts +36 -0
  172. package/dist/unified/base/responseExecutor.js +283 -0
  173. package/dist/unified/index.d.ts +18 -0
  174. package/dist/unified/index.js +42 -0
  175. package/dist/unified/team/team.d.ts +1 -0
  176. package/dist/unified/team/team.js +2 -0
  177. package/dist/unified/types/libTypes.d.ts +378 -0
  178. package/dist/unified/types/libTypes.js +6 -0
  179. package/dist/unified/types/types.d.ts +212 -0
  180. package/dist/unified/types/types.js +43 -0
  181. package/dist/unified/utils/utils.d.ts +40 -0
  182. package/dist/unified/utils/utils.js +219 -0
  183. package/package.json +29 -7
@@ -54,10 +54,14 @@ export interface DiffResult {
54
54
  insertions: number;
55
55
  deletions: number;
56
56
  binary: boolean;
57
+ status?: 'added' | 'modified' | 'deleted' | 'renamed' | 'copied';
58
+ oldFile?: string;
59
+ diff?: string;
57
60
  }>;
58
61
  insertions: number;
59
62
  deletions: number;
60
63
  changed: number;
64
+ rawDiff?: string;
61
65
  }
62
66
  export interface AgentFunction {
63
67
  type: 'function';
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Processor types and interfaces for the Unified Agent Framework
3
+ * @deprecated Use specific processor type files instead
4
+ *
5
+ * This file is kept for backward compatibility.
6
+ * New code should import from the specific processor type files:
7
+ * - './processorTypes/messageModifierTypes'
8
+ * - './processorTypes/preInferenceProcessorTypes'
9
+ * - './processorTypes/postInferenceTypes'
10
+ * - './processorTypes/preToolCallProcessorTypes'
11
+ * - './processorTypes/postToolCallProcessorTypes'
12
+ */
13
+ export * from './processorTypes';
14
+ export interface ToolCall {
15
+ id: string;
16
+ function: {
17
+ name: string;
18
+ arguments: string | Record<string, unknown>;
19
+ };
20
+ }
21
+ export interface Tool {
22
+ type: 'function';
23
+ function: {
24
+ name: string;
25
+ description?: string;
26
+ parameters?: unknown;
27
+ };
28
+ }
29
+ export interface Message {
30
+ role: 'user' | 'assistant' | 'tool' | 'system';
31
+ content: string | unknown[];
32
+ name?: string;
33
+ tool_calls?: ToolCall[];
34
+ tool_call_id?: string;
35
+ [key: string]: unknown;
36
+ }
37
+ export interface ProcessedMessage {
38
+ messages: Message[];
39
+ metadata?: Record<string, unknown>;
40
+ }
41
+ export interface ProcessorInput {
42
+ message: ProcessedMessage;
43
+ context?: Record<string, unknown>;
44
+ }
45
+ export interface ProcessorOutput {
46
+ type: string;
47
+ value?: unknown;
48
+ }
49
+ export interface Processor {
50
+ processInput(input: ProcessorInput): Promise<ProcessorOutput[]>;
51
+ setContext(key: string, value: unknown): void;
52
+ getContext(key: string): unknown;
53
+ clearContext(): void;
54
+ }
55
+ export declare abstract class BaseProcessor implements Processor {
56
+ protected context: Record<string, unknown>;
57
+ constructor(options?: Record<string, unknown>);
58
+ abstract processInput(input: ProcessorInput): Promise<ProcessorOutput[]>;
59
+ setContext(key: string, value: unknown): void;
60
+ getContext(key: string): unknown;
61
+ clearContext(): void;
62
+ protected createEvent(type: string, value?: unknown): ProcessorOutput;
63
+ protected createEvents(...events: Array<{
64
+ type: string;
65
+ value?: unknown;
66
+ }>): ProcessorOutput[];
67
+ }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ /**
3
+ * Processor types and interfaces for the Unified Agent Framework
4
+ * @deprecated Use specific processor type files instead
5
+ *
6
+ * This file is kept for backward compatibility.
7
+ * New code should import from the specific processor type files:
8
+ * - './processorTypes/messageModifierTypes'
9
+ * - './processorTypes/preInferenceProcessorTypes'
10
+ * - './processorTypes/postInferenceTypes'
11
+ * - './processorTypes/preToolCallProcessorTypes'
12
+ * - './processorTypes/postToolCallProcessorTypes'
13
+ */
14
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ var desc = Object.getOwnPropertyDescriptor(m, k);
17
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
18
+ desc = { enumerable: true, get: function() { return m[k]; } };
19
+ }
20
+ Object.defineProperty(o, k2, desc);
21
+ }) : (function(o, m, k, k2) {
22
+ if (k2 === undefined) k2 = k;
23
+ o[k2] = m[k];
24
+ }));
25
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
26
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.BaseProcessor = void 0;
30
+ // Re-export all processor types from their specific modules
31
+ __exportStar(require("./processorTypes"), exports);
32
+ // Base processor class
33
+ class BaseProcessor {
34
+ constructor(options) {
35
+ this.context = {};
36
+ if (options) {
37
+ this.context = { ...options };
38
+ }
39
+ }
40
+ setContext(key, value) {
41
+ this.context[key] = value;
42
+ }
43
+ getContext(key) {
44
+ return this.context[key];
45
+ }
46
+ clearContext() {
47
+ this.context = {};
48
+ }
49
+ // Helper method to create events
50
+ createEvent(type, value) {
51
+ return { type, value };
52
+ }
53
+ // Helper method to create multiple events
54
+ createEvents(...events) {
55
+ return events.map(event => this.createEvent(event.type, event.value));
56
+ }
57
+ }
58
+ exports.BaseProcessor = BaseProcessor;
@@ -0,0 +1,17 @@
1
+ import { AgentConfig, AgentInterface } from "@codebolt/types/agent";
2
+ import { FlatUserMessage } from "@codebolt/types/sdk";
3
+ export declare class Agent implements AgentInterface {
4
+ private readonly config;
5
+ private readonly messageModifiers;
6
+ private readonly preInferenceProcessors;
7
+ private readonly postInferenceProcessors;
8
+ private readonly preToolCallProcessors;
9
+ private readonly postToolCallProcessors;
10
+ private readonly enableLogging;
11
+ constructor(config: AgentConfig);
12
+ execute(reqMessage: FlatUserMessage): Promise<{
13
+ success: boolean;
14
+ result: any;
15
+ error?: string;
16
+ }>;
17
+ }
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Agent = void 0;
4
+ const base_1 = require("../base");
5
+ const responseExecutor_1 = require("../base/responseExecutor");
6
+ const agentStep_1 = require("../base/agentStep");
7
+ class Agent {
8
+ constructor(config) {
9
+ var _a, _b, _c, _d, _e;
10
+ this.config = { ...config };
11
+ this.messageModifiers = ((_a = config.processors) === null || _a === void 0 ? void 0 : _a.messageModifiers) || [];
12
+ this.preInferenceProcessors = ((_b = config.processors) === null || _b === void 0 ? void 0 : _b.preInferenceProcessors) || [];
13
+ this.postInferenceProcessors = ((_c = config.processors) === null || _c === void 0 ? void 0 : _c.postInferenceProcessors) || [];
14
+ this.preToolCallProcessors = ((_d = config.processors) === null || _d === void 0 ? void 0 : _d.preToolCallProcessors) || [];
15
+ this.postToolCallProcessors = ((_e = config.processors) === null || _e === void 0 ? void 0 : _e.postToolCallProcessors) || [];
16
+ this.enableLogging = config.enableLogging !== false;
17
+ }
18
+ async execute(reqMessage) {
19
+ if (!reqMessage) {
20
+ return {
21
+ success: false,
22
+ result: null,
23
+ error: 'Request message is required'
24
+ };
25
+ }
26
+ try {
27
+ const promptGenerator = new base_1.InitialPromptGenerator({
28
+ processors: this.messageModifiers,
29
+ baseSystemPrompt: this.config.instructions || 'Based on User Message send reply',
30
+ enableLogging: this.enableLogging
31
+ });
32
+ let prompt = await promptGenerator.processMessage(reqMessage);
33
+ let completed = false;
34
+ while (!completed) {
35
+ const agentStep = new agentStep_1.AgentStep({
36
+ preInferenceProcessors: this.preInferenceProcessors,
37
+ postInferenceProcessors: this.postInferenceProcessors
38
+ });
39
+ const stepResult = await agentStep.executeStep(reqMessage, prompt);
40
+ prompt = stepResult.nextMessage;
41
+ if (this.enableLogging) {
42
+ console.log('[Agent] Step completed, processing response');
43
+ }
44
+ const responseExecutor = new responseExecutor_1.ResponseExecutor({
45
+ preToolCalProcessors: this.preToolCallProcessors,
46
+ postToolCallProcessors: this.postToolCallProcessors
47
+ });
48
+ const executionResult = await responseExecutor.executeResponse({
49
+ initailUserMessage: reqMessage,
50
+ actualMessageSentToLLM: stepResult.actualMessageSentToLLM,
51
+ rawLLMOutput: stepResult.rawLLMResponse,
52
+ nextMessage: stepResult.nextMessage
53
+ });
54
+ completed = executionResult.completed;
55
+ prompt = executionResult.nextMessage;
56
+ }
57
+ if (this.enableLogging) {
58
+ console.log('[Agent] Execution completed successfully');
59
+ }
60
+ return {
61
+ success: true,
62
+ result: prompt,
63
+ error: undefined
64
+ };
65
+ }
66
+ catch (error) {
67
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error occurred';
68
+ if (this.enableLogging) {
69
+ console.error('[Agent] Execution failed:', error);
70
+ }
71
+ return {
72
+ success: false,
73
+ result: null,
74
+ error: errorMessage
75
+ };
76
+ }
77
+ }
78
+ }
79
+ exports.Agent = Agent;
@@ -0,0 +1,2 @@
1
+ export declare class Team {
2
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Team = void 0;
4
+ class Team {
5
+ }
6
+ exports.Team = Team;
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Tool creation utilities for the Unified Agent Framework
3
+ */
4
+ import { z, ZodType } from 'zod';
5
+ import type { OpenAITool } from '../types/libTypes';
6
+ import { ToolConfig, ToolInterface } from '@codebolt/types/agent';
7
+ export declare class Tool implements ToolInterface {
8
+ id: string;
9
+ description: string;
10
+ inputSchema: ZodType<any, any, any>;
11
+ outputSchema?: ZodType<any, any, any>;
12
+ executionFunction: (context: any) => any;
13
+ constructor(config: ToolConfig);
14
+ execute(input: any, context: any): Promise<{
15
+ success: boolean;
16
+ error: string | undefined;
17
+ result?: undefined;
18
+ } | {
19
+ success: boolean;
20
+ result: any;
21
+ error?: undefined;
22
+ }>;
23
+ getToolDescription(): string;
24
+ getToolSchema(): z.ZodType<any, any, any>;
25
+ private validateInput;
26
+ /**
27
+ * Validates output against the tool's output schema (if provided)
28
+ * @param output - Raw output to validate
29
+ * @returns Validated and typed output
30
+ * @throws {Error} If validation fails
31
+ */
32
+ private validateOutput;
33
+ /**
34
+ * Converts the tool to OpenAI function format
35
+ * @returns OpenAI function specification
36
+ */
37
+ toOpenAITool(): OpenAITool;
38
+ private zodSchemaToJsonSchema;
39
+ /**
40
+ * Converts individual Zod types to JSON Schema
41
+ */
42
+ private zodTypeToJsonSchema;
43
+ }
44
+ export declare function createTool(config: ToolConfig): Tool;