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

ErisPulse Documentation

ErisPulse is an extensible, multi-platform message processing framework that supports interaction with various platforms through adapters, providing a flexible module system for functional extension.

First time using? Just check out the 5-Minute Quick Start —— from installation to running your first bot, all in one go.


Choose Your Path

Based on your goals, select the corresponding learning path. Each path is arranged from basic to advanced.

I. I Want to Use a Robot

Get the robot running, install modules, and configure it.

Progress Document Description
① Getting Started 5-Minute Quick Start Installation, initialization, and running — the only entry point to get started
App Direct Install ErisPulse-App Client Official cross-platform client: run and manage directly via mobile/PC graphical interface, no terminal required
② In-Depth Create Your First Bot Write your first command handler
③ Concepts Basic Concepts Understand the design of adapters/modules/events
④ Practical Common Task Examples Storage, scheduled tasks, permission control
Reference Configuration File Guide · CLI Commands · Deployment Guide Consult as needed
Reference Platform Features Guide Differences among platforms (Yunhu/QQ/Telegram…)

II. I Want to Develop Modules / Adapters

Develop distributable extensions for ErisPulse.

Type Beginner Advanced
Module Development (Recommended) Module Development Getting Started Core Concepts · Event Wrapper · Best Practices
Adapter Development Adapter Development Getting Started Core Concepts · SendDSL Explained · Event Converters · Best Practices
Technical Standards Standards Overview Adapter development must follow the Session Types · Event Conversion · Send Methods · API Responses · Request Actions specifications
Testing & Troubleshooting Module Testing (ErisPulse-Testing) Troubleshoot why commands didn't trigger
Publishing Publishing & Module Store Publish your work to PyPI and the module store

III. I Want to Deeply Understand the Principles

Understand how the framework works internally.

Document Description
Architecture Overview Visual diagrams: core architecture, initialization flow, event handling, lifecycle, module loading strategies (including activate_on event-driven lazy activation), local plugin folder and module hot-reload architecture (supports all module sources)
Startup Process & Manual Control Startup chain breakdown, manual control of each step, diagnosis of loading failures
Event System Complete API for five major event types
Adapter System Adapter registration, startup/shutdown, API calls
Core Modules Basic capabilities such as Storage / Config / Logger / Router
Lifecycle Management · Lazy Loading · Routing System Internal subsystems
Scope Three-dimensional scope control: module availability / event access / outbound action restrictions (including method-level fine-grained rules, binding inheritance merge)
Ownership (owner) System Resource ownership and automatic cleanup: owner context, resource ownership overview, unload cleanup sequence, design boundaries, and module author guidelines
Shadow Modules & Gray Release New versions of modules run in parallel with independent owners: five isolation gates, behavior diff alignment, promote to official, and rollback on failure
Interactive Session System Full explanation of wait_reply, session timers (remind/escalate), multi-path waiting (select), session mutual exclusion leases, inbox, message transactions, and chain tracing
Inter-Module Communication RPC protocol (module.call), meta.services service contracts and directories, targeted event emit(to=), cold-start replay, event idempotency deduplication
Conversation Multi-turn Dialogue · MessageBuilder · SQL Builder · Storage Backends · HTTP Client · Internationalization Advanced tools

IV. Ecosystem & Official Clients

Official clients + on-demand installable, plug-and-play ecosystem modules (none are built-in features).

Document Description
Ecosystem Overview How to install ecosystem modules, why these are not built-in features
ErisPulse-App Official cross-platform client (Android / Windows / Linux / macOS): native interface to manage multiple instances, run directly on mobile, desktop tray icon
ErisPulse-Dashboard Web management panel + window registration API (modules can register custom pages to the sidebar)
ErisPulse-Cron Scheduled task module: one-time / interval / Cron expression, callback parameters, SQLite persistence, other modules can host scheduled callbacks
ErisPulse-Takumi Image rendering (HTML / node tree / SVG / animation, built-in Chinese and English fonts)

V. I Want to Contribute to ErisPulse

Make the framework better.

Document Description
Contribute to ErisPulse Overview of contribution methods: documentation / i18n / bugs / modules / adapters
First Contribution From fork to submitting a PR

Development Methods

ErisPulse supports two development methods:

Others

Get Help