export declare const cliToolAdapterPackage = "@runx/adapter-cli-tool"; export type CliToolInputMode = "args" | "stdin" | "none"; export interface CliToolSource { readonly command?: string; readonly args?: readonly string[]; readonly cwd?: string; readonly timeoutSeconds?: number; readonly inputMode?: CliToolInputMode; readonly sandbox?: CliToolSandbox; } export interface CliToolSandbox { readonly profile: "readonly" | "workspace-write" | "network" | "unrestricted-local-dev"; readonly cwdPolicy?: "skill-directory" | "workspace" | "custom"; readonly envAllowlist?: readonly string[]; readonly network?: boolean; readonly writablePaths?: readonly string[]; readonly approvedEscalation?: boolean; } export interface CliToolInvokeRequest { readonly source: CliToolSource; readonly inputs: Readonly>; readonly resolvedInputs?: Readonly>; readonly skillDirectory: string; readonly env?: NodeJS.ProcessEnv; readonly signal?: AbortSignal; } export interface CliToolInvokeResult { readonly status: "success" | "failure"; readonly stdout: string; readonly stderr: string; readonly exitCode: number | null; readonly signal: NodeJS.Signals | null; readonly durationMs: number; readonly errorMessage?: string; readonly metadata?: Readonly>; } export interface CliToolAdapter { readonly type: "cli-tool"; readonly invoke: (request: CliToolInvokeRequest) => Promise; } export declare function createCliToolAdapter(): CliToolAdapter; export declare function invokeCliTool(request: CliToolInvokeRequest): Promise;