CLI Printing Press — плагин
Генератор CLI и MCP-серверов на Go по документации или сайту API: /printing-press собирает утилиту с локальной базой SQLite
- 4 870 ★ репозитория
- Последний коммит
- MIT
Широкий доступ
Почему такой уровень
- Установщик выполняется как `curl | bash`, запускает `go install` и ставит скиллы глобально в агента
- Скилл записывает трафик сайтов через браузер и вызывает API сервисов с вашей авторизацией
- Агент пишет и запускает сгенерированный код на Go, а публикация утилиты открывает PR в общую библиотеку
Установка
- Работает в
В терминале, через 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: каждый инструмент становится подкомандой, а на выходе один статический бинарник без зависимостей
Плагин со скиллами для сборки MCP-серверов и MCP-приложений на TypeScript: агент создает, дорабатывает, отлаживает и проверяет их
CLI собирает готовый MCP-сервер на TypeScript из спецификации OpenAPI 3: инструменты, валидация и авторизация генерируются сами
MCP-сервер, который дает агенту поиск по большому руководству Claude Code, официальной документации, релизам и готовым шаблонам
Легкий CLI, чтобы находить, смотреть и вызывать инструменты MCP-серверов прямо из командной строки
skill-creator — скиллы из OpenAPI, GraphQL и MCP
@asnd/skill-creator
Команда /skill-creator превращает ссылку на OpenAPI, GraphQL или MCP-сервер в готовый скилл с обертками и справочными файлами.
Сравнение с похожими
Записи с тем же главным запросом: чем они отличаются.
| Запись | Официальный | Звезды репозитория | Главное отличие |
|---|---|---|---|
| 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` и скрипты проверки цепочки поставок.