CLI is the natural interface for agents
Most software today is a UI wrapper around a database. Agents don’t need the UI. They need the data and an efficient way to interact with it. CLI and APIs are that interface.
CLI is like JSON: a compromise between humans and machines. Not ideal for either, but the sweet spot where both can work. Word-based, token-efficient, composable. binder search --type Task | jq '.[] | .title' costs a fraction of the equivalent MCP tool call with its JSON-RPC envelope, schema declarations, and structured response.
MCP is the current standard for agent-tool communication. But it’s verbose — JSON Schema, no composition model, can’t be piped through grep or jq. CLI is cheaper on input and output, and more composable. MCP’s advantage is discoverability and type safety. For raw efficiency, CLI wins.
There will be a renaissance of CLI. Not because people will use terminals more — most won’t — but because agents will. Maintainers and developers will still need to understand systems, debug, and inspect. CLI stays as the lingua franca between humans-in-the-loop and agents. It will sustain the way JSON sustained: good enough for both sides.
What gets disrupted: SaaS apps that are mostly a database behind a proprietary UI. The cost of IT drops because agents can build and integrate systems directly. Open source benefits disproportionately — code access and multi-model support are competitive advantages when agents are doing the work.
The counter-arguments are real. SaaS companies are adapting — Notion shipped an MCP server, Obsidian added a CLI. Computer use might close the gap if GUI interaction matures enough. But GUI interaction will always be less efficient and precise than CLI. Long-term, everything that can become an API will.