瀏覽代碼

fix(cli): auth login now asks for api key in handlePluginAuth (#21641)

Co-authored-by: Aiden Cline <[email protected]>
Goni Zahavy 1 周之前
父節點
當前提交
ae17b416b8
共有 1 個文件被更改,包括 7 次插入1 次删除
  1. 7 1
      packages/opencode/src/cli/cmd/providers.ts

+ 7 - 1
packages/opencode/src/cli/cmd/providers.ts

@@ -148,6 +148,12 @@ async function handlePluginAuth(plugin: { auth: PluginAuth }, provider: string,
   }
 
   if (method.type === "api") {
+    const key = await prompts.password({
+      message: "Enter your API key",
+      validate: (x) => (x && x.length > 0 ? undefined : "Required"),
+    })
+    if (prompts.isCancel(key)) throw new UI.CancelledError()
+
     if (method.authorize) {
       const result = await method.authorize(inputs)
       if (result.type === "failed") {
@@ -157,7 +163,7 @@ async function handlePluginAuth(plugin: { auth: PluginAuth }, provider: string,
         const saveProvider = result.provider ?? provider
         await Auth.set(saveProvider, {
           type: "api",
-          key: result.key,
+          key: result.key ?? key,
         })
         prompts.log.success("Login successful")
       }