I don't think fast gpu rendering terminals should be mandatory for this kind of thing, and if you should have an option that facilitates the need for one then might I suggest falling back to something sensible rather than stalling out for forever when the user doesn't render glyphs as fast as you want them to?
Many of the annoyances from V1 are gone. Skills and plugins reload automatically (finally). Tasks can be backgrounded (though I think this doesn't happen automatically yet). There's a built-in skill for editing the configuration (finally I can retire mine). The front-end got some love. Apparently they re-architected the loop around Effect. Sub-sessions can be communicated with better. Configuration is loaded from the folder the session is created in rather than where the server was started.
In general, this update largely takes OpenCode into the current age features-wise and is a good overhaul quality-wise. Just in time to stop my early switching away efforts, which would've been a pain because I know few other harnesses with such a strong server/client model.
Yeah, but only I can click to move a task to the background when it takes longer, which could and IMO should happen automatically. The model can’t always judge that. (I see how my comment wasn’t clear enough that I mean this)
In general, the preventable “model gets stuck” class of annoyances has not been fixed quite yet - there are also stil no timeouts for permission requests, at least by default.
Native apps connecting to the OpenCode server is a great way to run sessions on remote hosts!
I wish Claude Code would adopt the same model. The desktop app deploys a separate engine that restarts and clobbers long-running sessions upon reconnect (Remote Control is their recommended solution but requires a Claude.ai account).
I’ve been vibe coding a native macOS Claude Code app that spawns a server that wraps Claude Code on remote hosts, but the UX and features are always lagging behind.
Claude code agents have a protocol that's usable for the same purpose it just listen locally but it's usable i have my own claw-like that has options for claude, codex, and pi (my subscription, wife subscription, and i got a yearly sub on glm when it was cheap)
A well written TUI, esp with keyboard shortcuts is a power multiplier. One of the biggest bus companies in my country used real terminals well into 2000s, and continued to use the same TUI inside a terminal emulator then.
It was efficient, bug free and fast after that many years of polish and refinement, it became one of the defining pillars of the experience. Imagine doing something and that thing can be reproduced reliably by muscle memory. You can trust that system.
Trading consoles are basically TUIs which can be driven with their specialized keyboards at great speeds and reproducibility, as well.
I don't think that's the case. This is from anomalyco, the company who made sst.dev. Crush is from Charm. I think OpenCode may have originally been written in Go but nowadays their codebase is TypeScript.
Edit: I'm missing some context others have pointed out.
Based on this post, it sounds like a ton of great improvements.
I've only used OpenCode a bit, but I found it was sufficient for the workloads I was throwing at it. It wasn't quite enough to beat out Codex or Claude Code as my go-to choice, though. Perhaps I'll give this version a shot and see if they've gotten it over the hump.
OpenCode is a beast. Does it still try to take a disk snapshot of my working directory, even when it contains hundreds of millions of files? Does it still eat all of my memory? Does it still have a super-gigantic system prompt that wastes a solid percentage of my context window before I've even begun?
I switched to pi some months ago, and I have no complaints. It just does what it says, with no shenanigans. They updated the rendering approach recently so scrollback is nice and smooth now.
For me the distinguishing feature of OpenCode is the web ui/desktop app. I’m using OpenCode because it’s the only open-source agent-harness I’ve tried that runs outside of a TUI. I like terminals but not TUIs and especially not for prose-based interactions like prompting.
But that’s a shallow moat, and the rest of the features here are not particularly interesting to me. I don’t have a use for plugins or a model-server proxy (I can connect other tools directly to the model provider).
it feels like a clear improvement across the board but a heads up: i got bitten by upgrading - since all tool calls now go through the background process, the sandbox that i use to wrap the TUI process quietly became useless. took me a day or two to realize that web fetches, etc. which should have been blocked were succeeding.
The background task / subagent feature and the ability to specify a model when starting a subagent are so far my favorite improvements. Small things but make huge QoL difference in everyday development.
Interesting and I'll definitely give this a try, the client/server and plugin system do look very powerful.
However, I've been using OMP in combination with Tern (the terminal) lately and it's an incredibly smooth operation. It's hard to find a decent terminal on Windows (corporate device) but this is the best I've found so far.
Same OpenCode team who ignore bug reports, don't respond on their discord, don't have modern CI/CD test suites (often shipping regressions), don't have bots to triage bug reports or PRs, and have what might be the worst open model subscription service available today.
OpenCode users: switching to Pi takes about 5 minutes, and customizing it to work just like OpenCode takes another 30 minutes. Better design, better devs, better community.
The site took a minute to load in completely and when I scrolled to the bottom I couldn't read the SDK text, it was literally cut off, kinda resembling the current state of coding very accurately lmao
OC is all right -- it's my daily driver -- but it could be better. I'd like a harness to let me customize the GUI, not just add MCPs and plugins. For example, I'd like add buttons to merge a PR, and show indicators for CI. Claude Code does a lot of this out of the box. Give me UI building blocks (buttons, labels, etc.) and wire them with my own functions. Could Code Mode enable this?
The built-in browser is a most welcome feature.
PS(A): Opencode Go is a great deal and now has a $40 plan.
Somehow I manage to get issues noticed and PRs merged. They aggressively cull old issues but if they take notice things get done. I contributed just this week.
These guys stole money from me. It amounts to like 10 US or something, so not significant, but still...
Their models have pricing published in their docs, like any other LLM provider. I measured the tokens I consumed, did the math, and it was always off, in their favor. One model (GPT Luna) was about 2x as expensive as advertised.
I joined their Discord, which is apparently how you get support from them. I filed a bug and someone from their team replied, we verified the data, and he said that something was indeed off and that he'd escalate it. Then silence. After 2–3 weeks, I followed up and was now ignored.
As I said, the amount isn't material to me, but if they do this a million times, they could make some decent money out of it. No idea if it's on purpose, I'll leave that to the reader to speculate.
Overall, their complete lack of interest after acknowledging the "bug" left a really bad taste in my mouth, so I decided to leave.
Their installer (curl | sh) was taking so long yesterday for me.
It turns out it's incredibly slow... because of the progress bar rendering. This is insane. The installer took 6 minutes to reach 10%:
curl -fsSL https://opencode.ai/v2/install | bash
Managed to fix it by running this instead:
curl -fsSL https://opencode.ai/v2/install | bash 2>&1 | cat
Isn't that an issue with your terminal? Why is stdout so slow?
I don't think fast gpu rendering terminals should be mandatory for this kind of thing, and if you should have an option that facilitates the need for one then might I suggest falling back to something sensible rather than stalling out for forever when the user doesn't render glyphs as fast as you want them to?
either that or fail outright; dont waste my time.
They need DHH!
chuckling
It's good.
Many of the annoyances from V1 are gone. Skills and plugins reload automatically (finally). Tasks can be backgrounded (though I think this doesn't happen automatically yet). There's a built-in skill for editing the configuration (finally I can retire mine). The front-end got some love. Apparently they re-architected the loop around Effect. Sub-sessions can be communicated with better. Configuration is loaded from the folder the session is created in rather than where the server was started.
In general, this update largely takes OpenCode into the current age features-wise and is a good overhaul quality-wise. Just in time to stop my early switching away efforts, which would've been a pain because I know few other harnesses with such a strong server/client model.
Tasks can be backgrounded by the model you are using automatically. It is not just manual fyi
Yeah, but only I can click to move a task to the background when it takes longer, which could and IMO should happen automatically. The model can’t always judge that. (I see how my comment wasn’t clear enough that I mean this)
In general, the preventable “model gets stuck” class of annoyances has not been fixed quite yet - there are also stil no timeouts for permission requests, at least by default.
Native apps connecting to the OpenCode server is a great way to run sessions on remote hosts!
I wish Claude Code would adopt the same model. The desktop app deploys a separate engine that restarts and clobbers long-running sessions upon reconnect (Remote Control is their recommended solution but requires a Claude.ai account).
I’ve been vibe coding a native macOS Claude Code app that spawns a server that wraps Claude Code on remote hosts, but the UX and features are always lagging behind.
Claude code agents have a protocol that's usable for the same purpose it just listen locally but it's usable i have my own claw-like that has options for claude, codex, and pi (my subscription, wife subscription, and i got a yearly sub on glm when it was cheap)
Wait, but OpenCode got renamed to Crush and the original dev went on to that new project. Where did this come from? Is this a fork? Who is behind it?
Someone from Opencode went to Crush, but Opencode continued.
EDIT: as a rewrite, owning the name. but not code.
https://x.com/thdxr/status/1933561254481666466
TIL - there was business in TUIs that actually warranted “acquisitions”. Always considered developing them a hobby…
A well written TUI, esp with keyboard shortcuts is a power multiplier. One of the biggest bus companies in my country used real terminals well into 2000s, and continued to use the same TUI inside a terminal emulator then.
It was efficient, bug free and fast after that many years of polish and refinement, it became one of the defining pillars of the experience. Imagine doing something and that thing can be reproduced reliably by muscle memory. You can trust that system.
Trading consoles are basically TUIs which can be driven with their specialized keyboards at great speeds and reproducibility, as well.
Moreover, it's a UI which should be ADA-compliant and readily used by the blind and visually disabled
I don't think that's the case. This is from anomalyco, the company who made sst.dev. Crush is from Charm. I think OpenCode may have originally been written in Go but nowadays their codebase is TypeScript.
Edit: I'm missing some context others have pointed out.
With websites i went back to 90s styles. Hyper dense in information. Anything clickable is a link. A button is for Write actions.
Interactive element are distinct from text.
If webpage page is an interactive canvas , make the canvas the main thing ad text as support.
If you start mixing the two idk..
I really hope we don't get a slew of WebGL-intensive sites.
I can hardly scroll this page on my pixel 6.
I love opencode, but not this website. so difficult to use.
My notebook took up flight and launched itself through the window and died trying to render this site.
Based on this post, it sounds like a ton of great improvements.
I've only used OpenCode a bit, but I found it was sufficient for the workloads I was throwing at it. It wasn't quite enough to beat out Codex or Claude Code as my go-to choice, though. Perhaps I'll give this version a shot and see if they've gotten it over the hump.
out of curiosity, how or what do you use codex/claude code for that beats opencode?
Is this related to https://opencode.ai/?
Anomaly is the company behind OpenCode (https://github.com/anomalyco/opencode)
OpenCode is a beast. Does it still try to take a disk snapshot of my working directory, even when it contains hundreds of millions of files? Does it still eat all of my memory? Does it still have a super-gigantic system prompt that wastes a solid percentage of my context window before I've even begun?
I switched to pi some months ago, and I have no complaints. It just does what it says, with no shenanigans. They updated the rendering approach recently so scrollback is nice and smooth now.
For me the distinguishing feature of OpenCode is the web ui/desktop app. I’m using OpenCode because it’s the only open-source agent-harness I’ve tried that runs outside of a TUI. I like terminals but not TUIs and especially not for prose-based interactions like prompting.
But that’s a shallow moat, and the rest of the features here are not particularly interesting to me. I don’t have a use for plugins or a model-server proxy (I can connect other tools directly to the model provider).
hermes also has desktop app.
it feels like a clear improvement across the board but a heads up: i got bitten by upgrading - since all tool calls now go through the background process, the sandbox that i use to wrap the TUI process quietly became useless. took me a day or two to realize that web fetches, etc. which should have been blocked were succeeding.
I've been using OpenCode 2.0 indirectly via OpenChamber 2.0 and I've been very happy with it.
Once I got past the initial hurdle of having to upgrade my server and clients all at once, everything has been smooth sailing.
The background task / subagent feature and the ability to specify a model when starting a subagent are so far my favorite improvements. Small things but make huge QoL difference in everyday development.
Interesting and I'll definitely give this a try, the client/server and plugin system do look very powerful.
However, I've been using OMP in combination with Tern (the terminal) lately and it's an incredibly smooth operation. It's hard to find a decent terminal on Windows (corporate device) but this is the best I've found so far.
I enjoy this program, and 2.0 is a great improvement.
Same OpenCode team who ignore bug reports, don't respond on their discord, don't have modern CI/CD test suites (often shipping regressions), don't have bots to triage bug reports or PRs, and have what might be the worst open model subscription service available today.
OpenCode users: switching to Pi takes about 5 minutes, and customizing it to work just like OpenCode takes another 30 minutes. Better design, better devs, better community.
What open model subscription services are there that’s better. Genuinely interested in knowing.
I thought $80 of deepseek usage for $10 was a pretty good deal, but I’d be delighted to hear of better ones.
The site took a minute to load in completely and when I scrolled to the bottom I couldn't read the SDK text, it was literally cut off, kinda resembling the current state of coding very accurately lmao
OC is all right -- it's my daily driver -- but it could be better. I'd like a harness to let me customize the GUI, not just add MCPs and plugins. For example, I'd like add buttons to merge a PR, and show indicators for CI. Claude Code does a lot of this out of the box. Give me UI building blocks (buttons, labels, etc.) and wire them with my own functions. Could Code Mode enable this?
The built-in browser is a most welcome feature.
PS(A): Opencode Go is a great deal and now has a $40 plan.
This game is quite interestingly fun despite how basic it is.
having a daemon PID helps for web gui, but may bite in unexpected ways under extensive parallization.
I had no clue you have to scroll down.
Goes to check the repo out
> TypeScript
Considering the whole thing is LLM produced I would like an explicit answer as to why C++ or Rust weren't used to write the project in.
Probably because of Effect.
> We've built a minimal JavaScript interpreter
Huh?
I was annoyed that it takes just as much ram if not more than 1.0
2.0 is a big disappointment so far.
Several basic things don't work, like hiding the sidebar.
With 3.2k open GitHub issues there's no point reporting anything.
Somehow I manage to get issues noticed and PRs merged. They aggressively cull old issues but if they take notice things get done. I contributed just this week.
These guys stole money from me. It amounts to like 10 US or something, so not significant, but still...
Their models have pricing published in their docs, like any other LLM provider. I measured the tokens I consumed, did the math, and it was always off, in their favor. One model (GPT Luna) was about 2x as expensive as advertised.
I joined their Discord, which is apparently how you get support from them. I filed a bug and someone from their team replied, we verified the data, and he said that something was indeed off and that he'd escalate it. Then silence. After 2–3 weeks, I followed up and was now ignored.
As I said, the amount isn't material to me, but if they do this a million times, they could make some decent money out of it. No idea if it's on purpose, I'll leave that to the reader to speculate.
Overall, their complete lack of interest after acknowledging the "bug" left a really bad taste in my mouth, so I decided to leave.
Everyone copies https//maki.sh. I've been the first!
curl | sh should die
The monkey's paw curls, now it's "Give your agent a link to our SKILL.md!"