No, Claude Code doesn’t need a better UI
The mindset shift needed to get the most out of Claude Code
I’ve read a lot of articles this past week about Claude Code (as I’m sure you have too) and there’s consistently one thing mentioned that bothers me. These articles state that Claude Code is excellent despite its terrible UI, when really its UI is what makes it so great and the closest thing we have to AGI.
This starts with a brief history of computers and computation. Humanity created computers to crunch numbers much faster than we’re manually capable of. Since most work is rooted in information transfer, we’ve since offloaded most work to the digital world because computers are capable of storing, retrieving and manipulating information much faster than we are.
To more easily tell computers the work they should be doing, we’ve developed GUIs (graphical user interfaces). These GUIs sit on top of the code, ones and zeros, and actual computation the computer is doing to create a much more accessible interaction plane to a human user.
Recently, there’s been a lot of research done to create computer-use agents. These agents learn how to use a mouse to interact with a computer’s GUI. Thus, these agents are capable of doing the work a human otherwise would have accomplished with that computer.
However, if we go back to before GUIs, we primarily interacted with computers via the terminal. The terminal is a simple text interface to give the computer a command for the work it needs to do and get information back from the computer.
The terminal is a text interface that controls the work a computer does. Our current frontier AI models are text based and perfectly suited for this environment. This is what makes Claude Code so effective. It lives in the terminal and interacts with it via text commands.
Thus, rather than thinking of Claude Code as a coding agent, it’s much better to realize its full potential by thinking of it as a computer use agent.
It’s had such an explosive impact because its ability to control a computer via the terminal lets it accomplish meaningful work. Anything you can do in the terminal, Claude can too.
I’d even argue that it’s the first step of artificial general intelligence (AGI). Most definitions of AGI describe an AI’s ability to do general, meaningful work. With our current models, an AI assistant in the terminal accomplishes this. The only thing keeping it from making more of an impact is integration with more systems it can work on.
Luckily, the terminal helps with this too. The terminal lets you:
Interact with a computer’s filesystem and applications.
Interact with the internet.
Run commands for any CLI tool. Any application with terminal commands can be controlled by Claude.
Code. Anything Claude can’t do natively via the terminal, it can write code to accomplish and run that code itself. This means Claude can interact with anything that has an API if given proper authentication.
And this doesn’t even account for model context protocol (MCP) which is the agent-native way of declaring its interactions with endpoints.
You might argue that a true computer agent needs the ability to interact with a computer with more complexity. I’d argue that the simplistic and standardized nature of the terminal is what has made the terminal-based computer use agent so successful.
Terminal commands are standardized. GUIs change their layouts, button positions, and flows with every update. Terminals are a stable, reliable interface.
The terminal is inherently programmatic. It was designed for automation and scripting, which is exactly what an AI agent needs to do. Terminal commands can also be run together, enabling the agent to build complex workflows from simple operations. GUIs were designed for humans to point and click, not for programs to control.
Terminal outputs are predictable. GUI interactions depend on context, view settings, window state, and animations that make it difficult to know what to do next.
Terminal errors are parseable text that an agent can read and act on. GUI errors are modal dialogs or toast notifications that require visual interpretation.
I recommend even non-technical individuals learn how to use Claude Code in the terminal. There’s a certain level of intuition that you build as you watch the AI work directly in the terminal and as you learn to work in the terminal yourself.
Some examples worth checking out to get you started:
If you write or script as a content creator, write in markdown format in a GitHub repo. Use the terminal to access that folder on your computer and spin up Claude Code. It can now help you write, critique your work, brainstorm ideas, and more. This article was edited by Claude Code, for example.
If you store any information via API, tell Claude Code about it and it can write a script to access that information and add it to its context. For example, I read and store notes in Readwise Reader. It has an API that Claude Code can easily access via a simple Python script. I can then chat with my notes.
Claude Code has made such an incredible impact because it’s not only good at coding but it’s an entire terminal agent. If you think about Claude Code this way, it can accomplish much more meaningful work for you.
Thanks for reading!
Always be (machine) learning,
Logan




I am genuinely hyped about the new rollout. Really excited to start trying some of these new features. Have you looked into this yet?
I used Claude Code for most of last year, both in the CLI and the web UI. I reluctantly abandoned it this year in favor of narrowing my suite of subscriptions to just ChatGPT and Gemini, mainly on the basis of being able to jump in and out of the monthly subscription regime.
I found that a second option was essential effectively to use Claude or any of the coding agents. They all have a tendency to dig in and announce that the latest round is absolutely, positively the 100% correct answer. They fall in love with the overall context and their previous priming. Usually, all it takes is repeating or reframing the question and asking a competitor "what's wrong with this solution."
It's critical to understand that in using a coding agent, as in doing any analysis, that the questions always trump the answers.