简介
1. Termux
Termux 是一款运行于 Android 系统的开源终端模拟器。该软件提供了 Linux 环境,即使设备不具备 root 权限也可使用。通过自带的包管理器(Pacman、APT),Termux 可以安装许多现代化的开发和系统维护工具,例如 zsh、Python、Ruby、NodeJS 等。
Termux 目前在 Google Play 更新,但 F-Droid 和 GitHub 保持更新,建议优先从 F-Droid 下载。
2. AstrBot
AstrBot 致力于成为一个开源的一站式 Agentic 聊天机器人平台及开发框架。通过它,你能够在多种消息平台上部署和开发一个支持大语言模型(LLM)的聊天机器人。
- 大模型对话:支持接入多种大模型服务,支持多模态、工具调用、原生知识库等功能。
- 多消息平台支持:支持接入 QQ、企业微信、飞书、Telegram 等平台。
- Agent 能力:支持多轮工具调用、内置沙盒代码执行器。
- 插件扩展:深度优化的插件机制,社区生态丰富。
- WebUI:可视化配置和管理机器人。
3. NapCat
基于 TypeScript 构建的 Bot 框架,通过启动器主动调用 QQ Node 模块接口实现 Bot 功能。它通过 OneBot 约定将 HTTP/WebSocket 请求按照规范读取,再调用 QQ 发送接口。
前置准备:
- 一个 QQ 号(建议非新号)。
- 一台具有摄像功能的手机以扫码登录 QQ。
部署步骤
1. 安装 Termux
从 F-Droid 应用商店下载 Termux。不要从 Google Play 下载,那里的版本可能已过时。 部分安卓手机应用商店会有 Termux 软件可以直接下载。
2. 更新系统包
打开 Termux,依次执行以下命令,更新软件源并安装基础工具。
pkg update && pkg upgrade
pkg install python git wget curl
换源 (可选)
建议更换源以获得更好的安装体验,但此操作不会使 git clone 变快。
termux-change-repo
选择第一个 Mirror group Rotate between several mirrors,随后选择第三个 Mirrors in Chinese Mainland All in Chinese Mainland,等待跑完即可。
3. 申请存储权限
执行以下命令,会弹窗请求文件权限,请务必允许。
termux-setup-storage
4. 正式部署
安装 proot-distro 及其他必须组件
首先安装 uv、git 和 proot-distro。
pkg install uv git proot-distro
使用 proot-distro 安装 Ubuntu 环境。中国大陆访问 GitHub 概率较低,建议使用加速器或代理。
proot-distro install ubuntu
登录 Ubuntu 环境
下载及配置完成会有提示 Log in with: proot-distro login ubuntu,输入相同的即可登入。
proot-distro login ubuntu
此时便进入了 Ubuntu 环境,我们需使用 apt 命令安装软件包了。
添加第三方 PPA
Python 3.10 并不在官方软件源中,而 uv 所要求的 Python 版本为 3.10,所以进行此步为必须。
使用 apt 安装 software-properties-common (添加 PPA 前置)。
apt update && apt install software-properties-common
添加 deadsnakes PPA (Python 官方维护)。
add-apt-repository ppa:deadsnakes/ppa && apt update
添加时可能会看到 Press [ENTER] to continue or Ctrl-c to cancel.,此时按下回车即可。
安装 Python
在进行完以上步骤后,即可安装 Python 3.10。
apt install python3.10
克隆 AstrBot 仓库
直到这里,您所处的路径应为 ~# 而不是其他次级目录,以防找不到项目目录。
git clone https://github.com/AstrBotDevs/AstrBot.git && cd AstrBot
如果一切顺利的话,您应该进入到了 ~/AstrBot# 下,可以进入到下一步了。
注意:这步骤遇到
git clone失败,那么其后的cd命令也不会生效。请检查网络环境或代理设置。
运行 AstrBot
uv run main.py
如果使用 uv 下载软件包时速度慢,可以更换源 (以清华源为例)。
export UV_DEFAULT_INDEX="https://pypi.tuna.tsinghua.edu.cn/simple"
如果没有报错,那么你可以看到 uv 在安装所需的包后出现类似 WebUI 已启动,可访问 并附带了几条链接。
如果有,那么恭喜你,你已经部署好了 AstrBot 并且运行了,接下来可以尝试访问 http://localhost:6185/ 验证可用性。
提示:
Termux 与主机共享一个网络,即:Termux 的 IP 地址就是主机的 IP 地址,你也可使用 ifconfig 查看主机 IP 地址。
默认用户名和密码是 astrbot 和 astrbot。
退出如需退出 proot-distro,可以使用 exit。
重新启动每次重新进入 Termux 时需重新打开 proot 环境并启动 AstrBot,可以使用命令如下:
proot-distro login ubuntu cd AstrBot && uv run main.py
挂后台开启如需在一个 session 里面同时运行多个进程 (eg. AstrBot 和 Napcat),可以使用 &。
关闭上文运行后会有类似 [1] 1145 的输出,如需关闭进程,则可使用 kill -9 1145 或 pkill -9 -f "uv run main.py"。
也可以使用 screen 命令,较 & 更易操控。
apt install screen
screen -S <name>
screen -r <name>
screen -ls
screen -X -S <name> quit
Ctrl + a + d
后台存活如需让服务端在后台存活,可以在 设置 -> 应用和服务 -> 应用启动管理 -> Termux 改为 手动管理 并 允许后台活动 (或类似选项)。
接下来,你需要部署任何一个消息平台,才能够实现在消息平台上使用 AstrBot。
5. NapCat 部署
Termux 脚本部署
推荐直接在 Termux 中使用一键脚本。
curl -o napcat.termux.sh https://nclatest.znin.net/NapNeko/NapCat-Installer/main/script/install.termux.sh && bash napcat.termux.sh
仓库地址:NapCat.installer
Napcat WebUI 在哪打开:在 napcat 的日志里会显示 WebUI 链接。
如果是 linux 命令行一键部署的 napcat:docker log <qq 号>。
Docker 部署的 NapCat:docker logs napcat。
通过 Docker 部署
如果用 Docker 部署,将无法正常接收到语音数据、文件数据。这意味着语音转文字、沙箱的文件输入功能将无法使用。可以接收到文字消息、图片消息等其他类型的消息。
默认您安装了 Docker。在终端执行以下命令即可一键部署。
docker run -d \
-e NAPCAT_GID=$(id -g) \
-e NAPCAT_UID=$(id -u) \
-p 3000:3000 \
-p 3001:3001 \
-p 6099:6099 \
--name napcat \
--restart=always \
mlikiowa/napcat-docker:latest
执行成功后,需要查看日志以得到登录二维码和管理面板的 URL。
docker logs napcat
请复制管理面板的 URL,然后在浏览器中打开备用。然后使用你要登录的 QQ 扫描出现的二维码,即可登录。如果登录阶段没有出现问题,即成功部署。
6. 连接到 AstrBot
在 AstrBot 配置 aiocqhttp
- 进入 AstrBot 的管理面板。
- 点击左边栏
消息平台。 - 然后在右边的界面中,点击
+ 新增适配器。 - 选择
aiocqhttp(OneBotv11)。
弹出的配置项填写:
- ID(id):随意填写,用于区分不同的消息平台实例。
- 启用 (enable): 勾选。
- 反向 WebSocket 主机地址:请填写你的机器的 IP 地址。一般情况下请直接填写
0.0.0.0。 - 反向 WebSocket 端口:填写一个端口,例如
6199。
点击 保存。
配置管理员
填写完毕后,进入 配置 页,点击 其他配置 选项卡,找到 管理员 ID,填写你的 QQ 号(不是机器人的 QQ 号)。切记点击右下角 保存,AstrBot 重启并会应用配置。
在 NapCatQQ 中添加 WebSocket 客户端
切换回 NapCatQQ 的管理面板,点击 网络配置->新建->WebSockets 客户端。
在新弹出的窗口中:
- 勾选
启用。 URL填写ws://宿主机 IP:端口/ws。如ws://localhost:6199/ws或ws://127.0.0.1:6199/ws。- 消息格式:
Array - 心跳间隔:
5000 - 重连间隔:
5000
注意:
- 切记后面加一个
/ws!- 这里的 IP 不是
0.0.0.0。
点击 保存。
前往 AstrBot WebUI 控制台,如果出现 aiocqhttp(OneBot v11) 适配器已连接。 相关蓝色的日志,说明连接成功。
此时,你的 AstrBot 和 NapCatQQ 应该已经连接成功。使用 私聊 的方式在 QQ 对机器人发送 /help 以检查是否连接成功。
常见问题
问题一:Git Clone 失败
如果 git clone 失败,那么其后的 cd 命令也不会生效,故在运行命令时请注意路径是否正确。
如果需要再次执行如上命令,建议先执行
rm -r AstrBot
之后再运行
git clone https://github.com/AstrBotDevs/AstrBot.git && cd AstrBot
AstrBot 管理面板 具有管理插件、查看日志、可视化配置、查看统计信息等功能。 NapCatQQ 安装方法 可点击跳转查看更多详细操作。

