@fragola-ai/agent 0.1.0 → 0.1.1
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/dist/package/agent.index.js.map +2 -2
- package/dist/package/event.index.js.map +1 -1
- package/dist/package/fragola.index.js +16 -16
- package/dist/package/fragola.index.js.map +3 -3
- package/dist/package/hook.index.js +16 -16
- package/dist/package/hook.index.js.map +3 -3
- package/dist/src/agent.d.ts +28 -14
- package/dist/src/agent.js +16 -16
- package/dist/src/agent.js.map +3 -3
- package/dist/src/agentContext.d.ts +5 -3
- package/dist/src/agentContext.js.map +2 -2
- package/dist/src/applyEvent.js +16 -16
- package/dist/src/applyEvent.js.map +3 -3
- package/dist/src/event.js.map +1 -1
- package/dist/src/eventAfter.d.ts +3 -2
- package/dist/src/eventBefore.d.ts +3 -2
- package/dist/src/eventDefault.d.ts +10 -1
- package/dist/src/fragola.d.ts +29 -0
- package/dist/src/fragola.js +16 -16
- package/dist/src/fragola.js.map +3 -3
- package/dist/src/hook/index.d.ts +2 -2
- package/dist/src/hook/index.js +16 -16
- package/dist/src/hook/index.js.map +3 -3
- package/dist/src/utils.js +1 -1
- package/dist/src/utils.js.map +1 -1
- package/package.json +6 -2
package/dist/src/agent.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import type z from "zod";
|
|
|
5
5
|
import type { Prettify, StoreLike } from "./types";
|
|
6
6
|
import OpenAI from "openai/index.js";
|
|
7
7
|
import { type AgentEventId } from "./event";
|
|
8
|
-
import type { EventToolCall, EventUserMessage, EventModelInvocation, EventAiMessage, ModelInvocationPayload } from "./eventDefault";
|
|
8
|
+
import type { EventToolCall, EventUserMessage, EventModelInvocation, EventAiMessage, ModelInvocationPayload, ToolCallPayload } from "./eventDefault";
|
|
9
9
|
import type { EventAfterStateUpdate, EventAfterStep, EventAfterModelInvocation, EventAfterToolCall } from "./eventAfter";
|
|
10
10
|
import type { EventBeforeStep, EventBeforeModelInvocation, EventBeforeToolCall, ModelInvocationConfig, ToolCallConfig } from "./eventBefore";
|
|
11
11
|
import { type registeredEvent, type eventIdToCallback, EventMap } from "./extendedJS/events/EventMap";
|
|
@@ -108,14 +108,14 @@ export type applyEventParams<K extends AgentEventId, TMetaData extends DefineMet
|
|
|
108
108
|
} : K extends "after:modelInvocation" ? {
|
|
109
109
|
message: ChatCompletionAssistantMessageParam<TMetaData>;
|
|
110
110
|
} : K extends "toolCall" ? {
|
|
111
|
-
result:
|
|
111
|
+
result: ToolCallPayload;
|
|
112
112
|
params: any;
|
|
113
113
|
tool: Tool<any>;
|
|
114
114
|
} : K extends "before:toolCall" ? {
|
|
115
115
|
config: ToolCallConfig<any>;
|
|
116
116
|
tool: Tool<any>;
|
|
117
117
|
} : K extends "after:toolCall" ? {
|
|
118
|
-
result:
|
|
118
|
+
result: ToolCallPayload;
|
|
119
119
|
params: any;
|
|
120
120
|
tool: Tool<any>;
|
|
121
121
|
} : K extends "after:stateUpdate" ? null : never;
|
|
@@ -134,6 +134,8 @@ export declare class Agent<TMetaData extends DefineMetaData<any> = {}, TGlobalSt
|
|
|
134
134
|
private hooks;
|
|
135
135
|
private hookDisposeMap;
|
|
136
136
|
private pendingHookNames;
|
|
137
|
+
private pendingHookSourceIds;
|
|
138
|
+
private cancelledHookSourceIds;
|
|
137
139
|
private activeHookSourceId;
|
|
138
140
|
/** serialized async initialization of hooks (ensures tools are ready before generation) */
|
|
139
141
|
private hooksLoaded;
|
|
@@ -158,8 +160,9 @@ export declare class Agent<TMetaData extends DefineMetaData<any> = {}, TGlobalSt
|
|
|
158
160
|
getStore<T extends unknown>(namespace?: string): Store<T> | undefined;
|
|
159
161
|
addStore(store: Store<any>): void;
|
|
160
162
|
removeStore(namespace: string): void;
|
|
163
|
+
get systemPrompt(): string;
|
|
161
164
|
setInstructions(instructions: string, scope?: string): void;
|
|
162
|
-
|
|
165
|
+
instructions(scope?: string): string | undefined;
|
|
163
166
|
removeInstructions(scope: string): boolean;
|
|
164
167
|
setOptions(options: SetOptionsParams): void;
|
|
165
168
|
stop(): Promise<{
|
|
@@ -171,6 +174,7 @@ export declare class Agent<TMetaData extends DefineMetaData<any> = {}, TGlobalSt
|
|
|
171
174
|
updateTools(callback: (prev: Tool[]) => Tool[]): void;
|
|
172
175
|
};
|
|
173
176
|
private setRegisteredEvents;
|
|
177
|
+
private removeHookScopedEvents;
|
|
174
178
|
[FORK_FRIEND]: {
|
|
175
179
|
setRegisteredEvents: (map: typeof this.registeredEvents) => void;
|
|
176
180
|
getRegisteredEvents: () => EventMap<AgentEventId, registeredEvent<AgentEventId, TMetaData, TGlobalStore, TStore>[], TMetaData, TGlobalStore, TStore>;
|
|
@@ -198,7 +202,7 @@ export declare class Agent<TMetaData extends DefineMetaData<any> = {}, TGlobalSt
|
|
|
198
202
|
/** Build merged instructions from default + scoped instructions. */
|
|
199
203
|
private computeMergedInstructions;
|
|
200
204
|
/** Return cached merged instructions, computing them if necessary. */
|
|
201
|
-
private
|
|
205
|
+
private get mergedInstructions();
|
|
202
206
|
private appendMessages;
|
|
203
207
|
private setIdle;
|
|
204
208
|
private setGenerating;
|
|
@@ -218,6 +222,8 @@ export declare class Agent<TMetaData extends DefineMetaData<any> = {}, TGlobalSt
|
|
|
218
222
|
get options(): CreateAgentOptions<TStore>;
|
|
219
223
|
private stepOptions;
|
|
220
224
|
private validateStepOptions;
|
|
225
|
+
/** Waits for all pending hook setup to finish without executing a step. */
|
|
226
|
+
init(): Promise<void>;
|
|
221
227
|
/**
|
|
222
228
|
* Continues execution from the current message history for one or more steps.
|
|
223
229
|
*
|
|
@@ -337,7 +343,7 @@ export declare class Agent<TMetaData extends DefineMetaData<any> = {}, TGlobalSt
|
|
|
337
343
|
* Register a tool result handler.
|
|
338
344
|
*
|
|
339
345
|
* This event runs after `before:toolCall` resolves the current config and after the tool
|
|
340
|
-
|
|
346
|
+
* handler (or an injected result) produces a payload. Each callback receives the current payload
|
|
341
347
|
* and may transform it before it is exposed to later `toolCall` handlers, `after:toolCall`,
|
|
342
348
|
* and the tool message appended to state.
|
|
343
349
|
*
|
|
@@ -345,11 +351,15 @@ export declare class Agent<TMetaData extends DefineMetaData<any> = {}, TGlobalSt
|
|
|
345
351
|
* remaining `toolCall` / `after:toolCall` pipeline for the current tool call.
|
|
346
352
|
*
|
|
347
353
|
* @example
|
|
348
|
-
|
|
354
|
+
* agent.onToolCall((result, params, tool) => {
|
|
349
355
|
* if (tool.name !== "getWeather") return result;
|
|
356
|
+
* if (!result.success) return result;
|
|
350
357
|
* return {
|
|
351
|
-
|
|
352
|
-
|
|
358
|
+
* success: true,
|
|
359
|
+
* data: {
|
|
360
|
+
* requestedLocation: params.location,
|
|
361
|
+
* data: result.data,
|
|
362
|
+
* },
|
|
353
363
|
* };
|
|
354
364
|
* });
|
|
355
365
|
*/
|
|
@@ -440,9 +450,9 @@ export declare class Agent<TMetaData extends DefineMetaData<any> = {}, TGlobalSt
|
|
|
440
450
|
* Register a handler that can alter a tool call before execution.
|
|
441
451
|
*
|
|
442
452
|
* The callback receives `{ params }` before the tool handler runs. It may return a new
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
453
|
+
* `{ params }` object to rewrite validated arguments or `{ injectConfig }` with a full
|
|
454
|
+
* `ToolCallPayload` to bypass the handler entirely. `skip()` preserves the current config,
|
|
455
|
+
* and `context.stop()` aborts the current tool call.
|
|
446
456
|
*
|
|
447
457
|
* @example
|
|
448
458
|
* agent.onBeforeToolCall((config, tool) => {
|
|
@@ -454,7 +464,7 @@ export declare class Agent<TMetaData extends DefineMetaData<any> = {}, TGlobalSt
|
|
|
454
464
|
/**
|
|
455
465
|
* Register an after tool call event handler.
|
|
456
466
|
*
|
|
457
|
-
|
|
467
|
+
* Called after a tool payload is finalized.
|
|
458
468
|
*
|
|
459
469
|
* @example
|
|
460
470
|
* agent.onAfterToolCall((result, params, tool, context) => {
|
|
@@ -532,7 +542,7 @@ export declare class Agent<TMetaData extends DefineMetaData<any> = {}, TGlobalSt
|
|
|
532
542
|
*
|
|
533
543
|
* @example
|
|
534
544
|
* ```ts
|
|
535
|
-
* import { Hook } from "@fragola-ai/
|
|
545
|
+
* import { Hook } from "@fragola-ai/agent/hook";
|
|
536
546
|
*
|
|
537
547
|
* const loggingHook = Hook((agent) => {
|
|
538
548
|
* agent.onAfterStateUpdate((context) => {
|
|
@@ -554,6 +564,10 @@ export declare class Agent<TMetaData extends DefineMetaData<any> = {}, TGlobalSt
|
|
|
554
564
|
* Returns `false` if no hook is registered under that name.
|
|
555
565
|
*/
|
|
556
566
|
removeHook(name: string): Promise<boolean>;
|
|
567
|
+
/**
|
|
568
|
+
* Removes every hook currently registered on the agent.
|
|
569
|
+
*/
|
|
570
|
+
dispose(): Promise<void>;
|
|
557
571
|
}
|
|
558
572
|
export type AgentAny = Agent<any, any, any>;
|
|
559
573
|
export {};
|