Skip to content

基于 python,支持多协议、多路 IO 和丰富功能的机器人开发框架

License

BSD-3-Clause, CC-BY-SA-4.0 licenses found

Licenses found

BSD-3-Clause
LICENSE-BSD
CC-BY-SA-4.0
LICENSE-CC
Notifications You must be signed in to change notification settings

Meloland/melobot

melobot

支持多协议、多路 IO 与其他高级特性的机器人开发框架

license - BSD-3-Clause license - CC-BY-SA-4.0 melobot docs GitHub Repo stars

Made with Python PyPI PDM - Managed

Code style: black Checked with mypy Pylint - checked

🔄 工作计划

melobot v3 pre-release 已发布。v3 支持各种协议以扩展至各种平台提供机器人服务。

v3 目前可用的协议实现:

其他计划支持的协议:

  • Satori
  • Kritor
  • qq 官方机器人
  • ...

有任何意见或建议,欢迎加入 qq 群与我们讨论:535705163

⚠️ 声明

melobot 是由热爱技术的开发者共同维护的开源项目。我们致力于提供一个可靠、高效的软件工具,以促进技术交流和创新。以下简称 melobot 项目为“本项目”。

本项目严禁用于任何非法目的,包括但不限于侵犯版权、商标、商业机密或其他知识产权,以及违反任何适用的法律和法规。我们不对因非法使用本项目而产生的任何直接、间接、附带、特殊、惩罚性或后果性损害承担责任。

🎉 特色

melobot v3 是跨平台、跨协议、支持多路 IO 及其他高级特性的 bot 开发框架。为什么选择 melobot?因为 melobot 更自由、优雅和强大

特性 描述
实用接口 封装高频使用的异步逻辑,使业务开发更简洁
插件管理 低耦合度、无序的插件加载与通信
处理流设计 可自由组合“处理中间件”为处理流,提升了各组件的复用率
热插拔/重启 事件处理器支持动态热插拔,支持 bot 级别的重启
会话支持 可在处理流中自动传递的、可自定义的会话上下文
协议支持 所有协议被描述为 IO 过程,因此支持各类协议
跨平台 更简洁的跨平台接口,便捷实现跨平台插件开发
多路 IO 支持多个协议实现端同时输入,自由输出到指定协议实现端
日志支持 日志记录兼容标准库和绝大多数日志框架,可自行选择

使用本框架的机器人项目如下:

你可以将这些项目作为 melobot 使用的实例参考。欢迎你基于 melobot 实现完整的机器人项目后,向本文档提出 PR,在此处展示。

💬 文档

项目文档:melobot 文档(文档依然为 v2 版本,请等待 v3 版本文档更新后再查阅)

对于文档可能出现的纰漏,恳请各位包涵。欢迎提出修正和优化文档的 PR:文档源文件

📦️ 安装使用

Python 版本需求:>= 3.10

通过 pip 安装:

pip install melobot

通过源码构建:(对于普通用户不推荐)

本项目使用 pdm 管理,你首先需要安装 pdm。首次运行 pdm 需要初始化虚拟环境,请参照 pdm 文档操作。

pdm install
pdm build

之后可在 .pdm-build 目录获取本地构建,pip 本地安装即可。

💻 贡献指南与行为准则

参考:

📜 开源许可

本项目使用双许可证。

docs 目录内除 melobot 项目 logo,所有内容在 CC-BY-SA-4.0 许可下发行。此部分版权主体为:melobot 文档的所有贡献者

docs 目录外所有内容在 BSD 3-Clause 许可下发行。此部分版权主体为:melobot 项目代码的所有贡献者

❤️ 鸣谢

PyCharm 是一款流行的、强大的、适用于数据科学与 Web 开发的 Python IDE。

特别感谢由 JetBrains 提供的 PyCharm 等相关软件/程序的免费授权许可证。这些软件/程序用于本项目的开发与 IDE 兼容性测试。

PyCharm logo.

此外特别感谢 @mldkouo 为 melobot 项目绘制 logo 图标。

此图标版权归属于 @meloland 组织,在非商业盈利情景下可自由使用,但请标注版权所属。其他使用情景请致电邮件:contact@meloland.org