@falai/agent 0.9.0-alpha-2 → 0.9.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.
- package/README.md +42 -34
- package/dist/cjs/src/core/Agent.d.ts +48 -44
- package/dist/cjs/src/core/Agent.d.ts.map +1 -1
- package/dist/cjs/src/core/Agent.js +151 -1110
- package/dist/cjs/src/core/Agent.js.map +1 -1
- package/dist/cjs/src/core/ResponseModal.d.ts +211 -0
- package/dist/cjs/src/core/ResponseModal.d.ts.map +1 -0
- package/dist/cjs/src/core/ResponseModal.js +1394 -0
- package/dist/cjs/src/core/ResponseModal.js.map +1 -0
- package/dist/cjs/src/core/ResponsePipeline.d.ts +8 -4
- package/dist/cjs/src/core/ResponsePipeline.d.ts.map +1 -1
- package/dist/cjs/src/core/ResponsePipeline.js +48 -20
- package/dist/cjs/src/core/ResponsePipeline.js.map +1 -1
- package/dist/cjs/src/core/Route.d.ts +12 -5
- package/dist/cjs/src/core/Route.d.ts.map +1 -1
- package/dist/cjs/src/core/Route.js +26 -5
- package/dist/cjs/src/core/Route.js.map +1 -1
- package/dist/cjs/src/core/RoutingEngine.d.ts +5 -0
- package/dist/cjs/src/core/RoutingEngine.d.ts.map +1 -1
- package/dist/cjs/src/core/RoutingEngine.js +37 -25
- package/dist/cjs/src/core/RoutingEngine.js.map +1 -1
- package/dist/cjs/src/core/SessionManager.d.ts +9 -1
- package/dist/cjs/src/core/SessionManager.d.ts.map +1 -1
- package/dist/cjs/src/core/SessionManager.js +27 -5
- package/dist/cjs/src/core/SessionManager.js.map +1 -1
- package/dist/cjs/src/core/Step.d.ts +60 -7
- package/dist/cjs/src/core/Step.d.ts.map +1 -1
- package/dist/cjs/src/core/Step.js +151 -4
- package/dist/cjs/src/core/Step.js.map +1 -1
- package/dist/cjs/src/core/ToolManager.d.ts +234 -0
- package/dist/cjs/src/core/ToolManager.d.ts.map +1 -0
- package/dist/cjs/src/core/ToolManager.js +1117 -0
- package/dist/cjs/src/core/ToolManager.js.map +1 -0
- package/dist/cjs/src/index.d.ts +5 -4
- package/dist/cjs/src/index.d.ts.map +1 -1
- package/dist/cjs/src/index.js +11 -3
- package/dist/cjs/src/index.js.map +1 -1
- package/dist/cjs/src/types/agent.d.ts +2 -1
- package/dist/cjs/src/types/agent.d.ts.map +1 -1
- package/dist/cjs/src/types/ai.d.ts +1 -1
- package/dist/cjs/src/types/ai.d.ts.map +1 -1
- package/dist/cjs/src/types/index.d.ts +3 -2
- package/dist/cjs/src/types/index.d.ts.map +1 -1
- package/dist/cjs/src/types/index.js +3 -1
- package/dist/cjs/src/types/index.js.map +1 -1
- package/dist/cjs/src/types/route.d.ts +6 -4
- package/dist/cjs/src/types/route.d.ts.map +1 -1
- package/dist/cjs/src/types/tool.d.ts +84 -14
- package/dist/cjs/src/types/tool.d.ts.map +1 -1
- package/dist/cjs/src/types/tool.js +13 -0
- package/dist/cjs/src/types/tool.js.map +1 -1
- package/dist/cjs/src/utils/clone.d.ts.map +1 -1
- package/dist/cjs/src/utils/clone.js +0 -4
- package/dist/cjs/src/utils/clone.js.map +1 -1
- package/dist/cjs/src/utils/history.d.ts +30 -1
- package/dist/cjs/src/utils/history.d.ts.map +1 -1
- package/dist/cjs/src/utils/history.js +169 -23
- package/dist/cjs/src/utils/history.js.map +1 -1
- package/dist/cjs/src/utils/index.d.ts +1 -1
- package/dist/cjs/src/utils/index.d.ts.map +1 -1
- package/dist/cjs/src/utils/index.js +5 -1
- package/dist/cjs/src/utils/index.js.map +1 -1
- package/dist/src/core/Agent.d.ts +48 -44
- package/dist/src/core/Agent.d.ts.map +1 -1
- package/dist/src/core/Agent.js +152 -1111
- package/dist/src/core/Agent.js.map +1 -1
- package/dist/src/core/ResponseModal.d.ts +211 -0
- package/dist/src/core/ResponseModal.d.ts.map +1 -0
- package/dist/src/core/ResponseModal.js +1389 -0
- package/dist/src/core/ResponseModal.js.map +1 -0
- package/dist/src/core/ResponsePipeline.d.ts +8 -4
- package/dist/src/core/ResponsePipeline.d.ts.map +1 -1
- package/dist/src/core/ResponsePipeline.js +48 -20
- package/dist/src/core/ResponsePipeline.js.map +1 -1
- package/dist/src/core/Route.d.ts +12 -5
- package/dist/src/core/Route.d.ts.map +1 -1
- package/dist/src/core/Route.js +26 -5
- package/dist/src/core/Route.js.map +1 -1
- package/dist/src/core/RoutingEngine.d.ts +5 -0
- package/dist/src/core/RoutingEngine.d.ts.map +1 -1
- package/dist/src/core/RoutingEngine.js +37 -25
- package/dist/src/core/RoutingEngine.js.map +1 -1
- package/dist/src/core/SessionManager.d.ts +9 -1
- package/dist/src/core/SessionManager.d.ts.map +1 -1
- package/dist/src/core/SessionManager.js +27 -5
- package/dist/src/core/SessionManager.js.map +1 -1
- package/dist/src/core/Step.d.ts +60 -7
- package/dist/src/core/Step.d.ts.map +1 -1
- package/dist/src/core/Step.js +151 -4
- package/dist/src/core/Step.js.map +1 -1
- package/dist/src/core/ToolManager.d.ts +234 -0
- package/dist/src/core/ToolManager.d.ts.map +1 -0
- package/dist/src/core/ToolManager.js +1111 -0
- package/dist/src/core/ToolManager.js.map +1 -0
- package/dist/src/index.d.ts +5 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/types/agent.d.ts +2 -1
- package/dist/src/types/agent.d.ts.map +1 -1
- package/dist/src/types/ai.d.ts +1 -1
- package/dist/src/types/ai.d.ts.map +1 -1
- package/dist/src/types/index.d.ts +3 -2
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/index.js +1 -0
- package/dist/src/types/index.js.map +1 -1
- package/dist/src/types/route.d.ts +6 -4
- package/dist/src/types/route.d.ts.map +1 -1
- package/dist/src/types/tool.d.ts +84 -14
- package/dist/src/types/tool.d.ts.map +1 -1
- package/dist/src/types/tool.js +12 -1
- package/dist/src/types/tool.js.map +1 -1
- package/dist/src/utils/clone.d.ts.map +1 -1
- package/dist/src/utils/clone.js +0 -4
- package/dist/src/utils/clone.js.map +1 -1
- package/dist/src/utils/history.d.ts +30 -1
- package/dist/src/utils/history.d.ts.map +1 -1
- package/dist/src/utils/history.js +165 -23
- package/dist/src/utils/history.js.map +1 -1
- package/dist/src/utils/index.d.ts +1 -1
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +1 -1
- package/dist/src/utils/index.js.map +1 -1
- package/docs/CONTRIBUTING.md +40 -0
- package/docs/README.md +14 -6
- package/docs/api/README.md +235 -45
- package/docs/api/overview.md +140 -33
- package/docs/core/agent/session-management.md +152 -5
- package/docs/core/ai-integration/response-processing.md +115 -4
- package/docs/core/conversation-flows/routes.md +130 -0
- package/docs/core/error-handling.md +638 -0
- package/docs/core/tools/tool-definition.md +684 -60
- package/docs/core/tools/tool-scoping.md +244 -53
- package/docs/guides/error-handling-patterns.md +578 -0
- package/docs/guides/getting-started/README.md +139 -28
- package/docs/guides/migration/README.md +72 -0
- package/docs/guides/migration/response-modal-refactor.md +518 -0
- package/examples/advanced-patterns/knowledge-based-agent.ts +6 -6
- package/examples/advanced-patterns/persistent-onboarding.ts +30 -43
- package/examples/advanced-patterns/streaming-responses.ts +169 -96
- package/examples/ai-providers/anthropic-integration.ts +9 -5
- package/examples/ai-providers/openai-integration.ts +11 -7
- package/examples/core-concepts/basic-agent.ts +106 -67
- package/examples/core-concepts/modern-streaming-api.ts +309 -0
- package/examples/core-concepts/schema-driven-extraction.ts +10 -7
- package/examples/core-concepts/session-management.ts +71 -18
- package/examples/integrations/healthcare-integration.ts +15 -29
- package/examples/integrations/server-session-management.ts +3 -3
- package/examples/persistence/memory-sessions.ts +3 -3
- package/examples/tools/basic-tools.ts +293 -89
- package/examples/tools/data-enrichment-tools.ts +185 -75
- package/package.json +1 -1
- package/src/core/Agent.ts +190 -1529
- package/src/core/ResponseModal.ts +1798 -0
- package/src/core/ResponsePipeline.ts +83 -57
- package/src/core/Route.ts +39 -12
- package/src/core/RoutingEngine.ts +46 -42
- package/src/core/SessionManager.ts +39 -7
- package/src/core/Step.ts +198 -20
- package/src/core/ToolManager.ts +1394 -0
- package/src/index.ts +19 -3
- package/src/types/agent.ts +2 -1
- package/src/types/ai.ts +1 -1
- package/src/types/index.ts +13 -2
- package/src/types/route.ts +6 -4
- package/src/types/tool.ts +116 -25
- package/src/utils/clone.ts +6 -8
- package/src/utils/history.ts +190 -27
- package/src/utils/index.ts +4 -0
- package/dist/cjs/src/core/ToolExecutor.d.ts +0 -45
- package/dist/cjs/src/core/ToolExecutor.d.ts.map +0 -1
- package/dist/cjs/src/core/ToolExecutor.js +0 -84
- package/dist/cjs/src/core/ToolExecutor.js.map +0 -1
- package/dist/src/core/ToolExecutor.d.ts +0 -45
- package/dist/src/core/ToolExecutor.d.ts.map +0 -1
- package/dist/src/core/ToolExecutor.js +0 -80
- package/dist/src/core/ToolExecutor.js.map +0 -1
- package/docs/core/tools/tool-execution.md +0 -815
- package/src/core/ToolExecutor.ts +0 -126
|
@@ -2,10 +2,39 @@
|
|
|
2
2
|
* History normalization utilities
|
|
3
3
|
* Convert simplified history format to internal Event format
|
|
4
4
|
*/
|
|
5
|
-
import type { Event } from "../types";
|
|
5
|
+
import type { Event, MessageEventData, ToolEventData, StatusEventData } from "../types";
|
|
6
6
|
import type { History, HistoryItem } from "../types/history";
|
|
7
|
+
/**
|
|
8
|
+
* Convert a simplified history item to an internal Event
|
|
9
|
+
* @param item - The HistoryItem to convert
|
|
10
|
+
* @returns Event with proper type-safe structure
|
|
11
|
+
* @throws Error if the history item is malformed or has invalid data
|
|
12
|
+
*/
|
|
13
|
+
export declare function historyItemToEvent(item: HistoryItem): Event<MessageEventData | ToolEventData | StatusEventData>;
|
|
14
|
+
/**
|
|
15
|
+
* Convert an array of HistoryItems to Events
|
|
16
|
+
* @param history - Array of HistoryItems to convert
|
|
17
|
+
* @returns Array of Events with proper type-safe structure
|
|
18
|
+
* @throws Error if any history item is malformed
|
|
19
|
+
*/
|
|
20
|
+
export declare function historyToEvents(history: History): Event<MessageEventData | ToolEventData | StatusEventData>[];
|
|
21
|
+
/**
|
|
22
|
+
* Convert an Event back to a HistoryItem
|
|
23
|
+
* @param event - The Event to convert
|
|
24
|
+
* @returns HistoryItem with simplified structure
|
|
25
|
+
* @throws Error if the event is malformed or has invalid data
|
|
26
|
+
*/
|
|
27
|
+
export declare function eventToHistoryItem(event: Event): HistoryItem;
|
|
28
|
+
/**
|
|
29
|
+
* Convert an array of Events back to HistoryItems
|
|
30
|
+
* @param events - Array of Events to convert
|
|
31
|
+
* @returns Array of HistoryItems with simplified structure
|
|
32
|
+
* @throws Error if any event is malformed
|
|
33
|
+
*/
|
|
34
|
+
export declare function eventsToHistory(events: Event[]): History;
|
|
7
35
|
/**
|
|
8
36
|
* Normalize a simplified history array to internal Event array
|
|
37
|
+
* @deprecated Use historyToEvents instead
|
|
9
38
|
*/
|
|
10
39
|
export declare function normalizeHistory(history: History): Event[];
|
|
11
40
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../../src/utils/history.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../../src/utils/history.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAExF,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAA0D,MAAM,kBAAkB,CAAC;AAErH;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,WAAW,GAAG,KAAK,CAAC,gBAAgB,GAAG,aAAa,GAAG,eAAe,CAAC,CAgH/G;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK,CAAC,gBAAgB,GAAG,aAAa,GAAG,eAAe,CAAC,EAAE,CAY7G;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,WAAW,CAmF5D;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAYxD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK,EAAE,CAE1D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAEvE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,SAAS,CAAC,EAAE,KAAK,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC,GACD,WAAW,CAEb;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,GACf,WAAW,CAEb;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAE1D"}
|
|
@@ -4,6 +4,10 @@
|
|
|
4
4
|
* Convert simplified history format to internal Event format
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.historyItemToEvent = historyItemToEvent;
|
|
8
|
+
exports.historyToEvents = historyToEvents;
|
|
9
|
+
exports.eventToHistoryItem = eventToHistoryItem;
|
|
10
|
+
exports.eventsToHistory = eventsToHistory;
|
|
7
11
|
exports.normalizeHistory = normalizeHistory;
|
|
8
12
|
exports.userMessage = userMessage;
|
|
9
13
|
exports.assistantMessage = assistantMessage;
|
|
@@ -12,25 +16,41 @@ exports.systemMessage = systemMessage;
|
|
|
12
16
|
const types_1 = require("../types");
|
|
13
17
|
/**
|
|
14
18
|
* Convert a simplified history item to an internal Event
|
|
19
|
+
* @param item - The HistoryItem to convert
|
|
20
|
+
* @returns Event with proper type-safe structure
|
|
21
|
+
* @throws Error if the history item is malformed or has invalid data
|
|
15
22
|
*/
|
|
16
|
-
function
|
|
23
|
+
function historyItemToEvent(item) {
|
|
24
|
+
if (!item || typeof item !== 'object') {
|
|
25
|
+
throw new Error('Invalid history item: must be a non-null object');
|
|
26
|
+
}
|
|
27
|
+
if (!item.role || typeof item.role !== 'string') {
|
|
28
|
+
throw new Error('Invalid history item: role is required and must be a string');
|
|
29
|
+
}
|
|
17
30
|
const timestamp = new Date().toISOString();
|
|
18
31
|
switch (item.role) {
|
|
19
32
|
case "user": {
|
|
33
|
+
const userItem = item;
|
|
34
|
+
if (typeof userItem.content !== 'string') {
|
|
35
|
+
throw new Error('Invalid user history item: content must be a string');
|
|
36
|
+
}
|
|
20
37
|
return {
|
|
21
38
|
kind: types_1.EventKind.MESSAGE,
|
|
22
39
|
source: types_1.MessageRole.USER,
|
|
23
40
|
timestamp,
|
|
24
41
|
data: {
|
|
25
42
|
participant: {
|
|
26
|
-
display_name:
|
|
43
|
+
display_name: userItem.name || "User",
|
|
27
44
|
},
|
|
28
|
-
message:
|
|
45
|
+
message: userItem.content,
|
|
29
46
|
},
|
|
30
47
|
};
|
|
31
48
|
}
|
|
32
49
|
case "assistant": {
|
|
33
|
-
|
|
50
|
+
const assistantItem = item;
|
|
51
|
+
if (assistantItem.content !== null && typeof assistantItem.content !== 'string') {
|
|
52
|
+
throw new Error('Invalid assistant history item: content must be a string or null');
|
|
53
|
+
}
|
|
34
54
|
const event = {
|
|
35
55
|
kind: types_1.EventKind.MESSAGE,
|
|
36
56
|
source: types_1.MessageRole.ASSISTANT,
|
|
@@ -39,17 +59,31 @@ function convertHistoryItemToEvent(item) {
|
|
|
39
59
|
participant: {
|
|
40
60
|
display_name: "Assistant",
|
|
41
61
|
},
|
|
42
|
-
message:
|
|
62
|
+
message: assistantItem.content || "",
|
|
43
63
|
},
|
|
44
64
|
};
|
|
45
|
-
// If there are tool calls,
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
65
|
+
// If there are tool calls, validate and add them
|
|
66
|
+
if (assistantItem.tool_calls && assistantItem.tool_calls.length > 0) {
|
|
67
|
+
if (!Array.isArray(assistantItem.tool_calls)) {
|
|
68
|
+
throw new Error('Invalid assistant history item: tool_calls must be an array');
|
|
69
|
+
}
|
|
70
|
+
for (const toolCall of assistantItem.tool_calls) {
|
|
71
|
+
if (!toolCall.id || !toolCall.name || typeof toolCall.arguments !== 'object') {
|
|
72
|
+
throw new Error('Invalid tool call: id, name, and arguments are required');
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
event.data.toolCalls = assistantItem.tool_calls;
|
|
49
76
|
}
|
|
50
77
|
return event;
|
|
51
78
|
}
|
|
52
79
|
case "tool": {
|
|
80
|
+
const toolItem = item;
|
|
81
|
+
if (!toolItem.tool_call_id || typeof toolItem.tool_call_id !== 'string') {
|
|
82
|
+
throw new Error('Invalid tool history item: tool_call_id is required and must be a string');
|
|
83
|
+
}
|
|
84
|
+
if (!toolItem.name || typeof toolItem.name !== 'string') {
|
|
85
|
+
throw new Error('Invalid tool history item: name is required and must be a string');
|
|
86
|
+
}
|
|
53
87
|
return {
|
|
54
88
|
kind: types_1.EventKind.TOOL,
|
|
55
89
|
source: types_1.MessageRole.AGENT,
|
|
@@ -57,10 +91,10 @@ function convertHistoryItemToEvent(item) {
|
|
|
57
91
|
data: {
|
|
58
92
|
tool_calls: [
|
|
59
93
|
{
|
|
60
|
-
tool_id:
|
|
94
|
+
tool_id: toolItem.tool_call_id,
|
|
61
95
|
arguments: {}, // Tool results don't have arguments
|
|
62
96
|
result: {
|
|
63
|
-
data:
|
|
97
|
+
data: toolItem.content,
|
|
64
98
|
},
|
|
65
99
|
},
|
|
66
100
|
],
|
|
@@ -68,6 +102,10 @@ function convertHistoryItemToEvent(item) {
|
|
|
68
102
|
};
|
|
69
103
|
}
|
|
70
104
|
case "system": {
|
|
105
|
+
const systemItem = item;
|
|
106
|
+
if (typeof systemItem.content !== 'string') {
|
|
107
|
+
throw new Error('Invalid system history item: content must be a string');
|
|
108
|
+
}
|
|
71
109
|
return {
|
|
72
110
|
kind: types_1.EventKind.MESSAGE,
|
|
73
111
|
source: types_1.MessageRole.SYSTEM,
|
|
@@ -76,30 +114,138 @@ function convertHistoryItemToEvent(item) {
|
|
|
76
114
|
participant: {
|
|
77
115
|
display_name: "System",
|
|
78
116
|
},
|
|
79
|
-
message:
|
|
117
|
+
message: systemItem.content,
|
|
80
118
|
},
|
|
81
119
|
};
|
|
82
120
|
}
|
|
83
121
|
default:
|
|
84
|
-
|
|
122
|
+
throw new Error(`Invalid history item role: ${String(item.role)}`);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Convert an array of HistoryItems to Events
|
|
127
|
+
* @param history - Array of HistoryItems to convert
|
|
128
|
+
* @returns Array of Events with proper type-safe structure
|
|
129
|
+
* @throws Error if any history item is malformed
|
|
130
|
+
*/
|
|
131
|
+
function historyToEvents(history) {
|
|
132
|
+
if (!Array.isArray(history)) {
|
|
133
|
+
throw new Error('Invalid history: must be an array');
|
|
134
|
+
}
|
|
135
|
+
return history.map((item, index) => {
|
|
136
|
+
try {
|
|
137
|
+
return historyItemToEvent(item);
|
|
138
|
+
}
|
|
139
|
+
catch (error) {
|
|
140
|
+
throw new Error(`Error converting history item at index ${index}: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Convert an Event back to a HistoryItem
|
|
146
|
+
* @param event - The Event to convert
|
|
147
|
+
* @returns HistoryItem with simplified structure
|
|
148
|
+
* @throws Error if the event is malformed or has invalid data
|
|
149
|
+
*/
|
|
150
|
+
function eventToHistoryItem(event) {
|
|
151
|
+
if (!event || typeof event !== 'object') {
|
|
152
|
+
throw new Error('Invalid event: must be a non-null object');
|
|
153
|
+
}
|
|
154
|
+
if (!event.kind || !event.source || !event.data) {
|
|
155
|
+
throw new Error('Invalid event: kind, source, and data are required');
|
|
156
|
+
}
|
|
157
|
+
switch (event.kind) {
|
|
158
|
+
case types_1.EventKind.MESSAGE: {
|
|
159
|
+
const messageData = event.data;
|
|
160
|
+
if (!messageData.message && messageData.message !== '') {
|
|
161
|
+
throw new Error('Invalid message event: message is required');
|
|
162
|
+
}
|
|
163
|
+
switch (event.source) {
|
|
164
|
+
case types_1.MessageRole.USER: {
|
|
165
|
+
const userItem = {
|
|
166
|
+
role: "user",
|
|
167
|
+
content: messageData.message,
|
|
168
|
+
};
|
|
169
|
+
if (messageData.participant?.display_name && messageData.participant.display_name !== "User") {
|
|
170
|
+
userItem.name = messageData.participant.display_name;
|
|
171
|
+
}
|
|
172
|
+
return userItem;
|
|
173
|
+
}
|
|
174
|
+
case types_1.MessageRole.ASSISTANT: {
|
|
175
|
+
const assistantItem = {
|
|
176
|
+
role: "assistant",
|
|
177
|
+
content: messageData.message || null,
|
|
178
|
+
};
|
|
179
|
+
if (messageData.toolCalls && messageData.toolCalls.length > 0) {
|
|
180
|
+
assistantItem.tool_calls = messageData.toolCalls;
|
|
181
|
+
}
|
|
182
|
+
return assistantItem;
|
|
183
|
+
}
|
|
184
|
+
case types_1.MessageRole.SYSTEM: {
|
|
185
|
+
return {
|
|
186
|
+
role: "system",
|
|
187
|
+
content: messageData.message,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
default:
|
|
191
|
+
throw new Error(`Unsupported message source for conversion: ${event.source}`);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
case types_1.EventKind.TOOL: {
|
|
195
|
+
const toolData = event.data;
|
|
196
|
+
if (!toolData.tool_calls || !Array.isArray(toolData.tool_calls) || toolData.tool_calls.length === 0) {
|
|
197
|
+
throw new Error('Invalid tool event: tool_calls array is required and must not be empty');
|
|
198
|
+
}
|
|
199
|
+
const firstToolCall = toolData.tool_calls[0];
|
|
200
|
+
if (!firstToolCall.tool_id) {
|
|
201
|
+
throw new Error('Invalid tool call: tool_id is required');
|
|
202
|
+
}
|
|
203
|
+
const toolItem = {
|
|
204
|
+
role: "tool",
|
|
205
|
+
tool_call_id: firstToolCall.tool_id,
|
|
206
|
+
name: firstToolCall.tool_id, // Use tool_id as name for simplicity
|
|
207
|
+
content: firstToolCall.result?.data,
|
|
208
|
+
};
|
|
209
|
+
return toolItem;
|
|
210
|
+
}
|
|
211
|
+
case types_1.EventKind.STATUS: {
|
|
212
|
+
// Status events don't have a direct HistoryItem equivalent
|
|
213
|
+
// Convert to system message for compatibility
|
|
214
|
+
const statusData = event.data;
|
|
85
215
|
return {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
timestamp,
|
|
89
|
-
data: {
|
|
90
|
-
participant: {
|
|
91
|
-
display_name: "Unknown",
|
|
92
|
-
},
|
|
93
|
-
message: "Unknown message type",
|
|
94
|
-
},
|
|
216
|
+
role: "system",
|
|
217
|
+
content: statusData.status || "Status update",
|
|
95
218
|
};
|
|
219
|
+
}
|
|
220
|
+
default:
|
|
221
|
+
throw new Error(`Unsupported event kind for conversion: ${String(event.kind)}`);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Convert an array of Events back to HistoryItems
|
|
226
|
+
* @param events - Array of Events to convert
|
|
227
|
+
* @returns Array of HistoryItems with simplified structure
|
|
228
|
+
* @throws Error if any event is malformed
|
|
229
|
+
*/
|
|
230
|
+
function eventsToHistory(events) {
|
|
231
|
+
if (!Array.isArray(events)) {
|
|
232
|
+
throw new Error('Invalid events: must be an array');
|
|
96
233
|
}
|
|
234
|
+
return events.map((event, index) => {
|
|
235
|
+
try {
|
|
236
|
+
return eventToHistoryItem(event);
|
|
237
|
+
}
|
|
238
|
+
catch (error) {
|
|
239
|
+
throw new Error(`Error converting event at index ${index}: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
240
|
+
}
|
|
241
|
+
});
|
|
97
242
|
}
|
|
98
243
|
/**
|
|
99
244
|
* Normalize a simplified history array to internal Event array
|
|
245
|
+
* @deprecated Use historyToEvents instead
|
|
100
246
|
*/
|
|
101
247
|
function normalizeHistory(history) {
|
|
102
|
-
return history
|
|
248
|
+
return historyToEvents(history);
|
|
103
249
|
}
|
|
104
250
|
/**
|
|
105
251
|
* Helper function to create a user message
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../src/utils/history.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../src/utils/history.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ export { createSession, createSessionId, enterRoute, enterStep, mergeCollected,
|
|
|
6
6
|
export { render, renderMany, renderTemplate, renderTemplateObject, formatKnowledgeBase, } from "./template";
|
|
7
7
|
export { cloneDeep } from "./clone";
|
|
8
8
|
export { getLastMessageFromHistory } from "./event";
|
|
9
|
-
export { normalizeHistory, userMessage, assistantMessage, toolMessage, systemMessage, } from "./history";
|
|
9
|
+
export { normalizeHistory, historyItemToEvent, historyToEvents, eventToHistoryItem, eventsToHistory, userMessage, assistantMessage, toolMessage, systemMessage, } from "./history";
|
|
10
10
|
export { LoggerLevel, logger } from "./logger";
|
|
11
11
|
export type { RetryOptions } from "./retry";
|
|
12
12
|
export { retry, withTimeoutAndRetry } from "./retry";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACL,eAAe,EACf,cAAc,EACd,cAAc,EACd,oBAAoB,GACrB,MAAM,MAAM,CAAC;AAGd,OAAO,EACL,aAAa,EACb,eAAe,EACf,UAAU,EACV,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,MAAM,EACN,UAAU,EACV,cAAc,EACd,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAGpD,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,aAAa,GACd,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAG/C,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACL,eAAe,EACf,cAAc,EACd,cAAc,EACd,oBAAoB,GACrB,MAAM,MAAM,CAAC;AAGd,OAAO,EACL,aAAa,EACb,eAAe,EACf,UAAU,EACV,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,MAAM,EACN,UAAU,EACV,cAAc,EACd,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAGpD,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,aAAa,GACd,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAG/C,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Utility functions and helpers
|
|
4
4
|
*/
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.withTimeoutAndRetry = exports.retry = exports.logger = exports.LoggerLevel = exports.systemMessage = exports.toolMessage = exports.assistantMessage = exports.userMessage = exports.normalizeHistory = exports.getLastMessageFromHistory = exports.cloneDeep = exports.formatKnowledgeBase = exports.renderTemplateObject = exports.renderTemplate = exports.renderMany = exports.render = exports.sessionDataToStep = exports.sessionStepToData = exports.mergeCollected = exports.enterStep = exports.enterRoute = exports.createSessionId = exports.createSession = exports.generateInlineToolId = exports.generateToolId = exports.generateStepId = exports.generateRouteId = void 0;
|
|
6
|
+
exports.withTimeoutAndRetry = exports.retry = exports.logger = exports.LoggerLevel = exports.systemMessage = exports.toolMessage = exports.assistantMessage = exports.userMessage = exports.eventsToHistory = exports.eventToHistoryItem = exports.historyToEvents = exports.historyItemToEvent = exports.normalizeHistory = exports.getLastMessageFromHistory = exports.cloneDeep = exports.formatKnowledgeBase = exports.renderTemplateObject = exports.renderTemplate = exports.renderMany = exports.render = exports.sessionDataToStep = exports.sessionStepToData = exports.mergeCollected = exports.enterStep = exports.enterRoute = exports.createSessionId = exports.createSession = exports.generateInlineToolId = exports.generateToolId = exports.generateStepId = exports.generateRouteId = void 0;
|
|
7
7
|
// ID generation
|
|
8
8
|
var id_1 = require("./id");
|
|
9
9
|
Object.defineProperty(exports, "generateRouteId", { enumerable: true, get: function () { return id_1.generateRouteId; } });
|
|
@@ -35,6 +35,10 @@ Object.defineProperty(exports, "getLastMessageFromHistory", { enumerable: true,
|
|
|
35
35
|
// History utilities
|
|
36
36
|
var history_1 = require("./history");
|
|
37
37
|
Object.defineProperty(exports, "normalizeHistory", { enumerable: true, get: function () { return history_1.normalizeHistory; } });
|
|
38
|
+
Object.defineProperty(exports, "historyItemToEvent", { enumerable: true, get: function () { return history_1.historyItemToEvent; } });
|
|
39
|
+
Object.defineProperty(exports, "historyToEvents", { enumerable: true, get: function () { return history_1.historyToEvents; } });
|
|
40
|
+
Object.defineProperty(exports, "eventToHistoryItem", { enumerable: true, get: function () { return history_1.eventToHistoryItem; } });
|
|
41
|
+
Object.defineProperty(exports, "eventsToHistory", { enumerable: true, get: function () { return history_1.eventsToHistory; } });
|
|
38
42
|
Object.defineProperty(exports, "userMessage", { enumerable: true, get: function () { return history_1.userMessage; } });
|
|
39
43
|
Object.defineProperty(exports, "assistantMessage", { enumerable: true, get: function () { return history_1.assistantMessage; } });
|
|
40
44
|
Object.defineProperty(exports, "toolMessage", { enumerable: true, get: function () { return history_1.toolMessage; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,gBAAgB;AAChB,2BAKc;AAJZ,qGAAA,eAAe,OAAA;AACf,oGAAA,cAAc,OAAA;AACd,oGAAA,cAAc,OAAA;AACd,0GAAA,oBAAoB,OAAA;AAGtB,qBAAqB;AACrB,qCAQmB;AAPjB,wGAAA,aAAa,OAAA;AACb,0GAAA,eAAe,OAAA;AACf,qGAAA,UAAU,OAAA;AACV,oGAAA,SAAS,OAAA;AACT,yGAAA,cAAc,OAAA;AACd,4GAAA,iBAAiB,OAAA;AACjB,4GAAA,iBAAiB,OAAA;AAGnB,qBAAqB;AACrB,uCAMoB;AALlB,kGAAA,MAAM,OAAA;AACN,sGAAA,UAAU,OAAA;AACV,0GAAA,cAAc,OAAA;AACd,gHAAA,oBAAoB,OAAA;AACpB,+GAAA,mBAAmB,OAAA;AAGrB,oBAAoB;AACpB,iCAAoC;AAA3B,kGAAA,SAAS,OAAA;AAElB,kBAAkB;AAClB,iCAAoD;AAA3C,kHAAA,yBAAyB,OAAA;AAElC,oBAAoB;AACpB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,gBAAgB;AAChB,2BAKc;AAJZ,qGAAA,eAAe,OAAA;AACf,oGAAA,cAAc,OAAA;AACd,oGAAA,cAAc,OAAA;AACd,0GAAA,oBAAoB,OAAA;AAGtB,qBAAqB;AACrB,qCAQmB;AAPjB,wGAAA,aAAa,OAAA;AACb,0GAAA,eAAe,OAAA;AACf,qGAAA,UAAU,OAAA;AACV,oGAAA,SAAS,OAAA;AACT,yGAAA,cAAc,OAAA;AACd,4GAAA,iBAAiB,OAAA;AACjB,4GAAA,iBAAiB,OAAA;AAGnB,qBAAqB;AACrB,uCAMoB;AALlB,kGAAA,MAAM,OAAA;AACN,sGAAA,UAAU,OAAA;AACV,0GAAA,cAAc,OAAA;AACd,gHAAA,oBAAoB,OAAA;AACpB,+GAAA,mBAAmB,OAAA;AAGrB,oBAAoB;AACpB,iCAAoC;AAA3B,kGAAA,SAAS,OAAA;AAElB,kBAAkB;AAClB,iCAAoD;AAA3C,kHAAA,yBAAyB,OAAA;AAElC,oBAAoB;AACpB,qCAUmB;AATjB,2GAAA,gBAAgB,OAAA;AAChB,6GAAA,kBAAkB,OAAA;AAClB,0GAAA,eAAe,OAAA;AACf,6GAAA,kBAAkB,OAAA;AAClB,0GAAA,eAAe,OAAA;AACf,sGAAA,WAAW,OAAA;AACX,2GAAA,gBAAgB,OAAA;AAChB,sGAAA,WAAW,OAAA;AACX,wGAAA,aAAa,OAAA;AAGf,UAAU;AACV,mCAA+C;AAAtC,qGAAA,WAAW,OAAA;AAAE,gGAAA,MAAM,OAAA;AAI5B,iCAAqD;AAA5C,8FAAA,KAAK,OAAA;AAAE,4GAAA,mBAAmB,OAAA"}
|
package/dist/src/core/Agent.d.ts
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Core Agent implementation
|
|
3
3
|
*/
|
|
4
|
-
import type { AgentOptions, Term, Guideline, Tool, Event, RouteOptions, SessionState, Template,
|
|
4
|
+
import type { AgentOptions, Term, Guideline, Tool, Event, RouteOptions, SessionState, Template, AgentResponseStreamChunk, AgentResponse, StructuredSchema, ValidationResult } from "../types";
|
|
5
|
+
import type { StreamOptions, GenerateOptions, RespondParams } from "./ResponseModal";
|
|
5
6
|
import { Route } from "./Route";
|
|
7
|
+
import { Step } from "./Step";
|
|
6
8
|
import { PersistenceManager } from "./PersistenceManager";
|
|
7
9
|
import { SessionManager } from "./SessionManager";
|
|
10
|
+
import { RoutingEngine } from "./RoutingEngine";
|
|
11
|
+
import { ToolManager } from "./ToolManager";
|
|
8
12
|
/**
|
|
9
13
|
* Main Agent class with generic context and data support
|
|
10
14
|
*/
|
|
@@ -17,14 +21,15 @@ export declare class Agent<TContext = any, TData = any> {
|
|
|
17
21
|
private context;
|
|
18
22
|
private persistenceManager;
|
|
19
23
|
private routingEngine;
|
|
20
|
-
private
|
|
21
|
-
private responsePipeline;
|
|
24
|
+
private responseModal;
|
|
22
25
|
private currentSession?;
|
|
23
26
|
private knowledgeBase;
|
|
24
27
|
private schema?;
|
|
25
28
|
private collectedData;
|
|
26
29
|
/** Public session manager for easy session management */
|
|
27
30
|
session: SessionManager<TData>;
|
|
31
|
+
/** Public tool manager for simplified tool creation and management */
|
|
32
|
+
tool: ToolManager<TContext, TData>;
|
|
28
33
|
constructor(options: AgentOptions<TContext, TData>);
|
|
29
34
|
/**
|
|
30
35
|
* Validate the agent-level schema structure
|
|
@@ -78,13 +83,19 @@ export declare class Agent<TContext = any, TData = any> {
|
|
|
78
83
|
*/
|
|
79
84
|
createGuideline(guideline: Guideline<TContext, TData>): this;
|
|
80
85
|
/**
|
|
81
|
-
*
|
|
86
|
+
* Add a tool to the agent using the unified Tool interface
|
|
87
|
+
* Creates and adds the tool to agent scope in one operation (BREAKING CHANGE: replaces createTool)
|
|
82
88
|
*/
|
|
83
|
-
|
|
89
|
+
addTool<TResult = any>(tool: Tool<TContext, TData, TResult>): this;
|
|
90
|
+
/**
|
|
91
|
+
* Register a tool at the agent level (legacy method for backward compatibility)
|
|
92
|
+
* @deprecated Use addTool() with Tool interface instead
|
|
93
|
+
*/
|
|
94
|
+
createTool<TResult = any>(tool: Tool<TContext, TData, TResult>): this;
|
|
84
95
|
/**
|
|
85
96
|
* Register multiple tools at the agent level
|
|
86
97
|
*/
|
|
87
|
-
registerTools(tools: Tool<TContext, TData,
|
|
98
|
+
registerTools<TResult = any>(tools: Tool<TContext, TData, TResult>[]): this;
|
|
88
99
|
/**
|
|
89
100
|
* Update the agent's context
|
|
90
101
|
* Triggers both agent-level and route-specific onContextUpdate lifecycle hooks if configured
|
|
@@ -107,51 +118,38 @@ export declare class Agent<TContext = any, TData = any> {
|
|
|
107
118
|
/**
|
|
108
119
|
* Generate a response based on history and context as a stream
|
|
109
120
|
*/
|
|
110
|
-
respondStream(params:
|
|
111
|
-
history: History;
|
|
112
|
-
step?: StepRef;
|
|
113
|
-
session?: SessionState<TData>;
|
|
114
|
-
contextOverride?: Partial<TContext>;
|
|
115
|
-
signal?: AbortSignal;
|
|
116
|
-
}): AsyncGenerator<AgentResponseStreamChunk<TData>>;
|
|
121
|
+
respondStream(params: RespondParams<TContext, TData>): AsyncGenerator<AgentResponseStreamChunk<TData>>;
|
|
117
122
|
/**
|
|
118
123
|
* Generate a response based on history and context
|
|
119
124
|
*/
|
|
120
|
-
respond(params:
|
|
121
|
-
history: History;
|
|
122
|
-
step?: StepRef;
|
|
123
|
-
session?: SessionState<TData>;
|
|
124
|
-
contextOverride?: Partial<TContext>;
|
|
125
|
-
signal?: AbortSignal;
|
|
126
|
-
}): Promise<AgentResponse<TData>>;
|
|
125
|
+
respond(params: RespondParams<TContext, TData>): Promise<AgentResponse<TData>>;
|
|
127
126
|
/**
|
|
128
127
|
* Get all routes
|
|
129
128
|
*/
|
|
130
129
|
getRoutes(): Route<TContext, TData>[];
|
|
131
130
|
/**
|
|
132
|
-
* Get
|
|
131
|
+
* Get agent options
|
|
132
|
+
* @internal Used by ResponseModal
|
|
133
133
|
*/
|
|
134
|
-
|
|
134
|
+
getAgentOptions(): AgentOptions<TContext, TData>;
|
|
135
135
|
/**
|
|
136
|
-
* Get
|
|
136
|
+
* Get routing engine
|
|
137
|
+
* @internal Used by ResponseModal
|
|
137
138
|
*/
|
|
138
|
-
|
|
139
|
+
getRoutingEngine(): RoutingEngine<TContext, TData>;
|
|
139
140
|
/**
|
|
140
|
-
*
|
|
141
|
-
*
|
|
142
|
-
* @private
|
|
141
|
+
* Get the updateData method bound to this agent
|
|
142
|
+
* @internal Used by ResponseModal
|
|
143
143
|
*/
|
|
144
|
-
|
|
144
|
+
getUpdateDataMethod(): (session: SessionState<TData>, dataUpdate: Partial<TData>) => Promise<SessionState<TData>>;
|
|
145
145
|
/**
|
|
146
|
-
*
|
|
147
|
-
* @private
|
|
146
|
+
* Get all terms
|
|
148
147
|
*/
|
|
149
|
-
|
|
148
|
+
getTerms(): Term<TContext, TData>[];
|
|
150
149
|
/**
|
|
151
|
-
*
|
|
152
|
-
* @private
|
|
150
|
+
* Get all tools
|
|
153
151
|
*/
|
|
154
|
-
|
|
152
|
+
getTools(): Tool<TContext, TData>[];
|
|
155
153
|
/**
|
|
156
154
|
* Get all guidelines
|
|
157
155
|
*/
|
|
@@ -160,11 +158,6 @@ export declare class Agent<TContext = any, TData = any> {
|
|
|
160
158
|
* Get the agent's knowledge base
|
|
161
159
|
*/
|
|
162
160
|
getKnowledgeBase(): Record<string, unknown>;
|
|
163
|
-
/**
|
|
164
|
-
* Merge terms with route-specific taking precedence on conflicts
|
|
165
|
-
* @private
|
|
166
|
-
*/
|
|
167
|
-
private mergeTerms;
|
|
168
161
|
/**
|
|
169
162
|
* Get the persistence manager (if configured)
|
|
170
163
|
*/
|
|
@@ -182,10 +175,20 @@ export declare class Agent<TContext = any, TData = any> {
|
|
|
182
175
|
* Get the current session (if set)
|
|
183
176
|
*/
|
|
184
177
|
getCurrentSession(): SessionState | undefined;
|
|
178
|
+
/**
|
|
179
|
+
* Execute a prepare or finalize function/tool
|
|
180
|
+
* @internal Used by ResponseModal
|
|
181
|
+
*/
|
|
182
|
+
executePrepareFinalize(prepareOrFinalize: string | Tool<TContext, TData> | ((context: TContext, data?: Partial<TData>) => void | Promise<void>) | undefined, context: TContext, data?: Partial<TData>, route?: Route<TContext, TData>, step?: Step<TContext, TData>): Promise<void>;
|
|
185
183
|
/**
|
|
186
184
|
* Clear the current session
|
|
187
185
|
*/
|
|
188
186
|
clearCurrentSession(): void;
|
|
187
|
+
/**
|
|
188
|
+
* Sync session data to agent collected data
|
|
189
|
+
* @internal Used to keep agent and session data in sync
|
|
190
|
+
*/
|
|
191
|
+
private syncSessionDataToCollectedData;
|
|
189
192
|
/**
|
|
190
193
|
* Get collected data from current session or agent-level collected data
|
|
191
194
|
* @param routeId - Optional route ID to get data for (uses current route if not provided)
|
|
@@ -214,10 +217,11 @@ export declare class Agent<TContext = any, TData = any> {
|
|
|
214
217
|
* Simplified respond method using SessionManager
|
|
215
218
|
* Automatically manages conversation history through the session
|
|
216
219
|
*/
|
|
217
|
-
chat(message?: string, options?:
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
220
|
+
chat(message?: string, options?: GenerateOptions<TContext>): Promise<AgentResponse<TData>>;
|
|
221
|
+
/**
|
|
222
|
+
* Modern streaming API - simple interface like chat() but returns a stream
|
|
223
|
+
* Automatically manages conversation history through the session
|
|
224
|
+
*/
|
|
225
|
+
stream(message?: string, options?: StreamOptions<TContext>): AsyncGenerator<AgentResponseStreamChunk<TData>>;
|
|
222
226
|
}
|
|
223
227
|
//# sourceMappingURL=Agent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../../src/core/Agent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,YAAY,
|
|
1
|
+
{"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../../src/core/Agent.ts"],"names":[],"mappings":"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"}
|