import type { ActorPersonaRef, ActorStatus, ActorCompletionReason, ActorTrace } from "./actor-contract.js"; /** * Backward-compatible fail-closed marker for the intentionally unsupported direct runner. * The name is retained because it is already exported public API. */ export declare const TERMINAL_AGENT_NOT_IMPLEMENTED_CODE: "HUMANISH_TERMINAL_AGENT_NOT_IMPLEMENTED"; /** * Options the engine hands the terminal agent session. The transport is the captured * non-interactive exec stream (stdin disabled), NOT an interactive PTY — see ActorProtocol * "terminal-exec" and the goal packet's PTY ruling. This compatibility shape documents the * descriptor boundary; the route-owned live implementation composes equivalent inputs with the * additional provider, policy, cap, and cleanup controls it needs. */ export interface TerminalAgentSessionOptions { /** Where the session writes its native trace/transcript/event-stream artifacts. */ artifactRoot: string; /** The composed prompt the agent runs (mission + persona + public-surface manifest). */ prompt: string; /** Public-safe persona reference (id + composed-prompt digest); no plaintext beyond the mission. */ persona: ActorPersonaRef; /** The product's declared PUBLIC surfaces (http(s) URLs / refs) — the only world the agent sees. */ publicSurfaces: string[]; /** Session wall-clock budget (the route also requires scenario.caps.maxMinutes). */ timeoutMs: number; /** Per-run verdict nonce: the agent must echo it so replayed text can't forge the verdict. */ verdictNonce: string; } export interface TerminalAgentSessionResult { status: ActorStatus; completionReason: ActorCompletionReason; reason: string; /** The provider-neutral evidence projection (humanish.actor-trace.v1, lane "terminal"). */ trace: ActorTrace; } /** * Backward-compatible registry entry. Direct execution is intentionally unsupported: only the * terminal-product lab route owns enough context to enforce command-scoped auth, caps, evidence * capture, and by-id cleanup together. Fail closed instead of implying that the descriptor method * itself runs the shipped live route. */ export declare function runTerminalAgentSession(_options: TerminalAgentSessionOptions): Promise;