简体中文 English 繁體中文 日本語 Русский
本文为静态镜像,内容以交互版为准 在交互式文档中心打开 →

Справочник команд 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

Описание:


Команды управления запуском

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 Показать подробную диагностику

Проверяемые элементы:

# Диагностика среды
epsdk doctor

# Использование алиаса
epsdk diag

Интерактивная установка

Запуск epsdk install без указания имени пакета приводит к интерактивной установке:

epsdk install

Интерфейс предоставляет:

  1. Выбор адаптера
  2. Выбор модуля
  3. Настройка установки

Распространённые способы использования

Установка модуля

# Установка одного модуля
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