/** * `amux launch` command implementation. * * Resolves a launch plan for a given harness+provider combination, * optionally starts the transport-mux runtime, then exec-forks the harness with * stdin/stdout passthrough and proper signal forwarding. */ import type { AgentMuxClient } from '@a5c-ai/agent-comm-mux'; import type { TransportId } from '@a5c-ai/agent-comm-mux'; import type { ParsedArgs, FlagDef } from './cli-helpers.js'; /** Launch-specific flag definitions (global flags like model/json/debug are excluded). */ export declare const LAUNCH_FLAGS: Record; export interface LaunchPlanInput { harness: string; provider?: string; model?: string; transport?: string; apiKey?: string; apiBase?: string; region?: string; project?: string; resourceGroup?: string; endpointName?: string; authCommand?: string; profile?: string; proxyMode: 'always' | 'if-needed' | 'never'; proxyPort?: number; adapter?: { translateProvider?(config: Record): any; }; providerArgs?: Record; } export interface ProxyPlan { targetProvider: string; targetModel: string; exposedTransport: TransportId; port: number; apiBase?: string; apiKey?: string; project?: string; location?: string; useVertexAi?: boolean; } export interface LaunchPlan { harness: string; provider: string; transport: string; model: string; proxyNeeded: boolean; proxyReason: string; proxy?: ProxyPlan; command: string; args: string[]; env: Record; } export declare function resolveLaunchPlan(input: LaunchPlanInput): LaunchPlan; export declare function launchCommand(client: AgentMuxClient, args: ParsedArgs): Promise;