CLI Printing Press — плагин

Генератор CLI и MCP-серверов на Go по документации или сайту API: /printing-press собирает утилиту с локальной базой SQLite

  • 4 870 ★ репозитория
  • Последний коммит
  • MIT
Плагин

Широкий доступ

Почему такой уровень

  • Установщик выполняется как `curl | bash`, запускает `go install` и ставит скиллы глобально в агента
  • Скилл записывает трафик сайтов через браузер и вызывает API сервисов с вашей авторизацией
  • Агент пишет и запускает сгенерированный код на Go, а публикация утилиты открывает PR в общую библиотеку
Все причины и проверки

mvanhorn/cli-printing-press

Установка

Работает в

В терминале, через SkillFoxx CLI

npx skillfoxx add plugins/cli-printing-press

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Установщик выполняется как `curl | bash`, запускает `go install` и ставит скиллы глобально в агента
  • Скилл записывает трафик сайтов через браузер и вызывает API сервисов с вашей авторизацией
  • Агент пишет и запускает сгенерированный код на Go, а публикация утилиты открывает PR в общую библиотеку

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

CLI Printing Press состоит из двух частей: бинарника `cli-printing-press` на Go и набора скиллов. Главный скилл вызывается командой `/printing-press <приложение>` в Claude Code и ведет работу по фазам. Сначала он читает официальную документацию, ищет готовые плагины, MCP-серверы и консольные утилиты для того же API и складывает все найденные функции в список, который новый инструмент должен повторить и превзойти. Если документации нет, скилл запускает браузер, записывает трафик сайта, восстанавливает по нему описание API или принимает файл HAR. На выходе получаются два бинарника: `<api>-pp-cli` и `<api>-pp-mcp`. Первый служит консольной утилитой для людей и агентов, второй MCP-сервером с теми же операциями. Данные API можно синхронизировать в локальную SQLite с полнотекстовым поиском, поэтому в утилите появляются составные команды вроде `stale`, `health` и `reconcile`, которые обычная обертка над запросами выполнить не может. Утилита выдает JSON при выводе в канал, режим `--compact` для экономии токенов, `--dry-run` и типизированные коды выхода. Установка идет скриптом, который выполняет `go install` для генератора и подтягивает скиллы через `skills@latest`. Для готового результата есть шаги проверки: карточка оценки, прогон на самом себе, проверка поведения и необязательная живая проверка с запросами только на чтение. Остальные скиллы набора доводят результат (`printing-press-polish`), публикуют его в общую библиотеку (`printing-press-publish`), пересобирают старые утилиты и разбирают сессию, чтобы превратить найденные недочеты в правку.

Для кого. Для разработчиков и энтузиастов агентов, которым нужна готовая консольная утилита и MCP-сервер для API, у которого их нет или они неполные.

Подходит, если

  • У нужного сервиса нет удобной консольной утилиты, и агенту приходится каждый раз писать запросы вручную
  • Нужно держать данные API в локальной базе и искать по ним без обращения к сети
  • У сервиса нет публичной спецификации, но есть сайт, и по трафику сайта нужно восстановить API
  • Нужен и CLI для оболочки, и MCP-сервер для Claude Desktop, Cursor или Cline из одного описания
  • Существующая утилита сервиса неполная, и ее нужно пересобрать с учетом функций конкурентов

Не подходит, если

  • Нужно просто вызвать несколько методов по готовой OpenAPI-спецификации без генерации кода: для этого ближе OpenAPI to CLI из каталога
  • Нужен интерфейс к программе с графическим окном, а не к веб-API: для этого есть CLI-Anything
  • На машине нет Go 1.26.9 или новее либо Node с npm: без них установщик не отработает
  • Нельзя записывать трафик сайта или тратить токены на многофазный прогон: фазы исследования идут долго и расходуют запросы к модели

Пример запроса к агенту

/printing-press Linear

Ограничения

Лицензия MIT. Нужны Go 1.26.9 или новее, Node с npm и поддерживаемый агент. Автор проверял скиллы в Claude Code и советует его же для лучшего результата, а для Codex установка идет с флагом `--agent codex`.

  • Установщик запускается как `curl ... | bash` и выполняет `go install`, затем ставит скиллы глобально в агента.
  • Готовые утилиты и рабочие файлы складываются в `~/printing-press/`, а активные запуски идут в скрытой папке `.runstate`.
  • По таблице фаз автора один полный прогон занимает от 29 до 63 минут, и почти все это время работает модель.
  • Режим `codex` переносит генерацию кода в Codex CLI и после трех подряд неудач возвращается к локальной генерации.
  • Бинарник называется `cli-printing-press`: старое имя `printing-press` работает для совместимости, но команды `list`, `search` и `install` теперь принадлежат установщику общей библиотеки.

