feat(console): connect named go subscribers

This commit is contained in:
vprdev 2026-08-03 11:56:34 -04:00
commit 86e4631993
28 changed files with 367 additions and 4194 deletions

View file

@ -265,7 +265,8 @@ export const dict = {
"go.cta.text": "Subscribe to Go",
"go.cta.price": "$10/month",
"go.cta.promo": "$5 first month",
"go.pricing.body": "Use with any agent. $5 first month, then $10/month. Top up credit if needed. Cancel any time.",
"go.pricing.body":
"For a named OpenCode subscriber. $5 first month, then $10/month. Service accounts are not eligible. Cancel any time.",
"go.graph.free": "Free",
"go.graph.freePill": "Big Pickle and free models",
"go.graph.go": "Go",
@ -304,15 +305,15 @@ export const dict = {
"go.problem.item4":
"Includes Grok 4.5, GLM-5.2, GLM-5.1, Kimi K3, Kimi K2.7 Code, Kimi K2.6, MiMo-V2.5-Pro, MiMo-V2.5, Qwen3.7 Max, Qwen3.7 Plus, Qwen3.6 Plus, MiniMax M2.7, MiniMax M3, DeepSeek V4 Pro, DeepSeek V4 Flash, and Hy3",
"go.how.title": "How Go works",
"go.how.body": "Go starts at $5 for your first month, then $10/month. You can use it with OpenCode or any agent.",
"go.how.step1.title": "Create an account",
"go.how.step1.beforeLink": "follow the",
"go.how.step1.link": "setup instructions",
"go.how.step2.title": "Subscribe to Go",
"go.how.step2.link": "$5 first month",
"go.how.step2.afterLink": "then $10/month with generous limits",
"go.how.body": "Go is available to a named subscriber using OpenCode. No API key needs to be copied.",
"go.how.step1.title": "Subscribe to Go",
"go.how.step1.beforeLink": "in",
"go.how.step1.link": "OpenCode Console",
"go.how.step2.title": "Connect OpenCode",
"go.how.step2.link": "run opencode console login",
"go.how.step2.afterLink": "and authorize the device in your browser",
"go.how.step3.title": "Start coding",
"go.how.step3.body": "with reliable access to open-source models",
"go.how.step3.body": "with the opencode provider",
"go.privacy.title": "Your privacy is important to us",
"go.privacy.body":
"The plan is designed primarily for international users, with models hosted in the US, EU, and Singapore for stable global access.",
@ -346,8 +347,9 @@ export const dict = {
"go.faq.a6": "If you need more usage, you can top up credit in your account.",
"go.faq.q7": "Can I cancel?",
"go.faq.a7": "Yes, you can cancel any time.",
"go.faq.q8": "Can I use Go with other coding agents?",
"go.faq.a8": "Yes, you can use Go with any agent. Follow the setup instructions in your preferred coding agent.",
"go.faq.q8": "Who can use Go?",
"go.faq.a8":
"Go is available to the named subscriber through OpenCode. Other coding agents and service accounts are not eligible.",
"go.faq.q9": "What is the difference between free models and Go?",
"go.faq.a9":

View file

@ -23,23 +23,42 @@ export type Dict = Record<Key, string>
const base = en satisfies Dict
const goFallback = {
"go.pricing.body": base["go.pricing.body"],
"go.how.body": base["go.how.body"],
"go.how.step1.title": base["go.how.step1.title"],
"go.how.step1.beforeLink": base["go.how.step1.beforeLink"],
"go.how.step1.link": base["go.how.step1.link"],
"go.how.step2.title": base["go.how.step2.title"],
"go.how.step2.link": base["go.how.step2.link"],
"go.how.step2.afterLink": base["go.how.step2.afterLink"],
"go.how.step3.title": base["go.how.step3.title"],
"go.how.step3.body": base["go.how.step3.body"],
"go.faq.q8": base["go.faq.q8"],
"go.faq.a8": base["go.faq.a8"],
}
function withGoFallback(dict: Dict): Dict {
return { ...dict, ...goFallback }
}
export function i18n(locale: Locale): Dict {
if (locale === "en") return base
if (locale === "zh") return { ...base, ...zh }
if (locale === "zht") return { ...base, ...zht }
if (locale === "ko") return { ...base, ...ko }
if (locale === "de") return { ...base, ...de }
if (locale === "es") return { ...base, ...es }
if (locale === "fr") return { ...base, ...fr }
if (locale === "it") return { ...base, ...it }
if (locale === "da") return { ...base, ...da }
if (locale === "ja") return { ...base, ...ja }
if (locale === "pl") return { ...base, ...pl }
if (locale === "ru") return { ...base, ...ru }
if (locale === "uk") return { ...base, ...uk }
if (locale === "ar") return { ...base, ...ar }
if (locale === "no") return { ...base, ...no }
if (locale === "br") return { ...base, ...br }
if (locale === "th") return { ...base, ...th }
return { ...base, ...tr }
if (locale === "zh") return withGoFallback({ ...base, ...zh })
if (locale === "zht") return withGoFallback({ ...base, ...zht })
if (locale === "ko") return withGoFallback({ ...base, ...ko })
if (locale === "de") return withGoFallback({ ...base, ...de })
if (locale === "es") return withGoFallback({ ...base, ...es })
if (locale === "fr") return withGoFallback({ ...base, ...fr })
if (locale === "it") return withGoFallback({ ...base, ...it })
if (locale === "da") return withGoFallback({ ...base, ...da })
if (locale === "ja") return withGoFallback({ ...base, ...ja })
if (locale === "pl") return withGoFallback({ ...base, ...pl })
if (locale === "ru") return withGoFallback({ ...base, ...ru })
if (locale === "uk") return withGoFallback({ ...base, ...uk })
if (locale === "ar") return withGoFallback({ ...base, ...ar })
if (locale === "no") return withGoFallback({ ...base, ...no })
if (locale === "br") return withGoFallback({ ...base, ...br })
if (locale === "th") return withGoFallback({ ...base, ...th })
return withGoFallback({ ...base, ...tr })
}

View file

@ -372,7 +372,7 @@ export default function Home() {
<span>[1]</span>
<div>
<strong>{i18n.t("go.how.step1.title")}</strong> - {i18n.t("go.how.step1.beforeLink")}{" "}
<a href={language.route("/docs/go/#how-it-works")} title={i18n.t("go.how.step1.link")}>
<a href="/console/go" title={i18n.t("go.how.step1.link")}>
{i18n.t("go.how.step1.link")}
</a>
</div>
@ -381,8 +381,7 @@ export default function Home() {
<span>[2]</span>
<div>
<strong>{i18n.t("go.how.step2.title")}</strong> -{" "}
<a href={language.route("/docs/go/#pricing")}>{i18n.t("go.how.step2.link")}</a>{" "}
{i18n.t("go.how.step2.afterLink")}
<a href="/v2/docs/go">{i18n.t("go.how.step2.link")}</a> {i18n.t("go.how.step2.afterLink")}
</div>
</li>
<li>