Skip to content

LenBot 0.2.0rc1

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 01 Nov 18:42
· 22 commits to master since this release
fdb5064

LenBot 0.2.0rc1

LenBot 首个公开版本的第一个候选版。此前的开发版本都叫 0.1.0,没有公开发行。

下载

内容 文件或镜像
Linux x64 部署包 lenbot-0.2.0rc1-linux-x64.tar.gz
Linux arm64 部署包 lenbot-0.2.0rc1-linux-arm64.tar.gz
Windows x64 部署包 lenbot-0.2.0rc1-windows-x64.zip
宿主镜像(amd64、arm64) ghcr.io/lendevs/lenbot:0.2.0rc1
后台任务镜像 ghcr.io/lendevs/lenbot-worker:0.2.0rc1
更新器镜像 ghcr.io/lendevs/lenbot-updater:0.2.0rc1
程序 wheel 与源码包 len_bot-0.2.0rc1-py3-none-any.whl、len_bot-0.2.0rc1.tar.gz

三个镜像在 Docker Hub 上也有同名副本。每个附件的大小和 SHA-256 记录在 release-manifest.json 中。

部署方式

  • 部署包:内含 Python 3.13、锁定的依赖、uv 和网页面板,解压后运行 run 或 run.cmd 即可启动,本机不需要另装 Python。Linux 包适用于 glibc 2.28 及以上的发行版,并带有后台任务的本机沙箱运行时(Node、Pi 与任务 Python 库)。面板的系统 → 设置 → 版本与更新负责更新、快照和恢复。见部署包。
  • Docker:一条 docker run 加一个 lenbot-data 数据卷。用同一个卷启动新版本镜像时,先把实例快照到 /data/backups/,再迁移数据。需要在面板中切换版本和自动回滚时,可以改用更新器部署。见 Docker 部署。macOS 使用 Docker 部署。
  • 源码:uv 与 Node.js 22,跟随 master 分支。见源码运行。

首次启动后,按终端或容器日志里的一次性链接完成五步向导:面板账号、接入 QQ、主人账号、聊天模型和角色。

包含的功能

  • 群聊决策:Bot 接入 QQ(OneBot v11),何时开口、回复谁、先查什么、何时跟进,由 ReAct Loop 决定。可以用表情、引用和提及,较长的对话压缩成回想。
  • 查证回答:按需搜索网页、读取正文、查询聊天记录与长期记忆、检索角色和本群资料、识别图片、读取合并转发。
  • 主动跟进:为群友创建提醒、登记持续关注的事项,或把耗时工作交给后台任务。
  • 后台任务:编程助手 Pi 在隔离环境中执行长任务:Linux 部署包用本机沙箱(bubblewrap),Docker 部署与 Windows 部署包用 Docker 任务容器。任务默认不联网,可按域名放行或开放公网,产物登记后发到群里。
  • 记忆与学习:记忆以 Markdown 文件按群保存在本地,默认全文检索,可选向量检索;支持后台整理、修改历史和彻底遗忘。学习群内的说法、黑话和回复效果。
  • 角色包:设定、说话方式、底线、样例、资料和表情组成一个角色,可以导入导出,修改前可以用草稿试聊;群内用 /角色 切换。
  • 插件:Python 插件可添加命令、定时播报、模型工具或长期记忆实现,可以用 wait_message 等同一个人的下一条消息完成多轮对话,按群启用;支持 Git 和 ZIP 安装、权限声明、独立进程运行和单个插件重新加载。插件依赖装在实例目录下,按宿主版本分开。
  • 管理面板:总览、对话测试、群聊设置、角色、记忆、资料、插件、任务、模型用量与日志。对话测试可以模拟一个群,以不同群友的身份发言并查看每个回合。

官方插件目录收录群聊总结与群工作、GSUID Core 桥接、A-SOUL 日程与动态、哔哩哔哩四个插件,独立安装和更新。其他插件收录在社区插件目录 lenbot-plugin-index,在面板插件 → 发现插件 → 目录来源填入它的地址即可浏览和安装。

行为说明

  • 请求来源:提醒、安静、群管理、委托任务和插件里声明 needs_source=True 的工具,只接受本轮收到的消息作为 source_message_id,宿主按这条消息的发送者核对权限;主人预先交代、由别人在之后的轮次触发的操作不会执行。插件测试的 add_message 增加 received,新增 new_turn(scene)。
  • 后台任务的数据工具:任务可以使用 knowledge 检索角色和本群资料,角色允许且有资料时提供,与出网模式无关。web_search、web_read 随任务的出网模式提供:关闭时都不提供,按域名放行时只提供 web_read 且只读名单内的主机,开放公网时两者都提供。联网时,任务里的 curl、Node fetch() 和 Python 经同一个任务代理。
  • 内置技能:默认可用,不需要先设置技能目录;技能目录只存放自定义技能。技能按当前环境的出网模式和可用程序加载,任务环境说明只描述当前环境实际提供的程序。
  • 首次配置:接入 QQ 一步可选择暂不接入,填写 Bot QQ 后保存,面板和对话测试立即可用,之后在系统 → 设置 → 连接接入 OneBot。接入 OneBot 时,第一个群的群号可从 Bot 已加入的群中选择。
  • recall_chat:搜索默认最新的匹配在前,也可以按时间升序;检索词按空白拆成多个关键词,消息须全部包含;上下文的前后条数可设为 0 到 20。
  • 接入群聊:接入时选择发言时机,只在被 @、回复或私聊时,或同时参与群内讨论;参与讨论时再选参与频率。
  • OneBot 握手:反向 WebSocket 的访问令牌可以用 Authorization: Bearer、Authorization: Token 或 access_token 查询参数传入,X-Client-Role 不区分大小写;拒绝握手时日志写明原因。

候选版说明

  • 数据格式与插件接口编号为 1。从本版起,跨版本的格式变化由升级流程迁移。
  • Linux 本机沙箱启用任务后把无头 Chromium 下载到 ~/.cache/lenbot/,试渲染成功后任务可以使用 lenbot-render;浏览器 lenbot-browser 只在 Docker 任务容器中提供。
  • 部署包没有代码签名,Windows 首次运行的处理方法见部署包页。