/** * Capability profiles for Agim llmBackends (same-family Subagent via backend=). * * CLI specialty lives in agent-profiles.ts; backends get a parallel matrix so * Agim can prefer e.g. deepseek-v4-pro for 金融/中文长文 vs codex for 编码. * * Defaults are inferred from backend name + model id; operators override via * `config.backendProfiles` (sparse, keyed by llmBackends.name). */ import { type CapabilityMap, type CapabilityNotes } from './capability-dims.js'; export interface BackendProfile { /** One-line specialty for catalog / Settings. */ summary: string; capabilities: CapabilityMap; capabilityNotes?: CapabilityNotes; } /** Sparse override/input — capabilities may omit dims (filled from inference). */ export type BackendProfilePatch = Omit, 'capabilities'> & { capabilities?: Partial; }; export type BackendProfileOverrides = Record; /** Heuristic defaults when name/model looks like a known family. */ export declare function inferBackendProfile(opts: { name: string; model?: string; provider?: string; }): BackendProfile; export declare function normalizeBackendProfile(raw: BackendProfilePatch | null | undefined, fallback: BackendProfile): BackendProfile; export declare function readBackendProfileOverrides(config: unknown): BackendProfileOverrides; export declare function resolveBackendProfile(backend: { name: string; model?: string; provider?: string; }, overrides?: BackendProfileOverrides | null): BackendProfile; export declare function backendProfilesEqual(a: BackendProfile, b: BackendProfile): boolean; /** Persist only backends that differ from inference defaults. */ export declare function backendProfileOverridesFromEffective(effective: Record, backends: Array<{ name: string; model?: string; provider?: string; }>): BackendProfileOverrides; export declare function formatBackendProfilesForPrompt(backends: Array<{ name: string; model?: string; provider?: string; }>, overrides?: BackendProfileOverrides | null): string; /** Live backend catalog from registry + config overrides. */ export declare function getBackendProfilesCatalogForPrompt(): string; //# sourceMappingURL=backend-profiles.d.ts.map