Quick Start
This is your first step. Get an ErisPulse robot up and running in 5 minutes from scratch.
Installing ErisPulse
One-Click Installation Script (Recommended)
The installation script automatically detects your environment (Docker, Python, uv) and guides you to choose the most suitable installation method.
Windows (PowerShell):
irm https://get.erisdev.com/install.ps1 -OutFile install.ps1; powershell -ExecutionPolicy Bypass -File install.ps1
macOS / Linux:
curl -fsSL https://get.erisdev.com/install.sh -o install.sh && chmod +x install.sh && ./install.sh
The script will guide you through:
- Docker Installation (recommended if Docker is detected): Select image source (Docker Hub / GHCR), version channel (Stable / Pre-release), Dashboard management panel configuration, port settings
- Traditional Installation: Automatically create a virtual environment, select ErisPulse version, optionally install the Dashboard management panel module
Using Docker
The Docker image comes with the ErisPulse framework and Dashboard management panel built-in.
# Download docker-compose.yml
curl -O https://raw.githubusercontent.com/ErisPulse/ErisPulse/main/docker-compose.yml
# Set Dashboard token and start
ERISPULSE_DASHBOARD_TOKEN=your-token docker compose up -d
Is Docker Hub unavailable?
Use the GitHub Container Registry image by modifying the image in docker-compose.yml:
image: ghcr.io/erispulse/erispulse:latest
After starting, access http://<host>:8000/Dashboard and log in using the configured token.
Using pip Installation
Ensure your Python version is >= 3.10, then install using pip:
pip install ErisPulse
If you have uv installed, you can also use uv pip install ErisPulse, which installs faster.
If you only want to install the epsdk command-line tool globally without polluting the project environment, use uv tool install:
uv tool install ErisPulse
After installation, epsdk will be globally available: when running in a project directory, it will automatically detect the project's .venv (use epsdk install to install into the project environment, and epsdk run to run using the project environment); the framework itself is provided by the tool environment. See Installation Reference for more details.
Initialize Project
Interactive Initialization (Recommended)
epsdk init
This will start an interactive wizard that guides you through:
- Project name setting
- Log level configuration
- Server configuration (host and port)
- Adapter selection and configuration
- Project structure creation
Quick Initialization
# Quick mode with a specified project name
epsdk init -q -n my_bot
# Or just specify the project name
epsdk init -n my_bot
Manual Project Creation
If you prefer to create the project manually:
mkdir my_bot && cd my_bot
epsdk init
Installing Modules
Installing via CLI
epsdk install Yunhu AIChat
Viewing Available Modules
epsdk list-remote
Interactive Installation
Without specifying a package name, enter the interactive installation interface:
epsdk install
Running the Project
# Run normally
epsdk run main.py
# Hot reload mode (recommended for development)
epsdk run main.py --reload
Enable IDE Completion (Optional)
ErisPulse dynamically discovers modules/adapters, and IDEs cannot complete platform-specific methods by default.
Run the following command to generate type stubs:
epsdk types
After generation, use the imported types as variable annotations to obtain precise completion (see IDE Completion Guide):
from _ep_types import Yunhu
from ErisPulse import sdk
adapter: Yunhu = sdk.adapter.get("yunhu")
await adapter.Send.To("group", "123").Board(...) # Completion for platform-specific methods
Project Structure
After initialization, the project structure is as follows:
my_bot/
├── config/
│ └── config.toml # Configuration file
└── main.py # Entry file
Configuration File
Basic config.toml configuration:
[ErisPulse.server]
host = "0.0.0.0"
port = 8000
[ErisPulse.logger]
level = "INFO"
[Yunhu_Adapter]
# Adapter configuration
Next Steps
After the bot is running, you can proceed as needed:
Want to understand how the framework works?
- Basic Concepts — Design of Adapters / Modules / Events
- Architecture Overview — Visual architecture diagram
Want to implement more features?
- Common Tasks Examples — Storage, scheduled tasks, permission control
- Event Handling Introduction — Message, notification, request handling
Want to develop your own module / adapter?
Check as needed: