Справочник команд CLI
Инструмент командной строки ErisPulse (epsdk) предоставляет функции управления проектами и пакетами.
Примечание: Детальное описание параметров для всех команд можно посмотреть с помощью
epsdk <команда> --help.
Команды управления пакетами
| Команда | Алиас | Параметры | Описание |
|---|---|---|---|
install |
i, add |
[пакет]... [--upgrade/-U] [--pre] [-e ПУТЬ] [--user] [--no-deps] [-t КАТАЛОГ] [--index-url URL] [--extra-index-url URL] [--no-cache-dir] [-r ФАЙЛ] [-c ФАЙЛ] [--force-reinstall] [--ignore-installed] [--compile/--no-compile] [--prefix КАТАЛОГ] [--src КАТАЛОГ] [--config-settings НАСТРОЙКИ] [--no-binary ФОРМАТ] [--only-binary ФОРМАТ] [--prefer-binary] [--build-isolation/--no-build-isolation] [--upgrade-strategy {eager,only-if-needed,to-satisfy-only}] [--break-system-packages] [--no-uv] |
Установка модуля/адаптера |
uninstall |
rm, remove |
<пакет>... [--no-uv] |
Удаление модуля/адаптера |
upgrade |
up |
[пакет]... [--force/-f] [--pre] [--no-uv] |
Обновление указанного модуля или всех |
self-update |
su, update |
[версия] [--pre] [--force/-f] [--no-uv] |
Обновление самого SDK |
Команды диагностики
| Команда | Алиас | Параметры | Описание |
|---|---|---|---|
doctor |
diag |
[--verbose] |
Диагностика среды и вывод отчета о состоянии |
install
Установка пакета модуля или адаптера ErisPulse. Если имя пакета не указано, запускается интерактивный интерфейс установки.
Алиас: i, add
Параметры:
| Параметр | Краткий | Описание |
|---|---|---|
[пакет]... |
Имя пакета для установки, можно указать несколько | |
--upgrade |
-U |
Обновление до последней версии при установке |
--pre |
Разрешить установку предварительных версий | |
--editable |
-e |
Установка в режиме редактирования (требуется указать путь) |
--user |
Установка в каталог site-packages пользователя | |
--no-deps |
Не устанавливать зависимости | |
--target |
-t |
Установка в указанный каталог |
--index-url |
Указание URL-адреса зеркала PyPI | |
--extra-index-url |
Дополнительный URL-адрес зеркала PyPI (можно указать несколько раз) | |
--no-cache-dir |
Отключение кэша | |
--requirement |
-r |
Установка из файла requirements |
--constraint |
-c |
Установка из файла constraint |
--force-reinstall |
Принудительная переустановка | |
--ignore-installed |
Игнорировать уже установленные пакеты | |
--compile |
Компиляция .pyc файлов после установки | |
--no-compile |
Не компилировать .pyc файлы после установки | |
--prefix |
Установка в указанный префикс каталога | |
--src |
Каталог исходного кода для установки в режиме редактирования | |
--config-settings |
Передача настроек сборочному бэкенду (можно указать несколько раз) | |
--no-binary |
Ограничение использования бинарных пакетов (формат: :all:) |
|
--only-binary |
Ограничение использования только бинарных пакетов (формат: :all:) |
|
--prefer-binary |
Предпочтение бинарных пакетов | |
--build-isolation |
Включение изоляции сборки | |
--no-build-isolation |
Отключение изоляции сборки | |
--upgrade-strategy |
Стратегия обновления: eager, only-if-needed, to-satisfy-only |
|
--break-system-packages |
Разрешить изменение системных пакетов | |
--no-uv |
Использование pip вместо uv |
Примеры:
# Установка одного модуля
epsdk install Weather
# Установка нескольких модулей
epsdk install Yunhu Weather
# Установка с обновлением из зеркала
epsdk install Weather -U --index-url https://pypi.tuna.tsinghua.edu.cn/simple
# Установка в режиме редактирования (для разработки)
epsdk install -e ./my-adapter
uninstall
Удаление установленного модуля или адаптера ErisPulse. Если имя пакета не указано, запускается интерактивный интерфейс удаления.
Алиас: rm, remove
Параметры:
| Параметр | Описание |
|---|---|
<пакет>... |
Имя пакета для удаления, можно указать несколько |
--no-uv |
Использование pip вместо uv |
Примеры:
# Удаление одного модуля
epsdk uninstall Weather
# Удаление нескольких модулей
epsdk uninstall Yunhu Weather
upgrade
Обновление установленных компонентов ErisPulse. Если имя пакета не указано, запускается интерактивное обновление всех.
Алиас: up
Параметры:
| Параметр | Краткий | Описание |
|---|---|---|
[пакет]... |
Имя пакета для обновления, можно указать несколько | |
--force |
-f |
Принудительное обновление, без подтверждения |
--pre |
Разрешить обновление до предварительных версий | |
--no-uv |
Использование pip вместо uv |
Примеры:
# Обновление всех пакетов
epsdk upgrade
# Обновление указанного пакета
epsdk upgrade Weather
# Принудительное обновление (без подтверждения)
epsdk upgrade -f
self-update
Обновление самого SDK ErisPulse до последней версии.
Алиас: su, update
Параметры:
| Параметр | Краткий | Описание |
|---|---|---|
[версия] |
Указание целевой версии для обновления | |
--pre |
Разрешить обновление до предварительных версий | |
--force |
-f |
Принудительное обновление, без подтверждения |
--no-uv |
Использование pip вместо uv |
Примеры:
# Обновление до последней стабильной версии
epsdk self-update
# Обновление до указанной версии
epsdk self-update 1.2.3
# Разрешить предварительные версии
epsdk self-update --pre
# Принудительное обновление
epsdk self-update -f
Note
При установке через uv tool install ErisPulse команда автоматически переходит на uv tool upgrade ErisPulse (при указании версии — uv tool install ErisPulse==<версия> --force), прямое обновление через pip приведёт к восстановлению среды uv из списка.
Обновление в Windows происходит в новом окне консоли: текущий CLI должен быть завершён для освобождения файлов среды инструмента, после завершения обновления перезапустите терминал.
Команды получения информации
| Команда | Алиас | Параметры | Описание |
|---|---|---|---|
list |
l, ls |
[--type/-t {modules,adapters,all}] [--outdated/-o] |
Вывод списка установленных компонентов |
list-remote |
lsr |
[--type/-t {modules,adapters,all}] [--refresh/-r] |
Вывод списка доступных компонентов в удалённом репозитории |
version |
ver |
Вывод информации о версиях SDK и Python (аналогично -V) |
list
Вывод списка установленных модулей и адаптеров ErisPulse.
Алиас: l, ls
Параметры:
| Параметр | Краткий | Описание |
|---|---|---|
--type |
-t |
Тип: modules, adapters, all (по умолчанию) |
--outdated |
-o |
Вывод только обновляемых пакетов |
Примеры:
# Вывод всех установленных компонентов
epsdk list
# Вывод только модулей
epsdk list -t modules
# Вывод только адаптеров
epsdk list -t adapters
# Вывод только обновляемых пакетов
epsdk list -o
list-remote
Вывод списка доступных модулей и адаптеров ErisPulse в удалённом репозитории.
Алиас: lsr
Параметры:
| Параметр | Краткий | Описание |
|---|---|---|
--type |
-t |
Тип: modules, adapters, all (по умолчанию) |
--refresh |
-r |
Принудительное обновление кэша списка пакетов |
Примеры:
# Вывод всех доступных компонентов
epsdk list-remote
# Вывод только модулей
epsdk list-remote -t modules
# Принудительное обновление кэша и вывод
epsdk list-remote -r
Команды настройки
| Команда | Алиас | Параметры | Описание |
|---|---|---|---|
config |
cfg, conf |
[имя] [--list/-l] |
Интерактивная настройка конфигурационных параметров адаптера/модуля |
config
Интерактивное заполнение конфигурационных параметров адаптера/модуля. Визуальный интерфейс генерируется на основе класса конфигурации (ConfigClass / AccountConfigClass), автоматически создаются формы и проводится проверка, без необходимости ручного редактирования config.toml.
Адаптеры дополнительно поддерживают управление несколькими аккаунтами (бот-аккаунтами): добавление/редактирование/удаление аккаунтов, а также включение/отключение.
Алиас: cfg, conf
Параметры:
| Параметр | Краткий | Описание |
|---|---|---|
[имя] |
Имя цели (название платформы адаптера или модуля), оставьте пустым для выбора | |
--list |
-l |
Вывод только состояния конфигурации всех целей, без запуска мастера |
Примеры:
# Вывод состояния конфигурации всех адаптеров/модулей
epsdk config --list
# Интерактивный выбор цели для настройки
epsdk config
# Непосредственная настройка указанного адаптера
epsdk config yunhu
# Непосредственная настройка указанного модуля
epsdk config MyModule
Описание:
- Состояние конфигурации делится на четыре уровня:
Готов(проверка пройдена),Незавершён(отсутствуют обязательные поля или проверка не пройдена),Не настроен(никогда не создавался),Без конфигурации(цель не объявляет класс конфигурации) - Значения полей снабжены пометками источника: уже настроенные отображаются как
(Текущее: значение), при отсутствии настройки отображается значение по умолчанию(По умолчанию: значение);просто нажмите Enter, чтобы сохранить текущее значение - Ввод значений секретных полей (объявленных как
secret) не отображается, нажатие Enter сохраняет установленное значение - В режиме выбора, после завершения одного мастера возвращается в меню выбора (состояние обновлено), можно настроить несколько целей, оставьте пустым для выхода
- При неудачной валидации формы и отказе от повторного заполнения мастер завершается и никакие конфигурации не записываются (избегает состояния "включено, но конфигурация не завершена")
- После сохранения конфигурация немедленно записывается в
config/config.toml, видна в Dashboard и работающем SDK; для применения новой конфигурации аккаунта в работающем адаптере перезапустите процесс - После успешной установки адаптера с помощью
epsdk install/epsdk init, если обнаружено объявление конфигурации, автоматически запускается мастер настройки; при установке по имени в командной строке выводится только подсказка о конфигурации
Команды управления запуском
Tip
epsdk run автоматически использует виртуальное окружение .venv в директории проекта для запуска робота
(также можно явно указать интерпретатор через переменную окружения ERISPULSE_PYTHON). epsdk install /
uninstall / upgrade / list также применяются к виртуальному окружению проекта.
| Команда | Алиас | Параметры | Описание |
|---|---|---|---|
run |
r |
[скрипт] [--reload] |
Запуск указанного скрипта или SDK |
run
Запуск скрипта проекта ErisPulse или прямой запуск SDK. Поддерживается режим горячей перезагрузки.
Алиас: r
Параметры:
| Параметр | Описание |
|---|---|
[скрипт] |
Файл скрипта для запуска, если не указан, запускается SDK |
--reload |
Включение режима горячей перезагрузки, мониторинг изменений файлов и автоматический перезапуск |
Примеры:
# Прямой запуск SDK
epsdk run
# Запуск указанного файла скрипта
epsdk run main.py
# Горячая перезагрузка (автоматический перезапуск при изменении файлов)
epsdk run main.py --reload
# Горячая перезагрузка SDK
epsdk run --reload
Команды управления проектом
| Команда | Алиас | Параметры | Описание |
|---|---|---|---|
init |
— | [путь] [--project-name/-n <имя>] [--path <каталог>] [--quick/-q] [--force/-f] [--here] [--no-uv] [--no-venv] |
Инициализация проекта ErisPulse |
create |
— | {module,adapter} [--name/-n <имя>] [--description/-d <описание>] [--author/-a <имя>] [--email/-e <почта>] [--homepage <url>] [--output/-o <каталог>] [--force/-f] |
Создание шаблона модуля/адаптера |
init
Инициализация нового проекта ErisPulse. Поддерживает интерактивный и быстрый режим, начиная с версии 2.8.4 генерирует pyproject.toml (список зависимостей), необязательно создание виртуального окружения .venv и установка фреймворка и адаптера, а также поддерживает указание любого каталога.
Параметры:
| Параметр | Краткий | Описание |
|---|---|---|
[путь] |
Целевой путь (может включать родительский каталог, например ../apps/mybot; чистое имя эквивалентно --project-name) |
|
--project-name |
-n |
Имя проекта |
--path |
Родительский каталог проекта (в сочетании с -n указывает место создания) |
|
--quick |
-q |
Быстрый режим, пропуск интерактивного мастера (по умолчанию создает .venv и устанавливает зависимости) |
--force |
-f |
Принудительное перезапись существующих файлов конфигурации |
--here |
Инициализация в текущем каталоге, без создания подкаталога | |
--no-uv |
Использование pip вместо uv | |
--no-venv |
Пропуск создания виртуального окружения и установки зависимостей |
Примеры:
# Интерактивная инициализация
epsdk init
# Быстрая инициализация (создание my_bot/ в текущем каталоге, с pyproject.toml + .venv)
epsdk init -q -n my_bot
# Инициализация в указанном каталоге (../apps/mybot)
epsdk init ../apps/mybot
# Комбинация родительского каталога и имени проекта
epsdk init -n my_bot --path ../apps
# Принудительная перезапись конфигурации
epsdk init -f
# Инициализация в текущем каталоге
epsdk init --here -n my_bot
# Создание структуры проекта без виртуального окружения
epsdk init --no-venv -n my_bot
Результат инициализации: main.py, pyproject.toml (список зависимостей), config/config.toml + config.full.example, config/ssl/, logs/, .gitignore, README.md; при выборе создания виртуального окружения дополнительно генерируется .venv и устанавливается erispulse и выбранные адаптеры в него.
Note
.gitignore представляет собой шаблон группированного исключения: байтовые файлы Python и результаты сборки, виртуальные окружения и .env, кэш инструментов, файлы редактора и системы, и полностью исключает каталоги config/ и logs/ — config.toml содержит токены адаптеров и другие чувствительные данные, не рекомендуется добавлять в репозиторий; для совместного использования шаблона конфигурации используйте config.full.example.
Warning
Не используйте uv run epsdk run для запуска робота. uv run в каталоге без pyproject.toml создает одноразовую изолированную среду — в ней установленные адаптеры с помощью epsdk install не сохраняются. Запускайте робота в каталоге проекта с помощью epsdk run (автоматически использует .venv проекта), или активируйте виртуальное окружение перед запуском.
create
Создание шаблона проекта модуля или адаптера ErisPulse.
Параметры:
| Параметр | Краткий | Описание |
|---|---|---|
{module,adapter} |
Тип создаваемого проекта: module или adapter |
|
--name |
-n |
Имя проекта (в стиле PascalCase) |
--description |
-d |
Описание проекта |
--author |
-a |
Имя автора |
--email |
-e |
Email автора |
--homepage |
URL-адрес проекта | |
--output |
-o |
Каталог вывода (по умолчанию текущий каталог) |
--force |
-f |
Принудительная перезапись существующего каталога |
--local |
Создание локального плагина (доступно только для module): генерирует структуру пакета plugins/<имя>/, без упаковки и установки |
Примеры:
# Интерактивное создание (вывод мастера выбора типа и заполнения информации)
epsdk create
# Создание проекта модуля
epsdk create module -n MyModule
# Создание локального плагина (в директорию `plugins/`, автоматически обнаруживается при запуске, поддерживает горячую перезагрузку)
epsdk create module -n MyModule --local
# Создание проекта адаптера
epsdk create adapter -n MyAdapter
# Полный набор параметров
epsdk create module -n MyModule -d "Описание модуля" -a "Автор" -e "[email protected]"
# Указание каталога вывода
epsdk create module -n MyModule -o ./projects
# Принудительная перезапись существующего каталога
epsdk create module -n MyModule -f
Команды языкового пакета
| Команда | Алиас | Параметры | Описание |
|---|---|---|---|
i18n |
language, lang |
[язык] [--list/-l] |
Просмотр или переключение языка отображения CLI |
i18n
Просмотр текущего языка CLI, вывод списка поддерживаемых языков, переключение языка отображения. Если параметр не указан, запускается интерактивный выбор.
Алиас: language, lang
Параметры:
| Параметр | Краткий | Описание |
|---|---|---|
[язык] |
Код языка для переключения (например, zh-CN, en, ja, ru) |
|
--list |
-l |
Вывод списка всех поддерживаемых языков |
Примеры:
# Интерактивный выбор языка
epsdk i18n
# Переключение на английский
epsdk i18n en
# Переключение на японский
epsdk i18n ja
# Вывод всех поддерживаемых языков
epsdk i18n --list
Команды генерации типовых файлов
| Команда | Алиас | Параметры | Описание |
|---|---|---|---|
types |
t, stub |
[--output/-o <путь>] [--force] [--adapters-only] [--modules-only] |
Генерация файлов типов для поддержки автодополнения IDE |
types
Сканирование установленных модулей и адаптеров ErisPulse, генерация файлов .pyi типов, для получения точного автодополнения и проверки типов в IDE.
Алиас: t, stub
Параметры:
| Параметр | Краткий | Описание |
|---|---|---|
--output |
-o |
Путь вывода (по умолчанию ep-stubs/ в текущем каталоге) |
--force |
Принудительная перезапись существующих файлов типов | |
--adapters-only |
Генерация только типов адаптеров | |
--modules-only |
Генерация только типов модулей |
Примечание: Параметры
--adapters-onlyи--modules-onlyвзаимоисключаются, при одновременном указании применяется последний.
Примеры:
# Генерация типов для всех установленных модулей и адаптеров
epsdk types
# Генерация только типов адаптеров
epsdk types --adapters-only
# Вывод в указанный каталог
epsdk types -o ./typings
# Принудительная перезапись существующих файлов
epsdk types --force
Глобальные параметры
Следующие параметры применимы ко всем командам:
| Параметр | Краткий | Описание |
|---|---|---|
--help |
-h |
Показать справку |
--version |
-V |
Показать версию |
--verbose |
-v |
Показать подробный вывод (можно использовать -vv/-vvv) |
--no-color |
Отключить цветной вывод (подходит для CI / сбора логов) | |
--no-banner |
Пропустить заголовок при запуске (для скриптов / CI; в неинтерактивных терминалах и при ERISPULSE_NO_BANNER=1 автоматически отключается) |
|
--yes |
-y |
Автоматически подтверждать все интерактивные запросы (для неинтерактивного выполнения) |
Диагностика окружения
doctor
Note
Эта команда требует ErisPulse 2.7.0+.
Диагностика текущей среды CLI, вывод отчета о состоянии. Используется для устранения проблем типа "почему не устанавливается / не подключается".
| Параметр | Описание |
|---|---|
--verbose |
Показать подробную диагностику |
Проверяемые элементы:
- Python: версия и путь интерпретатора
- Установочный бэкенд: используется
uvилиpip - Целевой интерпретатор: среда Python, куда установлены пакеты
- Конфигурационный файл: существует ли
config/config.toml - Доступность PyPI: можно ли подключиться к PyPI (и сколько найдено компонентов)
- Системный прокси: обнаружен ли прокси
# Диагностика среды
epsdk doctor
# Использование алиаса
epsdk diag
Интерактивная установка
Запуск epsdk install без указания имени пакета приводит к интерактивной установке:
epsdk install
Интерфейс предоставляет:
- Выбор адаптера
- Выбор модуля
- Настройка установки
Распространённые способы использования
Установка модуля
# Установка одного модуля
epsdk install Weather
# Установка нескольких модулей
epsdk install Yunhu Weather
# Обновление модуля
epsdk install Weather -U
Вывод списка компонентов
# Вывод всех компонентов
epsdk list
# Вывод только адаптеров
epsdk list -t adapters
# Вывод только обновляемых компонентов
epsdk list -o
# Просмотр доступных компонентов в удалённом репозитории
epsdk list-remote
Удаление компонентов
# Удаление одного компонента
epsdk uninstall Weather
# Удаление нескольких компонентов
epsdk uninstall Yunhu Weather
Настройка компонентов
# Просмотр состояния конфигурации
epsdk config --list
# Интерактивный выбор цели для настройки
epsdk config
# Настройка указанного адаптера
epsdk config yunhu
Обновление компонентов
# Обновление всех компонентов
epsdk upgrade
# Обновление указанного компонента
epsdk upgrade Weather
# Принудительное обновление
epsdk upgrade -f
Запуск проекта
# Обычный запуск
epsdk run main.py
# Запуск с горячей перезагрузкой
epsdk run main.py --reload
Смена языка
# Интерактивный выбор языка
epsdk i18n
# Непосредственная смена на английский
epsdk i18n en
# Вывод поддерживаемых языков
epsdk i18n --list
Генерация типов
# Генерация всех типов
epsdk types
# Генерация только типов модулей
epsdk types --modules-only
Инициализация проекта
# Интерактивная инициализация
epsdk init
# Быстрая инициализация
epsdk init -q -n my_bot
Создание шаблона
# Интерактивное создание (вывод мастера выбора типа и заполнения информации)
epsdk create
# Непосредственное создание проекта модуля
epsdk create module -n MyModule
# Непосредственное создание проекта адаптера
epsdk create adapter -n MyAdapter
# Полный набор параметров
epsdk create module -n MyModule -d "Описание модуля" -a "Автор" -e "[email protected]"
# Принудительная перезапись существующего каталога
epsdk create module -n MyModule -f