@agentica/core 0.24.0 → 0.25.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/lib/Agentica.d.ts +2 -2
- package/lib/Agentica.js +4 -4
- package/lib/Agentica.js.map +1 -1
- package/lib/MicroAgentica.d.ts +2 -2
- package/lib/MicroAgentica.js +4 -4
- package/lib/MicroAgentica.js.map +1 -1
- package/lib/context/AgenticaContext.d.ts +2 -2
- package/lib/context/MicroAgenticaContext.d.ts +2 -2
- package/lib/context/index.d.ts +5 -0
- package/lib/{structures/mcp → context}/index.js +5 -1
- package/lib/context/index.js.map +1 -0
- package/lib/events/AgenticaAssistantMessageEvent.d.ts +9 -0
- package/lib/{histories/AgenticaUserInputHistory.js → events/AgenticaAssistantMessageEvent.js} +1 -1
- package/lib/events/AgenticaAssistantMessageEvent.js.map +1 -0
- package/lib/events/AgenticaEvent.d.ts +9 -9
- package/lib/events/AgenticaUserMessageEvent.d.ts +9 -0
- package/lib/events/{AgenticaUserInputEvent.js → AgenticaUserMessageEvent.js} +1 -1
- package/lib/events/AgenticaUserMessageEvent.js.map +1 -0
- package/lib/events/MicroAgenticaEvent.d.ts +6 -6
- package/lib/events/index.d.ts +14 -0
- package/lib/events/index.js +31 -0
- package/lib/events/index.js.map +1 -0
- package/lib/factory/events.d.ts +8 -8
- package/lib/factory/events.js +23 -38
- package/lib/factory/events.js.map +1 -1
- package/lib/factory/histories.d.ts +1 -36
- package/lib/factory/histories.js +77 -24
- package/lib/factory/histories.js.map +1 -1
- package/lib/functional/assertHttpController.js +6 -6
- package/lib/functional/assertHttpLlmApplication.js +6 -6
- package/lib/functional/assertMcpController.d.ts +1 -2
- package/lib/functional/assertMcpController.js +6 -6
- package/lib/functional/assertMcpController.js.map +1 -1
- package/lib/functional/index.d.ts +6 -0
- package/lib/functional/index.js +23 -0
- package/lib/functional/index.js.map +1 -0
- package/lib/functional/validateHttpController.js +5 -5
- package/lib/functional/validateHttpLlmApplication.js +5 -5
- package/lib/functional/validateMcpController.d.ts +1 -2
- package/lib/functional/validateMcpController.js +11 -11
- package/lib/functional/validateMcpController.js.map +1 -1
- package/lib/histories/{AgenticaTextHistory.d.ts → AgenticaAssistantMessageHistory.d.ts} +1 -2
- package/lib/histories/AgenticaAssistantMessageHistory.js +3 -0
- package/lib/histories/AgenticaAssistantMessageHistory.js.map +1 -0
- package/lib/histories/AgenticaHistory.d.ts +7 -7
- package/lib/histories/AgenticaUserMessageHistory.d.ts +6 -0
- package/lib/{events/AgenticaTextEvent.js → histories/AgenticaUserMessageHistory.js} +1 -1
- package/lib/histories/AgenticaUserMessageHistory.js.map +1 -0
- package/lib/histories/MicroAgenticaHistory.d.ts +5 -4
- package/lib/histories/contents/AgenticaUserMessageAudioContent.d.ts +19 -0
- package/lib/histories/contents/AgenticaUserMessageAudioContent.js +3 -0
- package/lib/histories/contents/AgenticaUserMessageAudioContent.js.map +1 -0
- package/lib/histories/contents/AgenticaUserMessageContent.d.ts +14 -0
- package/lib/histories/{AgenticaTextHistory.js → contents/AgenticaUserMessageContent.js} +1 -1
- package/lib/histories/contents/AgenticaUserMessageContent.js.map +1 -0
- package/lib/histories/contents/AgenticaUserMessageContentBase.d.ts +6 -0
- package/lib/histories/contents/AgenticaUserMessageContentBase.js +3 -0
- package/lib/histories/contents/AgenticaUserMessageContentBase.js.map +1 -0
- package/lib/histories/contents/AgenticaUserMessageFileContent.d.ts +26 -0
- package/lib/histories/contents/AgenticaUserMessageFileContent.js +3 -0
- package/lib/histories/contents/AgenticaUserMessageFileContent.js.map +1 -0
- package/lib/histories/contents/AgenticaUserMessageImageContent.d.ts +20 -0
- package/lib/histories/contents/AgenticaUserMessageImageContent.js +3 -0
- package/lib/histories/contents/AgenticaUserMessageImageContent.js.map +1 -0
- package/lib/histories/contents/AgenticaUserMessageTextContent.d.ts +14 -0
- package/lib/histories/contents/AgenticaUserMessageTextContent.js +3 -0
- package/lib/histories/contents/AgenticaUserMessageTextContent.js.map +1 -0
- package/lib/histories/contents/index.d.ts +5 -0
- package/lib/histories/contents/index.js +22 -0
- package/lib/histories/contents/index.js.map +1 -0
- package/lib/histories/index.d.ts +9 -0
- package/lib/histories/index.js +26 -0
- package/lib/histories/index.js.map +1 -0
- package/lib/index.d.ts +6 -45
- package/lib/index.js +6 -46
- package/lib/index.js.map +1 -1
- package/lib/index.mjs +148 -133
- package/lib/index.mjs.map +1 -1
- package/lib/json/IAgenticaEventJson.d.ts +29 -23
- package/lib/json/IAgenticaHistoryJson.d.ts +24 -19
- package/lib/json/IMicroAgenticaEventJson.d.ts +1 -1
- package/lib/json/IMicroAgenticaHistoryJson.d.ts +1 -1
- package/lib/json/index.d.ts +7 -0
- package/lib/json/index.js +24 -0
- package/lib/json/index.js.map +1 -0
- package/lib/orchestrate/call.js +4 -4
- package/lib/orchestrate/call.js.map +1 -1
- package/lib/orchestrate/cancel.js +1 -1
- package/lib/orchestrate/cancel.js.map +1 -1
- package/lib/orchestrate/initialize.js +4 -4
- package/lib/orchestrate/initialize.js.map +1 -1
- package/lib/orchestrate/select.js +3 -3
- package/lib/orchestrate/select.js.map +1 -1
- package/lib/structures/IAgenticaController.d.ts +1 -2
- package/lib/structures/index.d.ts +10 -0
- package/lib/structures/index.js +27 -0
- package/lib/structures/index.js.map +1 -0
- package/lib/transformers/transformEvent.d.ts +1 -0
- package/lib/transformers/{AgenticaEventTransformer.js → transformEvent.js} +74 -31
- package/lib/transformers/transformEvent.js.map +1 -0
- package/lib/transformers/transformHistory.d.ts +1 -0
- package/lib/transformers/{AgenticaHistoryTransformer.js → transformHistory.js} +24 -23
- package/lib/transformers/transformHistory.js.map +1 -0
- package/lib/utils/ChatGptCompletionMessageUtil.js +2 -2
- package/package.json +5 -6
- package/src/Agentica.ts +10 -9
- package/src/MicroAgentica.ts +12 -9
- package/src/context/AgenticaContext.ts +2 -2
- package/src/context/MicroAgenticaContext.ts +2 -2
- package/src/context/index.ts +5 -0
- package/src/events/AgenticaAssistantMessageEvent.ts +12 -0
- package/src/events/AgenticaEvent.ts +15 -15
- package/src/events/AgenticaUserMessageEvent.ts +12 -0
- package/src/events/MicroAgenticaEvent.ts +9 -9
- package/src/events/index.ts +14 -0
- package/src/factory/events.ts +29 -34
- package/src/factory/histories.ts +81 -32
- package/src/functional/assertMcpController.ts +4 -2
- package/src/functional/index.ts +7 -0
- package/src/functional/validateMcpController.ts +4 -2
- package/src/histories/{AgenticaTextHistory.ts → AgenticaAssistantMessageHistory.ts} +4 -2
- package/src/histories/AgenticaHistory.ts +8 -8
- package/src/histories/AgenticaUserMessageHistory.ts +11 -0
- package/src/histories/MicroAgenticaHistory.ts +6 -5
- package/src/histories/contents/AgenticaUserMessageAudioContent.ts +21 -0
- package/src/histories/contents/AgenticaUserMessageContent.ts +19 -0
- package/src/histories/contents/AgenticaUserMessageContentBase.ts +6 -0
- package/src/histories/contents/AgenticaUserMessageFileContent.ts +27 -0
- package/src/histories/contents/AgenticaUserMessageImageContent.ts +23 -0
- package/src/histories/contents/AgenticaUserMessageTextContent.ts +15 -0
- package/src/histories/contents/index.ts +5 -0
- package/src/histories/index.ts +9 -0
- package/src/index.ts +6 -54
- package/src/json/IAgenticaEventJson.ts +36 -28
- package/src/json/IAgenticaHistoryJson.ts +28 -22
- package/src/json/IMicroAgenticaEventJson.ts +2 -1
- package/src/json/IMicroAgenticaHistoryJson.ts +2 -1
- package/src/json/index.ts +7 -0
- package/src/orchestrate/call.ts +8 -8
- package/src/orchestrate/cancel.ts +2 -2
- package/src/orchestrate/initialize.ts +5 -5
- package/src/orchestrate/select.ts +5 -5
- package/src/structures/IAgenticaController.ts +4 -2
- package/src/structures/index.ts +10 -0
- package/src/transformers/{AgenticaEventTransformer.ts → transformEvent.ts} +94 -42
- package/src/transformers/{AgenticaHistoryTransformer.ts → transformHistory.ts} +30 -26
- package/lib/events/AgenticaTextEvent.d.ts +0 -10
- package/lib/events/AgenticaTextEvent.js.map +0 -1
- package/lib/events/AgenticaUserInputEvent.d.ts +0 -10
- package/lib/events/AgenticaUserInputEvent.js.map +0 -1
- package/lib/histories/AgenticaTextHistory.js.map +0 -1
- package/lib/histories/AgenticaUserInputHistory.d.ts +0 -86
- package/lib/histories/AgenticaUserInputHistory.js.map +0 -1
- package/lib/structures/mcp/IMcpLlmTransportProps.d.ts +0 -11
- package/lib/structures/mcp/IMcpLlmTransportProps.js +0 -3
- package/lib/structures/mcp/IMcpLlmTransportProps.js.map +0 -1
- package/lib/structures/mcp/index.d.ts +0 -1
- package/lib/structures/mcp/index.js.map +0 -1
- package/lib/transformers/AgenticaEventTransformer.d.ts +0 -63
- package/lib/transformers/AgenticaEventTransformer.js.map +0 -1
- package/lib/transformers/AgenticaHistoryTransformer.d.ts +0 -41
- package/lib/transformers/AgenticaHistoryTransformer.js.map +0 -1
- package/src/events/AgenticaTextEvent.ts +0 -12
- package/src/events/AgenticaUserInputEvent.ts +0 -12
- package/src/histories/AgenticaUserInputHistory.ts +0 -94
- package/src/structures/mcp/IMcpLlmTransportProps.ts +0 -13
- package/src/structures/mcp/index.ts +0 -1
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export * from "./AgenticaAssistantMessageEvent";
|
|
2
|
+
export * from "./AgenticaCallEvent";
|
|
3
|
+
export * from "./AgenticaCancelEvent";
|
|
4
|
+
export * from "./AgenticaDescribeEvent";
|
|
5
|
+
export * from "./AgenticaEvent";
|
|
6
|
+
export * from "./AgenticaEventSource";
|
|
7
|
+
export * from "./AgenticaExecuteEvent";
|
|
8
|
+
export * from "./AgenticaInitializeEvent";
|
|
9
|
+
export * from "./AgenticaRequestEvent";
|
|
10
|
+
export * from "./AgenticaResponseEvent";
|
|
11
|
+
export * from "./AgenticaSelectEvent";
|
|
12
|
+
export * from "./AgenticaUserMessageEvent";
|
|
13
|
+
export * from "./AgenticaValidateEvent";
|
|
14
|
+
export * from "./MicroAgenticaEvent";
|
package/src/factory/events.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { v4 } from "uuid";
|
|
|
5
5
|
|
|
6
6
|
import type { AgenticaOperation } from "../context/AgenticaOperation";
|
|
7
7
|
import type { AgenticaOperationSelection } from "../context/AgenticaOperationSelection";
|
|
8
|
+
import type { AgenticaAssistantMessageEvent } from "../events/AgenticaAssistantMessageEvent";
|
|
8
9
|
import type { AgenticaCallEvent } from "../events/AgenticaCallEvent";
|
|
9
10
|
import type { AgenticaCancelEvent } from "../events/AgenticaCancelEvent";
|
|
10
11
|
import type { AgenticaDescribeEvent } from "../events/AgenticaDescribeEvent";
|
|
@@ -14,14 +15,13 @@ import type { AgenticaInitializeEvent } from "../events/AgenticaInitializeEvent"
|
|
|
14
15
|
import type { AgenticaRequestEvent } from "../events/AgenticaRequestEvent";
|
|
15
16
|
import type { AgenticaResponseEvent } from "../events/AgenticaResponseEvent";
|
|
16
17
|
import type { AgenticaSelectEvent } from "../events/AgenticaSelectEvent";
|
|
17
|
-
import type {
|
|
18
|
-
import type { AgenticaUserInputEvent } from "../events/AgenticaUserInputEvent";
|
|
18
|
+
import type { AgenticaUserMessageEvent } from "../events/AgenticaUserMessageEvent";
|
|
19
19
|
import type { AgenticaValidateEvent } from "../events/AgenticaValidateEvent";
|
|
20
|
+
import type { AgenticaUserMessageContent } from "../histories";
|
|
20
21
|
import type { AgenticaExecuteHistory } from "../histories/AgenticaExecuteHistory";
|
|
21
|
-
import type { AgenticaUserInputHistory } from "../histories/AgenticaUserInputHistory";
|
|
22
22
|
import type { IAgenticaEventJson } from "../json/IAgenticaEventJson";
|
|
23
23
|
|
|
24
|
-
import { createExecuteHistory, createSelectHistory,
|
|
24
|
+
import { createExecuteHistory, createSelectHistory, createUserMessageHistory } from "./histories";
|
|
25
25
|
|
|
26
26
|
/* -----------------------------------------------------------
|
|
27
27
|
FUNCTION SELECTS
|
|
@@ -36,23 +36,6 @@ export function createInitializeEvent(): AgenticaInitializeEvent {
|
|
|
36
36
|
};
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
export function createUserInputEvent(props: {
|
|
40
|
-
contents: Array<AgenticaUserInputHistory.Contents>;
|
|
41
|
-
}): AgenticaUserInputEvent {
|
|
42
|
-
return {
|
|
43
|
-
type: "user_input",
|
|
44
|
-
role: "user",
|
|
45
|
-
contents: props.contents,
|
|
46
|
-
join: async () => props.contents,
|
|
47
|
-
toJSON: () => ({
|
|
48
|
-
type: "user_input",
|
|
49
|
-
contents: props.contents,
|
|
50
|
-
}),
|
|
51
|
-
toHistory: () => createUserInputHistory({
|
|
52
|
-
contents: props.contents,
|
|
53
|
-
}),
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
39
|
export function createSelectEvent<Model extends ILlmSchema.Model>(props: {
|
|
57
40
|
selection: AgenticaOperationSelection<Model>;
|
|
58
41
|
}): AgenticaSelectEvent<Model> {
|
|
@@ -151,32 +134,44 @@ export function createExecuteEvent<Model extends ILlmSchema.Model>(props: {
|
|
|
151
134
|
}
|
|
152
135
|
|
|
153
136
|
/* -----------------------------------------------------------
|
|
154
|
-
|
|
137
|
+
CONTENTS
|
|
155
138
|
----------------------------------------------------------- */
|
|
156
|
-
export function
|
|
139
|
+
export function createUserMessageEvent(props: {
|
|
140
|
+
contents: Array<AgenticaUserMessageContent>;
|
|
141
|
+
}): AgenticaUserMessageEvent {
|
|
142
|
+
return {
|
|
143
|
+
type: "userMessage",
|
|
144
|
+
contents: props.contents,
|
|
145
|
+
toJSON: () => ({
|
|
146
|
+
type: "userMessage",
|
|
147
|
+
contents: props.contents,
|
|
148
|
+
}),
|
|
149
|
+
toHistory: () => createUserMessageHistory({
|
|
150
|
+
contents: props.contents,
|
|
151
|
+
}),
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
export function creatAssistantEvent(props: {
|
|
157
156
|
stream: AsyncGenerator<string, undefined, undefined>;
|
|
158
157
|
done: () => boolean;
|
|
159
158
|
get: () => string;
|
|
160
159
|
join: () => Promise<string>;
|
|
161
|
-
}):
|
|
160
|
+
}): AgenticaAssistantMessageEvent {
|
|
162
161
|
return {
|
|
163
|
-
type: "
|
|
164
|
-
role: "assistant",
|
|
162
|
+
type: "assistantMessage",
|
|
165
163
|
stream: props.stream,
|
|
166
164
|
join: props.join,
|
|
167
165
|
toJSON: () => ({
|
|
168
|
-
type: "
|
|
169
|
-
role: "assistant",
|
|
166
|
+
type: "assistantMessage",
|
|
170
167
|
done: props.done(),
|
|
171
168
|
text: props.get(),
|
|
172
169
|
}),
|
|
173
170
|
toHistory: () => ({
|
|
174
|
-
type: "
|
|
175
|
-
role: "assistant",
|
|
171
|
+
type: "assistantMessage",
|
|
176
172
|
text: props.get(),
|
|
177
173
|
toJSON: () => ({
|
|
178
|
-
type: "
|
|
179
|
-
role: "assistant",
|
|
174
|
+
type: "assistantMessage",
|
|
180
175
|
text: props.get(),
|
|
181
176
|
}),
|
|
182
177
|
}),
|
|
@@ -215,8 +210,8 @@ export function createDescribeEvent<Model extends ILlmSchema.Model>(props: {
|
|
|
215
210
|
}
|
|
216
211
|
|
|
217
212
|
/* -----------------------------------------------------------
|
|
218
|
-
|
|
219
|
-
|
|
213
|
+
API REQUESTS
|
|
214
|
+
----------------------------------------------------------- */
|
|
220
215
|
export function createRequestEvent(props: {
|
|
221
216
|
source: AgenticaEventSource;
|
|
222
217
|
body: OpenAI.ChatCompletionCreateParamsStreaming;
|
package/src/factory/histories.ts
CHANGED
|
@@ -3,31 +3,25 @@ import type OpenAI from "openai";
|
|
|
3
3
|
|
|
4
4
|
import type { AgenticaOperation } from "../context/AgenticaOperation";
|
|
5
5
|
import type { AgenticaOperationSelection } from "../context/AgenticaOperationSelection";
|
|
6
|
+
import type { AgenticaUserMessageContent } from "../histories";
|
|
7
|
+
import type { AgenticaAssistantMessageHistory } from "../histories/AgenticaAssistantMessageHistory";
|
|
6
8
|
import type { AgenticaCancelHistory } from "../histories/AgenticaCancelHistory";
|
|
7
9
|
import type { AgenticaDescribeHistory } from "../histories/AgenticaDescribeHistory";
|
|
8
10
|
import type { AgenticaExecuteHistory } from "../histories/AgenticaExecuteHistory";
|
|
9
11
|
import type { AgenticaHistory } from "../histories/AgenticaHistory";
|
|
10
12
|
import type { AgenticaSelectHistory } from "../histories/AgenticaSelectHistory";
|
|
11
|
-
import type {
|
|
12
|
-
import type { AgenticaUserInputHistory } from "../histories/AgenticaUserInputHistory";
|
|
13
|
+
import type { AgenticaUserMessageHistory } from "../histories/AgenticaUserMessageHistory";
|
|
13
14
|
import type { IAgenticaHistoryJson } from "../json/IAgenticaHistoryJson";
|
|
14
15
|
|
|
16
|
+
/**
|
|
17
|
+
* @internal
|
|
18
|
+
*/
|
|
15
19
|
export function decodeHistory<Model extends ILlmSchema.Model>(history: AgenticaHistory<Model>): OpenAI.ChatCompletionMessageParam[] {
|
|
16
20
|
// NO NEED TO DECODE DESCRIBE
|
|
17
21
|
if (history.type === "describe") {
|
|
18
22
|
return [];
|
|
19
23
|
}
|
|
20
|
-
|
|
21
|
-
if (history.type === "text") {
|
|
22
|
-
return [
|
|
23
|
-
{
|
|
24
|
-
role: history.role,
|
|
25
|
-
content: history.text,
|
|
26
|
-
},
|
|
27
|
-
];
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
if (history.type === "select" || history.type === "cancel") {
|
|
24
|
+
else if (history.type === "select" || history.type === "cancel") {
|
|
31
25
|
return [
|
|
32
26
|
{
|
|
33
27
|
role: "assistant",
|
|
@@ -54,8 +48,7 @@ export function decodeHistory<Model extends ILlmSchema.Model>(history: AgenticaH
|
|
|
54
48
|
},
|
|
55
49
|
];
|
|
56
50
|
}
|
|
57
|
-
|
|
58
|
-
if (history.type === "execute") {
|
|
51
|
+
else if (history.type === "execute") {
|
|
59
52
|
return [
|
|
60
53
|
{
|
|
61
54
|
role: "assistant",
|
|
@@ -98,32 +91,74 @@ export function decodeHistory<Model extends ILlmSchema.Model>(history: AgenticaH
|
|
|
98
91
|
},
|
|
99
92
|
];
|
|
100
93
|
}
|
|
101
|
-
|
|
102
|
-
if (history.type === "user_input") {
|
|
94
|
+
else if (history.type === "assistantMessage") {
|
|
103
95
|
return [
|
|
104
96
|
{
|
|
105
|
-
role: "
|
|
106
|
-
content: history.
|
|
97
|
+
role: "assistant",
|
|
98
|
+
content: history.text,
|
|
107
99
|
},
|
|
108
100
|
];
|
|
109
101
|
}
|
|
102
|
+
return [
|
|
103
|
+
{
|
|
104
|
+
role: "user",
|
|
105
|
+
content: history.contents.map(decodeUserMessageContent),
|
|
106
|
+
},
|
|
107
|
+
];
|
|
108
|
+
}
|
|
110
109
|
|
|
111
|
-
|
|
112
|
-
|
|
110
|
+
/**
|
|
111
|
+
* @internal
|
|
112
|
+
*/
|
|
113
|
+
export function decodeUserMessageContent(content: AgenticaUserMessageContent): OpenAI.ChatCompletionContentPart {
|
|
114
|
+
if (content.type === "audio") {
|
|
115
|
+
return {
|
|
116
|
+
type: "input_audio",
|
|
117
|
+
input_audio: {
|
|
118
|
+
data: content.data,
|
|
119
|
+
format: content.format,
|
|
120
|
+
},
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
else if (content.type === "file") {
|
|
124
|
+
return {
|
|
125
|
+
type: "file",
|
|
126
|
+
file: content.file.type === "data"
|
|
127
|
+
? {
|
|
128
|
+
file_data: content.file.data,
|
|
129
|
+
filename: content.file.name,
|
|
130
|
+
}
|
|
131
|
+
: {
|
|
132
|
+
file_id: content.file.id,
|
|
133
|
+
},
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
else if (content.type === "image") {
|
|
137
|
+
return {
|
|
138
|
+
type: "image_url",
|
|
139
|
+
image_url: {
|
|
140
|
+
url: content.url,
|
|
141
|
+
detail: content.detail,
|
|
142
|
+
},
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
return content;
|
|
113
146
|
}
|
|
114
147
|
|
|
115
148
|
/* -----------------------------------------------------------
|
|
116
149
|
USER INPUT PROMPTS
|
|
117
150
|
----------------------------------------------------------- */
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
151
|
+
/**
|
|
152
|
+
* @internal
|
|
153
|
+
*/
|
|
154
|
+
export function createUserMessageHistory(props: {
|
|
155
|
+
contents: Array<AgenticaUserMessageContent>;
|
|
156
|
+
}): AgenticaUserMessageHistory {
|
|
121
157
|
return {
|
|
122
|
-
type: "
|
|
123
|
-
role: "user",
|
|
158
|
+
type: "userMessage",
|
|
124
159
|
contents: props.contents,
|
|
125
160
|
toJSON: () => ({
|
|
126
|
-
type: "
|
|
161
|
+
type: "userMessage",
|
|
127
162
|
contents: props.contents,
|
|
128
163
|
}),
|
|
129
164
|
};
|
|
@@ -132,12 +167,14 @@ export function createUserInputHistory(props: {
|
|
|
132
167
|
/* -----------------------------------------------------------
|
|
133
168
|
TEXT PROMPTS
|
|
134
169
|
----------------------------------------------------------- */
|
|
135
|
-
|
|
170
|
+
/**
|
|
171
|
+
* @internal
|
|
172
|
+
*/
|
|
173
|
+
export function createAssistantMessageHistory(props: {
|
|
136
174
|
text: string;
|
|
137
|
-
}):
|
|
138
|
-
const prompt: IAgenticaHistoryJson.
|
|
139
|
-
type: "
|
|
140
|
-
role: "assistant",
|
|
175
|
+
}): AgenticaAssistantMessageHistory {
|
|
176
|
+
const prompt: IAgenticaHistoryJson.IAssistantMessage = {
|
|
177
|
+
type: "assistantMessage",
|
|
141
178
|
text: props.text,
|
|
142
179
|
};
|
|
143
180
|
return {
|
|
@@ -146,6 +183,9 @@ export function createTextHistory(props: {
|
|
|
146
183
|
};
|
|
147
184
|
}
|
|
148
185
|
|
|
186
|
+
/**
|
|
187
|
+
* @internal
|
|
188
|
+
*/
|
|
149
189
|
export function createDescribeHistory<Model extends ILlmSchema.Model>(props: {
|
|
150
190
|
executes: AgenticaExecuteHistory<Model>[];
|
|
151
191
|
text: string;
|
|
@@ -165,6 +205,9 @@ export function createDescribeHistory<Model extends ILlmSchema.Model>(props: {
|
|
|
165
205
|
/* -----------------------------------------------------------
|
|
166
206
|
FUNCTION CALLING PROMPTS
|
|
167
207
|
----------------------------------------------------------- */
|
|
208
|
+
/**
|
|
209
|
+
* @internal
|
|
210
|
+
*/
|
|
168
211
|
export function createSelectHistory<Model extends ILlmSchema.Model>(props: {
|
|
169
212
|
id: string;
|
|
170
213
|
selections: AgenticaOperationSelection<Model>[];
|
|
@@ -181,6 +224,9 @@ export function createSelectHistory<Model extends ILlmSchema.Model>(props: {
|
|
|
181
224
|
};
|
|
182
225
|
}
|
|
183
226
|
|
|
227
|
+
/**
|
|
228
|
+
* @internal
|
|
229
|
+
*/
|
|
184
230
|
export function createCancelHistory<Model extends ILlmSchema.Model>(props: {
|
|
185
231
|
id: string;
|
|
186
232
|
selections: AgenticaOperationSelection<Model>[];
|
|
@@ -197,6 +243,9 @@ export function createCancelHistory<Model extends ILlmSchema.Model>(props: {
|
|
|
197
243
|
};
|
|
198
244
|
}
|
|
199
245
|
|
|
246
|
+
/**
|
|
247
|
+
* @internal
|
|
248
|
+
*/
|
|
200
249
|
export function createExecuteHistory<
|
|
201
250
|
Model extends ILlmSchema.Model,
|
|
202
251
|
>(props: {
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { Client } from "@modelcontextprotocol/sdk/client/index.d.ts";
|
|
2
1
|
import type { ILlmSchema, IMcpLlmApplication, IMcpTool } from "@samchon/openapi";
|
|
3
2
|
|
|
4
3
|
import { McpLlm } from "@samchon/openapi";
|
|
@@ -23,8 +22,11 @@ import type { IAgenticaController } from "../structures/IAgenticaController";
|
|
|
23
22
|
*/
|
|
24
23
|
export async function assertMcpController<Model extends ILlmSchema.Model>(props: {
|
|
25
24
|
name: string;
|
|
26
|
-
client: Client;
|
|
27
25
|
model: Model;
|
|
26
|
+
// @ts-ignore Type checking only when `@modelcontextprotocol/sdk` is installed.
|
|
27
|
+
// This strategy is useful for someone who does not need MCP,
|
|
28
|
+
// for someone who has not installed `@modelcontextprotocol/sdk`.
|
|
29
|
+
client: import("@modelcontextprotocol/sdk/client/index.d.ts").Client;
|
|
28
30
|
options?: Partial<IMcpLlmApplication.IOptions<Model>>;
|
|
29
31
|
}): Promise<IAgenticaController.IMcp<Model>> {
|
|
30
32
|
// for peerDependencies
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from "./assertHttpController";
|
|
2
|
+
export * from "./assertHttpLlmApplication"; // deprecated
|
|
3
|
+
export * from "./assertMcpController";
|
|
4
|
+
export * from "./validateHttpController"; // deprecated
|
|
5
|
+
|
|
6
|
+
export * from "./validateHttpLlmApplication";
|
|
7
|
+
export * from "./validateMcpController";
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { Client } from "@modelcontextprotocol/sdk/client/index.d.ts";
|
|
2
1
|
import type { ILlmSchema, IMcpLlmApplication, IMcpTool, IValidation } from "@samchon/openapi";
|
|
3
2
|
|
|
4
3
|
import { McpLlm } from "@samchon/openapi";
|
|
@@ -25,7 +24,10 @@ export async function validateMcpController<
|
|
|
25
24
|
Model extends ILlmSchema.Model,
|
|
26
25
|
>(props: {
|
|
27
26
|
name: string;
|
|
28
|
-
|
|
27
|
+
// @ts-ignore Type checking only when `@modelcontextprotocol/sdk` is installed.
|
|
28
|
+
// This strategy is useful for someone who does not need MCP,
|
|
29
|
+
// for someone who has not installed `@modelcontextprotocol/sdk`.
|
|
30
|
+
client: import("@modelcontextprotocol/sdk/client/index.d.ts").Client;
|
|
29
31
|
model: Model;
|
|
30
32
|
options?: Partial<IMcpLlmApplication.IOptions<Model>>;
|
|
31
33
|
}): Promise<IValidation<IAgenticaController.IMcp<Model>>> {
|
|
@@ -2,7 +2,9 @@ import type { IAgenticaHistoryJson } from "../json/IAgenticaHistoryJson";
|
|
|
2
2
|
|
|
3
3
|
import type { AgenticaHistoryBase } from "./AgenticaHistoryBase";
|
|
4
4
|
|
|
5
|
-
export interface
|
|
6
|
-
|
|
5
|
+
export interface AgenticaAssistantMessageHistory extends AgenticaHistoryBase<
|
|
6
|
+
"assistantMessage",
|
|
7
|
+
IAgenticaHistoryJson.IAssistantMessage
|
|
8
|
+
> {
|
|
7
9
|
text: string;
|
|
8
10
|
}
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
import type { ILlmSchema } from "@samchon/openapi";
|
|
2
2
|
|
|
3
|
+
import type { AgenticaAssistantMessageHistory } from "./AgenticaAssistantMessageHistory";
|
|
3
4
|
import type { AgenticaCancelHistory } from "./AgenticaCancelHistory";
|
|
4
5
|
import type { AgenticaDescribeHistory } from "./AgenticaDescribeHistory";
|
|
5
6
|
import type { AgenticaExecuteHistory } from "./AgenticaExecuteHistory";
|
|
6
7
|
import type { AgenticaSelectHistory } from "./AgenticaSelectHistory";
|
|
7
|
-
import type {
|
|
8
|
-
import type { AgenticaUserInputHistory } from "./AgenticaUserInputHistory";
|
|
8
|
+
import type { AgenticaUserMessageHistory } from "./AgenticaUserMessageHistory";
|
|
9
9
|
|
|
10
10
|
export type AgenticaHistory<Model extends ILlmSchema.Model> =
|
|
11
11
|
| AgenticaCancelHistory<Model>
|
|
12
12
|
| AgenticaDescribeHistory<Model>
|
|
13
13
|
| AgenticaExecuteHistory<Model>
|
|
14
14
|
| AgenticaSelectHistory<Model>
|
|
15
|
-
|
|
|
16
|
-
|
|
|
15
|
+
| AgenticaAssistantMessageHistory
|
|
16
|
+
| AgenticaUserMessageHistory;
|
|
17
17
|
export namespace AgenticaHistory {
|
|
18
18
|
export type Type = AgenticaHistory<any>["type"];
|
|
19
19
|
export interface Mapper<Model extends ILlmSchema.Model> {
|
|
20
|
+
assistantMessage: AgenticaAssistantMessageHistory;
|
|
21
|
+
userMessage: AgenticaUserMessageHistory;
|
|
22
|
+
select: AgenticaSelectHistory<Model>;
|
|
20
23
|
cancel: AgenticaCancelHistory<Model>;
|
|
21
|
-
describe: AgenticaDescribeHistory<Model>;
|
|
22
24
|
execute: AgenticaExecuteHistory<Model>;
|
|
23
|
-
|
|
24
|
-
text: AgenticaTextHistory;
|
|
25
|
-
user_input: AgenticaUserInputHistory;
|
|
25
|
+
describe: AgenticaDescribeHistory<Model>;
|
|
26
26
|
}
|
|
27
27
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { IAgenticaHistoryJson } from "../json/IAgenticaHistoryJson";
|
|
2
|
+
|
|
3
|
+
import type { AgenticaHistoryBase } from "./AgenticaHistoryBase";
|
|
4
|
+
import type { AgenticaUserMessageContent } from "./contents/AgenticaUserMessageContent";
|
|
5
|
+
|
|
6
|
+
export interface AgenticaUserMessageHistory extends AgenticaHistoryBase<
|
|
7
|
+
"userMessage",
|
|
8
|
+
IAgenticaHistoryJson.IUserMessage
|
|
9
|
+
> {
|
|
10
|
+
contents: AgenticaUserMessageContent[];
|
|
11
|
+
}
|
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
import type { ILlmSchema } from "@samchon/openapi";
|
|
2
2
|
|
|
3
|
+
import type { AgenticaAssistantMessageHistory } from "./AgenticaAssistantMessageHistory";
|
|
3
4
|
import type { AgenticaDescribeHistory } from "./AgenticaDescribeHistory";
|
|
4
5
|
import type { AgenticaExecuteHistory } from "./AgenticaExecuteHistory";
|
|
5
|
-
import type {
|
|
6
|
-
import type { AgenticaUserInputHistory } from "./AgenticaUserInputHistory";
|
|
6
|
+
import type { AgenticaUserMessageHistory } from "./AgenticaUserMessageHistory";
|
|
7
7
|
|
|
8
8
|
export type MicroAgenticaHistory<Model extends ILlmSchema.Model> =
|
|
9
9
|
| AgenticaDescribeHistory<Model>
|
|
10
10
|
| AgenticaExecuteHistory<Model>
|
|
11
|
-
|
|
|
12
|
-
|
|
|
11
|
+
| AgenticaAssistantMessageHistory
|
|
12
|
+
| AgenticaUserMessageHistory;
|
|
13
13
|
export namespace MicroAgenticaHistory {
|
|
14
14
|
export type Type = MicroAgenticaHistory<any>["type"];
|
|
15
15
|
export interface Mapper<Model extends ILlmSchema.Model> {
|
|
16
16
|
describe: AgenticaDescribeHistory<Model>;
|
|
17
17
|
execute: AgenticaExecuteHistory<Model>;
|
|
18
|
-
|
|
18
|
+
userMessage: AgenticaUserMessageHistory;
|
|
19
|
+
assistantMessage: AgenticaAssistantMessageHistory;
|
|
19
20
|
}
|
|
20
21
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { AgenticaUserMessageContentBase } from "./AgenticaUserMessageContentBase";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Audio content by user.
|
|
5
|
+
*
|
|
6
|
+
* @reference https://platform.openai.com/docs/guides/audio
|
|
7
|
+
* @warning We not recommend it because audio data only support base64
|
|
8
|
+
* so it's too big data
|
|
9
|
+
* @author SunRabbit
|
|
10
|
+
*/
|
|
11
|
+
export interface AgenticaUserMessageAudioContent extends AgenticaUserMessageContentBase<"audio"> {
|
|
12
|
+
/**
|
|
13
|
+
* Base64 encoded audio data.
|
|
14
|
+
*/
|
|
15
|
+
data: string;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* The format of the encoded audio data. Currently supports "wav" and "mp3".
|
|
19
|
+
*/
|
|
20
|
+
format: "wav" | "mp3";
|
|
21
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { AgenticaUserMessageAudioContent } from "./AgenticaUserMessageAudioContent";
|
|
2
|
+
import type { AgenticaUserMessageFileContent } from "./AgenticaUserMessageFileContent";
|
|
3
|
+
import type { AgenticaUserMessageImageContent } from "./AgenticaUserMessageImageContent";
|
|
4
|
+
import type { AgenticaUserMessageTextContent } from "./AgenticaUserMessageTextContent";
|
|
5
|
+
|
|
6
|
+
export type AgenticaUserMessageContent =
|
|
7
|
+
| AgenticaUserMessageAudioContent
|
|
8
|
+
| AgenticaUserMessageFileContent
|
|
9
|
+
| AgenticaUserMessageImageContent
|
|
10
|
+
| AgenticaUserMessageTextContent;
|
|
11
|
+
export namespace AgenticaUserMessageContent {
|
|
12
|
+
export type Type = AgenticaUserMessageContent["type"];
|
|
13
|
+
export interface Mapper {
|
|
14
|
+
audio: AgenticaUserMessageAudioContent;
|
|
15
|
+
file: AgenticaUserMessageFileContent;
|
|
16
|
+
image: AgenticaUserMessageImageContent;
|
|
17
|
+
text: AgenticaUserMessageTextContent;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { AgenticaUserMessageContentBase } from "./AgenticaUserMessageContentBase";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* File content by user.
|
|
5
|
+
*
|
|
6
|
+
* @reference https://platform.openai.com/docs/api-reference/uploads/create
|
|
7
|
+
* @author SunRabbit
|
|
8
|
+
*/
|
|
9
|
+
export interface AgenticaUserMessageFileContent extends AgenticaUserMessageContentBase<"file"> {
|
|
10
|
+
/**
|
|
11
|
+
* Reference to the pre-uploaded file or the data itself.
|
|
12
|
+
*
|
|
13
|
+
* @todo Properly define independent interface
|
|
14
|
+
*/
|
|
15
|
+
file: AgenticaUserMessageFileContent.IReference | AgenticaUserMessageFileContent.IData;
|
|
16
|
+
}
|
|
17
|
+
export namespace AgenticaUserMessageFileContent {
|
|
18
|
+
export interface IReference {
|
|
19
|
+
type: "reference";
|
|
20
|
+
id: string;
|
|
21
|
+
}
|
|
22
|
+
export interface IData {
|
|
23
|
+
type: "data";
|
|
24
|
+
name: string;
|
|
25
|
+
data: string;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { tags } from "typia";
|
|
2
|
+
|
|
3
|
+
import type { AgenticaUserMessageContentBase } from "./AgenticaUserMessageContentBase";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Image content by user.
|
|
7
|
+
*
|
|
8
|
+
* @reference https://platform.openai.com/docs/guides/vision
|
|
9
|
+
* @author SunRabbit
|
|
10
|
+
*/
|
|
11
|
+
export interface AgenticaUserMessageImageContent extends AgenticaUserMessageContentBase<"image"> {
|
|
12
|
+
/**
|
|
13
|
+
* Image URL.
|
|
14
|
+
*/
|
|
15
|
+
url: string & tags.Format<"url">;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Specifies the detail level of the image.
|
|
19
|
+
*
|
|
20
|
+
* @reference https://platform.openai.com/docs/guides/vision#low-or-high-fidelity-image-understanding
|
|
21
|
+
*/
|
|
22
|
+
detail?: "auto" | "high" | "low" | undefined;
|
|
23
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { AgenticaUserMessageContentBase } from "./AgenticaUserMessageContentBase";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Text content by user.
|
|
5
|
+
*
|
|
6
|
+
* @reference https://platform.openai.com/docs/guides/text-generation
|
|
7
|
+
* @author Samchon
|
|
8
|
+
* @author SunRabbit
|
|
9
|
+
*/
|
|
10
|
+
export interface AgenticaUserMessageTextContent extends AgenticaUserMessageContentBase<"text"> {
|
|
11
|
+
/**
|
|
12
|
+
* The text content.
|
|
13
|
+
*/
|
|
14
|
+
text: string;
|
|
15
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from "./AgenticaAssistantMessageHistory";
|
|
2
|
+
export * from "./AgenticaCancelHistory";
|
|
3
|
+
export * from "./AgenticaDescribeHistory";
|
|
4
|
+
export * from "./AgenticaExecuteHistory";
|
|
5
|
+
export * from "./AgenticaHistory";
|
|
6
|
+
export * from "./AgenticaSelectHistory";
|
|
7
|
+
export * from "./AgenticaUserMessageHistory";
|
|
8
|
+
export * from "./contents";
|
|
9
|
+
export * from "./MicroAgenticaHistory";
|
package/src/index.ts
CHANGED
|
@@ -1,62 +1,14 @@
|
|
|
1
1
|
export * from "./Agentica";
|
|
2
|
-
export * from "./context/AgenticaContext";
|
|
3
|
-
|
|
4
|
-
export * from "./context/AgenticaOperation";
|
|
5
|
-
|
|
6
|
-
export * from "./context/AgenticaOperationCollection";
|
|
7
|
-
export * from "./context/AgenticaOperationSelection";
|
|
8
|
-
export * from "./context/AgenticaTokenUsage";
|
|
9
|
-
|
|
10
|
-
export * from "./events/AgenticaCallEvent";
|
|
11
|
-
export * from "./events/AgenticaCancelEvent";
|
|
12
|
-
export * from "./events/AgenticaDescribeEvent";
|
|
13
|
-
export * from "./events/AgenticaEvent";
|
|
14
|
-
export * from "./events/AgenticaEventSource";
|
|
15
|
-
export * from "./events/AgenticaExecuteEvent";
|
|
16
|
-
export * from "./events/AgenticaRequestEvent";
|
|
17
|
-
export * from "./events/AgenticaResponseEvent";
|
|
18
|
-
export * from "./events/AgenticaSelectEvent";
|
|
19
|
-
export * from "./events/AgenticaTextEvent";
|
|
20
|
-
export * from "./events/AgenticaValidateEvent";
|
|
21
|
-
export * from "./events/MicroAgenticaEvent";
|
|
22
2
|
|
|
3
|
+
export * from "./context";
|
|
4
|
+
export * from "./events";
|
|
23
5
|
export * as factory from "./factory";
|
|
24
|
-
|
|
25
|
-
export * from "./
|
|
26
|
-
export * from "./
|
|
27
|
-
export * from "./functional/assertMcpController";
|
|
28
|
-
export * from "./functional/validateHttpController";
|
|
29
|
-
export * from "./functional/validateHttpLlmApplication";
|
|
30
|
-
export * from "./functional/validateMcpController";
|
|
31
|
-
// @TODO: implement validateMcpLlmApplication
|
|
32
|
-
|
|
33
|
-
export * from "./histories/AgenticaCancelHistory";
|
|
34
|
-
export * from "./histories/AgenticaDescribeHistory";
|
|
35
|
-
export * from "./histories/AgenticaExecuteHistory";
|
|
36
|
-
export * from "./histories/AgenticaHistory";
|
|
37
|
-
export * from "./histories/AgenticaSelectHistory";
|
|
38
|
-
export * from "./histories/AgenticaTextHistory";
|
|
39
|
-
|
|
40
|
-
export * from "./histories/MicroAgenticaHistory";
|
|
41
|
-
|
|
42
|
-
export * from "./json/IAgenticaEventJson";
|
|
43
|
-
export * from "./json/IAgenticaHistoryJson";
|
|
44
|
-
export * from "./json/IAgenticaOperationJson";
|
|
45
|
-
export * from "./json/IAgenticaOperationSelectionJson";
|
|
46
|
-
export * from "./json/IAgenticaTokenUsageJson";
|
|
47
|
-
export * from "./json/IMicroAgenticaEventJson";
|
|
48
|
-
export * from "./json/IMicroAgenticaHistoryJson";
|
|
6
|
+
export * from "./functional";
|
|
7
|
+
export * from "./histories";
|
|
8
|
+
export * from "./json";
|
|
49
9
|
export * from "./MicroAgentica";
|
|
50
10
|
export * as orchestrate from "./orchestrate";
|
|
51
|
-
|
|
52
|
-
export * from "./structures/IAgenticaConfig";
|
|
53
|
-
export * from "./structures/IAgenticaController";
|
|
54
|
-
export * from "./structures/IAgenticaExecutor";
|
|
55
|
-
export * from "./structures/IAgenticaProps";
|
|
56
|
-
export * from "./structures/IAgenticaSystemPrompt";
|
|
57
|
-
export * from "./structures/IAgenticaVendor";
|
|
58
|
-
export * from "./structures/IMicroAgenticaConfig";
|
|
59
|
-
export * from "./structures/IMicroAgenticaProps";
|
|
11
|
+
export * from "./structures";
|
|
60
12
|
|
|
61
13
|
/**
|
|
62
14
|
* @internal
|