Have you used Claude TUI? :-)
> 3. Often much easier to drive with automation software (agents/scripts)
TUIs? Not really. TUIs aren't composable, CLIs are. Now, many TUIs also have a separate CLI mode built-in, but guess what, many good GUIs also have a built-in CLI.
TUIs are also frequently harder to automate via click-click than decent GUIs, since mature GUI toolkits tend to have built-in accessibility and I doubt anyone has ever programmed extra accesibility into any TUI in history, outside of the default keyboard access they get because they're inherently character driven (though that can take you quite far).
I live my life in the terminal.
I use lazygit all the time. I integrate delta with it.
But I use vscode GitLens for diffs.
I always find the view port in lazygit to be too narrow. My feeble brain cannot work with so few context.
Spawn a Claude TUI where you need it and take remote control with no friction.
I tried it in codex and they messed up the flow so bad. You need to add a device oauth token every time you set it up even though it's already logged into your account.
I think there's 2 clear layers in these coding tools: the runtime engine that lives ON the system, can execute commands, read/write files, make network calls and the UI, which can be a local (TUI) or remote.
A remote UI allows you to manage multiple remote runtimes concurrently and can even be on your phone.
Anyone preferring Desktop vs TUI is not managing multiple systems I would guess.
Isn't the CC TUI written in React?? I mean my web dev "all i have is this hammer" brain is intrigued, but surely, there's better things to do? Like you said, the terminal is great for piping inputs and outputs, for scripting, for bulk operations. It's really not great for real time interaction across many files, which is how i use CC and kind of wonder how you would use it any other way. (I guess if you literally just prompt and pray, the UI literally doesn't matter?)
You can't even have 'tabs' inside of Claude Desktop, which is a dealbreaker for most power users.
The other problem is that all the GUI apps look different. I really want one extremely powerful, composable GUI “framework” that all apps sit within. Ideally I could even decompose and recombine parts of different apps into new tools or workspaces.
Now that anyone can build a GUI by prompting LLMs, maybe we’ll get actually good GUIs, or at least be able to build our own, but up to now the direction of travel has been disappointing to say the least.
Good GUIs with full keyboard functionality are definitely better than TUIs though. There's just no guarantee that some solo dev'd GUI for a brand new workflow can meet that standard.
A GUI is strictly more powerful than a TUI (because a GUI could just show plain text in cases where that is the most appropriate mode of interaction, E.G. Bloomberg, AMadeus), but it could also do so much more in cases where it is not.
I do love terminals, don't get me wrong. When what you're interacting with is CLIs and Unix tools in a shell, a terminal is exactly what you want. I do love the Unix philosophy, I like small and composable tools that you can use together, and I think the interactive way of working that a shell or REPL can give you is great (though notebooks would have been better, but that's beside the point). Those are things that the terminal shines at. Pretending to be a GUI is not one of those things.