cline-sdk
Version:
Comprehensive SDK for Cline - AI-powered development assistant with database integration, execution modes, and custom functions
77 lines • 2.19 kB
TypeScript
/**
* Cline SDK Configuration System
* Handles API keys, settings, and tool configurations
*/
export interface ClineConfig {
apiProvider: "anthropic" | "openai" | "openrouter" | "ollama";
apiKey?: string;
apiBaseUrl?: string;
model?: string;
enabledTools: string[];
enableCustomFunctions: boolean;
enableDatabase: boolean;
maxRequestsPerTask: number;
timeout: number;
storageType: "local" | "supabase";
workingDirectory: string;
alwaysAllowReadOnly: boolean;
supabase?: {
url: string;
anonKey: string;
serviceKey?: string;
bucketName: string;
projectPath?: string;
};
database?: {
host: string;
port: number;
database: string;
username: string;
password: string;
ssl?: boolean | object;
maxConnections?: number;
idleTimeoutMillis?: number;
connectionTimeoutMillis?: number;
permissions: {
allowRead: boolean;
allowWrite: boolean;
allowDelete: boolean;
allowSchemaChanges: boolean;
allowRLSManagement: boolean;
restrictedTables: string[];
allowedTables: string[];
};
};
customInstructions?: string;
temperature?: number;
maxTokens?: number;
useCache?: boolean;
retry?: {
enabled: boolean;
maxAttempts: number;
waitTimeMs: number;
exponentialBackoff: boolean;
retryOnErrors: string[];
};
}
export declare class ClineConfigManager {
private configPath;
private config;
constructor(configDir?: string);
private loadConfig;
private getDefaultConfig;
getConfig(): ClineConfig;
updateConfig(updates: Partial<ClineConfig>): void;
setApiKey(apiKey: string): void;
setWorkingDirectory(directory: string): void;
enableTool(toolName: string): void;
disableTool(toolName: string): void;
private saveConfig;
getConfigPath(): string;
validateConfig(): {
valid: boolean;
errors: string[];
};
static fromEnvironment(): ClineConfigManager;
}
//# sourceMappingURL=cline-config.d.ts.map