Как отключить. Удалите бинарник `cli-printing-press` из `$GOPATH/bin`. Список установленных скиллов выводит `npx -y skills@latest list -g -a claude-code` (для Codex укажите `-a codex`). Уберите их из папки агента и перезапустите его. Созданные утилиты и их данные лежат в `~/printing-press/` и удаляются отдельно.

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

Что получится на выходе одного запуска?

Два бинарника, `<api>-pp-cli` и `<api>-pp-mcp`, документы исследования, подтверждения проверок и оценка качества. Опубликованные утилиты попадают в `~/printing-press/library/<api>`.

Как это работает, если у сервиса нет спецификации?

Есть три входа: файл OpenAPI через `--spec`, адрес сайта, по которому браузер записывает трафик и восстанавливает API, или файл HAR через `--har`. Все найденное сохраняется в папке `discovery/` вместе с исследованием.

Зачем в утилите локальная SQLite?

Команда `sync` забирает данные API, `search` находит их через полнотекстовый индекс за миллисекунды, а `sql` дает прямые запросы. Составные команды вроде `bottleneck` соединяют несколько ресурсов и анализируют историю.

Какие скиллы входят в набор?

Девять: основной `printing-press`, а также `printing-press-polish`, `printing-press-publish`, `printing-press-amend`, `printing-press-reprint`, `printing-press-retro`, `printing-press-score`, `printing-press-import` и `printing-press-output-review`.

Что дает режим codex?

Запись `/printing-press HubSpot codex` отдает написание кода Codex CLI, а Claude отвечает за исследование, планирование и оценку. Автор называет экономию в 60 процентов токенов Opus.

Какие коды выхода у сгенерированных утилит?

0 для успеха, 2 для ошибки использования, 3 для ненайденного, 4 для авторизации, 5 для ошибки API и 7 для лимита запросов. По ним агент исправляется без разбора текста ошибки.

Обсуждение

Вопросов и отзывов пока нет.

Плагины

clihub превращает любой MCP-сервер в готовый CLI: каждый инструмент становится подкомандой, а на выходе один статический бинарник без зависимостей

CLIШирокий доступ666Звезды репозитория

Плагин со скиллами для сборки MCP-серверов и MCP-приложений на TypeScript: агент создает, дорабатывает, отлаживает и проверяет их

ПлагинРасширенный доступ10,8 тыс.Звезды репозитория

CLI собирает готовый MCP-сервер на TypeScript из спецификации OpenAPI 3: инструменты, валидация и авторизация генерируются сами

CLIРасширенный доступ643Звезды репозитория

MCP-сервер, который дает агенту поиск по большому руководству Claude Code, официальной документации, релизам и готовым шаблонам

MCP-серверРасширенный доступ6,3 тыс.Звезды репозитория

Легкий CLI, чтобы находить, смотреть и вызывать инструменты MCP-серверов прямо из командной строки

CLIРасширенный доступ1,3 тыс.Звезды репозитория

Команда /skill-creator превращает ссылку на OpenAPI, GraphQL или MCP-сервер в готовый скилл с обертками и справочными файлами.

CLIШирокий доступ622Звезды репозитория

Сравнение с похожими

Записи с тем же главным запросом: чем они отличаются.

ЗаписьОфициальныйЗвезды репозиторияГлавное отличие
CLI Printing Press (эта запись)нет4 870
OpenAPI to CLI (ocli)нет267превращает готовую спецификацию OpenAPI в команды без кодогенерации и с поиском по BM25
CLI-Anythingнет57 594генерирует командный интерфейс к программам с графическим окном вроде GIMP и Blender

Коротко о README

Описание на английском объясняет замысел: хорошая консольная утилита экономит агенту время и токены. Затем идут установка в два шага, пример запуска в Claude Code и свернутые разделы про режим Codex, доработку, публикацию и правку по итогам сессии. Дальше показано, чем сгенерированные утилиты отличаются от обычных оберток, как на примерах Discord и Linear строится замысел каждой из них, как устроены фазы работы и что создается. Завершают таблицы типов предметной области и раздел проверок. В репозитории лежат код генератора на Go, девять скиллов, манифесты плагина, документы `docs/CODEX.md` и `docs/CURSOR.md` и скрипты проверки цепочки поставок.

Бейдж для README

Сообщить о проблеме

Foxx AICLI Printing Press
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.