concevent-ai-agent-sdk 1.0.5 → 2.0.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.
- package/README.md +516 -2
- package/dist/core/agent.d.ts.map +1 -1
- package/dist/core/agent.js +151 -66
- package/dist/core/agent.js.map +1 -1
- package/dist/core/errors.d.ts +1 -1
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js +4 -1
- package/dist/core/errors.js.map +1 -1
- package/dist/core/index.d.ts +2 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/logger.d.ts +2 -0
- package/dist/core/logger.d.ts.map +1 -1
- package/dist/core/logger.js +8 -0
- package/dist/core/logger.js.map +1 -1
- package/dist/core/middleware.d.ts +55 -0
- package/dist/core/middleware.d.ts.map +1 -0
- package/dist/core/middleware.js +125 -0
- package/dist/core/middleware.js.map +1 -0
- package/dist/core/orchestrator.d.ts +31 -0
- package/dist/core/orchestrator.d.ts.map +1 -0
- package/dist/core/orchestrator.js +206 -0
- package/dist/core/orchestrator.js.map +1 -0
- package/dist/core/response-format.d.ts +44 -0
- package/dist/core/response-format.d.ts.map +1 -0
- package/dist/core/response-format.js +107 -0
- package/dist/core/response-format.js.map +1 -0
- package/dist/core/retry.d.ts +76 -0
- package/dist/core/retry.d.ts.map +1 -0
- package/dist/core/retry.js +164 -0
- package/dist/core/retry.js.map +1 -0
- package/dist/core/summarization.d.ts.map +1 -1
- package/dist/core/summarization.js +21 -3
- package/dist/core/summarization.js.map +1 -1
- package/dist/core/tool-executor.d.ts +6 -5
- package/dist/core/tool-executor.d.ts.map +1 -1
- package/dist/core/tool-executor.js +36 -11
- package/dist/core/tool-executor.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/types/config.d.ts +88 -1
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/config.js +4 -0
- package/dist/types/config.js.map +1 -1
- package/dist/types/events.d.ts +24 -1
- package/dist/types/events.d.ts.map +1 -1
- package/dist/types/events.js.map +1 -1
- package/dist/types/index.d.ts +5 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/middleware.d.ts +115 -0
- package/dist/types/middleware.d.ts.map +1 -0
- package/dist/types/middleware.js +2 -0
- package/dist/types/middleware.js.map +1 -0
- package/dist/types/orchestrator.d.ts +61 -0
- package/dist/types/orchestrator.d.ts.map +1 -0
- package/dist/types/orchestrator.js +2 -0
- package/dist/types/orchestrator.js.map +1 -0
- package/package.json +1 -1
package/dist/types/events.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ReasoningDetail } from './messages.js';
|
|
2
2
|
import type { UsageMetadata, AgentResult, ToolCallStartData, ToolResultData } from './config.js';
|
|
3
|
+
import type { SubAgentStartData, SubAgentCompleteData } from './orchestrator.js';
|
|
3
4
|
export interface AgentCallbacks {
|
|
4
5
|
onThinking?: (thinking: string, details?: ReasoningDetail[]) => void;
|
|
5
6
|
onMessage?: (message: string, reasoning?: {
|
|
@@ -15,6 +16,7 @@ export interface AgentCallbacks {
|
|
|
15
16
|
onSummarizationStart?: (originalMessageCount: number) => void;
|
|
16
17
|
onSummarizationEnd?: (summary: string, tokensEstimate: number) => void;
|
|
17
18
|
onIterationStart?: (iteration: number, maxIterations: number) => void;
|
|
19
|
+
onRetry?: (attempt: number, maxAttempts: number, error: Error, delayMs: number) => void;
|
|
18
20
|
onError?: (error: {
|
|
19
21
|
code: string;
|
|
20
22
|
message: string;
|
|
@@ -22,8 +24,12 @@ export interface AgentCallbacks {
|
|
|
22
24
|
}) => void;
|
|
23
25
|
onComplete?: (result: AgentResult) => void;
|
|
24
26
|
onAborted?: () => void;
|
|
27
|
+
/** Called when orchestrator starts delegating to a sub-agent */
|
|
28
|
+
onSubAgentStart?: (data: SubAgentStartData) => void;
|
|
29
|
+
/** Called when a sub-agent completes its work */
|
|
30
|
+
onSubAgentComplete?: (data: SubAgentCompleteData) => void;
|
|
25
31
|
}
|
|
26
|
-
export type AgentEventType = 'thinking' | 'message' | 'message_delta' | 'reasoning_delta' | 'tool_call_start' | 'tool_result' | 'usage_update' | 'summarization_start' | 'summarization_end' | 'iteration_start' | 'error' | 'complete' | 'aborted';
|
|
32
|
+
export type AgentEventType = 'thinking' | 'message' | 'message_delta' | 'reasoning_delta' | 'tool_call_start' | 'tool_result' | 'usage_update' | 'summarization_start' | 'summarization_end' | 'iteration_start' | 'retry' | 'error' | 'complete' | 'aborted' | 'sub_agent_start' | 'sub_agent_complete';
|
|
27
33
|
export interface ThinkingEventData {
|
|
28
34
|
thinking: string;
|
|
29
35
|
details?: ReasoningDetail[];
|
|
@@ -56,6 +62,12 @@ export interface IterationStartEventData {
|
|
|
56
62
|
iteration: number;
|
|
57
63
|
maxIterations: number;
|
|
58
64
|
}
|
|
65
|
+
export interface RetryEventData {
|
|
66
|
+
attempt: number;
|
|
67
|
+
maxAttempts: number;
|
|
68
|
+
error: Error;
|
|
69
|
+
delayMs: number;
|
|
70
|
+
}
|
|
59
71
|
export interface ErrorEventData {
|
|
60
72
|
code: string;
|
|
61
73
|
message: string;
|
|
@@ -71,6 +83,14 @@ export interface MessageDeltaEventData {
|
|
|
71
83
|
export interface ReasoningDeltaEventData {
|
|
72
84
|
detail: ReasoningDetail;
|
|
73
85
|
}
|
|
86
|
+
export interface SubAgentStartEventData {
|
|
87
|
+
agentName: string;
|
|
88
|
+
message: string;
|
|
89
|
+
}
|
|
90
|
+
export interface SubAgentCompleteEventData {
|
|
91
|
+
agentName: string;
|
|
92
|
+
result: AgentResult;
|
|
93
|
+
}
|
|
74
94
|
export interface EventDataMap {
|
|
75
95
|
thinking: ThinkingEventData;
|
|
76
96
|
message: MessageEventData;
|
|
@@ -82,9 +102,12 @@ export interface EventDataMap {
|
|
|
82
102
|
summarization_start: SummarizationStartEventData;
|
|
83
103
|
summarization_end: SummarizationEndEventData;
|
|
84
104
|
iteration_start: IterationStartEventData;
|
|
105
|
+
retry: RetryEventData;
|
|
85
106
|
error: ErrorEventData;
|
|
86
107
|
complete: CompleteEventData;
|
|
87
108
|
aborted: AbortedEventData;
|
|
109
|
+
sub_agent_start: SubAgentStartEventData;
|
|
110
|
+
sub_agent_complete: SubAgentCompleteEventData;
|
|
88
111
|
}
|
|
89
112
|
export interface AgentEvent<T extends AgentEventType = AgentEventType> {
|
|
90
113
|
type: T;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":"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"}
|
package/dist/types/events.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":"AAgJA,MAAM,UAAU,WAAW,CACzB,IAAO,EACP,IAAqB;IAErB,OAAO;QACL,IAAI;QACJ,SAAS,EAAE,IAAI,IAAI,EAAE;QACrB,IAAI;KACL,CAAC;AACJ,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export type { ReasoningDetail, ChatMessageRole, ToolCall, ChatMessage, FunctionCallResult, } from './messages.js';
|
|
2
|
-
export type { FunctionDeclaration, ToolExecutorContext, ToolExecutor, ToolDefinition, ErrorMessages, ReasoningEffort, SummarizationConfig, ParallelExecutionConfig, AgentConfig, UsageMetadata, AgentResult, ToolCallStartData, ToolResultData, ExecutedToolCall, } from './config.js';
|
|
3
|
-
export { DEFAULT_MAX_CONCURRENCY } from './config.js';
|
|
4
|
-
export type { AgentCallbacks, AgentEventType, ThinkingEventData, MessageEventData, MessageDeltaEventData, ReasoningDeltaEventData, ToolCallStartEventData, ToolResultEventData, UsageUpdateEventData, SummarizationStartEventData, SummarizationEndEventData, IterationStartEventData, ErrorEventData, CompleteEventData, AbortedEventData, EventDataMap, AgentEvent, } from './events.js';
|
|
2
|
+
export type { FunctionDeclaration, ToolExecutorContext, ToolExecutor, ToolDefinition, ErrorMessages, ReasoningEffort, SummarizationConfig, ParallelExecutionConfig, RetryConfig, AgentConfig, UsageMetadata, AgentResult, ToolCallStartData, ToolResultData, ExecutedToolCall, ResponseFormatConfig, } from './config.js';
|
|
3
|
+
export { DEFAULT_MAX_CONCURRENCY, DEFAULT_RETRY_MAX_ATTEMPTS, DEFAULT_RETRY_BASE_DELAY_MS, DEFAULT_RETRY_MAX_DELAY_MS, DEFAULT_RETRY_BACKOFF_MULTIPLIER, } from './config.js';
|
|
4
|
+
export type { AgentCallbacks, AgentEventType, ThinkingEventData, MessageEventData, MessageDeltaEventData, ReasoningDeltaEventData, ToolCallStartEventData, ToolResultEventData, UsageUpdateEventData, SummarizationStartEventData, SummarizationEndEventData, IterationStartEventData, RetryEventData, ErrorEventData, CompleteEventData, AbortedEventData, SubAgentStartEventData, SubAgentCompleteEventData, EventDataMap, AgentEvent, } from './events.js';
|
|
5
5
|
export { createEvent } from './events.js';
|
|
6
|
+
export type { Middleware, MiddlewareContext, BeforeChatContext, AfterChatContext, BeforeToolCallContext, AfterToolCallContext, ErrorContext, } from './middleware.js';
|
|
7
|
+
export type { AgentDefinition, OrchestratorConfig, OrchestratorAgent, SubAgentStartData, SubAgentCompleteData, OrchestratorCallbacks, } from './orchestrator.js';
|
|
6
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,eAAe,EACf,eAAe,EACf,QAAQ,EACR,WAAW,EACX,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,WAAW,EACX,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,eAAe,EACf,eAAe,EACf,QAAQ,EACR,WAAW,EACX,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,WAAW,EACX,WAAW,EACX,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC1B,gCAAgC,GACjC,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,EACzB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,yBAAyB,EACzB,YAAY,EACZ,UAAU,GACX,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,EACpB,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC"}
|
package/dist/types/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { DEFAULT_MAX_CONCURRENCY } from './config.js';
|
|
1
|
+
export { DEFAULT_MAX_CONCURRENCY, DEFAULT_RETRY_MAX_ATTEMPTS, DEFAULT_RETRY_BASE_DELAY_MS, DEFAULT_RETRY_MAX_DELAY_MS, DEFAULT_RETRY_BACKOFF_MULTIPLIER, } from './config.js';
|
|
2
2
|
export { createEvent } from './events.js';
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AA2BA,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC1B,gCAAgC,GACjC,MAAM,aAAa,CAAC;AAyBrB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import type { ToolCall, FunctionCallResult, ChatMessage } from './messages.js';
|
|
2
|
+
import type { ToolExecutorContext, AgentResult } from './config.js';
|
|
3
|
+
import type { AgentError } from '../core/errors.js';
|
|
4
|
+
/**
|
|
5
|
+
* Context passed to middleware hooks.
|
|
6
|
+
* Contains all relevant information about the current execution state.
|
|
7
|
+
*/
|
|
8
|
+
export interface MiddlewareContext {
|
|
9
|
+
/** The user's input message */
|
|
10
|
+
message: string;
|
|
11
|
+
/** Current conversation history */
|
|
12
|
+
history: ChatMessage[];
|
|
13
|
+
/** Tool execution context (userId, timezone, abortSignal) */
|
|
14
|
+
toolContext: ToolExecutorContext;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Context for beforeChat middleware hook.
|
|
18
|
+
*/
|
|
19
|
+
export type BeforeChatContext = MiddlewareContext;
|
|
20
|
+
/**
|
|
21
|
+
* Context for afterChat middleware hook.
|
|
22
|
+
*/
|
|
23
|
+
export interface AfterChatContext extends MiddlewareContext {
|
|
24
|
+
/** The result from the chat operation */
|
|
25
|
+
result: AgentResult;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Context for beforeToolCall middleware hook.
|
|
29
|
+
*/
|
|
30
|
+
export interface BeforeToolCallContext extends MiddlewareContext {
|
|
31
|
+
/** The tool call about to be executed */
|
|
32
|
+
toolCall: ToolCall;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Context for afterToolCall middleware hook.
|
|
36
|
+
*/
|
|
37
|
+
export interface AfterToolCallContext extends MiddlewareContext {
|
|
38
|
+
/** The tool call that was executed */
|
|
39
|
+
toolCall: ToolCall;
|
|
40
|
+
/** The result from the tool execution */
|
|
41
|
+
result: FunctionCallResult;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Context for onError middleware hook.
|
|
45
|
+
*/
|
|
46
|
+
export interface ErrorContext extends MiddlewareContext {
|
|
47
|
+
/** The error that occurred */
|
|
48
|
+
error: AgentError;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Middleware interface for intercepting and modifying agent behavior.
|
|
52
|
+
*
|
|
53
|
+
* Middleware functions are executed in registration order (first registered = first executed).
|
|
54
|
+
* Each hook receives a context object and can modify the data before passing to the next middleware.
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* ```typescript
|
|
58
|
+
* const loggingMiddleware: Middleware = {
|
|
59
|
+
* name: 'logging',
|
|
60
|
+
* beforeChat: async (ctx) => {
|
|
61
|
+
* console.log('Chat started:', ctx.message);
|
|
62
|
+
* return ctx.message;
|
|
63
|
+
* },
|
|
64
|
+
* afterChat: async (ctx) => {
|
|
65
|
+
* console.log('Chat completed:', ctx.result.message);
|
|
66
|
+
* return ctx.result;
|
|
67
|
+
* },
|
|
68
|
+
* };
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
export interface Middleware {
|
|
72
|
+
/** Unique name for this middleware (used for debugging/logging) */
|
|
73
|
+
name: string;
|
|
74
|
+
/**
|
|
75
|
+
* Called before the chat operation begins.
|
|
76
|
+
* Can modify the user message before it's sent to the model.
|
|
77
|
+
*
|
|
78
|
+
* @param ctx - Context containing the message, history, and tool context
|
|
79
|
+
* @returns The (potentially modified) message to use
|
|
80
|
+
*/
|
|
81
|
+
beforeChat?: (ctx: BeforeChatContext) => Promise<string>;
|
|
82
|
+
/**
|
|
83
|
+
* Called after the chat operation completes successfully.
|
|
84
|
+
* Can modify the result before it's returned to the caller.
|
|
85
|
+
*
|
|
86
|
+
* @param ctx - Context containing the result and original context
|
|
87
|
+
* @returns The (potentially modified) result
|
|
88
|
+
*/
|
|
89
|
+
afterChat?: (ctx: AfterChatContext) => Promise<AgentResult>;
|
|
90
|
+
/**
|
|
91
|
+
* Called before each tool is executed.
|
|
92
|
+
* Can modify the tool call arguments or skip execution by throwing.
|
|
93
|
+
*
|
|
94
|
+
* @param ctx - Context containing the tool call details
|
|
95
|
+
* @returns The (potentially modified) tool call
|
|
96
|
+
*/
|
|
97
|
+
beforeToolCall?: (ctx: BeforeToolCallContext) => Promise<ToolCall>;
|
|
98
|
+
/**
|
|
99
|
+
* Called after each tool execution completes.
|
|
100
|
+
* Can modify the result before it's added to conversation history.
|
|
101
|
+
*
|
|
102
|
+
* @param ctx - Context containing the tool call and its result
|
|
103
|
+
* @returns The (potentially modified) function call result
|
|
104
|
+
*/
|
|
105
|
+
afterToolCall?: (ctx: AfterToolCallContext) => Promise<FunctionCallResult>;
|
|
106
|
+
/**
|
|
107
|
+
* Called when an error occurs during agent execution.
|
|
108
|
+
* Can be used for logging, analytics, or error transformation.
|
|
109
|
+
* Does not modify the error - for observation only.
|
|
110
|
+
*
|
|
111
|
+
* @param ctx - Context containing the error and execution state
|
|
112
|
+
*/
|
|
113
|
+
onError?: (ctx: ErrorContext) => Promise<void>;
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=middleware.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../src/types/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC/E,OAAO,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,+BAA+B;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,6DAA6D;IAC7D,WAAW,EAAE,mBAAmB,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB;IACzD,yCAAyC;IACzC,MAAM,EAAE,WAAW,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,iBAAiB;IAC9D,yCAAyC;IACzC,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB;IAC7D,sCAAsC;IACtC,QAAQ,EAAE,QAAQ,CAAC;IACnB,yCAAyC;IACzC,MAAM,EAAE,kBAAkB,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,iBAAiB;IACrD,8BAA8B;IAC9B,KAAK,EAAE,UAAU,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,UAAU;IACzB,mEAAmE;IACnE,IAAI,EAAE,MAAM,CAAC;IAEb;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAEzD;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAE5D;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,qBAAqB,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEnE;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,oBAAoB,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE3E;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAChD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../src/types/middleware.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { Agent } from '../core/agent.js';
|
|
2
|
+
import type { AgentConfig, AgentResult } from './config.js';
|
|
3
|
+
/**
|
|
4
|
+
* Definition of a sub-agent that can be delegated to by an orchestrator.
|
|
5
|
+
*/
|
|
6
|
+
export interface AgentDefinition {
|
|
7
|
+
/** The agent instance to delegate to */
|
|
8
|
+
agent: Agent;
|
|
9
|
+
/** Unique name for this agent (used as tool name) */
|
|
10
|
+
name: string;
|
|
11
|
+
/** Description of the agent's capabilities (helps orchestrator route requests) */
|
|
12
|
+
description: string;
|
|
13
|
+
/**
|
|
14
|
+
* Whether this agent can be called in parallel with other parallel-safe agents.
|
|
15
|
+
* Defaults to false for safety.
|
|
16
|
+
*/
|
|
17
|
+
parallel?: boolean;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Configuration for creating an orchestrator agent.
|
|
21
|
+
* Extends AgentConfig but excludes 'tools' since they are auto-generated from subAgents.
|
|
22
|
+
*/
|
|
23
|
+
export interface OrchestratorConfig extends Omit<AgentConfig, 'tools'> {
|
|
24
|
+
/** Array of sub-agents that the orchestrator can delegate to */
|
|
25
|
+
subAgents: AgentDefinition[];
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Extended Agent interface for orchestrators with sub-agent management.
|
|
29
|
+
*/
|
|
30
|
+
export interface OrchestratorAgent extends Agent {
|
|
31
|
+
/** Returns the list of registered sub-agents */
|
|
32
|
+
getSubAgents(): AgentDefinition[];
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Callback fired when orchestrator starts delegating to a sub-agent.
|
|
36
|
+
*/
|
|
37
|
+
export interface SubAgentStartData {
|
|
38
|
+
/** Name of the sub-agent being called */
|
|
39
|
+
agentName: string;
|
|
40
|
+
/** Message being delegated to the sub-agent */
|
|
41
|
+
message: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Callback fired when a sub-agent completes its work.
|
|
45
|
+
*/
|
|
46
|
+
export interface SubAgentCompleteData {
|
|
47
|
+
/** Name of the sub-agent that completed */
|
|
48
|
+
agentName: string;
|
|
49
|
+
/** Result returned by the sub-agent */
|
|
50
|
+
result: AgentResult;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Extended callbacks for orchestrator-specific events.
|
|
54
|
+
*/
|
|
55
|
+
export interface OrchestratorCallbacks {
|
|
56
|
+
/** Called when orchestrator starts delegating to a sub-agent */
|
|
57
|
+
onSubAgentStart?: (data: SubAgentStartData) => void;
|
|
58
|
+
/** Called when a sub-agent completes its work */
|
|
59
|
+
onSubAgentComplete?: (data: SubAgentCompleteData) => void;
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=orchestrator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/types/orchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,wCAAwC;IACxC,KAAK,EAAE,KAAK,CAAC;IACb,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,kFAAkF;IAClF,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC;IACpE,gEAAgE;IAChE,SAAS,EAAE,eAAe,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,KAAK;IAC9C,gDAAgD;IAChD,YAAY,IAAI,eAAe,EAAE,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,MAAM,EAAE,WAAW,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gEAAgE;IAChE,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACpD,iDAAiD;IACjD,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,CAAC;CAC3D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/types/orchestrator.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED