CLI-Anything is an open-source pipeline that converts existing desktop software, much of it GUI-only, into installable command-line interfaces that AI coding agents can call. It comes from HKUDS, the Data Intelligence Lab at the University of Hong Kong, led by Prof. Chao Huang, and ships under the Apache License 2.0. It is aimed at developers who already drive a coding agent such as Claude Code or Cursor and want that agent to operate GIMP, Blender or OBS Studio through typed commands instead of simulated mouse clicks.
What it does
An agent that wants to edit an image in GIMP today mostly has one option: look at a screenshot and click. CLI-Anything builds the missing text interface. For a given application it generates a Click-based Python CLI plus a SKILL.md file, so a coding agent can discover the available commands and call them directly.
The README counts 18 or more production harnesses in the latest release line, across:
- creative tools: GIMP, Blender, Inkscape, Krita, Audacity
- productivity apps: LibreOffice, Draw.io, Obsidian
- video tools: OBS Studio, Kdenlive
A companion project, CLI-Hub (clianything.cc), is a registry and package manager for the generated CLIs, so an adapter someone else produced can be installed rather than regenerated.
How it works
The generator runs a documented seven-phase pipeline: Analyze, Design, Implement, Plan Tests, Write Tests, Document, Publish. It reads the target application's source and capabilities, designs a command surface, implements it in Click, plans and writes tests for it, documents it, then publishes the result. The SKILL.md file is the part that matters for agents: it is what an agent reads to learn what the generated CLI can do. The README names Claude Code, Cursor, OpenCode and Copilot CLI as the agents meant to consume it.
Nothing here is a model of its own. CLI-Anything produces plain command-line programs, and the intelligence that decides which commands to run stays in whatever agent you already use.
Getting started
The repository is at github.com/HKUDS/CLI-Anything, Apache 2.0. The project does not list hardware requirements: no OS matrix, no GPU or memory figures. Treat the target application's own requirements as the real floor, and expect to have that application installed locally, since the generated CLI drives it rather than replacing it.
The code is free, the intelligence is not. Generating a new CLI means running the seven-phase pipeline with a coding agent, and driving the finished CLI means an agent too, so the running cost is whatever your agent subscription or API key costs. The materials mention no bundled or local model.
To install from the registry the README gives two commands: pip install cli-anything-hub for the Python route, or npx skills add HKUDS/CLI-Anything to add it as a skill. Pick the one that matches how your agent loads tools.
When to use it / when not
The catch is command coverage, and the project's own framing does not hide it. The video script and the channel's notes point to a benchmark in which an agent using a plain generated CLI lost to an agent clicking through the GUI, and only came out ahead once the command set was expanded. The materials do not say who ran that benchmark, so read it as a reported result, not a measured guarantee. The practical consequence: an adapter has to exist, and be deep enough, before the CLI route beats clicking. For an app nobody has harnessed yet, you are the one doing the harnessing.
Use it instead of a computer-use agent when the application is already on the covered list and the task repeats: structured commands fail in ways you can read in a log, screenshots do not. Don't use it if you need one specific unlisted app handled this week, or if you were hoping for a standalone tool. Without a coding agent in front of it, this is a command-line program with nobody to type into it.
Alternatives
The comparison the README picks for itself is GUI or computer-use agents, which take a screenshot, move the mouse and type, and so work on any application with no adapter at all. That generality is exactly what CLI-Anything trades away for reliability. The honest split: computer-use wins on breadth today, a generated CLI wins on an app where someone has already done the work.
Take this seriously if you run coding agents against desktop software and are tired of click-based automation breaking when a button moves: the covered list already includes the apps most people would reach for first, and SKILL.md plus CLI-Hub make an adapter something you install rather than build. Be more cautious if your interest is a single unlisted application, or if you expected a published win over GUI clicking. The one benchmark named in these materials went the other way until the command set grew, which makes coverage, not architecture, the thing to check before you commit to it.