从零搭建 24 小时个人 AI Agent:Ubuntu + Hermes Agent + Xiaomi MiMo V2.5 Pro
从零搭建 24 小时个人 AI Agent:Ubuntu + Hermes Agent + Xiaomi MiMo V2.5 Pro

本文记录如何在一台 Ubuntu Linux 主机上部署 Hermes Agent,接入 Xiaomi MiMo V2.5 Pro,并进一步配置搜索、记忆、技能、定时任务以及微信/QQ 消息入口。
推广声明:本文包含 Xiaomi MiMo 邀请链接。通过该链接注册或购买,作者可能获得平台奖励,但不会增加读者的额外费用。请根据自己的实际需求决定是否使用。
Xiaomi MiMo V2.5 Pro:填写邀请码可得 ¥10 Token
- 通过邀请链接进入 Xiaomi MiMo 开放平台
- 我的 MiMo 邀请码:
4B5ETW
一、最终能得到什么
完成本文后,你会拥有一个运行在自己 Linux 主机上的个人 AI Agent:
- 主模型使用 Xiaomi MiMo
mimo-v2.5-pro; - 能在终端中持续对话;
- 能调用终端、文件、代码执行、搜索、记忆、技能和定时任务;
- 可选接入微信、QQ Bot 等消息平台;
- 可作为 systemd 用户服务后台运行;
- 退出 SSH 或锁屏后仍然在线;
- API Key 和普通配置分离保存。
整体架构如下:
二、环境准备
本文以 Ubuntu 22.04/24.04、普通用户安装为例。服务器、旧笔记本、迷你主机、云主机都可以,不需要本地显卡,因为模型运行在 Xiaomi MiMo API 上。
建议配置:
- 2 核 CPU 或以上;
- 4 GB 内存或以上;
- 10 GB 可用磁盘;
- 稳定互联网连接;
- 一个普通 Linux 用户;
- 已开通 Xiaomi MiMo API。
先检查基础工具:
git --version
curl --version
xz --version
Ubuntu 缺少依赖时执行:
sudo apt update
sudo apt install -y git curl xz-utils
不建议直接使用 root 运行个人 Agent。普通用户安装更容易控制文件权限,Hermes 的配置也会保存在当前用户目录下。
三、开通 Xiaomi MiMo API
进入 Xiaomi MiMo 开放平台,注册并创建 API Key。
- 邀请链接:https://platform.xiaomimimo.com?ref=4B5ETW
- 邀请码:
4B5ETW
创建 Key 后,请只在本机或服务器终端中使用。不要把完整 Key 发到聊天、截图、GitHub、CSDN 或日志中。
本文使用:
Provider: Xiaomi MiMo
Model: mimo-v2.5-pro
Base URL: https://api.xiaomimimo.com/v1
MiMo Token Plan 是额度套餐,并非真正无限调用。个人用户可以先从较低档位开始,根据控制台的实际消耗再决定是否升级。
四、安装 Hermes Agent
官方 Linux 安装命令:
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
安装脚本会准备 Hermes 所需的运行环境。普通用户安装后,核心目录通常位于:
~/.hermes/
重新加载 Shell:
source ~/.bashrc
检查命令:
hermes --help
hermes doctor
如果出现 hermes: command not found,先检查:
ls -l ~/.local/bin/hermes
echo "$PATH"
临时补充 PATH:
export PATH="$HOME/.local/bin:$PATH"
五、选择 Full Setup
运行:
hermes setup
首次会看到三种方式:
Quick Setup (Nous Portal)
Full setup
Blank Slate
因为本文使用自己的 Xiaomi MiMo API Key,所以选择:
Full setup — configure every provider, tool & option yourself
Quick Setup 更适合使用 Nous Portal;Blank Slate 则只打开最基础能力。
六、配置 Xiaomi MiMo V2.5 Pro
在 Provider 列表中选择:
Xiaomi MiMo
随后填写:
Xiaomi MiMo API key: 你的 API Key
Base URL: https://api.xiaomimimo.com/v1
Default model: mimo-v2.5-pro
Base URL 如果已经显示默认值,直接按 Enter 即可。
配置完成后,Hermes 会把敏感信息和普通配置分开保存:
~/.hermes/.env # API Key、Token 等敏感信息
~/.hermes/config.yaml # 模型、工具、Gateway 等普通配置
不要把 .env 上传到 GitHub。
也可以只运行模型向导:
hermes model
官方原生 Provider 使用的环境变量是:
XIAOMI_API_KEY=你的_API_Key
对应配置应类似:
model:
provider: xiaomi
default: mimo-v2.5-pro
优先推荐使用交互式向导,它能减少 YAML 缩进和字段名错误。
七、终端后端怎么选
个人 Linux 主机通常选择:
Local - run directly on this machine
或已有配置时选择:
Keep current (local)
几种后端的区别:
| 后端 | 特点 | 适用场景 |
|---|---|---|
| Local | 直接操作当前主机 | 个人服务器、开发机 |
| Docker | 隔离更强 | 希望限制 Agent 权限 |
| SSH | 在另一台远程机器执行 | 控制独立开发主机 |
| Modal/Daytona | 云端沙箱 | 临时或弹性任务 |
需要特别注意:Local 模式下,Agent 能使用当前 Linux 用户拥有的权限。不要随意给该用户免密码 sudo,更不要把 root 密码写进 .env。
八、工具怎么选
Hermes 的工具可以按 CLI、QQ Bot、微信等入口分别配置。推荐先启用:
- Terminal & Processes;
- File Operations;
- Code Execution;
- Skills;
- Task Planning;
- Memory;
- Clarifying Questions;
- Cron Jobs;
- Web Search。
以下功能建议按需开启:
- Browser Automation:可以自动打开、点击网页;
- Computer Use:可以操作图形桌面,权限较高;
- Image/Video Generation:通常需要额外 Provider;
- Task Delegation:会增加模型调用量;
- Home Assistant:会控制真实智能家居设备。
免费搜索方案
不想额外申请 Key,可以选择:
DuckDuckGo (ddgs)
它免费、免 Key,但只负责搜索,不能稳定提取完整网页正文。需要深度抓取时,再配置 Firecrawl、Tavily、Exa 或自建 SearXNG。
免费语音方案
可以选择:
Microsoft Edge TTS
它无需 API Key,适合中文朗读。
本地浏览器
浏览器 Provider 可以选择:
Local Browser
它使用本机 Chromium,不需要云浏览器订阅。
九、先在 CLI 中测试
不要一装完就配置十几个平台。先确认基础对话正常:
hermes
输入:
你好,请告诉我当前使用的模型名称,并查看这台机器的磁盘剩余空间。
如果能正常回复并调用工具,说明 MiMo 模型和 Hermes 基础链路已经打通。
建议再运行:
hermes doctor
十、接入微信和 QQ Bot(可选)
运行:
hermes gateway setup
微信
选择:
Weixin / WeChat
向导会显示二维码,使用微信扫码确认。个人微信接入的是 iLink Bot 身份,并不是把普通微信号本身变成机器人。通常私聊更稳定,普通微信群事件可能无法投递。
安全策略建议:
DM pairing approval
Disable group chats
首次私聊会得到配对码,在服务器执行:
hermes pairing approve weixin 你的配对码
QQ Bot
选择:
QQ Bot
可以使用扫码自动添加,也可以手动填写 App ID 和 App Secret。私聊授权同样建议使用 Pairing Approval,不要直接允许所有陌生人。
出现配对码时,按终端提示批准,例如:
hermes pairing approve qqbot 你的配对码
QQ App Secret、微信 Token 和用户 OpenID 都不应出现在公开教程截图里。
十一、让 Gateway 后台运行并开机自启
向导询问后台运行方式时,个人服务器选择:
User service
然后同意:
Start the gateway now: Y
Start automatically on login/boot: Y
让用户服务在退出 SSH 后继续运行:
sudo loginctl enable-linger "$USER"
检查服务:
systemctl --user is-enabled hermes-gateway
systemctl --user is-active hermes-gateway
systemctl --user status hermes-gateway --no-pager
查看最近日志:
journalctl --user -u hermes-gateway -n 100 --no-pager
实时追踪:
journalctl --user -u hermes-gateway -f
退出日志追踪按 Ctrl+C。
重启 Gateway:
systemctl --user restart hermes-gateway
注意:重启会短暂中断消息平台,也可能打断正在执行的 Agent 任务,不要把“每几分钟无条件重启”当作常规保活方案。
十二、配置个性、记忆和项目规则
Hermes 的主要目录结构:
~/.hermes/
├── config.yaml
├── .env
├── SOUL.md
├── memories/
├── skills/
├── cron/
├── sessions/
└── logs/
SOUL.md:全局身份与风格
编辑:
nano ~/.hermes/SOUL.md
示例:
# Identity
你是我的个人 Linux 与机器人开发助手。
# Style
默认使用中文,回答直接、清楚。复杂操作先给结论,再给步骤。
# Safety
涉及删除文件、修改网络、重启服务、sudo 或对外发送信息前,先说明风险并征求确认。
不得泄露密码、API Key、Token 和隐私文件。
AGENTS.md:项目规则
在具体项目根目录创建 AGENTS.md,记录编译方式、代码规范、禁止操作和测试命令。Hermes 在该目录工作时会按需加载。
Memory 与 Skills
- Memory 适合保存简短且稳定的用户偏好与环境事实;
- Skills 适合保存较长的可复用工作流;
- 大型知识库建议单独放 Markdown 文件并按需读取,避免每轮对话都消耗上下文。
十三、创建第一个定时任务
接入微信后,可以直接对 Agent 说:
创建一个每天 07:30(Asia/Shanghai)执行的定时任务:查询成都当天的天气、温度、降雨概率和穿衣建议,并发送到当前微信聊天。创建后告诉我任务名称和执行时间。
查看定时任务:
hermes cron list
建议先创建低风险的信息类任务,再逐步尝试文件整理、监控和自动化。不要让无人值守的 Cron 自动执行删除、升级系统或修改网络配置。
十四、代理环境下的常见问题
部分 Python HTTP 客户端不接受:
socks://127.0.0.1:7890
如果你的代理端口同时支持 HTTP,可以在 ~/.hermes/.env 中使用:
HTTP_PROXY=http://127.0.0.1:7890
HTTPS_PROXY=http://127.0.0.1:7890
ALL_PROXY=http://127.0.0.1:7890
http_proxy=http://127.0.0.1:7890
https_proxy=http://127.0.0.1:7890
all_proxy=http://127.0.0.1:7890
修改后重启 Gateway 才能让后台服务读取新环境变量:
systemctl --user restart hermes-gateway
如果服务器本身承担家庭网络代理,请谨慎操作代理进程。停止代理可能同时让 Agent 和其他设备断网。
十五、常见故障排查
1. hermes: command not found
source ~/.bashrc
export PATH="$HOME/.local/bin:$PATH"
2. 模型配置完成但不能回复
检查:
hermes doctor
hermes config
确认:
- API Key 有效;
- Provider 是
xiaomi; - Model 是
mimo-v2.5-pro; - Base URL 是官方地址;
- 套餐或账户仍有可用额度。
3. 微信首次聊天不回复
查看机器人返回的配对码,然后执行:
hermes pairing approve weixin 配对码
4. QQ 提示“机器人灵魂不在线”
先检查:
systemctl --user status hermes-gateway --no-pager
journalctl --user -u hermes-gateway -n 200 --no-pager
如果日志出现:
WebSocket closed: code=4009 reason=Session timed out
可能是 QQ WebSocket 会话已断开但主 Gateway 仍然存活。可先在确认没有重要任务运行时重启 Gateway:
systemctl --user restart hermes-gateway
若反复发生,应先升级到官方已修复版本或设计“确认 QQ 实际失联后才重启”的 Watchdog,不建议无条件定时重启整个 Gateway。
5. DuckDuckGo 能搜索但不能提取网页正文
这是 ddgs 的能力边界。需要 web_extract 时,配置 Firecrawl、Tavily、Exa、Parallel 或自建提取服务。
十六、常用命令速查
# 进入聊天
hermes
# 完整配置向导
hermes setup
# 切换模型/Provider
hermes model
# 配置工具
hermes tools
# 配置消息平台
hermes gateway setup
# 查看 Gateway 状态
hermes gateway status
systemctl --user status hermes-gateway --no-pager
# 查看日志
journalctl --user -u hermes-gateway -n 100 --no-pager
# 健康检查
hermes doctor
# 查看定时任务
hermes cron list
十七、总结
Hermes Agent 负责 Agent 的工具、记忆、技能、消息入口和自动化;Xiaomi MiMo V2.5 Pro 负责主模型推理。两者组合后,可以把一台普通 Ubuntu 主机变成长期在线的个人 AI Agent。
建议按这个顺序部署:
- 安装 Hermes;
- 配置 Xiaomi MiMo API;
- 先验证 CLI 对话;
- 再启用必要工具;
- 接入微信/QQ;
- 配置 systemd 用户服务和 linger;
- 最后增加记忆、技能和定时任务。
如果本文对你有帮助,可以通过我的邀请入口体验 Xiaomi MiMo:
- 邀请链接:https://platform.xiaomimimo.com?ref=4B5ETW
- 邀请码:
4B5ETW
欢迎在评论区交流 Hermes、MiMo、ROS2、家庭服务器和 AI Agent 的使用经验。
更多推荐

所有评论(0)