import { getAgentInventory } from "../agents/AgentInventory.js"; import { attachMcpTools } from "../connectors/mcp/McpToolSource.js"; import { createProviderForAssignment } from "../gateway/LocalGatewayProvider.js"; import { GatewayTracer } from "../gateway/GatewayTracer.js"; import { ToolRegistry } from "../tools/ToolRegistry.js"; import type { RunContext } from "../runcontext/RunContextResolver.js"; import type { CodaliGatewayMode, CodaliGatewayResult } from "../gateway/CodaliGatewayTypes.js"; import type { Provider } from "../providers/ProviderTypes.js"; /** * `codali ask` — the terminal entry point to the orchestration gateway. * * Until this existed the gateway had exactly one caller (mswarm's cloud job * path) and could not be exercised locally at all, which made every other * improvement unverifiable. */ /** * Default budgets. Deliberately small: an orchestrator that can quietly spend * fifty tool calls on one question is not one you can put in front of users. */ export declare const DEFAULT_MAX_ROUNDS = 3; export declare const DEFAULT_MAX_TOOL_CALLS = 20; export declare const DEFAULT_MAX_MODEL_CALLS = 12; /** * Wall-clock budget. Generous because CLI-backed agents (codex, claude, * gemini) commonly take 30-90s per call, and several tasks run per question. */ export declare const DEFAULT_DEADLINE_MS = 600000; /** * Independent worker tasks executed concurrently. Bounded rather than * unlimited: each task holds a model call, and a tenant's connectors have their * own rate limits. */ export declare const DEFAULT_MAX_PARALLEL_WORKERS = 3; export interface AskOptions { query: string; workspaceRoot: string; mode: CodaliGatewayMode; trace: boolean; json: boolean; maxRounds: number; maxToolCalls: number; deadlineMs: number; docdexBaseUrl?: string; responseSchemaPath?: string; responseFormat?: "text" | "json"; noTools: boolean; } export declare const parseAskArgs: (argv: string[]) => AskOptions; export interface AskDependencies { loadInventory?: typeof getAgentInventory; resolveRunContext?: (workspaceRoot: string) => Promise; buildRegistry?: (options: AskOptions, context: RunContext) => ToolRegistry; createProvider?: (assignment: Parameters[0]) => Provider; attachMcp?: typeof attachMcpTools; write?: (line: string) => void; } export interface AskOutcome { result?: CodaliGatewayResult; tracer: GatewayTracer; exitCode: number; } export declare const runAsk: (argv: string[], deps?: AskDependencies) => Promise; export declare const AskCommand: { run(argv: string[]): Promise; }; //# sourceMappingURL=AskCommand.d.ts.map