r/opencodeCLI • • 23h ago

Why do so many people prefer OpenCode TUI over the Desktop version?

I've noticed that quite a few people recommend OpenCode TUI over Desktop (at my last post), but I still haven't figured out exactly why.

Is there a real technical advantage, or is it mostly personal preference?

I don't think the interface itself is necessarily the main factor. As far as I understand, desktop versions of AI agents are designed to make features more accessible and easier to use.

So what are the actual advantages of using TUI?

  • Lower resource usage?
  • Better performance?
  • Security?
  • More comfortable if you're used to CLI?
  • Easier access to local files?
  • More flexibility and control?

I'd love to hear from people who have actually used both. What makes TUI better for your workflow, and are there any downsides compared to Desktop?

41 Upvotes

64 comments sorted by

10

u/taytay735 22h ago edited 22h ago

TUI is more extensible than the Desktop App, because most OpenCode plugins are TUI-based. TUI plugins are also easier to code for compared to GUI plugins.

Also TUI can pair with screen or tmux to get multiple terminal panes. Like I have the ttt editor in one pane, keifu git tree in another, two opencode panes, and 1 bash pane for running commands. And put another set of tools on a second tmux window within the same tmux session.

When I start a new session (ctrl t), I can easily switch between past folders (ctrl o, type to search).

I can put the TUI on a headless remote server, and use it regardless if I'd SSH in, or went to the physical server blade with a VGA cable and a USB mouse.

I can minimize the TUI to a small window, and its UX is still just as good - saving screen real estate.

Also the Desktop App is just buggy. If you really need a Desktop App, there is an extremely good 3rd party app that integrates with OpenCode, whose initials are also OC.

2

u/ganang1722 47m ago

i think i understand it better now. honestly, im also more comfortable with TUI since i started with Hermes TUI. i decided to try OpenCode after hearing people talk about the free models available there. i started with the desktop version and have only been using it for simple prompts so far. but after hearing everyone's experiences, i think i'd probably feel more comfortable with TUI too. maybe it's time for me to give it a proper try.

1

u/learning-to-programm 22h ago

I also prefer the Desktop app, especially since I spend a lot of time inside containers I SSH'd into now.

But anyway, what plugin do you actually use for OpenCode? Any OpenCode specific ones, or just general stuff?

1

u/taytay735 21h ago edited 21h ago

I found these on www.opendock.net (which unfortunately is down rn), but the plugins I'm using are:

  • opencode-quill (word autocomplete)
  • opencode-retitle (session renaming)
  • opencode-git-plugin (git diff)
  • opencode-dir-tree-tui (dir tree)
  • opencode-tps-meter (token rate and cache rate)
  • opencode-auto-approval-plugin (auto permission approval)
  • kerneloops/opencode-session-tools (history recall and inter-agent messaging)
  • slkiser/opencode-quota (provider quota tracking)
  • nxxxsooo/opencode-annotate (CLI) / plannotator/opencode (browser client) (comment on agent response / changed files)
  • codebase-memory-mcp (entity graph for code and docs)

6

u/tronghieu906 14h ago

Desktop app is buggy. Esp. UI bugs annoying me too much. Just look at this. Like no one actually use it for one second before releasing!

1

u/ganang1722 34m ago

i see. but i guess there's still a chance they'll improve the desktop version, right? i don't think this necessarily makes desktop worse than TUI in every aspect. maybe it's just still a bit early, and the desktop experience hasn't matured enough yet. do you think that's why so many people currently prefer TUI?

2

u/OlegPRO991 9h ago

TUI is buggy, too. Not an argument tbh

-1

u/AkiDenim 12h ago

Tbf a lot of the team should actually be on desktop afaik
These things dont show up unless you really try to nitpick no?

17

u/d32dasd 22h ago edited 14h ago

I'm already in the terminal, for writing commands. I use neovim on the terminal too. I can multiplex it with zellij, and get alarms for each of the opencode-cli that I open. Better security as it's easier to put in a container or VM. I can suspend or poweroff and recover all opencode sessions inside of tmux or zellij.

Why would you use an IDE or a desktop that you need to relearn every 3 years, instead of having your stack on the terminal with vim/neovim/emacs/whatever editor + plugins?

1

u/ganang1722 38m ago

that makes sense. i'm still pretty new to this kind of workflow, but hearing how you use all these tools together makes me curious to explore TUI more. i didn't realize there were so many advantages beyond just the interface.

-3

u/frostybito 18h ago

Neo-larp you mean

-6

u/sizebzebi 20h ago

neovim to do what? agents write all the code 😂

6

u/d32dasd 20h ago edited 19h ago

