@kdump/code-cli-any-llm
Version:
> A unified gateway for the Gemini, opencode, crush, and Qwen Code AI CLIs
73 lines (72 loc) • 2.43 kB
TypeScript
import { OnModuleInit } from '@nestjs/common';
import { ConfigService } from '@nestjs/config';
import { OpenAIRequest } from '../../models/openai/openai-request.model';
import { OpenAIResponse, OpenAIStreamChunk } from '../../models/openai/openai-response.model';
import type { CodexReasoningConfig } from '../../config/global-config.interface';
interface ResolvedCodexConfig {
authMode: 'ApiKey' | 'ChatGPT';
apiKey?: string;
baseURL: string;
model: string;
timeout: number;
reasoning?: CodexReasoningConfig;
textVerbosity?: 'low' | 'medium' | 'high';
}
export declare class CodexProvider implements OnModuleInit {
private readonly configService;
private readonly logger;
private config?;
private enabled;
private initialized;
private chatgptAuth?;
private readonly conversationId;
constructor(configService: ConfigService);
onModuleInit(): void;
private refreshConfig;
isEnabled(): boolean;
getConfig(): ResolvedCodexConfig | undefined;
generateContent(request: OpenAIRequest): Promise<OpenAIResponse>;
generateContentStream(request: OpenAIRequest): AsyncIterable<OpenAIStreamChunk>;
listModels(): Promise<unknown>;
healthCheck(): Promise<{
status: 'healthy' | 'unhealthy';
details?: unknown;
}>;
private ensureEnabledConfig;
private buildCodexPayload;
private transformMessages;
private transformTools;
private transformToolChoice;
private normalizeContent;
private extractContentPart;
private createStreamContext;
private streamCodexChunks;
private computeRetryDelay;
private delay;
private describeError;
private isRetriableFetchError;
private extractErrorCode;
private extractErrorMessage;
private isRetriableErrnoCode;
private parseSSE;
private sanitizeForLog;
private logCodexResponseEvent;
private mapEventToChunk;
private handleReasoningEvent;
private getReasoningStateKey;
private getOrCreateReasoningState;
private extractReasoningText;
private buildReasoningChunk;
private createCompletionChunk;
private extractDeltaText;
private getOrCreateToolCall;
private transformError;
private resolveEndpoint;
private buildRequestHeaders;
private buildUserAgent;
private detectOsLabel;
private normalizeArch;
private detectTerminal;
private ensureInitialized;
}
export {};