@agentica/core 0.44.0-dev.20260313-2 → 0.44.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/LICENSE +21 -21
- package/README.md +218 -218
- package/lib/context/internal/__IChatInitialApplication.d.ts +1 -2
- package/lib/errors/AgenticaJsonParseError.js +6 -6
- package/lib/index.mjs +47 -1
- package/lib/index.mjs.map +1 -1
- package/lib/orchestrate/call.js +16 -16
- package/lib/orchestrate/initialize.js +43 -1
- package/lib/orchestrate/initialize.js.map +1 -1
- package/lib/structures/IAgenticaController.d.ts +143 -143
- package/lib/utils/ChatGptCompletionMessageUtil.js +6 -6
- package/package.json +6 -6
- package/prompts/cancel.md +5 -5
- package/prompts/common.md +3 -3
- package/prompts/describe.md +7 -7
- package/prompts/execute.md +122 -122
- package/prompts/initialize.md +3 -3
- package/prompts/json_parse_error.md +35 -35
- package/prompts/select.md +7 -7
- package/prompts/validate.md +123 -123
- package/prompts/validate_repeated.md +31 -31
- package/src/Agentica.ts +367 -367
- package/src/MicroAgentica.ts +357 -357
- package/src/constants/AgenticaConstant.ts +4 -4
- package/src/constants/AgenticaDefaultPrompt.ts +44 -44
- package/src/constants/index.ts +2 -2
- package/src/context/AgenticaContext.ts +136 -136
- package/src/context/AgenticaContextRequestResult.ts +14 -14
- package/src/context/AgenticaOperation.ts +73 -73
- package/src/context/AgenticaOperationCollection.ts +49 -49
- package/src/context/AgenticaOperationSelection.ts +9 -9
- package/src/context/AgenticaTokenUsage.ts +186 -186
- package/src/context/MicroAgenticaContext.ts +99 -99
- package/src/context/index.ts +5 -5
- package/src/context/internal/AgenticaOperationComposer.ts +177 -177
- package/src/context/internal/AgenticaTokenUsageAggregator.ts +66 -66
- package/src/context/internal/__IChatCancelFunctionsApplication.ts +23 -23
- package/src/context/internal/__IChatFunctionReference.ts +21 -21
- package/src/context/internal/__IChatInitialApplication.ts +13 -15
- package/src/context/internal/__IChatSelectFunctionsApplication.ts +24 -24
- package/src/context/internal/isAgenticaContext.ts +11 -11
- package/src/errors/AgenticaJsonParseError.ts +52 -52
- package/src/errors/AgenticaValidationError.ts +49 -49
- package/src/errors/index.ts +2 -2
- package/src/events/AgenticaAssistantMessageEvent.ts +12 -12
- package/src/events/AgenticaCallEvent.ts +27 -27
- package/src/events/AgenticaCancelEvent.ts +9 -9
- package/src/events/AgenticaDescribeEvent.ts +14 -14
- package/src/events/AgenticaEvent.ts +59 -59
- package/src/events/AgenticaEvent.type.ts +19 -19
- package/src/events/AgenticaEventBase.ts +18 -18
- package/src/events/AgenticaEventSource.ts +6 -6
- package/src/events/AgenticaExecuteEvent.ts +45 -45
- package/src/events/AgenticaInitializeEvent.ts +7 -7
- package/src/events/AgenticaJsonParseErrorEvent.ts +16 -16
- package/src/events/AgenticaRequestEvent.ts +27 -27
- package/src/events/AgenticaResponseEvent.ts +32 -32
- package/src/events/AgenticaSelectEvent.ts +11 -11
- package/src/events/AgenticaUserMessageEvent.ts +12 -12
- package/src/events/AgenticaValidateEvent.ts +32 -32
- package/src/events/MicroAgenticaEvent.ts +45 -45
- package/src/events/index.ts +15 -15
- package/src/factory/events.ts +357 -357
- package/src/factory/histories.ts +348 -348
- package/src/factory/index.ts +3 -3
- package/src/factory/operations.ts +16 -16
- package/src/functional/assertHttpController.ts +106 -106
- package/src/functional/assertHttpLlmApplication.ts +52 -52
- package/src/functional/assertMcpController.ts +47 -47
- package/src/functional/createMcpLlmApplication.ts +72 -72
- package/src/functional/index.ts +7 -7
- package/src/functional/validateHttpController.ts +113 -113
- package/src/functional/validateHttpLlmApplication.ts +65 -65
- package/src/functional/validateMcpController.ts +53 -53
- package/src/histories/AgenticaAssistantMessageHistory.ts +10 -10
- package/src/histories/AgenticaCancelHistory.ts +8 -8
- package/src/histories/AgenticaDescribeHistory.ts +18 -18
- package/src/histories/AgenticaExecuteHistory.ts +64 -64
- package/src/histories/AgenticaHistory.ts +28 -28
- package/src/histories/AgenticaHistoryBase.ts +35 -35
- package/src/histories/AgenticaSelectHistory.ts +8 -8
- package/src/histories/AgenticaSystemMessageHistory.ts +10 -10
- package/src/histories/AgenticaUserMessageHistory.ts +11 -11
- package/src/histories/MicroAgenticaHistory.ts +19 -19
- package/src/histories/contents/AgenticaUserMessageAudioContent.ts +21 -21
- package/src/histories/contents/AgenticaUserMessageContent.ts +19 -19
- package/src/histories/contents/AgenticaUserMessageContentBase.ts +6 -6
- package/src/histories/contents/AgenticaUserMessageFileContent.ts +25 -25
- package/src/histories/contents/AgenticaUserMessageImageContent.ts +33 -33
- package/src/histories/contents/AgenticaUserMessageTextContent.ts +15 -15
- package/src/histories/contents/index.ts +5 -5
- package/src/histories/index.ts +10 -10
- package/src/index.ts +15 -15
- package/src/json/IAgenticaEventJson.ts +265 -265
- package/src/json/IAgenticaEventJson.type.ts +19 -19
- package/src/json/IAgenticaHistoryJson.ts +165 -165
- package/src/json/IAgenticaHistoryJson.type.ts +19 -19
- package/src/json/IAgenticaOperationJson.ts +36 -36
- package/src/json/IAgenticaOperationSelectionJson.ts +26 -26
- package/src/json/IAgenticaTokenUsageJson.ts +107 -107
- package/src/json/IMicroAgenticaEventJson.ts +22 -22
- package/src/json/IMicroAgenticaHistoryJson.ts +25 -25
- package/src/json/index.ts +7 -7
- package/src/orchestrate/call.ts +542 -542
- package/src/orchestrate/cancel.ts +265 -265
- package/src/orchestrate/describe.ts +66 -66
- package/src/orchestrate/execute.ts +61 -61
- package/src/orchestrate/index.ts +6 -6
- package/src/orchestrate/initialize.ts +102 -102
- package/src/orchestrate/internal/cancelFunctionFromContext.ts +33 -33
- package/src/orchestrate/internal/selectFunctionFromContext.ts +34 -34
- package/src/orchestrate/select.ts +320 -320
- package/src/structures/IAgenticaConfig.ts +83 -83
- package/src/structures/IAgenticaConfigBase.ts +87 -87
- package/src/structures/IAgenticaController.ts +143 -143
- package/src/structures/IAgenticaExecutor.ts +167 -167
- package/src/structures/IAgenticaProps.ts +78 -78
- package/src/structures/IAgenticaSystemPrompt.ts +236 -236
- package/src/structures/IAgenticaVendor.ts +54 -54
- package/src/structures/IMcpTool.ts +60 -60
- package/src/structures/IMicroAgenticaConfig.ts +56 -56
- package/src/structures/IMicroAgenticaExecutor.ts +67 -67
- package/src/structures/IMicroAgenticaProps.ts +77 -77
- package/src/structures/IMicroAgenticaSystemPrompt.ts +169 -169
- package/src/structures/index.ts +10 -10
- package/src/transformers/transformHistory.ts +172 -172
- package/src/utils/AssistantMessageEmptyError.ts +20 -20
- package/src/utils/AsyncQueue.spec.ts +355 -355
- package/src/utils/AsyncQueue.ts +95 -95
- package/src/utils/ByteArrayUtil.ts +5 -5
- package/src/utils/ChatGptCompletionMessageUtil.spec.ts +314 -314
- package/src/utils/ChatGptCompletionMessageUtil.ts +210 -210
- package/src/utils/ChatGptCompletionStreamingUtil.spec.ts +909 -909
- package/src/utils/ChatGptCompletionStreamingUtil.ts +91 -91
- package/src/utils/ChatGptTokenUsageAggregator.spec.ts +226 -226
- package/src/utils/ChatGptTokenUsageAggregator.ts +57 -57
- package/src/utils/MPSC.spec.ts +276 -276
- package/src/utils/MPSC.ts +42 -42
- package/src/utils/Singleton.spec.ts +138 -138
- package/src/utils/Singleton.ts +42 -42
- package/src/utils/StreamUtil.spec.ts +512 -512
- package/src/utils/StreamUtil.ts +87 -87
- package/src/utils/__map_take.spec.ts +140 -140
- package/src/utils/__map_take.ts +13 -13
- package/src/utils/__retry.spec.ts +198 -198
- package/src/utils/__retry.ts +18 -18
- package/src/utils/assertExecuteFailure.ts +16 -16
- package/src/utils/index.ts +4 -4
- package/src/utils/request.ts +140 -140
- package/src/utils/types.ts +50 -50
|
@@ -1,169 +1,169 @@
|
|
|
1
|
-
import type { AgenticaJsonParseErrorEvent } from "../events/AgenticaJsonParseErrorEvent";
|
|
2
|
-
import type { AgenticaValidateEvent } from "../events/AgenticaValidateEvent";
|
|
3
|
-
import type { AgenticaExecuteHistory } from "../histories/AgenticaExecuteHistory";
|
|
4
|
-
import type { MicroAgenticaHistory } from "../histories/MicroAgenticaHistory";
|
|
5
|
-
|
|
6
|
-
import type { IMicroAgenticaConfig } from "./IMicroAgenticaConfig";
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* System prompt collection of the Micro Agentic AI.
|
|
10
|
-
*
|
|
11
|
-
* `IMicroAgenticaSystemPrompt` is a type represents a collection of
|
|
12
|
-
* system prompts that would be used by the A.I. chatbot of
|
|
13
|
-
* {@link MicroAgentica}.
|
|
14
|
-
*
|
|
15
|
-
* You can customize the system prompt by configuring the
|
|
16
|
-
* {@link IMicroAgenticaConfig.systemPrompt} property when creating a new
|
|
17
|
-
* {@link MicroAgentica} instance.
|
|
18
|
-
*
|
|
19
|
-
* If you don't configure any system prompts, the default system prompts
|
|
20
|
-
* would be used which are written in the below directory as markdown
|
|
21
|
-
* documents.
|
|
22
|
-
*
|
|
23
|
-
* - https://github.com/wrtnlabs/agentica/tree/main/packages/core/prompts
|
|
24
|
-
*
|
|
25
|
-
* @author Samchon
|
|
26
|
-
*/
|
|
27
|
-
export interface IMicroAgenticaSystemPrompt {
|
|
28
|
-
/**
|
|
29
|
-
* Common system prompt that would be used in every situation.
|
|
30
|
-
*
|
|
31
|
-
* This prompt establishes the foundational behavior and personality of
|
|
32
|
-
* the Micro Agentic AI across all interaction phases. It defines the
|
|
33
|
-
* agent's core identity, communication style, and general operating
|
|
34
|
-
* principles that remain consistent throughout the streamlined conversation
|
|
35
|
-
* flow. Unlike the full Agentica system, MicroAgentica focuses on
|
|
36
|
-
* simplified, direct interactions with reduced complexity.
|
|
37
|
-
*
|
|
38
|
-
* @param config Configuration of the micro agent
|
|
39
|
-
* @returns The common system prompt
|
|
40
|
-
* @default https://github.com/wrtnlabs/agentica/tree/main/packages/core/prompts/common.md
|
|
41
|
-
*/
|
|
42
|
-
common?: (config?: IMicroAgenticaConfig | undefined) => string;
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* Execute system prompt.
|
|
46
|
-
*
|
|
47
|
-
* The {@link MicroAgentica} has a streamlined process for filling the
|
|
48
|
-
* arguments of functions by the LLM (Large Language Model) function
|
|
49
|
-
* calling feature with the previous prompt histories, and executing
|
|
50
|
-
* the arguments filled function with validation feedback.
|
|
51
|
-
*
|
|
52
|
-
* In that case, this `execute` system prompt would be used. This prompt
|
|
53
|
-
* instructs the AI to use the supplied tools to assist the user, with
|
|
54
|
-
* specific guidance on handling insufficient information scenarios.
|
|
55
|
-
* When the AI lacks enough context to compose proper function arguments,
|
|
56
|
-
* it is instructed to ask the user for additional information in a
|
|
57
|
-
* concise and clear manner.
|
|
58
|
-
*
|
|
59
|
-
* The execute prompt also provides important context about the "tool"
|
|
60
|
-
* role message structure, explaining that the `function` property
|
|
61
|
-
* contains API operation metadata (schema, purpose, parameters, return
|
|
62
|
-
* types) while the `data` property contains the actual return values
|
|
63
|
-
* from function executions.
|
|
64
|
-
*
|
|
65
|
-
* Note: This can be set to `null` to disable the execute phase in
|
|
66
|
-
* MicroAgentica, making it a pure conversational agent without
|
|
67
|
-
* function calling capabilities.
|
|
68
|
-
*
|
|
69
|
-
* @param histories Histories of the previous prompts
|
|
70
|
-
* @returns execute system prompt
|
|
71
|
-
* @default https://github.com/wrtnlabs/agentica/tree/main/packages/core/prompts/execute.md
|
|
72
|
-
*/
|
|
73
|
-
execute?: null | ((histories: MicroAgenticaHistory[]) => string);
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
* Validation feedback system prompt.
|
|
77
|
-
*
|
|
78
|
-
* When the AI generates function arguments that fail type validation
|
|
79
|
-
* during the execution phase, this prompt provides the system instructions
|
|
80
|
-
* for analyzing {@link IValidation.IFailure} results and generating
|
|
81
|
-
* corrective feedback in the MicroAgentica environment.
|
|
82
|
-
*
|
|
83
|
-
* This specialized prompt enables the AI to:
|
|
84
|
-
* - Parse detailed validation error information from typia validation results
|
|
85
|
-
* - Identify specific type mismatches, missing properties, and format violations
|
|
86
|
-
* - Handle complex union type failures with discriminator property analysis
|
|
87
|
-
* - Generate actionable correction guidance for parameter regeneration
|
|
88
|
-
* - Distinguish between partial fixes and complete reconstruction scenarios
|
|
89
|
-
*
|
|
90
|
-
* The validation feedback agent in MicroAgentica operates with the same
|
|
91
|
-
* precision as the full Agentica system but in a more streamlined context.
|
|
92
|
-
* It acts as an intermediary between the micro AI agent and the function
|
|
93
|
-
* execution system, providing structured feedback that helps improve
|
|
94
|
-
* function calling accuracy through iterative correction.
|
|
95
|
-
*
|
|
96
|
-
* Key capabilities include:
|
|
97
|
-
* - Union type analysis with discriminator property detection
|
|
98
|
-
* - Granular error path reporting (e.g., "input.user.profile.age")
|
|
99
|
-
* - Format-specific guidance (UUID, email, numeric constraints)
|
|
100
|
-
* - Complete reconstruction recommendations for incompatible values
|
|
101
|
-
* - Optimized for the simplified MicroAgentica interaction model
|
|
102
|
-
*
|
|
103
|
-
* @param events The previous validation events containing the IValidation.IFailure
|
|
104
|
-
* @returns validation feedback system prompt
|
|
105
|
-
* @default Built-in validation feedback prompt optimized for typia IValidation.IFailure processing
|
|
106
|
-
*/
|
|
107
|
-
validate?: (events: AgenticaValidateEvent[]) => string;
|
|
108
|
-
|
|
109
|
-
/**
|
|
110
|
-
* JSON parsing error system prompt.
|
|
111
|
-
*
|
|
112
|
-
* When the AI generates function arguments with invalid JSON syntax
|
|
113
|
-
* that cannot be parsed by `JSON.parse()`, this prompt provides system
|
|
114
|
-
* instructions for handling the parsing error and requesting corrected
|
|
115
|
-
* function calls.
|
|
116
|
-
*
|
|
117
|
-
* This specialized prompt enables the AI to:
|
|
118
|
-
* - Understand that the function call arguments contained malformed JSON
|
|
119
|
-
* - Receive the specific error message from `JSON.parse()`
|
|
120
|
-
* - Get guidance on common JSON syntax issues (trailing commas, quote problems, etc.)
|
|
121
|
-
* - Retry the function call with properly formatted JSON arguments
|
|
122
|
-
*
|
|
123
|
-
* The JSON parse error prompt acts as an immediate correction mechanism
|
|
124
|
-
* when function calling fails at the JSON parsing stage, before any
|
|
125
|
-
* schema validation occurs. This ensures that basic JSON syntax compliance
|
|
126
|
-
* is maintained for all function calls.
|
|
127
|
-
*
|
|
128
|
-
* Key features include:
|
|
129
|
-
* - Direct error message reporting from `JSON.parse()`
|
|
130
|
-
* - Clear identification of the problematic function call
|
|
131
|
-
* - Specific guidance on JSON syntax requirements
|
|
132
|
-
* - Immediate retry instruction without additional processing
|
|
133
|
-
*
|
|
134
|
-
* @param event The JSON parse error event containing the malformed arguments and error details
|
|
135
|
-
* @returns JSON parse error system prompt
|
|
136
|
-
* @default Built-in JSON parse error prompt optimized for syntax correction
|
|
137
|
-
*/
|
|
138
|
-
jsonParseError?: (event: AgenticaJsonParseErrorEvent) => string;
|
|
139
|
-
|
|
140
|
-
/**
|
|
141
|
-
* Describe system prompt.
|
|
142
|
-
*
|
|
143
|
-
* The {@link MicroAgentica} has a process describing the return values of
|
|
144
|
-
* the executed functions by requesting to the A.I. agent with the
|
|
145
|
-
* previous prompt histories.
|
|
146
|
-
*
|
|
147
|
-
* In that case, this `describe` system prompt would be used. This prompt
|
|
148
|
-
* instructs the AI to provide detailed descriptions of function call
|
|
149
|
-
* return values rather than brief summaries. It emphasizes comprehensive
|
|
150
|
-
* reporting to ensure users receive thorough information about the
|
|
151
|
-
* function execution results.
|
|
152
|
-
*
|
|
153
|
-
* The describe prompt specifies several formatting requirements:
|
|
154
|
-
* - Content must be formatted in markdown
|
|
155
|
-
* - Mermaid syntax should be utilized for diagrams when appropriate
|
|
156
|
-
* - Images should be included using markdown image syntax
|
|
157
|
-
* - Internationalization support with translation to user's language
|
|
158
|
-
* locale when the description language differs from the user's language
|
|
159
|
-
*
|
|
160
|
-
* The prompt receives execution histories specifically, allowing the AI
|
|
161
|
-
* to access both the function metadata and actual execution results
|
|
162
|
-
* for comprehensive reporting in the MicroAgentica streamlined environment.
|
|
163
|
-
*
|
|
164
|
-
* @param histories Histories of the previous prompts and their execution results
|
|
165
|
-
* @returns describe system prompt
|
|
166
|
-
* @default https://github.com/wrtnlabs/agentica/tree/main/packages/core/prompts/describe.md
|
|
167
|
-
*/
|
|
168
|
-
describe?: (histories: AgenticaExecuteHistory[]) => string;
|
|
169
|
-
}
|
|
1
|
+
import type { AgenticaJsonParseErrorEvent } from "../events/AgenticaJsonParseErrorEvent";
|
|
2
|
+
import type { AgenticaValidateEvent } from "../events/AgenticaValidateEvent";
|
|
3
|
+
import type { AgenticaExecuteHistory } from "../histories/AgenticaExecuteHistory";
|
|
4
|
+
import type { MicroAgenticaHistory } from "../histories/MicroAgenticaHistory";
|
|
5
|
+
|
|
6
|
+
import type { IMicroAgenticaConfig } from "./IMicroAgenticaConfig";
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* System prompt collection of the Micro Agentic AI.
|
|
10
|
+
*
|
|
11
|
+
* `IMicroAgenticaSystemPrompt` is a type represents a collection of
|
|
12
|
+
* system prompts that would be used by the A.I. chatbot of
|
|
13
|
+
* {@link MicroAgentica}.
|
|
14
|
+
*
|
|
15
|
+
* You can customize the system prompt by configuring the
|
|
16
|
+
* {@link IMicroAgenticaConfig.systemPrompt} property when creating a new
|
|
17
|
+
* {@link MicroAgentica} instance.
|
|
18
|
+
*
|
|
19
|
+
* If you don't configure any system prompts, the default system prompts
|
|
20
|
+
* would be used which are written in the below directory as markdown
|
|
21
|
+
* documents.
|
|
22
|
+
*
|
|
23
|
+
* - https://github.com/wrtnlabs/agentica/tree/main/packages/core/prompts
|
|
24
|
+
*
|
|
25
|
+
* @author Samchon
|
|
26
|
+
*/
|
|
27
|
+
export interface IMicroAgenticaSystemPrompt {
|
|
28
|
+
/**
|
|
29
|
+
* Common system prompt that would be used in every situation.
|
|
30
|
+
*
|
|
31
|
+
* This prompt establishes the foundational behavior and personality of
|
|
32
|
+
* the Micro Agentic AI across all interaction phases. It defines the
|
|
33
|
+
* agent's core identity, communication style, and general operating
|
|
34
|
+
* principles that remain consistent throughout the streamlined conversation
|
|
35
|
+
* flow. Unlike the full Agentica system, MicroAgentica focuses on
|
|
36
|
+
* simplified, direct interactions with reduced complexity.
|
|
37
|
+
*
|
|
38
|
+
* @param config Configuration of the micro agent
|
|
39
|
+
* @returns The common system prompt
|
|
40
|
+
* @default https://github.com/wrtnlabs/agentica/tree/main/packages/core/prompts/common.md
|
|
41
|
+
*/
|
|
42
|
+
common?: (config?: IMicroAgenticaConfig | undefined) => string;
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Execute system prompt.
|
|
46
|
+
*
|
|
47
|
+
* The {@link MicroAgentica} has a streamlined process for filling the
|
|
48
|
+
* arguments of functions by the LLM (Large Language Model) function
|
|
49
|
+
* calling feature with the previous prompt histories, and executing
|
|
50
|
+
* the arguments filled function with validation feedback.
|
|
51
|
+
*
|
|
52
|
+
* In that case, this `execute` system prompt would be used. This prompt
|
|
53
|
+
* instructs the AI to use the supplied tools to assist the user, with
|
|
54
|
+
* specific guidance on handling insufficient information scenarios.
|
|
55
|
+
* When the AI lacks enough context to compose proper function arguments,
|
|
56
|
+
* it is instructed to ask the user for additional information in a
|
|
57
|
+
* concise and clear manner.
|
|
58
|
+
*
|
|
59
|
+
* The execute prompt also provides important context about the "tool"
|
|
60
|
+
* role message structure, explaining that the `function` property
|
|
61
|
+
* contains API operation metadata (schema, purpose, parameters, return
|
|
62
|
+
* types) while the `data` property contains the actual return values
|
|
63
|
+
* from function executions.
|
|
64
|
+
*
|
|
65
|
+
* Note: This can be set to `null` to disable the execute phase in
|
|
66
|
+
* MicroAgentica, making it a pure conversational agent without
|
|
67
|
+
* function calling capabilities.
|
|
68
|
+
*
|
|
69
|
+
* @param histories Histories of the previous prompts
|
|
70
|
+
* @returns execute system prompt
|
|
71
|
+
* @default https://github.com/wrtnlabs/agentica/tree/main/packages/core/prompts/execute.md
|
|
72
|
+
*/
|
|
73
|
+
execute?: null | ((histories: MicroAgenticaHistory[]) => string);
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Validation feedback system prompt.
|
|
77
|
+
*
|
|
78
|
+
* When the AI generates function arguments that fail type validation
|
|
79
|
+
* during the execution phase, this prompt provides the system instructions
|
|
80
|
+
* for analyzing {@link IValidation.IFailure} results and generating
|
|
81
|
+
* corrective feedback in the MicroAgentica environment.
|
|
82
|
+
*
|
|
83
|
+
* This specialized prompt enables the AI to:
|
|
84
|
+
* - Parse detailed validation error information from typia validation results
|
|
85
|
+
* - Identify specific type mismatches, missing properties, and format violations
|
|
86
|
+
* - Handle complex union type failures with discriminator property analysis
|
|
87
|
+
* - Generate actionable correction guidance for parameter regeneration
|
|
88
|
+
* - Distinguish between partial fixes and complete reconstruction scenarios
|
|
89
|
+
*
|
|
90
|
+
* The validation feedback agent in MicroAgentica operates with the same
|
|
91
|
+
* precision as the full Agentica system but in a more streamlined context.
|
|
92
|
+
* It acts as an intermediary between the micro AI agent and the function
|
|
93
|
+
* execution system, providing structured feedback that helps improve
|
|
94
|
+
* function calling accuracy through iterative correction.
|
|
95
|
+
*
|
|
96
|
+
* Key capabilities include:
|
|
97
|
+
* - Union type analysis with discriminator property detection
|
|
98
|
+
* - Granular error path reporting (e.g., "input.user.profile.age")
|
|
99
|
+
* - Format-specific guidance (UUID, email, numeric constraints)
|
|
100
|
+
* - Complete reconstruction recommendations for incompatible values
|
|
101
|
+
* - Optimized for the simplified MicroAgentica interaction model
|
|
102
|
+
*
|
|
103
|
+
* @param events The previous validation events containing the IValidation.IFailure
|
|
104
|
+
* @returns validation feedback system prompt
|
|
105
|
+
* @default Built-in validation feedback prompt optimized for typia IValidation.IFailure processing
|
|
106
|
+
*/
|
|
107
|
+
validate?: (events: AgenticaValidateEvent[]) => string;
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* JSON parsing error system prompt.
|
|
111
|
+
*
|
|
112
|
+
* When the AI generates function arguments with invalid JSON syntax
|
|
113
|
+
* that cannot be parsed by `JSON.parse()`, this prompt provides system
|
|
114
|
+
* instructions for handling the parsing error and requesting corrected
|
|
115
|
+
* function calls.
|
|
116
|
+
*
|
|
117
|
+
* This specialized prompt enables the AI to:
|
|
118
|
+
* - Understand that the function call arguments contained malformed JSON
|
|
119
|
+
* - Receive the specific error message from `JSON.parse()`
|
|
120
|
+
* - Get guidance on common JSON syntax issues (trailing commas, quote problems, etc.)
|
|
121
|
+
* - Retry the function call with properly formatted JSON arguments
|
|
122
|
+
*
|
|
123
|
+
* The JSON parse error prompt acts as an immediate correction mechanism
|
|
124
|
+
* when function calling fails at the JSON parsing stage, before any
|
|
125
|
+
* schema validation occurs. This ensures that basic JSON syntax compliance
|
|
126
|
+
* is maintained for all function calls.
|
|
127
|
+
*
|
|
128
|
+
* Key features include:
|
|
129
|
+
* - Direct error message reporting from `JSON.parse()`
|
|
130
|
+
* - Clear identification of the problematic function call
|
|
131
|
+
* - Specific guidance on JSON syntax requirements
|
|
132
|
+
* - Immediate retry instruction without additional processing
|
|
133
|
+
*
|
|
134
|
+
* @param event The JSON parse error event containing the malformed arguments and error details
|
|
135
|
+
* @returns JSON parse error system prompt
|
|
136
|
+
* @default Built-in JSON parse error prompt optimized for syntax correction
|
|
137
|
+
*/
|
|
138
|
+
jsonParseError?: (event: AgenticaJsonParseErrorEvent) => string;
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* Describe system prompt.
|
|
142
|
+
*
|
|
143
|
+
* The {@link MicroAgentica} has a process describing the return values of
|
|
144
|
+
* the executed functions by requesting to the A.I. agent with the
|
|
145
|
+
* previous prompt histories.
|
|
146
|
+
*
|
|
147
|
+
* In that case, this `describe` system prompt would be used. This prompt
|
|
148
|
+
* instructs the AI to provide detailed descriptions of function call
|
|
149
|
+
* return values rather than brief summaries. It emphasizes comprehensive
|
|
150
|
+
* reporting to ensure users receive thorough information about the
|
|
151
|
+
* function execution results.
|
|
152
|
+
*
|
|
153
|
+
* The describe prompt specifies several formatting requirements:
|
|
154
|
+
* - Content must be formatted in markdown
|
|
155
|
+
* - Mermaid syntax should be utilized for diagrams when appropriate
|
|
156
|
+
* - Images should be included using markdown image syntax
|
|
157
|
+
* - Internationalization support with translation to user's language
|
|
158
|
+
* locale when the description language differs from the user's language
|
|
159
|
+
*
|
|
160
|
+
* The prompt receives execution histories specifically, allowing the AI
|
|
161
|
+
* to access both the function metadata and actual execution results
|
|
162
|
+
* for comprehensive reporting in the MicroAgentica streamlined environment.
|
|
163
|
+
*
|
|
164
|
+
* @param histories Histories of the previous prompts and their execution results
|
|
165
|
+
* @returns describe system prompt
|
|
166
|
+
* @default https://github.com/wrtnlabs/agentica/tree/main/packages/core/prompts/describe.md
|
|
167
|
+
*/
|
|
168
|
+
describe?: (histories: AgenticaExecuteHistory[]) => string;
|
|
169
|
+
}
|
package/src/structures/index.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export * from "./IAgenticaConfig";
|
|
2
|
-
export * from "./IAgenticaController";
|
|
3
|
-
export * from "./IAgenticaExecutor";
|
|
4
|
-
export * from "./IAgenticaProps";
|
|
5
|
-
export * from "./IAgenticaSystemPrompt";
|
|
6
|
-
export * from "./IAgenticaVendor";
|
|
7
|
-
export * from "./IMicroAgenticaConfig";
|
|
8
|
-
export * from "./IMicroAgenticaExecutor";
|
|
9
|
-
export * from "./IMicroAgenticaProps";
|
|
10
|
-
export * from "./IMicroAgenticaSystemPrompt";
|
|
1
|
+
export * from "./IAgenticaConfig";
|
|
2
|
+
export * from "./IAgenticaController";
|
|
3
|
+
export * from "./IAgenticaExecutor";
|
|
4
|
+
export * from "./IAgenticaProps";
|
|
5
|
+
export * from "./IAgenticaSystemPrompt";
|
|
6
|
+
export * from "./IAgenticaVendor";
|
|
7
|
+
export * from "./IMicroAgenticaConfig";
|
|
8
|
+
export * from "./IMicroAgenticaExecutor";
|
|
9
|
+
export * from "./IMicroAgenticaProps";
|
|
10
|
+
export * from "./IMicroAgenticaSystemPrompt";
|