Terminal UIs Are an Abomination. AI Needs Better UX

rafaepta2 pts0 comments

Terminal UIs Are an Abomination. So Are Chatbots. AI Needs Better UX | by balaji bal | MediumSitemapOpen in appSign up<br>Sign in

Medium Logo

Get app<br>Write

Search

Sign up<br>Sign in

Terminal UIs Are an Abomination. So Are Chatbots. AI Needs Better UX

balaji bal

6 min read·<br>Apr 6, 2026

Listen

Share

Press enter or click to view image in full size

The terminal UI is back, and people are acting like this is progress.<br>Claude Code, Codex-style workflows, agent shells, prompt consoles, chat panes full of tool calls and logs: this is increasingly being sold as the natural interface for AI. It is not. It is a temporary hack that the industry is flattering into a philosophy.<br>Terminal UIs are not the future of AI. They are what happens when engineers build a powerful new engine and then wrap it in the fastest interface they know how to ship.<br>And if we are serious about AI adoption beyond engineers entertaining other engineers, we should say it clearly: TUIs are an abomination.<br>Not because terminals are useless. They are incredibly useful. For deterministic systems. For expert operators. For tools where commands and outputs map cleanly to user intent.<br>But AI systems are not grep. They are not Git. They are not a compiler.<br>They are probabilistic, stateful, asynchronous systems that inspect files, call tools, retry, branch, maintain context, and increasingly act over time. Compressing all of that into a terminal transcript or a chat log is not elegant minimalism. It is interface failure.<br>We are mistaking engineering convenience for design truth<br>The reason chatbots and terminals dominate AI is not because they are the best interfaces. It is because they are the cheapest.<br>If your model emits text, the fastest wrapper is a text box. If your agent produces tool calls and logs, the fastest wrapper is a stream. If your early adopters are developers, the safest aesthetic is a terminal. So that is what gets built.<br>Then, because it shipped first, people start mistaking it for the natural shape of the category. A shortcut hardens into doctrine. A stopgap becomes dogma.

Suddenly we are told that chat is the native interface for AI. That terminals are superior because they “stay out of the way.” That raw logs equal transparency.<br>This is builder capture. Engineers have wrapped AI in the interfaces they themselves are comfortable with, and then acted as though everyone else should adapt.<br>That is not product design. That is gatekeeping with better branding.<br>Press enter or click to view image in full size

Chat worked for single-shot generation. That world is over.<br>When AI was mainly used to generate a paragraph, rewrite an email, summarise a document, or spit out a function, chat was fine. Prompt in. Answer out.<br>But AI is no longer a single-shot generator. It is becoming a process engine. It searches, edits, retries, plans, calls tools, spawns subtasks, remembers state, evaluates outputs, and loops through decisions over time.<br>That changes everything. A conversation is linear. Agentic work is not. A chat transcript is chronological. Real work is causal.<br>A terminal scroll shows what happened in order. Users need to understand what happened because of what. That is the break. Once AI became multi-step, stateful, and asynchronous, chat stopped being a natural interface and became a lossy compression format for a much richer system.<br>The problem is cognitive load<br>A transcript is not the same as an interface.<br>Human-computer interaction has known for decades that good interfaces reduce cognitive load by making state visible, supporting recognition over recall, and letting users manipulate structures directly instead of reconstructing them from memory.<br>Chatbots and TUIs do the opposite when the task becomes complex.<br>They force users to remember:<br>what the system already tried<br>which instruction caused which change<br>what failed and why<br>which outputs are stable versus provisional<br>where a bad assumption entered the chain<br>what can be safely replayed<br>what depends on what<br>A long transcript is not transparency. It is a tax on memory.<br>Showing me 1,500 lines of agent logs is not a gift. It is the UX equivalent of dumping engine oil on the dashboard and claiming I now have better observability.<br>Press enter or click to view image in full size

Code editing makes the failure obvious<br>Nowhere is this more absurd than in AI coding tools.<br>An agent reads files, edits multiple modules, runs tests, retries failed approaches, introduces regressions, repairs them, changes strategy halfway through, and gradually builds up thousands of lines of code.<br>And how is all of that usually surfaced? A terminal transcript. A chat narration. A diff. Maybe, if you are lucky, a list of touched files.<br>This is insane.<br>We are taking graph-shaped work and forcing it through interfaces designed for conversation. The right interface for agentic coding is not “a better chat window.” It is something like a temporal change graph.<br>Imagine the agent’s work surfaced as a visible graph...

terminal chat interface better because agent

Related Articles