/** * SDK feature toggles — per-adapter configuration for Claude Code features. * * Persisted to ~/.config/meridian/sdk-features.json. * Read at request time (no restart needed to pick up changes). */ export interface AdapterFeatures { /** Use the Claude Code system prompt preset (tool instructions, safety rules) */ codeSystemPrompt: boolean; /** Include the client agent's system prompt (e.g. OpenCode/Crush instructions) */ clientSystemPrompt: boolean; /** Load CLAUDE.md instruction files (off, project, full) */ claudeMd: "off" | "project" | "full"; /** Enable auto-memory (read + write across sessions) */ memory: boolean; /** Enable background memory consolidation */ dreaming: boolean; /** Default thinking mode (adaptive, enabled, disabled) */ thinking: "adaptive" | "enabled" | "disabled"; /** Forward thinking blocks to the client */ thinkingPassthrough: boolean; /** Share memory directory with Claude Code (~/.claude instead of SDK default) */ sharedMemory: boolean; /** Per-request cost cap in USD (0 = disabled) */ maxBudgetUsd: number; /** Fallback model when primary fails (empty = disabled) */ fallbackModel: string; /** Enable SDK debug logging to proxy stderr */ sdkDebug: boolean; /** Comma-separated extra directories Claude can access (beyond CWD) */ additionalDirectories: string; } export type FeatureConfig = Record>; /** * Get resolved features for an adapter. * Priority: user config > adapter defaults > global defaults */ export declare function getFeaturesForAdapter(adapterName: string): AdapterFeatures; /** * Get the full config for all adapters (for the settings UI). */ export declare function getAllFeatureConfigs(): Record; /** * Validate and sanitise a partial feature update. * Returns only recognised keys with correct types; throws on invalid input. */ export declare function validateFeatureUpdate(raw: unknown): Partial; /** * Update features for a specific adapter. */ export declare function updateAdapterFeatures(adapterName: string, features: Partial): void; /** * Reset an adapter to its defaults (remove user overrides). */ export declare function resetAdapterFeatures(adapterName: string): void; //# sourceMappingURL=sdkFeatures.d.ts.map