ГАЙД 2026

CLI-Anything: как превратить любое приложение в CLI, которым управляет агент

Открытый проект группы HKUDS делает то, чего не хватает агентам: превращает GUI-программы в командную строку с JSON-выводом. Разбираем реестр CLI-Hub, семь фаз генератора и реальные цифры репозитория.

ГайдАгентыCLI-инструменты
Уровень СреднийВремя настройки 5–30 минутОбновлено 22.10.2026

Агент умеет читать файлы и вызывать команды, но большинство программ остаются графическими: у GIMP, Blender или LibreOffice нет нормального CLI, которым можно управлять из скрипта. CLI-Anything — открытый проект группы HKUDS, который закрывает этот разрыв двумя способами: выдаёт готовый CLI-ханесс из реестра или генерирует новый для конкретного приложения за семь фаз. Ниже — что реально лежит в репозитории на 56 тысяч звёзд, чем хаб отличается от генератора, как это подключить к своему агенту и где заканчиваются обещания.

56 046
Звёзд на GitHub
снято 22.10.2026
70
Ханессов в репо
каталог skills/
2 461
Тестов в README
100% проходят
Apache-2.0
Лицензия
код открыт
Как мы это проверяли
Все числа сняты 22.10.2026: звёзды, форки, даты и лицензия — через GitHub API (api.github.com/repos/HKUDS/CLI-Anything), загрузки пакета — через pypistats.org, количество ханессов — по листингу каталога skills/ через contents/skills, требования и состав тестов — из README и карточки PyPI. Приложения мы не запускали и тесты не пересчитывали: цифры взяты из репозитория и API, оценочные суждения помечены как наши.

01Почему агенты упираются в GUI

Языковая модель работает с текстом, а зрелые программы — с пикселями. Пока задача решается файлами и API, агент справляется: читает конфиг, правит код, вызывает HTTP. Как только нужно отрендерить сцену в Blender, собрать презентацию в LibreOffice или наложить фильтр в GIMP, начинается клики мышью — то, чего агент делать не умеет надёжно.

Костыли известны: скриншоты плюс управление курсором (медленно и хрупко), макросы (ломаются при смене версии), самописные скрипты на Python API приложения (дорого, по одному на каждую программу). Идея CLI-Anything проще: если у приложения есть скриптовый слой, file-форматы или внутренний API, его можно обернуть в командную строку с предсказуемым выводом — и тогда агент работает с ним так же, как с git или ffmpeg.

Три слоя схемы CLI-Anything
АгентClaude Code, Cursor, Codex, OpenCode, Pi и другие: вызывают команды, читают JSON и --helpкто думаетCLI-ханесснабор подкоманд на Click, структурированный вывод, REPL, undo/redo и SKILL.md с описанием для а…чем вызываетПриложениесама программа: её Python API, скриптовый слой, файлы проекта или headless-режимчто меняется

Ключевое требование в README сформулировано жёстко: никаких заглушек и «мягкой деградации». Если бэкенд приложения недоступен, тесты должны падать, а не пропускаться — иначе ханесс имитирует работу вместо реальной. Именно поэтому в репозитории к каждому ханессу идёт набор тестов против настоящей программы, а не моков.

02Что стоит за 56 тысячами звёзд

Репозиторий создан 8 марта 2026 года и за семь месяцев собрал 56 046 звёзд и 5 057 форков — для инструмента вокруг агентов это верхняя лига. Но звёзды считают интерес, а не использование: пакет-менеджер хаба скачивают с PyPI заметно скромнее (об этом ниже). Поэтому смотреть надо на состав репозитория: сколько ханессов реально доведено до состояния «есть тесты и документация».

Тесты на один ханесс: пятёрка самых крупных приложенийколичество тестов, по данным README репозитория, снято 22.10.2026
0тестов125тестов250тестовBlender208тестовInkscape202тестовAudacity161тестовLibreOffice158тестовGIMP107тестов
Тесты считаются по каждому каталогу ханесса в репозитории. Сумма по всем приложениям в README — 2 461 тест.
ПоказательЗначениеКомментарий
Звёзды GitHub56 046снято 22.10.2026
Форки5 057модель развития через PR сообщества
Открытые issues214много запросов на новые приложения
Первый коммит08.03.2026проект молодой
Последний push22.09.2026в main активность низкая
Релиз на GitHubv0.4.025.06.2026
Пакет на PyPIcli-anything-hub 0.4.1обновлён 09.07.2026
ЛицензияApache-2.0коммерческое использование разрешено
Данные GitHub API и PyPI, снято 22.10.2026.

