- AgentCapabilitiesSchema with supportsStreaming/Reasoning/Background flags - supportsStreaming and supportsReasoningStream fields in ProviderSnapshotEntry - new_task tool: background mode flag for non-blocking subtask dispatch
55 lines
1.4 KiB
TypeScript
55 lines
1.4 KiB
TypeScript
/** Provider snapshot types — single source of truth. Plain TS, no runtime. */
|
|
|
|
export interface ProviderMode {
|
|
id: string;
|
|
label: string;
|
|
description?: string;
|
|
/** Auto-approve tool permissions when this mode is selected. */
|
|
isUnattended?: boolean;
|
|
}
|
|
|
|
export interface ThinkingOption {
|
|
id: string;
|
|
label: string;
|
|
isDefault?: boolean;
|
|
}
|
|
|
|
export interface ProviderModel {
|
|
id: string;
|
|
label: string;
|
|
description?: string;
|
|
isDefault?: boolean;
|
|
thinkingOptions?: ThinkingOption[];
|
|
defaultThinkingOptionId?: string;
|
|
}
|
|
|
|
// v2.3 phase 2: 'loading' (cache-miss, probe in flight) + 'unavailable'
|
|
// (disabled or not installed) restored alongside the terminal 'ready' | 'error'.
|
|
export type ProviderSnapshotStatus = 'loading' | 'ready' | 'unavailable' | 'error';
|
|
|
|
export interface AgentCommand {
|
|
name: string;
|
|
description?: string;
|
|
// v2.5.11: 'skill' (plugin skill) vs 'command' (native/CLI slash command).
|
|
// Drives the icon split in the coder slash menu. Undefined → command.
|
|
kind?: 'command' | 'skill';
|
|
}
|
|
|
|
export interface ProviderSnapshotEntry {
|
|
name: string;
|
|
label: string;
|
|
description?: string;
|
|
transport: string;
|
|
status: ProviderSnapshotStatus;
|
|
enabled: boolean;
|
|
installed: boolean;
|
|
models: ProviderModel[];
|
|
modes: ProviderMode[];
|
|
defaultModeId: string | null;
|
|
commands: AgentCommand[];
|
|
error?: string;
|
|
fetchedAt?: string;
|
|
supportsStreaming?: boolean;
|
|
supportsReasoningStream?: boolean;
|
|
}
|