init
Назначение
Команда init создаёт рабочую область — директорию с файлом конфигурации swag2mcp.yaml и поддиректориями для кэша, спецификаций, ответов и скриптов аутентификации. Это первая команда, которую нужно выполнить при настройке swag2mcp.
Когда использовать
- Вы настраиваете swag2mcp впервые
- Вы хотите создать новую рабочую область в определённой директории
- Вам нужно пересоздать повреждённую или отсутствующую рабочую область
Синтаксис
bash
swag2mcp init [path] [flags]Аргументы
| Аргумент | Позиция | Обязательно | Описание |
|---|---|---|---|
path | 1 | Нет | Директория рабочей области. Если не указан, по умолчанию ~/.swag2mcp. |
Флаги
| Флаг | Сокращение | Тип | По умолчанию | Описание |
|---|---|---|---|---|
--interactive | -i | bool | false | Запустить интерактивный TUI-мастер |
--force | -f | bool | false | Перезаписать существующую конфигурацию в непустой директории |
Как это работает
Неинтерактивный режим (по умолчанию)
Создаёт минимальный 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-мастер, который проведёт вас через:
- Выбор директории рабочей области
- Добавление спецификаций с доменом, названием, базовым URL
- Настройку коллекций с URL location
- Настройку аутентификации (все 9 методов)
- Настройку 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/. - Проверка на непустую директорию: Без
--forceinitвозвращает ошибку, если целевая директория существует и не пуста. Это предотвращает случайную перезапись. - Заглушки скриптов аутентификации: Если какая-либо спецификация использует
ScriptAuth,initсоздаёт файлы-заглушки скриптов (.shна Unix,.batна Windows) вauth_scripts/. - Вывод: При успехе выводит путь к конфигу и подсказку:
"Next step: edit swag2mcp.yaml or run 'swag2mcp ls' to list configured specs".