CLI 界面¶
安装 melobot 后可使用 mb 命令。除创建项目模板的 mb init 外,其余命令用于查看版本、生成插件导出接口,以及以支持重启或自动重载的方式运行 bot。
依赖
mb dev 依赖文件监测功能。若命令提示缺少依赖,请安装 CLI 可选依赖:pip install 'melobot[cli]'。
查看帮助与版本¶
mb --help
mb --version
# 或
mb -v
--help 显示全部可用命令及参数;--version 同时显示 mb 程序自身和当前安装的 melobot 版本。这通常是提交问题报告时最先需要的信息。
初始化插件接口:mb pinit¶
mb pinit <插件目录> [<插件目录> ...]
mb pinit -d 2 ./plugins/weather
mb pinit 读取插件的 __plugin__.py,为插件生成 __init__.py 和 __init__.pyi。生成的模块暴露插件版本、共享对象、导出函数及可选的初始化参数类型,使其他插件可以像普通 Python 导入一样访问它们。
-d / --depth 指定向上引用深度,必须与加载该插件时的 load_depth 保持一致。命令会覆盖已有的生成文件,因此不要手动编辑 __init__.py、__init__.pyi。插件接口生成、跨插件调用及初始化参数的完整说明见插件系统与进阶用法。
可重启运行:mb run¶
mb run bot.py
# .py 后缀可省略
mb run bot
mb run 会以子进程运行入口脚本,并转发其标准输入、输出和错误输出。当 bot 调用 restart() 时,子进程以特定退出码结束,mb run 随即重新启动它;正常停止则结束命令。
重启能力仅在入口脚本通过 mb run 启动且进程中只运行一个 bot 时有效。若只是希望普通启动,直接执行 python bot.py 仍然完全可行,但 Bot.restart() 不可用。
提示
mb run 不监测文件改动。需要在修改源码后自动重启时,应使用下一节的 mb dev。
开发模式:mb dev¶
# 默认递归监测当前目录
mb dev bot.py
# 只监测指定目录或文件
mb dev bot.py --watch src plugins
mb dev 同样以子进程运行入口脚本,并支持 Bot.restart();此外,它会递归监测 --watch 提供的路径。检测到创建、修改、移动或删除后,会停止当前子进程并重新启动。--watch 未提供参数时默认监测当前目录 .。
开发模式适合本地迭代插件和处理流。生产环境通常使用进程管理器、容器编排或发布系统完成重启,不建议依赖文件监测器。
命令速查¶
命令 |
用途 |
|---|---|
|
查看命令帮助 |
|
查看 CLI 与 melobot 版本 |
|
生成插件入口与类型接口 |
|
运行 bot,支持程序主动重启 |
|
开发模式运行,支持主动重启和文件变动自动重载 |
总结¶
mb pinit 解决插件接口生成,mb run 为程序主动重启提供运行环境,mb dev 在此基础上增加文件监测。其余时候使用 mb --help 确认参数,使用 mb --version 记录运行环境即可。
下一篇将介绍:多进程支持。