import { type ExtensionAPI } from "@caupulican/pi-adaptative"; import type { ThinkingLevel } from "@caupulican/pi-agent-core"; import { type Provider } from "./launch-profile.ts"; export declare const piConfig: { tools: string[]; }; type AgentResult = { status: string; marker?: string; detectedAt?: string; reason?: string; }; type VariableState = { updatedAt: string | null; variables: Record; }; type FireAgentPlan = { id: string; name: string; provider: Provider; command?: string; cwd: string; doneMarker: string; blockedMarker: string; promptPath: string; logPath: string; resultPath: string; paneId?: string; result?: AgentResult; resourceProfile?: string; thinkingLevel?: ThinkingLevel; /** Last turn dispatched to this agent's pane via fire_task (1) or send_followup (>=2). Absent means 1. */ currentTurn?: number; /** Last turn whose terminal handoff was delivered to the parent. Absent means 0 (never notified). */ notifiedTurn?: number; /** A follow-up turn durably reserved before its prompt is injected. Reconciliation may re-arm its * watcher, but never re-injects it: a retry must not duplicate an uncertain external side effect. */ pendingTurn?: number; /** Mirrors `AgentSpec.worktreeLane` -- carried onto the plan so `applyLaunchProfile` (per-agent * flags) and the dispatch-phase `reportManagedLane` call can both read it after `buildFireTaskPlan`. */ worktreeLane?: string; /** Durable host-lifecycle metadata for the current turn. */ dispatchProfileId?: string; dispatchAuthorizationId?: string; dispatchAuthorizationKind?: "profile-derived" | "legacy-recovery"; dispatchAllowedTools?: string[]; dispatchWritePaths?: string[]; dispatchInstructions?: string; dispatchGoalId?: string; dispatchLeaseTtlMs?: number; }; type FireTaskPlan = { id: string; createdAt: string; notifiedAt?: string; parentSessionFile?: string; workspaceName: string; sessionName: string; cwd: string; task: string; teamTemplate?: string; deadlineSeconds: number; jobDir: string; jobPath: string; varsPath: string; watcherPath: string; agents: FireAgentPlan[]; launchCommands: string[]; variables?: VariableState; /** Mirrors the follow-up target agent's currentTurn, for external observability (job_status). */ currentTurn?: number; /** Set when session-level reconcile finds the tmux session gone while the job was not terminal. Informational only; nothing is ever killed to produce this state. */ orphanedAt?: string; /** Set by action=dismiss after its pane watchers are detached. The tmux session is left running. */ dismissedAt?: string; }; /** The subset of FireTaskPlan the pane watcher generator actually reads — narrow on purpose so a * synthesized single-agent, single-turn spec (send_followup, reconcile resume) can reuse it without * fabricating unrelated FireTaskPlan fields (createdAt, jobPath, task, ...). */ type PaneWatcherJobSpec = Pick; export declare function getTmuxAgentManagerDataRoot(): string; export declare function makePaneWatcherScript(job: PaneWatcherJobSpec): string; export default function tmuxAgentManagerExtension(pi: ExtensionAPI): void; export {}; //# sourceMappingURL=index.d.ts.map