@oh-my-pi/pi-agent-core 6.2.0 → 6.7.67
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/package.json +3 -3
- package/src/types.ts +14 -6
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oh-my-pi/pi-agent-core",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.7.67",
|
|
4
4
|
"description": "General-purpose agent with transport abstraction, state management, and attachment support",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./src/index.ts",
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
"test": "vitest --run"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@oh-my-pi/pi-ai": "6.
|
|
17
|
-
"@oh-my-pi/pi-tui": "6.
|
|
16
|
+
"@oh-my-pi/pi-ai": "6.7.67",
|
|
17
|
+
"@oh-my-pi/pi-tui": "6.7.67"
|
|
18
18
|
},
|
|
19
19
|
"keywords": [
|
|
20
20
|
"ai",
|
package/src/types.ts
CHANGED
|
@@ -165,15 +165,19 @@ export interface AgentState {
|
|
|
165
165
|
error?: string;
|
|
166
166
|
}
|
|
167
167
|
|
|
168
|
-
export interface AgentToolResult<T> {
|
|
168
|
+
export interface AgentToolResult<T, TNormative extends TSchema = any> {
|
|
169
169
|
// Content blocks supporting text and images
|
|
170
170
|
content: (TextContent | ImageContent)[];
|
|
171
171
|
// Details to be displayed in a UI or logged
|
|
172
|
-
details
|
|
172
|
+
details?: T;
|
|
173
|
+
/** Normative input for the tool result */
|
|
174
|
+
$normative?: Static<TNormative>;
|
|
173
175
|
}
|
|
174
176
|
|
|
175
177
|
// Callback for streaming tool execution updates
|
|
176
|
-
export type AgentToolUpdateCallback<T = any
|
|
178
|
+
export type AgentToolUpdateCallback<T = any, TNormative extends TSchema = any> = (
|
|
179
|
+
partialResult: AgentToolResult<T, TNormative>,
|
|
180
|
+
) => void;
|
|
177
181
|
|
|
178
182
|
/** Options passed to renderResult */
|
|
179
183
|
export interface RenderResultOptions {
|
|
@@ -204,15 +208,19 @@ export interface AgentTool<TParameters extends TSchema = TSchema, TDetails = any
|
|
|
204
208
|
toolCallId: string,
|
|
205
209
|
params: Static<TParameters>,
|
|
206
210
|
signal?: AbortSignal,
|
|
207
|
-
onUpdate?: AgentToolUpdateCallback<TDetails>,
|
|
211
|
+
onUpdate?: AgentToolUpdateCallback<TDetails, TParameters>,
|
|
208
212
|
context?: AgentToolContext,
|
|
209
|
-
) => Promise<AgentToolResult<TDetails>>;
|
|
213
|
+
) => Promise<AgentToolResult<TDetails, TParameters>>;
|
|
210
214
|
|
|
211
215
|
/** Optional custom rendering for tool call display (returns UI component) */
|
|
212
216
|
renderCall?: (args: Static<TParameters>, theme: TTheme) => unknown;
|
|
213
217
|
|
|
214
218
|
/** Optional custom rendering for tool result display (returns UI component) */
|
|
215
|
-
renderResult?: (
|
|
219
|
+
renderResult?: (
|
|
220
|
+
result: AgentToolResult<TDetails, TParameters>,
|
|
221
|
+
options: RenderResultOptions,
|
|
222
|
+
theme: TTheme,
|
|
223
|
+
) => unknown;
|
|
216
224
|
}
|
|
217
225
|
|
|
218
226
|
// AgentContext is like Context but uses AgentTool
|