Skip to content
Français

InteractiveAgentTaskOptions

import type { InteractiveAgentTaskOptions } from "@elie-laloum/outpost";
  • keyRequired
    string
    Stable workflow task key; also participates in the retained branch identity.
  • afterOptional
    readonly Task<unknown>[] | undefined
    Dependencies that must finish successfully before the first turn.
  • repositoryRequired
    string
    Host Git checkout containing the retained worktree and default conversation storage; must remain accessible on resume.
  • agentRequired
    Agent
    Agent with portable conversation capture and resume; otherwise defineInteractiveAgentTask() throws with code configuration.
  • briefRequired
    string
    Literal initial instructions; human replies are supplied separately on subsequent turns.
  • actorsRequired
    readonly string[]
    Nonempty unique identifiers allowed to answer; the application must authenticate their users.
  • sandboxProviderOptional
    SandboxProvider | undefined
    Provider that allocates a new sandbox for each turn, default createDockerSandboxProvider().
  • bootstrapOptional
    boolean | undefined
    Whether each turn’s sandbox may install a missing CLI agent, default true.
  • conversationHomeOptional
    string | undefined
    Host home used to locate captured native conversations across turns.
  • maxTurnsOptional
    number | undefined
    Maximum completed agent turns, including the final result; defaults to 12. A question at the last turn fails instead of waiting indefinitely.
  • timeoutMsOptional
    number | undefined
    Cooperative deadline for each executing task attempt, excluding time waiting for a human answer.
export interface InteractiveAgentTaskOptions {
  readonly key: string;
  readonly after?: readonly Task[];
  readonly repository: string;
  readonly agent: Agent;
  readonly brief: string;
  readonly actors: readonly string[];
  readonly sandboxProvider?: SandboxProvider;
  readonly bootstrap?: boolean;
  readonly conversationHome?: string;
  readonly maxTurns?: number;
  readonly timeoutMs?: number;
}