From d7500b25b8eb84051e13bd930e234445352cc9a4 Mon Sep 17 00:00:00 2001 From: Frank Date: Wed, 25 Feb 2026 01:25:08 -0500 Subject: [PATCH] zen: go --- packages/console/app/src/i18n/ar.ts | 2 ++ packages/console/app/src/i18n/br.ts | 2 ++ packages/console/app/src/i18n/da.ts | 2 ++ packages/console/app/src/i18n/de.ts | 2 ++ packages/console/app/src/i18n/en.ts | 2 ++ packages/console/app/src/i18n/es.ts | 2 ++ packages/console/app/src/i18n/fr.ts | 2 ++ packages/console/app/src/i18n/it.ts | 2 ++ packages/console/app/src/i18n/ja.ts | 2 ++ packages/console/app/src/i18n/ko.ts | 2 ++ packages/console/app/src/i18n/no.ts | 2 ++ packages/console/app/src/i18n/pl.ts | 2 ++ packages/console/app/src/i18n/ru.ts | 2 ++ packages/console/app/src/i18n/th.ts | 2 ++ packages/console/app/src/i18n/tr.ts | 2 ++ packages/console/app/src/i18n/zh.ts | 2 ++ packages/console/app/src/i18n/zht.ts | 2 ++ .../[id]/billing/lite-section.module.css | 16 +++++++++ .../workspace/[id]/billing/lite-section.tsx | 9 +++++ packages/web/src/content/docs/providers.mdx | 34 ++++++++++++++++++- 20 files changed, 92 insertions(+), 1 deletion(-) diff --git a/packages/console/app/src/i18n/ar.ts b/packages/console/app/src/i18n/ar.ts index d2cb444e4..cda1e2a36 100644 --- a/packages/console/app/src/i18n/ar.ts +++ b/packages/console/app/src/i18n/ar.ts @@ -499,6 +499,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "الاستخدام الشهري", "workspace.lite.subscription.resetsIn": "إعادة تعيين في", "workspace.lite.subscription.useBalance": "استخدم رصيدك المتوفر بعد الوصول إلى حدود الاستخدام", + "workspace.lite.subscription.selectProvider": + 'اختر "OpenCode Go" كمزود في إعدادات opencode الخاصة بك لاستخدام نماذج Go.', "workspace.lite.other.title": "اشتراك Go", "workspace.lite.other.message": "عضو آخر في مساحة العمل هذه مشترك بالفعل في OpenCode Go. يمكن لعضو واحد فقط لكل مساحة عمل الاشتراك.", diff --git a/packages/console/app/src/i18n/br.ts b/packages/console/app/src/i18n/br.ts index 5c8c980ca..ddeb0c10a 100644 --- a/packages/console/app/src/i18n/br.ts +++ b/packages/console/app/src/i18n/br.ts @@ -505,6 +505,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "Uso Mensal", "workspace.lite.subscription.resetsIn": "Reinicia em", "workspace.lite.subscription.useBalance": "Use seu saldo disponível após atingir os limites de uso", + "workspace.lite.subscription.selectProvider": + 'Selecione "OpenCode Go" como provedor na sua configuração do opencode para usar os modelos Go.', "workspace.lite.other.title": "Assinatura Go", "workspace.lite.other.message": "Outro membro neste workspace já assina o OpenCode Go. Apenas um membro por workspace pode assinar.", diff --git a/packages/console/app/src/i18n/da.ts b/packages/console/app/src/i18n/da.ts index 19dd2f7ca..18b2b89ff 100644 --- a/packages/console/app/src/i18n/da.ts +++ b/packages/console/app/src/i18n/da.ts @@ -503,6 +503,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "Månedligt forbrug", "workspace.lite.subscription.resetsIn": "Nulstiller i", "workspace.lite.subscription.useBalance": "Brug din tilgængelige saldo, når du har nået forbrugsgrænserne", + "workspace.lite.subscription.selectProvider": + 'Vælg "OpenCode Go" som udbyder i din opencode-konfiguration for at bruge Go-modeller.', "workspace.lite.other.title": "Go-abonnement", "workspace.lite.other.message": "Et andet medlem i dette workspace abonnerer allerede på OpenCode Go. Kun ét medlem pr. workspace kan abonnere.", diff --git a/packages/console/app/src/i18n/de.ts b/packages/console/app/src/i18n/de.ts index 153758946..5bee74aed 100644 --- a/packages/console/app/src/i18n/de.ts +++ b/packages/console/app/src/i18n/de.ts @@ -505,6 +505,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "Monatliche Nutzung", "workspace.lite.subscription.resetsIn": "Setzt zurück in", "workspace.lite.subscription.useBalance": "Nutze dein verfügbares Guthaben, nachdem die Nutzungslimits erreicht sind", + "workspace.lite.subscription.selectProvider": + 'Wähle "OpenCode Go" als Anbieter in deiner opencode-Konfiguration, um Go-Modelle zu verwenden.', "workspace.lite.other.title": "Go-Abonnement", "workspace.lite.other.message": "Ein anderes Mitglied in diesem Workspace hat OpenCode Go bereits abonniert. Nur ein Mitglied pro Workspace kann abonnieren.", diff --git a/packages/console/app/src/i18n/en.ts b/packages/console/app/src/i18n/en.ts index 227f810bd..d6db2e7f8 100644 --- a/packages/console/app/src/i18n/en.ts +++ b/packages/console/app/src/i18n/en.ts @@ -497,6 +497,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "Monthly Usage", "workspace.lite.subscription.resetsIn": "Resets in", "workspace.lite.subscription.useBalance": "Use your available balance after reaching the usage limits", + "workspace.lite.subscription.selectProvider": + 'Select "OpenCode Go" as the provider in your opencode configuration to use Go models.', "workspace.lite.other.title": "Go Subscription", "workspace.lite.other.message": "Another member in this workspace is already subscribed to OpenCode Go. Only one member per workspace can subscribe.", diff --git a/packages/console/app/src/i18n/es.ts b/packages/console/app/src/i18n/es.ts index fa0b3bfbc..c4676fe6e 100644 --- a/packages/console/app/src/i18n/es.ts +++ b/packages/console/app/src/i18n/es.ts @@ -506,6 +506,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "Uso Mensual", "workspace.lite.subscription.resetsIn": "Se reinicia en", "workspace.lite.subscription.useBalance": "Usa tu saldo disponible después de alcanzar los límites de uso", + "workspace.lite.subscription.selectProvider": + 'Selecciona "OpenCode Go" como proveedor en tu configuración de opencode para usar los modelos Go.', "workspace.lite.other.title": "Suscripción Go", "workspace.lite.other.message": "Otro miembro de este espacio de trabajo ya está suscrito a OpenCode Go. Solo un miembro por espacio de trabajo puede suscribirse.", diff --git a/packages/console/app/src/i18n/fr.ts b/packages/console/app/src/i18n/fr.ts index 34ecdff99..7b2306bc2 100644 --- a/packages/console/app/src/i18n/fr.ts +++ b/packages/console/app/src/i18n/fr.ts @@ -515,6 +515,8 @@ export const dict = { "workspace.lite.subscription.resetsIn": "Réinitialisation dans", "workspace.lite.subscription.useBalance": "Utilisez votre solde disponible après avoir atteint les limites d'utilisation", + "workspace.lite.subscription.selectProvider": + 'Sélectionnez "OpenCode Go" comme fournisseur dans votre configuration opencode pour utiliser les modèles Go.', "workspace.lite.other.title": "Abonnement Go", "workspace.lite.other.message": "Un autre membre de cet espace de travail est déjà abonné à OpenCode Go. Un seul membre par espace de travail peut s'abonner.", diff --git a/packages/console/app/src/i18n/it.ts b/packages/console/app/src/i18n/it.ts index 559b121f1..81dd29305 100644 --- a/packages/console/app/src/i18n/it.ts +++ b/packages/console/app/src/i18n/it.ts @@ -505,6 +505,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "Utilizzo Mensile", "workspace.lite.subscription.resetsIn": "Si resetta tra", "workspace.lite.subscription.useBalance": "Usa il tuo saldo disponibile dopo aver raggiunto i limiti di utilizzo", + "workspace.lite.subscription.selectProvider": + 'Seleziona "OpenCode Go" come provider nella tua configurazione opencode per utilizzare i modelli Go.', "workspace.lite.other.title": "Abbonamento Go", "workspace.lite.other.message": "Un altro membro in questo workspace è già abbonato a OpenCode Go. Solo un membro per workspace può abbonarsi.", diff --git a/packages/console/app/src/i18n/ja.ts b/packages/console/app/src/i18n/ja.ts index d2153486d..afcf6aeb9 100644 --- a/packages/console/app/src/i18n/ja.ts +++ b/packages/console/app/src/i18n/ja.ts @@ -503,6 +503,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "月間利用量", "workspace.lite.subscription.resetsIn": "リセットまで", "workspace.lite.subscription.useBalance": "利用限度額に達したら利用可能な残高を使用する", + "workspace.lite.subscription.selectProvider": + "Go モデルを使用するには、opencode の設定で「OpenCode Go」をプロバイダーとして選択してください。", "workspace.lite.other.title": "Goサブスクリプション", "workspace.lite.other.message": "このワークスペースの別のメンバーが既に OpenCode Go を購読しています。ワークスペースにつき1人のメンバーのみが購読できます。", diff --git a/packages/console/app/src/i18n/ko.ts b/packages/console/app/src/i18n/ko.ts index bbed4c515..b2375c3f7 100644 --- a/packages/console/app/src/i18n/ko.ts +++ b/packages/console/app/src/i18n/ko.ts @@ -498,6 +498,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "월간 사용량", "workspace.lite.subscription.resetsIn": "초기화까지 남은 시간:", "workspace.lite.subscription.useBalance": "사용 한도 도달 후에는 보유 잔액 사용", + "workspace.lite.subscription.selectProvider": + 'Go 모델을 사용하려면 opencode 설정에서 "OpenCode Go"를 공급자로 선택하세요.', "workspace.lite.other.title": "Go 구독", "workspace.lite.other.message": "이 워크스페이스의 다른 멤버가 이미 OpenCode Go를 구독 중입니다. 워크스페이스당 한 명의 멤버만 구독할 수 있습니다.", diff --git a/packages/console/app/src/i18n/no.ts b/packages/console/app/src/i18n/no.ts index 711b95756..41bacfb05 100644 --- a/packages/console/app/src/i18n/no.ts +++ b/packages/console/app/src/i18n/no.ts @@ -503,6 +503,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "Månedlig bruk", "workspace.lite.subscription.resetsIn": "Nullstilles om", "workspace.lite.subscription.useBalance": "Bruk din tilgjengelige saldo etter å ha nådd bruksgrensene", + "workspace.lite.subscription.selectProvider": + 'Velg "OpenCode Go" som leverandør i opencode-konfigurasjonen din for å bruke Go-modeller.', "workspace.lite.other.title": "Go-abonnement", "workspace.lite.other.message": "Et annet medlem i dette arbeidsområdet abonnerer allerede på OpenCode Go. Kun ett medlem per arbeidsområde kan abonnere.", diff --git a/packages/console/app/src/i18n/pl.ts b/packages/console/app/src/i18n/pl.ts index a6788860d..dc3c59196 100644 --- a/packages/console/app/src/i18n/pl.ts +++ b/packages/console/app/src/i18n/pl.ts @@ -504,6 +504,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "Użycie miesięczne", "workspace.lite.subscription.resetsIn": "Resetuje się za", "workspace.lite.subscription.useBalance": "Użyj dostępnego salda po osiągnięciu limitów użycia", + "workspace.lite.subscription.selectProvider": + 'Wybierz "OpenCode Go" jako dostawcę w konfiguracji opencode, aby używać modeli Go.', "workspace.lite.other.title": "Subskrypcja Go", "workspace.lite.other.message": "Inny członek tego obszaru roboczego już subskrybuje OpenCode Go. Tylko jeden członek na obszar roboczy może subskrybować.", diff --git a/packages/console/app/src/i18n/ru.ts b/packages/console/app/src/i18n/ru.ts index 407ffd1d1..21b89dc94 100644 --- a/packages/console/app/src/i18n/ru.ts +++ b/packages/console/app/src/i18n/ru.ts @@ -509,6 +509,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "Ежемесячное использование", "workspace.lite.subscription.resetsIn": "Сброс через", "workspace.lite.subscription.useBalance": "Использовать доступный баланс после достижения лимитов", + "workspace.lite.subscription.selectProvider": + 'Выберите "OpenCode Go" в качестве провайдера в настройках opencode для использования моделей Go.', "workspace.lite.other.title": "Подписка Go", "workspace.lite.other.message": "Другой участник в этом рабочем пространстве уже подписан на OpenCode Go. Только один участник в рабочем пространстве может оформить подписку.", diff --git a/packages/console/app/src/i18n/th.ts b/packages/console/app/src/i18n/th.ts index 6404f7310..064648354 100644 --- a/packages/console/app/src/i18n/th.ts +++ b/packages/console/app/src/i18n/th.ts @@ -502,6 +502,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "การใช้งานรายเดือน", "workspace.lite.subscription.resetsIn": "รีเซ็ตใน", "workspace.lite.subscription.useBalance": "ใช้ยอดคงเหลือของคุณหลังจากถึงขีดจำกัดการใช้งาน", + "workspace.lite.subscription.selectProvider": + 'เลือก "OpenCode Go" เป็นผู้ให้บริการในการตั้งค่า opencode ของคุณเพื่อใช้โมเดล Go', "workspace.lite.other.title": "การสมัครสมาชิก Go", "workspace.lite.other.message": "สมาชิกคนอื่นใน Workspace นี้ได้สมัคร OpenCode Go แล้ว สามารถสมัครได้เพียงหนึ่งคนต่อหนึ่ง Workspace เท่านั้น", diff --git a/packages/console/app/src/i18n/tr.ts b/packages/console/app/src/i18n/tr.ts index fd87da767..d94dd15d0 100644 --- a/packages/console/app/src/i18n/tr.ts +++ b/packages/console/app/src/i18n/tr.ts @@ -505,6 +505,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "Aylık Kullanım", "workspace.lite.subscription.resetsIn": "Sıfırlama süresi", "workspace.lite.subscription.useBalance": "Kullanım limitlerine ulaştıktan sonra mevcut bakiyenizi kullanın", + "workspace.lite.subscription.selectProvider": + 'Go modellerini kullanmak için opencode yapılandırmanızda "OpenCode Go"\'yu sağlayıcı olarak seçin.', "workspace.lite.other.title": "Go Aboneliği", "workspace.lite.other.message": "Bu çalışma alanındaki başka bir üye zaten OpenCode Go abonesi. Çalışma alanı başına yalnızca bir üye abone olabilir.", diff --git a/packages/console/app/src/i18n/zh.ts b/packages/console/app/src/i18n/zh.ts index 38a5bf6a0..bf21073ce 100644 --- a/packages/console/app/src/i18n/zh.ts +++ b/packages/console/app/src/i18n/zh.ts @@ -489,6 +489,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "每月用量", "workspace.lite.subscription.resetsIn": "重置于", "workspace.lite.subscription.useBalance": "达到使用限额后使用您的可用余额", + "workspace.lite.subscription.selectProvider": + "在你的 opencode 配置中选择「OpenCode Go」作为提供商,即可使用 Go 模型。", "workspace.lite.other.title": "Go 订阅", "workspace.lite.other.message": "此工作区中的另一位成员已经订阅了 OpenCode Go。每个工作区只有一名成员可以订阅。", "workspace.lite.promo.title": "OpenCode Go", diff --git a/packages/console/app/src/i18n/zht.ts b/packages/console/app/src/i18n/zht.ts index cdcbdf709..8ac69596c 100644 --- a/packages/console/app/src/i18n/zht.ts +++ b/packages/console/app/src/i18n/zht.ts @@ -489,6 +489,8 @@ export const dict = { "workspace.lite.subscription.monthlyUsage": "每月使用量", "workspace.lite.subscription.resetsIn": "重置時間:", "workspace.lite.subscription.useBalance": "達到使用限制後使用您的可用餘額", + "workspace.lite.subscription.selectProvider": + "在您的 opencode 設定中選擇「OpenCode Go」作為提供商,即可使用 Go 模型。", "workspace.lite.other.title": "Go 訂閱", "workspace.lite.other.message": "此工作區中的另一位成員已訂閱 OpenCode Go。每個工作區只能有一位成員訂閱。", "workspace.lite.promo.title": "OpenCode Go", diff --git a/packages/console/app/src/routes/workspace/[id]/billing/lite-section.module.css b/packages/console/app/src/routes/workspace/[id]/billing/lite-section.module.css index 077ac40e0..76d9bcfb0 100644 --- a/packages/console/app/src/routes/workspace/[id]/billing/lite-section.module.css +++ b/packages/console/app/src/routes/workspace/[id]/billing/lite-section.module.css @@ -140,6 +140,22 @@ } } + [data-slot="beta-notice"] { + padding: var(--space-3) var(--space-4); + border: 1px solid var(--color-border); + border-radius: var(--border-radius-sm); + background-color: var(--color-bg-surface); + font-size: var(--font-size-sm); + color: var(--color-text-secondary); + line-height: 1.5; + margin-top: var(--space-3); + + a { + color: var(--color-accent); + text-decoration: none; + } + } + [data-slot="other-message"] { font-size: var(--font-size-sm); color: var(--color-text-muted); diff --git a/packages/console/app/src/routes/workspace/[id]/billing/lite-section.tsx b/packages/console/app/src/routes/workspace/[id]/billing/lite-section.tsx index 568a8710f..395d008e1 100644 --- a/packages/console/app/src/routes/workspace/[id]/billing/lite-section.tsx +++ b/packages/console/app/src/routes/workspace/[id]/billing/lite-section.tsx @@ -11,6 +11,7 @@ import { withActor } from "~/context/auth.withActor" import { queryBillingInfo } from "../../common" import styles from "./lite-section.module.css" import { useI18n } from "~/context/i18n" +import { useLanguage } from "~/context/language" const queryLiteSubscription = query(async (workspaceID: string) => { "use server" @@ -135,6 +136,7 @@ const setLiteUseBalance = action(async (form: FormData) => { export function LiteSection() { const params = useParams() const i18n = useI18n() + const language = useLanguage() const lite = createAsync(() => queryLiteSubscription(params.id!)) const sessionAction = useAction(createSessionUrl) const sessionSubmission = useSubmission(createSessionUrl) @@ -181,6 +183,13 @@ export function LiteSection() { +
+ {i18n.t("workspace.lite.subscription.selectProvider")}{" "} + + {i18n.t("common.learnMore")} + + . +
diff --git a/packages/web/src/content/docs/providers.mdx b/packages/web/src/content/docs/providers.mdx index db3bfeaee..34e362649 100644 --- a/packages/web/src/content/docs/providers.mdx +++ b/packages/web/src/content/docs/providers.mdx @@ -57,7 +57,39 @@ tested and verified to work well with OpenCode. [Learn more](/docs/zen). If you are new, we recommend starting with OpenCode Zen. ::: -1. Run the `/connect` command in the TUI, select opencode, and head to [opencode.ai/auth](https://opencode.ai/auth). +1. Run the `/connect` command in the TUI, select `OpenCode Zen`, and head to [opencode.ai/auth](https://opencode.ai/zen). + + ```txt + /connect + ``` + +2. Sign in, add your billing details, and copy your API key. + +3. Paste your API key. + + ```txt + ┌ API key + │ + │ + └ enter + ``` + +4. Run `/models` in the TUI to see the list of models we recommend. + + ```txt + /models + ``` + +It works like any other provider in OpenCode and is completely optional to use. + +--- + +## OpenCode Go + +OpenCode Go is a low cost subscription plan that provides reliable access to popular open coding models provided by the OpenCode team that have been +tested and verified to work well with OpenCode. + +1. Run the `/connect` command in the TUI, select `OpenCode Go`, and head to [opencode.ai/auth](https://opencode.ai/zen). ```txt /connect