Core Architecture
事件驱动架构
所有交互通过事件传递,从平台接收到模块处理形成完整的异步事件流
@message.on_message()
async def handler(event):
text = event.get_text()
await event.reply(f"收到: {text}")
Protocol
OneBot12 标准兼容
统一的事件格式标准,确保不同平台间的代码一致性与可移植性
@command("hello")
async def hello_handler(event):
platform = event.get_platform()
# 同一份代码,多平台运行
await event.reply("Hello!")
AI Powered
AI 辅助开发
提供完整的开发文档与规范,让 AI 直接生成可用模块,支持 Vibe Coding 工作流
# 将 ErisPulse 物料投喂给 AI
# 即可直接生成可用模块
class AIModule(BaseModule):
async def on_load(self):
self.logger.info("AI 生成就绪")
SendDSL
链式消息发送
Send.To().At().Reply().Text() 风格的链式消息发送接口,简洁而表达力强
adapter.Send.To("group", "G1001") \
.At("U2001") \
.Reply("msg123") \
.Text("Hello World")
Modular
PyPI 模块化
模块以独立包形式分发,支持懒加载、热更新、生命周期管理与依赖隔离
# pip install ErisPulse-MyModule
# or: epsdk install MyModule
class MyModule(BaseModule):
@staticmethod
def get_load_strategy():
return ModuleLoadStrategy(lazy_load=True)
Interactive
交互式对话
内置确认、选择菜单、表单收集、多轮对话等交互原语,轻松构建复杂交互流程
欢迎使用问卷调查!请选择你喜欢的颜色:
绿色
你选择了绿色,确认提交吗?
确认
取消
确认
感谢参与!你的选择已记录。
Lifecycle
生命周期管理
完整的事件驱动生命周期系统,支持模块加载、适配器启停、Bot上下线等关键阶段的监听与钩子
运行中
99.8% uptime
CPU
12.4%
内存
186MB
适配器
3 online
云湖
Telegram
QQ
模块
7 loaded
WeatherQuery
AIChat
实时事件
Live
12:04:32yunhu/Y1001 → message.group
12:04:33module.load → WeatherQuery
12:04:33module.load → AIChat
12:04:34所有模块加载完毕
Multi-Platform
多平台适配
一套代码同时对接云湖、Telegram、OneBot11/12、邮件等平台,适配器自动处理协议差异
@command("hello")
async def hello(event):
# 云湖 · Telegram · QQ · 邮件...
# 同一份代码,所有平台运行
platform = event.get_platform()
await event.reply(f"Hello from {platform}!")
MessageBuilder
消息段构建
链式消息段构建器,配合 SendDSL 实现类型安全的结构化消息发送
from ErisPulse.Core import MessageBuilder
msg = (MessageBuilder()
.mention("U1001")
.text(" 请查看这张图:")
.image("https://example.com/img.jpg")
.build())
await adapter.Send.To("group", "G1").Raw_ob12(msg)
模块市场
--
总模块数
--
功能模块
--
平台适配器
个性化设置
自定义您的 ErisPulse 体验
动画效果
控制页面过渡动画和交互效果
内容偏好
减少页面间距,显示更多内容
在代码块中显示行号
导航设置
滚动时保持导航栏可见
重置设置
将所有设置恢复为默认值
我们的贡献者
--
感谢这些优秀的开发者为项目做出的贡献
友情链接
推荐一些优秀的技术和开发资源
版权声明
ErisPulse 使用 MIT 开源协议,允许自由分发和修改。