OpenAPI to CLI (ocli)

Превращает любой API с OpenAPI или Swagger в команды CLI без кодогенерации, с поиском эндпоинтов по BM25

  • 267 ★ репозитория
  • Последний коммит
  • MIT
CLI

Расширенный доступ

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

  • Выполняет реальные HTTP-запросы к API, включая POST, PUT и DELETE
  • Хранит токены и учетные данные в профилях
Все причины и проверки

evilfreelancer/openapi-to-cli

Установка

Работает в

В терминале, через 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, который на лету превращает любой MCP-сервер, спецификацию OpenAPI или GraphQL-эндпоинт в набор команд без генерации кода

CLIШирокий доступ2,4 тыс.Звезды репозитория

Десять принципов для CLI, которым пользуются агенты, и скилл, по которому агент строит и проверяет такие утилиты

СкиллМинимальный доступ2,3 тыс.Звезды репозитория

Плагин-оркестратор для OpenCode и Codex CLI: несколько агентов, хуки, встроенные MCP, режим ultrawork и правки по хешам строк

ПлагинШирокий доступ70,4 тыс.Звезды репозитория

Реестр скиллов с CLI и API: агент описывает задачу и получает рекомендацию с оценкой доверия и командой установки

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

OpenRig

openrig

CLI для постоянных команд агентов Claude Code и Codex: команда описывается в YAML и запускается одной командой, с ролями и мониторингом

CLIШирокий доступ8,3 тыс.Звезды репозитория

Прокси от Open WebUI, который публикует любой MCP-сервер как HTTP API со схемой OpenAPI

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

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

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

ЗаписьОфициальныйЗвезды репозиторияГлавное отличие
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.

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

Foxx AIOpenAPI to CLI (ocli)
Foxx AI

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