PlaybookAdvanced13 min read28 August 2026

The Command Line for Everything

Give Claude, Codex and other agents a real interface to the software they could never reliably use.

In short

CLI-Anything is an open-source project that gives agents command-line interfaces for desktop and backend software. Start with CLI-Hub, search the registry, and install an existing harness. If the software is missing, its generator can inspect a source repository and build a new CLI through a seven-phase process covering analysis, design, implementation, tests, documentation and packaging. The important limit is that a generated CLI still needs the real software and must verify the artifact it produces. Section seven is the part to read before trusting it with serious work.


Why can an AI agent write an application from scratch, then struggle to make one dependable change inside GIMP, Blender or LibreOffice?

Because most software was designed for hands and eyes. A person can look around a menu, notice that a window changed, and recover when a button moves. An agent needs something stricter: named commands, documented options, structured output and a result it can check.

Browser automation and computer use can imitate the person. That works until a dialog appears in a different place, a render takes longer than expected, or the agent clicks the right-looking control in the wrong panel.

CLI-Anything takes the other route. It builds command-line harnesses around the real application, so the agent can ask for an operation directly and receive a predictable response. The project has more than 48,000 GitHub stars, an Apache 2.0 license, and a registry covering creative software, office tools, automation systems, developer tools and scientific applications.

The useful part is not the size of that list. It is that there are two ways in: install an existing interface now, or generate a new one when the registry does not cover the software you need.

What CLI-Anything is, and what it is not

CLI-Anything is a system for making software agent-accessible through command lines.

For existing integrations, CLI-Hub acts like a package manager. You can search for a task or application, inspect the available harness, install it, and launch it from one place.

For unsupported software, the generator studies the source code, maps application capabilities into command groups, implements the harness, writes tests, documents the result, and packages it for use.

Each completed harness aims to give an agent three things:

  • A normal command interface for scripted work.
  • A stateful REPL for longer interactive sessions.
  • Structured JSON output the agent can read without guessing what a success message meant.

It is not a replacement for GIMP, Blender or LibreOffice. The harness should invoke the real application or produce a valid native project that the real application can render. That boundary matters. A wrapper that quietly substitutes its own simplified renderer may produce a file, but not the file you asked the original software to make.

Choose the right starting point

There are two paths, and most people should start with the first.

SituationStart hereWhat you are doing
The application or task is already in the registryCLI-HubSearch, inspect, install and launch an existing CLI.
The application is missing, but its source is availableCLI-Anything generatorBuild a new harness from the codebase, then test and refine it.
The target is closed-source and exposes no useful API or project formatPause before generatingCoverage may be shallow. Decide whether browser or desktop automation is the more honest interface.

Do not generate a new integration just because the generator is interesting. A reviewed harness from the Hub is the shorter route and gives you a known command surface to test.

Install CLI-Hub and inspect what already exists

Install the Hub package manager:

pip install cli-anything-hub

Then browse or search the registry:

cli-hub list
cli-hub search image
cli-hub search diagram
cli-hub info drawio

Once you find the right harness, install and launch it:

cli-hub install drawio
cli-hub launch drawio --help

The info step is worth keeping. Some harnesses wrap desktop software that must already be installed. Others depend on an API, local service or credential. Finding that out before handing the task to an agent saves a long failure that ends with a missing backend.

Start with a reversible task. Ask the CLI to create a new artifact in a fresh folder, not edit the only copy of something important.

The next one lands in your inbox before it lands here.

One email a week. What I tested.

Subscribe
The Command Line for Everything · Playbooks · Steve Tan