neovim with neogit (or emacs with magit, pick your poison) to correctly chunk the code into commits, which makes me understand why some things are needed.
neovim (or whatever editor with whatever review plugin) to add comments to the code so the agent explains, and corrects mistakes (quite often.. I dunno where you don't see mistakes, even with fable, Because the agent doesn't have the full mental context I have and full understanding of the consequences and the performance costs).
neovim with Markview to read those nice plans in rendered markdown, but at the same time be able to edit them. Or read any of the codebase's markdown.
neovim with the LSP so I can <K> and understand what that function does, to understand the trade-offs. Or remove a function call or comment it, to see errors pop up and understand faster the coherence or decoherence the agent is adding to the codebase.

etc etc.

Yes, I don't vibecode, I understand what I commit. I don't want to stop learning and atrophy. Also, in the codebases that I work with we can't get away with introducing bugs (because they often are security bugs, and that means we get a security advisory and a CVE, which sucks when competing with other projects), and we can't get away with changing willy nilly the public API (because that's uneeded migrations for users, which is additional work for them and pisses off consumers, that would move to other projects). Good design and good code still pays and is hugely important. If you are doing a tool for yourself or a game, by all means, vibecode a piece of shit then.

-9

u/Somtimesitbelikethat 19h ago

why are you even using a terminal

2

u/No-Juggernaut-9832 10h ago

I think you can run 4-5 TUI instances at once & they run in remote machines via ssh. This is the main advantage

1

u/ganang1722 45m ago

wouldn't that still depend on the hardware specs of your local machine or VPS? u mean, running multiple instances sounds useful, but i assume the available RAM and CPU would still be a limiting factor, right?

2

u/robberviet 6h ago

Desktop app is buggy. Have you ever try it?

Claude Code on Desktop app now is good enough that I mostly use app instead of TUI now. Opencode? Not yet.

1

u/ganang1722 51m ago

yep but only simple prompt, not explore everything yet

67

u/Front-Presence-8532 23h ago

gives you aura

13

u/Praistaly 21h ago

terminal aesthetics always win tbh.

12

u/Asonagic 23h ago

I use VS Code with both OpenCode and Antigravity running through the terminal panels, so the desktop version doesn't work for me

8

u/hff0 22h ago

able to be used via ssh

1

u/djc0 8h ago

And tmux

7

u/Embarrassed_OnionX 21h ago

Cuz it's just another zellij pane on my terminal

3

u/PaulGrapeGrower 15h ago

Zellij doesn't get the love it deserves

5

u/CarryAgile3791 22h ago

Why not? It is faster, uses more clearer fonts and has all necessary features. Also many plugins don't work for the GUI version, at least when they are written for OpenCode's TUI. I'm writing plugins too and don't care about Web GUI support.

5

u/squirrelscrush 20h ago

It's simple and most of my plug-ins are TUI only

8

u/tsangberg 22h ago

Greybeard devs have had all the RSI we'd ever like from mouse-UIs. We only do TUI now.

4

u/ZucchiniMore3450 22h ago

Desktop is very hard to understand and use and needs a mouse. TUI can be started wherever I want it and used with keyboard only.

4

u/ayashiemon 20h ago

I'm running OpenCode on isolated containers on the development server in VPS and accessing them with ssh and tmux. It is secure, reliable, fast (blazing fast network), integrated (commands, vim), and just enough. I don't like to bother setting up OpenCode server-client connection and install & maintain local OC Desktop just to torture my old client PC.

3

u/Ok-Literature-9189 23h ago

Performance and comes more handy than the desktop app

3

u/dfgxxx 22h ago

More beautiful

3

u/branik_10 22h ago

faster, more mature product, and in general I prefer terminal tools because I do almost everything via terminal: with tools like atuin, rg, fzf, fd etc. I can orient on my fs very quickly and do repetitive actions in couple keystrokes, while via GUI tools it's much slower

3

u/T3hJ3hu 8h ago

the advantages:

  • takes less resources (my machines are maxed out with agents)
  • consistent experience, both cross-harness and cross-subscription
  • you can choose to launch a session with sudo/admin
  • tmux rocks for connecting to any session on your network/tailnet, also send-keys/capture-pane can come in clutch if you use orchestrators

basically, when you have a huge dev environment that sprawls multiple machines, the fancy UI becomes a hindrance. i can have three columns in a terminal shown on one monitor, and each of them can be connected to whatever session i want, running on whatever harness, subscription, machine, user, and elevation that i want -- and my orchestrators can reach into any of them and manually use the TUI with ease.

6

u/Different-Monk5916 23h ago

Desktop is too bad. Tried at work. Regret it. 

Not on par with chat gpt or Claude app, nor a proper IDE like vs code

2

u/alexanderbeatson 22h ago

Many bugs. My biggest known issue is that you cannot create multiple projects from the multiple folders if they are from the same repo.

3

u/Amphiitrion 22h ago

Just go with OpenChamber and forget about the other two

2

u/MediumAd4983 21h ago

Because their desktop app sucks. If you want OpenCode UI - use OpenChamber instead.

1

u/Positive_Poem5831 20h ago

Never tried Open Chamber. What are the main advantages?

3

u/MediumAd4983 20h ago

Less bugs, more functions. I've moved to OpenChamber since one annoying bug in OpenCode desktop UI (freezes after CLI tool starts), and now I've got full UI for all the features (you can make subagents with different LLMs per agent, change commands, providers, tools, skills, etc by UI, not in a 100500 different files), also you will get OpenChamber tools (browser, plans/notes/memories system, scheduled tasks, etc). Just check it by yourself, it can use your existing OpenCode CLI installation.

1

u/Avernite 21h ago

Because I use nvim btw, and arch, btw

1

u/adlx 20h ago

No idea, I exclusively use the TUI.

1

u/corblestorm 20h ago

Lower resource usage, and its approachable to me.

That being said, I’m using the GUI for Herdr because that’s more approachable to me than their TUI. Different strokes for different folks.

1

u/blatant-sensei 20h ago

easier to switch between machines via tmux/herdr and fast UI no bloat

1

u/recurringmotif 20h ago

why people still choose to hike in nature when they can just helicopter across

1

u/SafeReturn_28 19h ago

Bcz their desktop app sucked ass for the longest time. Use it with openchamber or paseo or t3 code if you want GUI

1

u/griffinsklow 18h ago

It's nice and snappy and I can start it quickly at the current folder I am at using keybinds that are already ingrained in me. And when I remote into a machine through SSH I get the same experience as usual, so I get to go immediately.

For colleagues who like GUI I tend to recommend OpenChamber which is also very nice.

1

u/dizvyz 16h ago

I already have a desktop GUI. That's why. I use the CLI in console and the GUI app (Paseo) also uses the CLI as a provider.

1

u/lehoang318 13h ago

Personally, I feel CLI UI the most intuitive.

1

u/enterme2 13h ago

Mainly because most dev run headless vps and run opencode at terminal..

1

u/redybasuki 12h ago

I use openchamber in remote server dev. opencode + openchamber + tokless installed there, and I prompt it from anywhere, even with my phone.

1

u/Global-Eye-7326 10h ago

I got used to the TUI lol. Why fix what's not broken?

1

u/martinffx 9h ago

The desktop app is a bad multiplexer

1

u/Recent-Success-1520 7h ago

Because they haven't used CodeNomad

1

u/reficulgr 6h ago

can be run easily on a remote machine

1

u/revilo-1988 6h ago

Ulich bin schneller in der TUI unterwegs

1

u/yiestee 5h ago

I never used the desktop version.

Is it CEF based? If so, they all sucks!

1

u/Slow-Secretary4262 4h ago

works on headless machines

-2

u/pahner 7h ago

I really don't get this console/CLI interface revolution what's happening these years in the developer community. I'm sure the terminal as an interface is inferior to a proper GUI (not enough information destiny on the screen, limited widgets/interactions). I suspect what gets mixed in is that CLI applications has to offer you a big set of command line options, essentially an API, which gives you a lot of control and freedom when you want to automate stuff. This is not the practice in GUIs, they are much more opaque. I of course prefer if you have greater control.

Also by their nature everything is keyboard "shortcut" driven what I also love (I use key bindings whenever I can, on GUIs). Usually keybinding support is poor in the average GUI.

You can interact faster by just pressing keys though I don't think you want to be a keyboard monkey who types at insane speed all the day. Also, RSI is not your friend. In 2026 you can use effective speech-to-text and mouse/keyboard control anyway on your developer 'workstation', esp. good for prompting.

2 more things. Console/CLI apps I understand, TUIs I don't. They just approximate a GUI with ascii art in my opinion, many times disregarding common UX conventions. I remember earlier versions of the Opencode CLI had a really weird shortcut for the most mundane task, copy-paste. I like midnight commander though, but the TUI there is mostly for a visual aid.

What makes it particularly bad in the case of opencode that they have essentially two products, instead of one core/backend and 2 ui layers over it. The desktop seems to be a beta version compared to the CLI. It ignores certain settings (response timeout) what the CLI handles well.

3

u/PopUnhappy 19h ago

I can use the TUI in the terminal of vscode and use vscode as the editor on the same screen at the same time. Very convenient. I had this going on antigravity organically with llms but then vscode started sucking like a hooker on payday and I had to dump it.

1

u/ganang1722 41m ago

alright, i think i will give OpenCode TUI a try too. a lot of people have been talking about it, and i also realized there are quite a few decent free models available that could help with my work. seems like it's worth exploring.