Каталог skills/ на момент проверки содержал 70 ханессов: от GIMP, Blender, Inkscape и Audacity до QGIS, OBS Studio, Obsidian, n8n, Mermaid, Ollama, Dify Workflow и Godot. Это не «18 демо из README», а фактический список каталогов с SKILL.md — демо-таблица описывает лишь те приложения, для которых авторы записали видео.

03Два входа: реестр CLI-Hub и генератор

У проекта две разные аудитории, и это главный источник путаницы. Первой нужно просто управлять уже поддержанной программой — ей хватит пакетного менеджера cli-anything-hub. Второй нужно превратить в CLI то, чего в реестре нет, — для этого ставится плагин или навык и запускается генератор.

Быстрый путь: хаб за три команды
1
Поставьте пакетный менеджер
Нужен Python 3.10 или новее; пакет ставится из PyPI.
terminalcopy
pip install cli-anything-hub
2
Посмотрите, что есть
Список реестра и поиск по ключевому слову — без установки.
terminalcopy
cli-hub list
cli-hub search image
3
Поставьте и запустите
Команда ставит ханесс из реестра, запуск отдаёт справку по подкомандам.
terminalcopy
cli-hub install gimp
cli-hub launch gimp --help
Команда хабаЧто делает
cli-hub listпоказать реестр
cli-hub searchпоиск по ключевому слову
cli-hub infoкарточка одного CLI: источник, версия, навык
cli-hub installустановить из реестра
cli-hub updateобновить установленное
cli-hub uninstallудалить
cli-hub launchзапустить установленный CLI с аргументами
Список команд из README проекта; синтаксис аргументов уточняйте в --help конкретной версии.
Когда генератор не нужен
Если задача — управлять уже поддержанным приложением (GIMP, Blender, LibreOffice, Obsidian, OBS, QGIS, n8n, Mermaid, Ollama), хаб ставит готовый пакет, а SKILL.md объясняет агенту, какие подкоманды существуют. Генерировать заново имеет смысл только для приложения, которого в реестре нет.

Вторая ветка — публичный реестр: в хаб попадают не только ханессы самого проекта, но и сторонние CLI из pip, npm и brew. Для них ведётся отдельный список, а установка идёт через тот же cli-hub install. Практический смысл в том, что агенту не нужно знать, откуда взялся инструмент: он видит единый интерфейс и единое описание навыка.

04Генератор: семь фаз от исходников до пакета

Генератор — это не отдельная нейросеть, а промпт-протокол для вашего же агента: плагин даёт модели инструкцию пройти семь фаз по исходникам приложения и не останавливаться, пока не соберётся рабочий пакет с тестами. Отсюда и требование к агенту: он должен уметь читать большой репозиторий и запускать команды.

Семь фаз генерации ханесса
1Analyzeразбор исходников: какие действия GUI соответствуют вызовам API2Designпроектирование групп команд, модели состояния и форматов вывода3Implementсборка CLI на Click: REPL, JSON-вывод, undo/redo4Plan Testsплан юнит- и end-to-end тестов в TEST.md5Write Testsреализация тестов против настоящего приложения6Documentобновление TEST.md результатами прогона7Publishsetup.py, установка в PATH, SKILL.md для агентаСхема по README репозитория CLI-Anything; названия фаз — авторские.

После первой сборки доступна фаза уточнения: агент сравнивает полный набор возможностей приложения с тем, что уже покрыто командами, и дописывает недостающее. Запускать её можно многократно — каждый прогон инкрементальный, предыдущие команды не перезаписываются. На практике именно этот цикл отличает рабочий ханесс от демонстрации: первая версия обычно закрывает 20–30% функций.

Сколько это стоит по времени и токенам
Генерация полного ханесса — это чтение исходников приложения и написание сотен строк кода с тестами: на крупном приложении один прогон упирается в лимиты контекста и требует нескольких сессий. Начинайте с маленькой программы и узкой области (например, пакетная обработка изображений), а не с Blender целиком.

05Подключение к агентам: что и куда ставить

