OpenAPI to CLI (ocli)
Превращает любой API с OpenAPI или Swagger в команды CLI без кодогенерации, с поиском эндпоинтов по BM25
- 267 ★ репозитория
- Последний коммит
- MIT
Расширенный доступ
Почему такой уровень
- Выполняет реальные HTTP-запросы к API, включая POST, PUT и DELETE
- Хранит токены и учетные данные в профилях
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add cli/openapi-to-cli-ocliОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Выполняет реальные HTTP-запросы к API, включая POST, PUT и DELETE
- Хранит токены и учетные данные в профилях
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
ocli читает спецификацию OpenAPI или Swagger и во время выполнения превращает эндпоинты в команды CLI. Агент ищет нужную команду запросом на естественном языке или регуляркой, смотрит параметры через --help и вызывает API. Профили хранят базовый URL, Bearer или Basic авторизацию и свои заголовки, спецификация кэшируется локально. Автор позиционирует это как легкую альтернативу MCP: по бенчмарку в README накладные расходы около 158 токенов на ход.
Для кого. Разработчикам, которые хотят дать агенту доступ к REST API без написания MCP-сервера.
Подходит, если
- У внутреннего или облачного API есть спецификация OpenAPI, а MCP-сервера нет
- API большое, сотни эндпоинтов, и описания инструментов MCP съедают контекст
- Нужно вызывать API из shell-скриптов и цепочек команд
- Работаете с несколькими API через разные профили
Не подходит, если
- Нужна авторизация OAuth2: ocli ее не поддерживает
- Требуется централизованная авторизация или общее состояние: здесь лучше MCP
- API описан через GraphQL, а не OpenAPI
Пример запроса к агенту
Подключи наш API по спецификации https://api.example.com/openapi.json через ocli и найди команду для создания заказаОграничения
Нет OAuth2, фильтрации ответа через jq и структурированного JSON-вывода, нет поддержки MCP и GraphQL. Неизвестные флаги отклоняются, кроме тел запросов, для которых спецификация не описывает схему.
Как отключить. Удалите пакет командой npm uninstall -g openapi-to-cli, папку профилей .ocli и файл скилла из .claude/skills.
Частые вопросы
Как подключить ocli к Claude Code?
Скопируйте пример скилла командой cp examples/skill-ocli-api.md .claude/skills/api.md.
Скачивается ли спецификация при каждом вызове?
Нет, она кэшируется в .ocli/specs/<profile>.json. Чтобы обновить, повторите ocli profiles add с тем же именем профиля.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыCLI, который на лету превращает любой MCP-сервер, спецификацию OpenAPI или GraphQL-эндпоинт в набор команд без генерации кода
Десять принципов для CLI, которым пользуются агенты, и скилл, по которому агент строит и проверяет такие утилиты
Плагин-оркестратор для OpenCode и Codex CLI: несколько агентов, хуки, встроенные MCP, режим ultrawork и правки по хешам строк
Реестр скиллов с CLI и API: агент описывает задачу и получает рекомендацию с оценкой доверия и командой установки
OpenRig
openrig
CLI для постоянных команд агентов Claude Code и Codex: команда описывается в YAML и запускается одной командой, с ролями и мониторингом
Прокси от Open WebUI, который публикует любой MCP-сервер как HTTP API со схемой OpenAPI
Сравнение с похожими
Записи с тем же главным запросом: чем они отличаются.
| Запись | Официальный | Звезды репозитория | Главное отличие |
|---|---|---|---|
| OpenAPI to CLI (ocli) (эта запись) | нет | 267 | |
| CLI Printing Press | нет | 4 870 | генератор CLI и MCP-серверов на Go по документации или сайту API |
| Kubb | да | 1 831 | плагин Claude Code для Kubb |
| Orval — скилл для агентов | да | 6 566 | официальный скилл Orval |
Коротко о README
openapi-to-cli это TypeScript CLI, который превращает API из спецификации OpenAPI или Swagger в набор команд без генерации кода. README объясняет, где CLI уместнее MCP и скиллов, и приводит бенчмарк расхода токенов. Описаны профили, авторизация, строгая проверка флагов, поддержка внешних $ref и сложной сериализации параметров. Есть готовые скиллы для OpenClaw и Claude Code и сравнение с аналогами.
Бейдж для README
Исходный SKILL.md
---
name: ocli-api
description: Turn any OpenAPI/Swagger API into CLI commands and call them. Search endpoints with BM25, check parameters, execute — no MCP server needed.
version: 1.0.0
user-invocable: true
disable-model-invocation: false
metadata: {"openclaw":{"emoji":"🔌","requires":{"bins":["ocli"],"env":[]}}}
homepage: https://github.com/EvilFreelancer/openapi-to-cli
---
# ocli — OpenAPI to CLI
Call any HTTP API described by an OpenAPI/Swagger spec as CLI commands.
No MCP server, no code generation, no JSON schemas in context.
## When to use
- You need to call a REST API (internal, cloud, SaaS)
- You have an OpenAPI or Swagger spec (URL or local file)
- You want minimal token overhead (1 tool, ~158 tokens/turn)
## Setup (one-time)
```bash
npm install -g openapi-to-cli
ocli profiles add <name> \
--api-base-url <BASE_URL> \
--openapi-spec <SPEC_URL_OR_PATH> \
--api-bearer-token "$TOKEN"
ocli use <name>
```
## Workflow
1. **Search** for the right command:
```bash
ocli commands --query "your task description" --limit 5
```
2. **Check parameters** of the chosen command:
```bash
ocli <command> --help
```
3. **Execute** the command:
```bash
ocli <command> --param1 value1 --param2 value2
```
4. **Parse** the JSON response and act on the result.