UNPKG

@adonis-agora/agent

Version:

Governed, durable-backed AI agent (chat + tool-calling + governance) for AdonisJS — part of the Agora ecosystem.

40 lines • 1.67 kB
import { type ResolveToolUiCatalog } from './negotiated-tool-ui.js'; import type { ActionProposal } from './spi/action-proposal-store.js'; import type { BackgroundActorResolver } from './spi/background-actor-resolver.js'; import type { RolesPolicy } from './spi/roles-policy.js'; import type { PresentationErrorHandler } from './spi/tool.js'; import type { AgentUiComponent } from './stream-events.js'; import type { ToolRegistry } from './tool-registry.js'; import type { Actor, Persona } from './types.js'; export interface ActionProposalExecutionDeps { registry: ToolRegistry; rolesPolicy: RolesPolicy; allowedTools?: string[]; host?: unknown; persona?: Persona; resolveUiCatalog?: ResolveToolUiCatalog; /** Where a tool's failed `present` is reported. Undefined → a console warning. */ onPresentationError?: PresentationErrorHandler; } export interface ActionProposalExecutorOptions { resolver: BackgroundActorResolver; /** Resolve exact recorded agent/persona against current configuration; throw if it disappeared. */ resolveExecution(proposal: ActionProposal, actor: Actor): Promise<ActionProposalExecutionDeps>; } export type ActionProposalExecutionResult = { status: 'succeeded'; result?: unknown; ui: AgentUiComponent[]; text?: string; } | { status: 'failed'; error: string; ui: AgentUiComponent[]; text?: string; }; export declare class ActionProposalExecutor { private readonly options; constructor(options: ActionProposalExecutorOptions); execute(proposal: ActionProposal): Promise<ActionProposalExecutionResult>; } //# sourceMappingURL=action-proposal-executor.d.ts.map