diff --git a/README.ko.md b/README.ko.md index b15c728..4c73845 100644 --- a/README.ko.md +++ b/README.ko.md @@ -43,7 +43,7 @@ OpenCode 가 낭만이 사라진것같은 오늘날의 시대에, 당신에게 - 이 플러그인은 [OpenCode Zen](https://opencode.ai/docs/zen/), Google, OpenAI, Anthropic 의 모델을 사용합니다. - Anthropic 모델들을 사용하기 위해 [OpenCode 의 내장 Claude Code Max Plan 로그인 기능](https://opencode.ai/docs/providers/#anthropic)을 사용하세요. - OpenAI 모델 (ChatGPT Plus/Pro)을 사용하기 위해 [OpenCode-OpenAI-Codex-Auth 플러그인](https://github.com/numman-ali/opencode-openai-codex-auth)을 설치하세요. - - Google Gemini 모델을 위해 `oh-my-opencode/google-auth` 플러그인을 추가하세요 (**내장 Antigravity OAuth**). + - Google Gemini 모델을 위해 `oh-my-opencode.json`에서 `google_auth: true`를 활성화하세요 (**내장 Antigravity OAuth**). - 다른 프로바이더를 위해 [VibeProxy (macOS Only)](https://github.com/automazeio/vibeproxy) 또는 [CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)를 대안으로 사용할 수 있습니다. - **사실 밑의 내용은 읽지 않아도 됩니다. 그냥 설치하시면 됩니다. 모델 설정하고나면 추가로 공부하거나 알 필요가 없고, 설치하고 나면 그냥 더 좋아집니다.** - **이 문서도 그냥 Claude Code, OpenCode, Cursor에 붙여넣고, 설치하고, 사용자의 개입이 필요할 때 알려달라고 프롬프팅하세요. 그럼 그냥 깔립니다.** @@ -123,14 +123,11 @@ opencode auth login #### 4.2 Google Gemini (내장 Antigravity OAuth) -먼저 google-auth 플러그인을 추가: +먼저 `~/.config/opencode/oh-my-opencode.json` (또는 프로젝트 레벨의 `.opencode/oh-my-opencode.json`)에서 Google auth를 활성화: ```json { - "plugin": [ - "oh-my-opencode", - "oh-my-opencode/google-auth" - ] + "google_auth": true } ``` diff --git a/README.md b/README.md index 482db72..da8253f 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ Even if you don't, invest a little time. Boost your skills and productivity by m - This plugin utilizes models from [OpenCode Zen](https://opencode.ai/docs/zen/), Google, OpenAI, and Anthropic. - For Anthropic models, use [OpenCode's built-in Claude Code Max Plan login](https://opencode.ai/docs/providers/#anthropic). - For OpenAI models (ChatGPT Plus/Pro), install the [OpenCode-OpenAI-Codex-Auth plugin](https://github.com/numman-ali/opencode-openai-codex-auth). - - For Google Gemini models, add `oh-my-opencode/google-auth` plugin for **built-in Antigravity OAuth**. + - For Google Gemini models, enable `google_auth: true` in `oh-my-opencode.json` for **built-in Antigravity OAuth**. - For other providers, [VibeProxy (macOS Only)](https://github.com/automazeio/vibeproxy) or [CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI) remain available as alternatives. - **Truth be told, the rest is optional. Just install it. Once set up, no further learning is required. It simply evolves.** - **Paste this document into Claude Code, OpenCode, or Cursor, instruct it to install, and ask for assistance if needed. It just installs.** @@ -122,14 +122,11 @@ opencode auth login #### 4.2 Google Gemini (Built-in Antigravity OAuth) -First, add the google-auth plugin: +First, enable Google auth in `~/.config/opencode/oh-my-opencode.json` (or `.opencode/oh-my-opencode.json` for project-level): ```json { - "plugin": [ - "oh-my-opencode", - "oh-my-opencode/google-auth" - ] + "google_auth": true } ``` diff --git a/src/config/schema.ts b/src/config/schema.ts index 04bc9a0..7255741 100644 --- a/src/config/schema.ts +++ b/src/config/schema.ts @@ -64,6 +64,7 @@ export const OhMyOpenCodeConfigSchema = z.object({ disabled_agents: z.array(AgentNameSchema).optional(), agents: AgentOverridesSchema.optional(), claude_code: ClaudeCodeConfigSchema.optional(), + google_auth: z.boolean().optional(), }) export type OhMyOpenCodeConfig = z.infer diff --git a/src/index.ts b/src/index.ts index 97b0b4a..b41493c 100644 --- a/src/index.ts +++ b/src/index.ts @@ -16,6 +16,7 @@ import { createBackgroundNotificationHook, createAutoUpdateCheckerHook, } from "./hooks"; +import { createGoogleAntigravityAuthPlugin } from "./auth/antigravity"; import { loadUserCommands, loadProjectCommands, @@ -173,7 +174,13 @@ const OhMyOpenCodePlugin: Plugin = async (ctx) => { const callOmoAgent = createCallOmoAgent(ctx, backgroundManager); + const googleAuthHooks = pluginConfig.google_auth + ? await createGoogleAntigravityAuthPlugin(ctx) + : null; + return { + ...(googleAuthHooks ? { auth: googleAuthHooks.auth } : {}), + tool: { ...builtinTools, ...backgroundTools,