Skip to content

ButterBot

异步、事件驱动的 Python 机器人框架

将外部数据输入抽象为事件源,通过类型安全的事件总线连接异步处理器。

最小安装

uv add butterbot-python

项目要求 Python 3.12 或更高版本。仓库开发环境使用 uv 和锁文件管理。

最小运行模型

下面的结构展示了推荐入口。完整、可直接运行且不依赖外部服务的版本见 快速开始

import asyncio

from butterbot.app import BotApp, RuntimeConfig


async def main() -> None:
    app = BotApp(RuntimeConfig())
    async with app:
        # 在这里等待业务完成,或由事件源持续产生事件。
        await asyncio.sleep(0)


if __name__ == "__main__":
    asyncio.run(main())

生命周期

stop() 只停止事件源;close() 还会排空事件回调并释放 API 资源。 应用所有权在当前函数中时,优先使用 async with app

从哪里开始

文档内容以当前公开 API、测试与示例为准。