Skip to content

init

Назначение

Команда init создаёт рабочую область — директорию с файлом конфигурации swag2mcp.yaml и поддиректориями для кэша, спецификаций, ответов и скриптов аутентификации. Это первая команда, которую нужно выполнить при настройке swag2mcp.

Когда использовать

  • Вы настраиваете swag2mcp впервые
  • Вы хотите создать новую рабочую область в определённой директории
  • Вам нужно пересоздать повреждённую или отсутствующую рабочую область

Синтаксис

bash
swag2mcp init [path] [flags]

Аргументы

АргументПозицияОбязательноОписание
path1НетДиректория рабочей области. Если не указан, по умолчанию ~/.swag2mcp.

Флаги

ФлагСокращениеТипПо умолчаниюОписание
--interactive-iboolfalseЗапустить интерактивный TUI-мастер
--force-fboolfalseПерезаписать существующую конфигурацию в непустой директории

Как это работает

Неинтерактивный режим (по умолчанию)

Создаёт минимальный swag2mcp.yaml без спецификаций. Вы редактируете файл вручную после.

bash
swag2mcp init
# Создаёт ~/.swag2mcp/swag2mcp.yaml

swag2mcp init ./my-project
# Создаёт ./my-project/swag2mcp.yaml

swag2mcp init /absolute/path
# Создаёт /absolute/path/swag2mcp.yaml

Интерактивный режим (-i)

Не рекомендуется для обычного использования. Этот режим предназначен для тех, кто не знаком с YAML. Написание конфигурационного файла напрямую — быстрее и надёжнее.

Запускает 18-шаговый TUI-мастер, который проведёт вас через:

  1. Выбор директории рабочей области
  2. Добавление спецификаций с доменом, названием, базовым URL
  3. Настройку коллекций с URL location
  4. Настройку аутентификации (все 9 методов)
  5. Настройку HTTP-клиента (таймаут, прокси, заголовки и т.д.)
bash
swag2mcp init -i

Принудительный режим (--force)

По умолчанию init отказывается работать в непустой директории. Используйте --force для перезаписи:

bash
swag2mcp init -f
swag2mcp init ./existing-dir -f

Что создаётся

~/.swag2mcp/
├── swag2mcp.yaml       # Файл конфигурации
├── cache/               # Скачанные удалённые файлы спецификаций
├── specs/               # Локальные файлы спецификаций
├── responses/           # Сохранённые ответы на вызовы API
└── auth_scripts/        # Скрипты аутентификации (для типа ScriptAuth)

Проверка после команды

bash
ls ~/.swag2mcp/swag2mcp.yaml
# Если файл существует, init выполнен успешно

Нюансы

  • Разрешение пути: [path] — это директория рабочей области, а не путь к файлу. CLI автоматически добавляет swag2mcp.yaml. Порядок разрешения: явный [path] → текущая директория (./) → ~/.swag2mcp/.
  • Проверка на непустую директорию: Без --force init возвращает ошибку, если целевая директория существует и не пуста. Это предотвращает случайную перезапись.
  • Заглушки скриптов аутентификации: Если какая-либо спецификация использует ScriptAuth, init создаёт файлы-заглушки скриптов (.sh на Unix, .bat на Windows) в auth_scripts/.
  • Вывод: При успехе выводит путь к конфигу и подсказку: "Next step: edit swag2mcp.yaml or run 'swag2mcp ls' to list configured specs".