/** * Execute a task using Claude Code CLI. * * Spawns `claude -p ""` as a subprocess with a scoped environment. * The API key is resolved from the auth context (delegation) or system env. * Output is returned as structured JSON when possible. * * Authentication by proxy: * When called from a workflow with `_auth.userId`, the delegation token * identifies which user initiated the request. The activity uses this to: * - Log the requesting user for audit * - Scope the working directory (future: per-user sandboxing) * - Resolve the correct API key */ export declare function executeTask(args: { prompt: string; working_directory?: string; allowed_tools?: string[]; max_turns?: number; model?: string; system_prompt?: string; timeout_ms?: number; api_key?: string; credential_label?: string; _auth?: { userId?: string; token?: string; }; }): Promise<{ result: string; session_id?: string; cost_usd?: number; duration_ms: number; is_error: boolean; user_id?: string; }>; /** * Check whether Claude Code CLI is installed and an API key is available. * * Returns availability status and version. Useful for workflows that need * to decide whether to route to Claude Code or fall back to another tool. */ export declare function checkAvailability(args?: { _auth?: { userId?: string; token?: string; }; }): Promise<{ available: boolean; version?: string; has_api_key: boolean; has_oauth_session: boolean; auth_method?: string; user_id?: string; error?: string; }>;