UNPKG

eve

Version:

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

32 lines (31 loc) • 1.52 kB
import type { SessionCapabilities } from "#channel/types.js"; import { type SessionInputQueue } from "#execution/session/input-queue.js"; import type { SessionInboxReader } from "#execution/session-inbox/inbox.js"; import type { SessionStateCursor } from "#execution/session/state-cursor.js"; import type { WorkflowToolRunMessage } from "#execution/tools/workflow/messages.js"; import type { TurnOutcome, TurnStepPayload } from "#execution/session/turn-step-types.js"; import type { RunMode } from "#shared/run-mode.js"; import type { RuntimeActionResult } from "#shared/action-types.js"; export interface SessionExecutionInput { readonly capabilities?: SessionCapabilities; readonly cursor: SessionStateCursor; readonly inbox: SessionInboxReader; readonly mode: RunMode; readonly queue: SessionInputQueue; readonly sessionId: string; } /** * Executes conversational turns inside the owning session workflow: runs * `turnStep`, services the inbox at committed boundaries, coordinates waits, * and settles locally. There is no child run and no transport protocol. */ export declare class SessionExecution { private readonly input; constructor(input: SessionExecutionInput); get cursor(): SessionStateCursor; runTurn(delivery: TurnStepPayload | undefined): Promise<TurnOutcome>; private runTurnSteps; handleWorkflowMessage(message: WorkflowToolRunMessage): Promise<RuntimeActionResult | undefined>; private finishCancelledTurn; private waitForRuntimeActionResults; }