/** * Spawn one cline process for a turn (json or ACP) with the shared plumbing: * process-group spawn (full access), turn timeout, abort kill ladder, the * per-turn marker env, and the hub-daemon reaper, which runs when the * process closes and again on abort (Stop) — see cline-runner-host.ts. * * Prompt delivery (json turns): cline 3.0.65 reads a piped prompt only when * fd 0 is a FIFO (verified live: a Node 'pipe' — a socketpair — and a * regular file are both ignored, and json mode then fails with "requires a * prompt argument or piped stdin"). So on POSIX the turn goes through * `/bin/sh`, which makes a private FIFO, feeds it from a 0600 prompt file * with `cat`, and `exec`s cline with the FIFO as stdin — cline keeps the * spawned pid (so `cline history`'s pid matches) and the prompt never * appears in argv. Windows passes it as the positional prompt. */ import { type ChildProcess } from 'node:child_process'; import type { AgentRunArgs } from './agent-runner.js'; import { type ClineSetup } from './cline-runner-host.js'; import type { ClineHost } from './cline-runner-types.js'; export declare const TURN_TIMEOUT_MS: number; /** cline requires a positional prompt to contain whitespace ("quoted"); the * real prompt follows it on stdin (cline joins them with a blank line). */ export declare const POSITIONAL_PROMPT = "Complete the task below."; export interface ClineLaunch { child: ChildProcess; /** Resolves with the exit code on 'close'; rejects on a spawn error. */ exit: Promise; stderr(): string; timedOut(): boolean; /** SIGTERM the cline process alone (used to end an idle ACP process). */ interrupt(): void; /** SIGTERM→SIGKILL the whole target (the tracked tree under full access). */ killChild(graceMs?: number): void; /** Idempotent: clear timers and the abort hook; kill the child if alive. */ dispose(): void; } export declare function launchCline(setup: ClineSetup, cliArgs: string[], args: AgentRunArgs, host: ClineHost, opts: { stdinPrompt?: string; interactive?: boolean; }, plat?: NodeJS.Platform): ClineLaunch; //# sourceMappingURL=cline-runner-proc.d.ts.map