/** * GENERATED — DO NOT EDIT BY HAND. * * Source: schemas/qar/qar-info.json * QAR commit: c0157c5c4aaa9304910c6be075e81d253f15c763 * QAR ref: c0157c5c4aaa9304910c6be075e81d253f15c763 * Fetched: 2026-10-07 * * Edit the upstream Pydantic models in qodo-ai/qodo-agent-runtime, * re-run `python scripts/export-schemas.py` there, bump * schemas/qar/.qar-version + the vendored JSON files, then * `npm run codegen:qar` regenerates this file. */ /** * The /v1/info response document. * * Frozen + ``extra="forbid"`` so a typo on either side surfaces at * validation time. ``schema_version`` is the SDK-side compatibility * tripwire — bumping it requires coordinated client/server upgrade. */ export interface QARInfo { base_url?: (string | null); deployment_kind: ("qodo-cloud" | "self-tenant"); feature_flags?: { [k: string]: boolean | undefined; }; models?: ModelEntry[]; rate_limits?: { [k: string]: RateLimitEntry | undefined; }; runtime_version: string; schema_version?: 1; tools?: ToolEntry[]; } /** * One entry in the model catalogue. * * ``provider`` is the verbatim topology spec (``"litellm:claude-opus-4-7"``, * ``"test"``, etc.). ``agent`` is the agent that exposes it; the SDK * can group by ``agent`` or by ``provider`` depending on whether it's * rendering a model picker or auditing the deployment surface. */ export interface ModelEntry { agent: string; max_tokens?: (number | null); provider: string; temperature: number; } /** * One rate-limit policy entry. * * ``scope`` is ``"route"`` (per-endpoint cap) or ``"tenant"`` (per-tenant * cap). ``window_seconds`` + ``limit`` define the budget. v0 returns * no entries; the model is here so the wire shape doesn't churn when * Phase 4+ wires the rate-limit substrate. */ export interface RateLimitEntry { limit: number; scope: ("route" | "tenant"); window_seconds: number; } /** * One MCP tool inventory entry from the loaded topologies. * * ``agent`` keys back to the agent that exposes the tool — Studio renders * the inventory grouped by agent; the SDK consumes the flat list and * routes ``tool.request`` envelopes via ``tool_name`` directly. * ``description`` is the docstring Pydantic AI extracted from the * ``@tool`` callable; empty string when none. */ export interface ToolEntry { agent: string; description?: string; name: string; } //# sourceMappingURL=qar-info.d.ts.map