UNPKG

eve

Version:

Filesystem-first framework for durable backend AI agents that run anywhere.

51 lines (50 loc) 2.97 kB
import type { ModelMessage } from "ai"; import { type AlsContext } from "#context/container.js"; import { type CurrentDynamicToolMetadata } from "#context/dynamic-tool-metadata.js"; import type { HarnessToolDefinition } from "#harness/execute-tool.js"; import type { SessionStartedStreamEvent, StepStartedStreamEvent, UnstampedMessageStreamEvent } from "#protocol/message.js"; import { type DynamicToolEntry } from "#tools/dynamic.js"; import { type DynamicToolCallbackOwner, type DurableDynamicToolCallbacks } from "#tools/durable-callbacks.js"; import type { ResolvedDynamicToolResolver } from "#runtime/types.js"; /** Kept as the session-specific entry point for existing runtime consumers. */ export declare function replayDynamicSessionTools(metadata: readonly CurrentDynamicToolMetadata[], _resolvers: readonly ResolvedDynamicToolResolver[], sessionId: string): readonly HarnessToolDefinition[]; export declare function validateDurableDynamicToolCallbacks(name: string, entry: DynamicToolEntry, owner: DynamicToolCallbackOwner): DurableDynamicToolCallbacks; /** Resolves step-scoped tools once for one internal policy/model pass. */ export declare function resolveStepDynamicTools(input: { readonly ctx: AlsContext; readonly resolvers: readonly ResolvedDynamicToolResolver[]; readonly event: StepStartedStreamEvent; readonly messages: readonly ModelMessage[]; }): Promise<void>; /** Converts persisted step metadata before any approval replay can read it. */ export declare function preparePersistedStepDynamicToolMetadata(input: { readonly ctx: AlsContext; readonly resolvers: readonly ResolvedDynamicToolResolver[]; readonly event: StepStartedStreamEvent; readonly messages: readonly ModelMessage[]; }): Promise<void>; export declare function dispatchDynamicToolEvent(input: { readonly ctx: AlsContext; readonly resolvers: readonly ResolvedDynamicToolResolver[]; readonly event: UnstampedMessageStreamEvent; readonly messages: readonly ModelMessage[]; }): Promise<void>; /** * Refreshes session-scoped definitions when the deployed code revision changes * or when persisted callbacks have no registered binding (fresh process after * a crash, or a redeploy), so replay always resolves against current code. */ export declare function refreshDynamicSessionToolsForRuntimeRevision(input: { readonly ctx: AlsContext; readonly resolvers: readonly ResolvedDynamicToolResolver[]; readonly event: SessionStartedStreamEvent; readonly messages: readonly ModelMessage[]; readonly runtimeRevision: string; }): Promise<void>; /** Re-registers callbacks for compiled resolvers that explicitly support cold replay. */ export declare function rebindMissingCompiledDynamicToolCallbacks(input: { readonly ctx: AlsContext; readonly event: UnstampedMessageStreamEvent; readonly messages: readonly ModelMessage[]; readonly resolvers: readonly ResolvedDynamicToolResolver[]; }): Promise<void>;