diff --git a/packages/console/app/src/routes/temp.tsx b/packages/console/app/src/routes/temp.tsx
index 379f79f7..59987e4d 100644
--- a/packages/console/app/src/routes/temp.tsx
+++ b/packages/console/app/src/routes/temp.tsx
@@ -79,17 +79,19 @@ export default function Home() {
LSP enabled Automatically loads the right LSPs for the LLM
- opencode zen A curated list of models provided by opencode{" "}
- New
+ opencode zen A curated list of models {" "}
+ provided by opencode New
Multi-session Start multiple agents in parallel on the same project
- Shareable links Share a link to any sessions for reference or to debug
+ Shareable links Share a link to any sessions for reference or to
+ debug
- Claude Pro Log in with Anthropic to use your Claude Pro or Max account
+ Claude Pro Log in with Anthropic to use your Claude Pro or Max
+ account
Use any model Supports 75+ LLM providers through{" "}
@@ -121,7 +123,7 @@ export default function Home() {
homebrew
- brew install sst/tap/opencode
+ brew install opencode
diff --git a/packages/opencode/src/installation/index.ts b/packages/opencode/src/installation/index.ts
index f2df5b40..323810e3 100644
--- a/packages/opencode/src/installation/index.ts
+++ b/packages/opencode/src/installation/index.ts
@@ -73,7 +73,7 @@ export namespace Installation {
},
{
name: "brew" as const,
- command: () => $`brew list --formula opencode-ai`.throws(false).text(),
+ command: () => $`brew list --formula opencode`.throws(false).text(),
},
]
@@ -87,7 +87,7 @@ export namespace Installation {
for (const check of checks) {
const output = await check.command()
- if (output.includes("opencode-ai")) {
+ if (output.includes(check.name === "brew" ? "opencode" : "opencode-ai")) {
return check.name
}
}
@@ -102,28 +102,42 @@ export namespace Installation {
}),
)
+ async function getBrewFormula() {
+ const tapFormula = await $`brew list --formula sst/tap/opencode`.throws(false).text()
+ if (tapFormula.includes("opencode")) return "sst/tap/opencode"
+ const coreFormula = await $`brew list --formula opencode`.throws(false).text()
+ if (coreFormula.includes("opencode")) return "opencode"
+ return "opencode"
+ }
+
export async function upgrade(method: Method, target: string) {
- const cmd = (() => {
- switch (method) {
- case "curl":
- return $`curl -fsSL https://opencode.ai/install | bash`.env({
- ...process.env,
- VERSION: target,
- })
- case "npm":
- return $`npm install -g opencode-ai@${target}`
- case "pnpm":
- return $`pnpm install -g opencode-ai@${target}`
- case "bun":
- return $`bun install -g opencode-ai@${target}`
- case "brew":
- return $`brew install sst/tap/opencode`.env({
- HOMEBREW_NO_AUTO_UPDATE: "1",
- })
- default:
- throw new Error(`Unknown method: ${method}`)
+ let cmd
+ switch (method) {
+ case "curl":
+ cmd = $`curl -fsSL https://opencode.ai/install | bash`.env({
+ ...process.env,
+ VERSION: target,
+ })
+ break
+ case "npm":
+ cmd = $`npm install -g opencode-ai@${target}`
+ break
+ case "pnpm":
+ cmd = $`pnpm install -g opencode-ai@${target}`
+ break
+ case "bun":
+ cmd = $`bun install -g opencode-ai@${target}`
+ break
+ case "brew": {
+ const formula = await getBrewFormula()
+ cmd = $`brew install ${formula}`.env({
+ HOMEBREW_NO_AUTO_UPDATE: "1",
+ })
+ break
}
- })()
+ default:
+ throw new Error(`Unknown method: ${method}`)
+ }
const result = await cmd.quiet().throws(false)
log.info("upgraded", {
method,
diff --git a/packages/web/src/components/Lander.astro b/packages/web/src/components/Lander.astro
index ef032e49..421b2a5c 100644
--- a/packages/web/src/components/Lander.astro
+++ b/packages/web/src/components/Lander.astro
@@ -109,9 +109,9 @@ if (image) {
Homebrew
-
+
- brew install sst/tap/opencode
+ brew install opencode
diff --git a/packages/web/src/content/docs/index.mdx b/packages/web/src/content/docs/index.mdx
index dab62d8b..f6d2b312 100644
--- a/packages/web/src/content/docs/index.mdx
+++ b/packages/web/src/content/docs/index.mdx
@@ -67,7 +67,7 @@ You can also install it with the following commands:
- **Using Homebrew on macOS and Linux**
```bash
- brew install sst/tap/opencode
+ brew install opencode
```
- **Using Paru on Arch Linux**