feat(opencode-go): add provider type and availability detection

This commit is contained in:
YeonGyu-Kim
2026-03-12 17:30:53 +09:00
parent 2bbbdc4ca9
commit 504b68f2ac
3 changed files with 10 additions and 4 deletions
+1
View File
@@ -8,6 +8,7 @@ export interface ProviderAvailability {
copilot: boolean copilot: boolean
zai: boolean zai: boolean
kimiForCoding: boolean kimiForCoding: boolean
opencodeGo: boolean
isMaxPlan: boolean isMaxPlan: boolean
} }
+2
View File
@@ -12,6 +12,7 @@ export function toProviderAvailability(config: InstallConfig): ProviderAvailabil
copilot: config.hasCopilot, copilot: config.hasCopilot,
zai: config.hasZaiCodingPlan, zai: config.hasZaiCodingPlan,
kimiForCoding: config.hasKimiForCoding, kimiForCoding: config.hasKimiForCoding,
opencodeGo: config.hasOpencodeGo,
isMaxPlan: config.isMax20, isMaxPlan: config.isMax20,
} }
} }
@@ -25,6 +26,7 @@ export function isProviderAvailable(provider: string, availability: ProviderAvai
opencode: availability.opencodeZen, opencode: availability.opencodeZen,
"zai-coding-plan": availability.zai, "zai-coding-plan": availability.zai,
"kimi-for-coding": availability.kimiForCoding, "kimi-for-coding": availability.kimiForCoding,
"opencode-go": availability.opencodeGo,
} }
return mapping[provider] ?? false return mapping[provider] ?? false
} }
+3
View File
@@ -10,6 +10,7 @@ export interface InstallArgs {
opencodeZen?: BooleanArg opencodeZen?: BooleanArg
zaiCodingPlan?: BooleanArg zaiCodingPlan?: BooleanArg
kimiForCoding?: BooleanArg kimiForCoding?: BooleanArg
opencodeGo?: BooleanArg
skipAuth?: boolean skipAuth?: boolean
} }
@@ -22,6 +23,7 @@ export interface InstallConfig {
hasOpencodeZen: boolean hasOpencodeZen: boolean
hasZaiCodingPlan: boolean hasZaiCodingPlan: boolean
hasKimiForCoding: boolean hasKimiForCoding: boolean
hasOpencodeGo: boolean
} }
export interface ConfigMergeResult { export interface ConfigMergeResult {
@@ -40,4 +42,5 @@ export interface DetectedConfig {
hasOpencodeZen: boolean hasOpencodeZen: boolean
hasZaiCodingPlan: boolean hasZaiCodingPlan: boolean
hasKimiForCoding: boolean hasKimiForCoding: boolean
hasOpencodeGo: boolean
} }