feat(providers): register opencode executors and add UI metadata

- Register OpencodeExecutor for 'opencode-zen' and 'opencode-go' in executors map
- Add OpencodeExecutor export in index.ts
- Add UI metadata for both providers in APIKEY_PROVIDERS:
  - OpenCode Zen: https://opencode.ai/zen
  - OpenCode Go: https://opencode.ai/zen/go
- Both use 'opencode' icon with #6366f1 color
This commit is contained in:
kang-heewon
2026-03-22 10:30:08 +09:00
committed by diegosouzapw
parent 1aa1bc7a26
commit e08d661600
2 changed files with 20 additions and 0 deletions

View File

@@ -8,6 +8,7 @@ import { CursorExecutor } from "./cursor.ts";
import { DefaultExecutor } from "./default.ts";
import { PollinationsExecutor } from "./pollinations.ts";
import { CloudflareAIExecutor } from "./cloudflare-ai.ts";
import { OpencodeExecutor } from "./opencode.ts";
const executors = {
antigravity: new AntigravityExecutor(),
@@ -22,6 +23,8 @@ const executors = {
pol: new PollinationsExecutor(), // Alias
"cloudflare-ai": new CloudflareAIExecutor(),
cf: new CloudflareAIExecutor(), // Alias
"opencode-zen": new OpencodeExecutor("opencode-zen"),
"opencode-go": new OpencodeExecutor("opencode-go"),
};
const defaultCache = new Map();
@@ -47,3 +50,4 @@ export { CursorExecutor } from "./cursor.ts";
export { DefaultExecutor } from "./default.ts";
export { PollinationsExecutor } from "./pollinations.ts";
export { CloudflareAIExecutor } from "./cloudflare-ai.ts";
export { OpencodeExecutor } from "./opencode.ts";

View File

@@ -496,6 +496,22 @@ export const APIKEY_PROVIDERS = {
website: "https://tavily.com",
authHint: "API key from app.tavily.com (format: tvly-...)",
},
"opencode-zen": {
id: "opencode-zen",
alias: "opencode-zen",
name: "OpenCode Zen",
icon: "opencode",
color: "#6366f1",
website: "https://opencode.ai/zen",
},
"opencode-go": {
id: "opencode-go",
alias: "opencode-go",
name: "OpenCode Go",
icon: "opencode",
color: "#6366f1",
website: "https://opencode.ai/zen/go",
},
alibaba: {
id: "alibaba",
alias: "ali",