/** 冷却时间最小值(毫秒):cooldownMs 被钳制不低于该值。 */ export declare const MIN_COOLDOWN_MS = 1000; /** 备用模型条目(label 仅用于 UI 展示)。 */ export interface BackupEntry { label: string; provider: string; model: string; reasoningEffort?: string; } /** 自定义子智能体定义。provider/model 留空 = 继承 DSH 默认模型。 */ export interface AgentEntry { name: string; provider: string; model: string; /** 模型推理强度;留空 = 使用 provider/model 默认值。 */ reasoningEffort?: string; /** 该子智能体每次请求的最大输出 token;0 = 用编排级 maxTokens 或继承父级。 */ maxTokens?: number; description: string; systemPrompt: string; /** 工具裁剪(可选):allow 白名单 / deny 黑名单,工具名以宿主全局注册为准;provider 不支持时自动剥离。 */ tools?: { allow?: string[]; deny?: string[]; }; /** 该子智能体独立的模型回退链;为空/未配置时不启用编排层回退。 */ fallbacks?: BackupEntry[]; } /** HA(模型高可用)配置节。 */ export interface HaConfig { enabled: boolean; backups: BackupEntry[]; cooldownMs: number; threshold: number; codes: string[]; persistSelection: boolean; steerOnStop: boolean; /** 失败计数滑动窗口(毫秒);0 = 关闭(计数到冷却到期才过期)。 */ burstWindowMs: number; /** Provider 级熔断阈值:同一 provider 隔离的模型数达到该值后熔断整个 provider;0 = 关闭。 */ providerThreshold: number; /** 冷却到期后真实探测恢复(小成本调用验证模型可用)。 */ probeEnabled: boolean; /** CONTEXT_WINDOW_EXCEEDED 时降级重试(去掉 reasoningEffort)。 */ degradeContextWindow: boolean; } /** 编排预设/配方:把一次成功的 orchestrate 调用参数保存为可复用条目。 */ export interface OrchPreset { name: string; mode: string; agent: string; supervisorAgent: string; mergeInstructions: string; tasks: Array<{ id?: string; label?: string; agent?: string; prompt: string; }>; } /** 编排配置节。 */ export interface OrchConfig { enabled: boolean; provider: string; concurrency: number; maxAgents: number; agents: AgentEntry[]; /** pipeline 单阶段失败重试次数(0 = 不重试,直接隔离该阶段)。 */ stageRetry: number; /** 全局并发上限(跨 run 共享;0 = 不限)。 */ globalConcurrency: number; /** 已保存的编排配方。 */ presets: OrchPreset[]; /** merge/supervisor/reduce 输入的每任务正文字符上限(0 = 用代码默认值)。 */ mergeBodyLimit: number; /** merge/supervisor/reduce 输入的总字符上限(0 = 用代码默认值)。 */ mergeTotalLimit: number; /** 工具结果渲染的每任务输出字符上限(0 = 用代码默认值)。 */ renderRunLimit: number; /** 工具结果渲染的总字符上限(0 = 用代码默认值)。 */ renderTotalLimit: number; /** 子智能体委托深度平台级硬上限(0 = 关闭;1 = 子智能体不能再委托)。 */ maxDepth: number; /** 重试相同任务时自动复用最近一次部分完成的 run(同会话、同任务、30 分钟内)。 */ autoResume: boolean; /** 子智能体每次请求的最大输出 token(0 = 继承父级/不覆盖;需要提高输出上限时再显式配置)。 */ maxTokens: number; } /** 调试配置节。 */ export interface DebugConfig { enabled: boolean; showCard: boolean; } /** 插件语言配置节。 */ export interface LangConfig { /** 'auto' 跟随 DSH 语言;'zh' / 'en' 手动固定 */ mode: 'auto' | 'zh' | 'en'; } /** 上下文注入配置节。 */ export interface CtxConfig { enabled: boolean; text: string; /** 是否也向子智能体注入同一段上下文(默认 false:子智能体不注入,避免层层外包)。 */ injectSubagents: boolean; } /** 完整插件配置。 */ export interface Config { ha: HaConfig; orch: OrchConfig; debug: DebugConfig; lang: LangConfig; ctx: CtxConfig; } /** * 默认完整配置。 */ export declare const defaultConfig: Config; /** * 对完整配置做校验合并。只保留出现在 patch 中的节,其余节保持 base 对应节原样; * 返回全新对象,不修改传入的 patch 与 base。 * @param patch 增量配置;非对象时返回空对象。 * @param base 基准配置(缺省回退到 defaultConfig)。 * @returns 校验合并后的全新配置对象(仅含 patch 中出现的节)。 */ export declare function sanitizeConfig(patch: unknown, base?: Config | null): Partial;