diff --git a/src/commands/auth-choice-options.ts b/src/commands/auth-choice-options.ts index 6b49ff17b..4df8b6349 100644 --- a/src/commands/auth-choice-options.ts +++ b/src/commands/auth-choice-options.ts @@ -20,7 +20,8 @@ export type AuthChoiceGroupId = | "minimax" | "synthetic" | "venice" - | "qwen"; + | "qwen" + | "kiro"; export type AuthChoiceGroup = { value: AuthChoiceGroupId; @@ -113,6 +114,12 @@ const AUTH_CHOICE_GROUP_DEFS: { hint: "API key", choices: ["opencode-zen"], }, + { + value: "kiro", + label: "Kiro", + hint: "kiro-cli (AWS)", + choices: ["kiro-cli"], + }, ]; export function buildAuthChoiceOptions(params: { @@ -177,6 +184,11 @@ export function buildAuthChoiceOptions(params: { label: "OpenCode Zen (multi-model proxy)", hint: "Claude, GPT, Gemini via opencode.ai/zen", }); + options.push({ + value: "kiro-cli", + label: "Kiro CLI", + hint: "Uses installed kiro-cli (AWS)", + }); options.push({ value: "minimax-api", label: "MiniMax M2.1" }); options.push({ value: "minimax-api-lightning", diff --git a/src/commands/auth-choice.apply.kiro-cli.ts b/src/commands/auth-choice.apply.kiro-cli.ts new file mode 100644 index 000000000..2e72d681e --- /dev/null +++ b/src/commands/auth-choice.apply.kiro-cli.ts @@ -0,0 +1,14 @@ +import type { ApplyAuthChoiceParams, ApplyAuthChoiceResult } from "./auth-choice.apply.js"; +import { applyAuthChoicePluginProvider } from "./auth-choice.apply.plugin-provider.js"; + +export async function applyAuthChoiceKiroCli( + params: ApplyAuthChoiceParams, +): Promise { + return await applyAuthChoicePluginProvider(params, { + authChoice: "kiro-cli", + pluginId: "kiro-auth", + providerId: "kiro-cli", + methodId: "cli", + label: "Kiro CLI", + }); +} diff --git a/src/commands/auth-choice.apply.ts b/src/commands/auth-choice.apply.ts index 89ff3f380..a6d568613 100644 --- a/src/commands/auth-choice.apply.ts +++ b/src/commands/auth-choice.apply.ts @@ -7,6 +7,7 @@ import { applyAuthChoiceCopilotProxy } from "./auth-choice.apply.copilot-proxy.j import { applyAuthChoiceGitHubCopilot } from "./auth-choice.apply.github-copilot.js"; import { applyAuthChoiceGoogleAntigravity } from "./auth-choice.apply.google-antigravity.js"; import { applyAuthChoiceGoogleGeminiCli } from "./auth-choice.apply.google-gemini-cli.js"; +import { applyAuthChoiceKiroCli } from "./auth-choice.apply.kiro-cli.js"; import { applyAuthChoiceMiniMax } from "./auth-choice.apply.minimax.js"; import { applyAuthChoiceOAuth } from "./auth-choice.apply.oauth.js"; import { applyAuthChoiceOpenAI } from "./auth-choice.apply.openai.js"; @@ -44,6 +45,7 @@ export async function applyAuthChoice( applyAuthChoiceGitHubCopilot, applyAuthChoiceGoogleAntigravity, applyAuthChoiceGoogleGeminiCli, + applyAuthChoiceKiroCli, applyAuthChoiceCopilotProxy, applyAuthChoiceQwenPortal, ]; diff --git a/src/commands/onboard-types.ts b/src/commands/onboard-types.ts index aa1d9afe0..c79792826 100644 --- a/src/commands/onboard-types.ts +++ b/src/commands/onboard-types.ts @@ -18,6 +18,7 @@ export type AuthChoice = | "synthetic-api-key" | "venice-api-key" | "codex-cli" + | "kiro-cli" | "apiKey" | "gemini-api-key" | "google-antigravity"