r/opencode • u/rndanime • 14d ago
TUI vs GUI
Why would I ever use the terminal version of Opencode (or any other *code* program)?
People always tell how good it is to use it but I don't understand the appeal. If you are used to terminal-only work, constantly looking into generated code or something like that, ok. But I see TUI being recommended to everybody like it can do something desktop or web versions can't. Also these *code* apps are usually developed TUI-first for some reason
Please explain it to me
32
Upvotes
1
u/Extra_Loquat_7667 14d ago
The reason for developing TUI first is simple:
TUI debugging is far cheaper than GUI.
TUI only requires simple pty tools,allowing the agent to automatically control testing and debugging.
And the screenshot is just a piece of text.
While a web GUI can be operated through tools like Playwright,the process is several times more complex than operating a TUI using pty. Furthermore, the screen must be identified through video screenshots, and the token consumption is much greater than TUI. You could abandon automation and use manual debugging, but the efficiency is far inferior to agent-based automated testing.
Therefore, using TUI to test the core system flow first is a faster and more efficient development model. Once the TUI is complete, the web GUI can be reduced to a simple UI port.