justsisyphus ffe82c1dbd feat(cli): redesign model fallback with native cross-fallback and OpenAI separation
- Add OpenAI/ChatGPT as separate subscription option (--openai flag)
- Implement native tier cross-fallback (Claude → OpenAI → Gemini)
- Change fallback order: Native → OpenCode Zen → GitHub Copilot → Z.ai
- Add explore agent special logic: max20 → haiku, else → grok-code
- Add critical warning when Claude is not configured
- Add tests for ChatGPT-only and explore agent cases
2026-01-21 11:19:00 +09:00

41 lines
826 B
TypeScript

export type ClaudeSubscription = "no" | "yes" | "max20"
export type BooleanArg = "no" | "yes"
export interface InstallArgs {
tui: boolean
claude?: ClaudeSubscription
openai?: BooleanArg
gemini?: BooleanArg
copilot?: BooleanArg
opencodeZen?: BooleanArg
zaiCodingPlan?: BooleanArg
skipAuth?: boolean
}
export interface InstallConfig {
hasClaude: boolean
isMax20: boolean
hasOpenAI: boolean
hasGemini: boolean
hasCopilot: boolean
hasOpencodeZen: boolean
hasZaiCodingPlan: boolean
}
export interface ConfigMergeResult {
success: boolean
configPath: string
error?: string
}
export interface DetectedConfig {
isInstalled: boolean
hasClaude: boolean
isMax20: boolean
hasOpenAI: boolean
hasGemini: boolean
hasCopilot: boolean
hasOpencodeZen: boolean
hasZaiCodingPlan: boolean
}