Проект поддерживает больше десяти агентских платформ, и механизм у каждой свой. Claude Code получает плагин из маркетплейса на GitHub, OpenCode — набор команд в свой каталог, Pi — расширение, остальные работают через спецификацию Agent Skills: SKILL.md лежит в каталоге skills/ репозитория, поэтому навык ставится универсальной командой npx skills add.

ПлатформаМеханизмЧто запускать
Claude Codeплагин-маркетплейс/plugin marketplace add HKUDS/CLI-Anything, затем /plugin install cli-anything
OpenCodeкоманды агентакопирование каталога команд в ~/.config/opencode/commands
Piрасширениеустановка в глобальный каталог extensions
Cursor, Codex, Hermes, Copilot CLI, Gooseнавык SKILL.mdnpx skills add HKUDS/CLI-Anything --skill <имя> -g -y
По разделам README «Pick Your Agent Platform»; точные пути зависят от версии агента.

После установки плагина в Claude Code появляется вход /cli-anything: он принимает путь к локальным исходникам или ссылку на репозиторий и прогоняет все семь фаз. Отдельная команда /cli-anything:refine уточняет покрытие. Если агент отвечает «Unknown skill», README советует сначала проверить, что плагин загружен, и только потом пробовать устаревшую форму вызова — это частая ошибка при обновлении Claude Code.

06Зрелость: звёзды есть, коммитов мало

Здесь начинается неприятная часть, которую видно только по API. За 52 недели в основной ветке — 893 коммита, но почти все они пришлись на весну и начало лета. Последний push в репозиторий датирован 22 сентября, а по недельной статистике участия в main с июля идут в основном нули.

Коммиты в основную ветку по неделям16 последних недель, GitHub stats/participation, снято 22.10.2026
0шт.3,8шт.7,5шт.11,2шт.15шт.05.0719.0702.0816.0830.0813.0927.0911.100130013111200080000
Недели начинаются с воскресенья; текущая неделя неполная. Нули означают отсутствие коммитов в main, а не закрытие проекта.
CLI-Anything в семье проектов HKUDSзвёзды на GitHub, снято 22.10.2026
0тыс.30тыс.60тыс.CLI-Anything56тыс.nanobot49тыс.DeepTutor42тыс.LightRAG40тыс.Vibe-Trading36тыс.RAG-Anything24тыс.
Одна организация, разные проекты: CLI-Anything — самый звёздный её репозиторий, но по частоте коммитов уступает LightRAG и nanobot.

Как это объяснить? Репозиторий живёт по модели «реестр плюс пул-реквесты сообщества»: в новостях README десятки записей вида «предложен CLI для ArcGIS Pro», «слит CLI для Calibre». Основная работа идёт в форках и PR, а не в main, поэтому график коммитов выглядит мёртвым при 214 открытых issue и 5 тысячах форков. Для пользователя вывод практический: смотреть не на дату последнего коммита, а на дату последнего релиза ханесса, который вы ставите.

Проверяйте ханесс, а не проект
Качество 70 ханессов разное: у GIMP, Blender и LibreOffice десятки-сотни тестов, у части новых каталогов в README стоит пометка New и тестовый набор ещё формируется. Перед тем как отдавать ханесс агенту в продакшене, прогоните его --help и один реальный сценарий вручную.

07Ограничения и безопасность

CLI-ханесс — это не песочница. Команда, которую вызывает агент, работает с вашими файлами и вашей установкой приложения: тот же GIMP получает доступ к каталогу проекта, LibreOffice — к документам, браузерный ханесс — к сессии. Ограничения модели здесь ни при чём, ограничивать надо процесс.

  • Ханесс требует установленного приложения и его зависимостей: «zero compromise» из README означает, что без реального бэкенда работать не будет.
  • Генерация на большом приложении упирается в контекст агента и требует нескольких сессий и уточнений.
  • Покрытие команд никогда не равно 100% функций GUI: первая версия обычно закрывает меньшую часть, остальное добирается фазой refine.
  • Публичный реестр тянет сторонние CLI из pip, npm и brew — перед установкой проверяйте источник, как любой сторонний пакет.
  • Для изоляции запускайте ханесс в контейнере или отдельной машине, особенно если агент работает без подтверждений.
Не давайте агенту ханесс без границ
Комбинация «агент без подтверждений плюс CLI с доступом к файловой системе» — это удаление и перезапись файлов по решению модели. Рабочая схема: отдельный каталог проекта, контейнер или песочница, лимит на время выполнения и обязательный просмотр диффа там, где есть запись.

Второе ограничение — лицензионное. Сам CLI-Anything распространяется под Apache-2.0, но ханессы управляют чужими программами: GIMP под GPL, Blender под GPL, LibreOffice под MPL. Обёртка не меняет лицензию приложения, а вот распространять ханесс вместе с бинарником чужой программы на своих условиях нельзя.

08С чего начать на практике

Порядок, который экономит время: сначала проверьте, есть ли ваше приложение в реестре; если есть — ставьте хаб и пробуйте готовый ханесс на одном реальном сценарии. Если нет — берите самую узкую задачу и генерируйте CLI под неё, а не под всё приложение целиком.

  1. Поставьте cli-anything-hub и посмотрите список: возможно, готовый ханесс уже есть.
  2. Выберите один сценарий (например, «пакетный ресайз и экспорт в WebP») и прогоните его вручную командами ханесса.
  3. Подключите ханесс к своему агенту через плагин или SKILL.md и дайте ему ту же задачу — сравните результат с ручным.
  4. Если приложения нет в реестре, запустите генератор на маленьком проекте и оцените, сколько фаз он проходит без вмешательства.
  5. Закрепите рабочую версию и обновляйте осознанно: у молодых ханессов интерфейс команд ещё меняется.

Кому это точно пригодится: командам, которые строят внутренних агентов вокруг инженерных пакетов (CAD, GIS, 3D, медиа), и тем, кто автоматизирует офисные документы. Кому не нужно: если у сервиса есть нормальный API, обёртка вокруг GUI только добавит хрупкости — там достаточно MCP-сервера или прямого HTTP-клиента.

Частые вопросы

Что такое CLI-Anything простыми словами?
Это открытый набор инструментов, который даёт агенту командную строку для программ, у которых её нет: либо готовый пакет из реестра CLI-Hub, либо сгенерированный CLI-ханесс для конкретного приложения. Агент вызывает подкоманды и читает JSON вместо того, чтобы кликать по интерфейсу.
CLI-Anything бесплатный?
Да. Код репозитория распространяется под Apache-2.0, пакет cli-anything-hub на PyPI — под MIT. Платить нужно только за токены модели, которая генерирует новый ханесс, и за сами приложения, если они коммерческие.
Работает ли с Claude Code, Cursor и Codex?
Да, поддерживается больше десяти платформ. Claude Code ставит плагин из маркетплейса и получает команду /cli-anything; Cursor, Codex, Hermes и Copilot CLI работают через навык SKILL.md, который ставится командой npx skills add; OpenCode и Pi используют собственные каталоги команд и расширений.
Нужен ли Python и какой версии?
Для хаба и генератора нужен Python 3.10 или новее — это указано и в README, и в метаданных пакета на PyPI. Сами приложения могут требовать своих зависимостей: Blender несёт встроенный Python, LibreOffice работает в headless-режиме.
Сколько приложений уже поддержано?
В каталоге skills/ на 22.10.2026 было 70 ханессов: GIMP, Blender, Inkscape, Audacity, LibreOffice, QGIS, OBS Studio, Obsidian, n8n, Mermaid, Ollama, Godot, Dify Workflow и другие. Плюс сторонние CLI из публичного реестра хаба.
Безопасно ли давать агенту такой CLI?
Небезопасно без ограничений: ханесс работает с вашими файлами и вашей установкой приложения, а не в песочнице. Практика — отдельный каталог или контейнер, лимит времени выполнения и подтверждение команд, которые пишут или удаляют данные.
Почему у проекта 56 тысяч звёзд, но мало коммитов?
Развитие идёт через пул-реквесты и форки сообщества: в новостях README десятки записей о принятых ханессах, а основная ветка обновляется редко. Поэтому смотреть надо на дату релиза конкретного ханесса, а не на счётчик коммитов в main.

Источники и официальные ссылки

Вердикт Qantcore
8,1/ 10
Сильная идея и зрелый реестр готовых ханессов, но не библиотека «поставил и забыл»: main почти не двигается, а качество отдельных ханессов разное. Лучший сценарий использования — взять готовый CLI из хаба для популярного приложения и держать его в изолированном окружении.
Дальше по теме
Разбираем, как устроены навыки агентов и какие инструменты дают им доступ к внешним системам.