Mac mini 从零开始:新建隔离用户 + 完整安装 Hermes Agent 并接入 TaoToken
发布时间:2026/9/26 11:36:14 锦皓数字建站

1. 为什么要在 Mac mini 上给 Hermes Agent 单独开一个用户Mac mini 作为一台常驻桌面、功耗不高的小主机很适合跑 Hermes Agent 这类需要长期在线的智能体服务。但如果你之前已经在主力账户里装过 OpenClaw、Node、Python 虚拟环境或者一堆全局 npm 包直接在同一账户里再装 Hermes很容易出现依赖版本打架、PATH 被覆盖、配置文件互相污染的问题。我试过把两个 Agent 塞进同一个用户目录结果一个升级了 Python 依赖另一个的定时任务直接报模块找不到。所以这篇的做法是在 Mac mini 上新建一个专用的隔离用户Hermes Agent 的全部依赖、配置、日志、缓存都只属于这个用户。它和你原来的账户在文件系统层面就是两套 home 目录互不读取、互不干扰。哪怕你把这个 Hermes 用户整个删掉也不会影响主力账户里的任何东西。适合谁看手里有一台 Mac miniIntel 或 Apple Silicon 都行想跑一个长期在线的 Hermes Agent并且希望它和现有环境彻底隔离的人。整篇流程从系统设置里点“添加账户”开始到终端里hermes gateway start输出成功提示结束命令都可以直接复制。中间会接入 DeepSeek 模型并通过 TaoToken 的统一 Key 通道来管理模型调用这样你以后换模型、加模型都不用改 Agent 本身的配置。需要提前说明的是Hermes Agent 的安装脚本会从 GitHub 拉取内容Homebrew 安装也需要能正常访问软件源。如果你的网络环境本身能正常访问这些开发资源那按下面步骤走就行。整篇不涉及任何网络工具纯粹是本地用户隔离 包管理 配置文件的活。2. 前置准备TaoToken 统一 Key 通道与 DeepSeek 模型在动手装 Hermes 之前先把模型这一侧的通道准备好。Hermes Agent 本身不绑定某一家模型它通过 OpenAI 兼容接口去调用。你可以直接填 DeepSeek 官方的https://api.deepseek.com/v1也可以走 TaoToken 的统一通道。走统一通道的好处是以后你想在 Hermes 里换模型、加一个备用模型只需要在 TaoToken 这边调整Agent 的config.toml基本不用动。TaoToken 的定位是一个模型调用的统一入口把不同厂商的 Key 收敛成一套通道来管理。对 Hermes 这种要长期跑的 Agent 来说统一通道意味着你可以在控制台里看到调用量、随时轮换 Key而不用去每个厂商后台分别折腾。官网地址是 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 入口是 https://taotoken.net/api 。你需要做两件事第一在 TaoToken 控制台创建一个 API Key。打开 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewrite 登录后进入 API Keys 页面新建一个 Key 并复制保存。这个 Key 就是后面填进 Hermes 配置里的凭证。具体创建入口在 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite 。第二确认你要用的模型名。Hermes 配置里需要填一个 Model Name比如deepseek-chat或deepseek-reasoner。如果你不确定当前通道支持哪些模型名可以打开模型对话页面 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentmodel-chatutm_campaignrewrite 实际发一条消息验证一下能正常返回就说明这个模型名和 Key 都是通的。注意API Key 只显示一次复制后先存到密码管理器或临时文本里。后面配置config.toml时直接粘贴不要手打避免大小写或空格出错。如果你打算长期用 Hermes 跑编码类任务或者做 Agent 自动化可以顺带了解一下 Coding Planhttps://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite 。它和单次 API 调用是两种用法按你的实际频率选就行。3. 新建隔离用户并安装 Homebrew 依赖3.1 在系统设置里创建 Hermes 专用账户点屏幕左上角苹果图标进入“系统设置”左侧往下找到“用户与群组”。点左下角小锁输入你当前开机密码解锁。然后点“添加账户”按下面填账户类型选“管理员”全名填Hermes账户名系统会自动生成不用改。密码自己设一个并记牢密码提示随便填。点“创建用户”。创建完成后点右上角当前用户名切换到 Hermes 用户登录。进去之后你会看到一个全新的桌面home 目录是/Users/hermes账户名以系统生成为准下面命令里用~代替。这个环境和你原来的账户完全隔离。3.2 打开终端并安装 Homebrew在程序坞里找“终端”Terminal找不到就按Command 空格搜索“终端”。打开后逐行执行/bin/bash -c $(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)中间会提示按回车、输入密码。密码输入时屏幕不显示任何字符输完直接回车。Apple Silicon 机器安装完后Homebrew 会提示你把brew加到 PATH按它给的提示执行那两行echo和eval命令即可。装完验证一下brew --version能输出版本号就说明 Homebrew 就绪。接着装基础依赖brew install git curl wget这三个是后面拉取安装脚本、下载依赖时要用到的。git用来克隆仓库curl用来请求安装脚本wget作为备用下载工具。3.3 安装 Hermes Agent在同一个终端里执行官方安装脚本curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash脚本跑完后让环境变量生效source ~/.zshrc然后检查版本hermes --version能输出版本号说明 Hermes 已经装进这个隔离用户的环境里了。这一步如果报command not found先确认你执行过source ~/.zshrc再确认当前终端确实是 Hermes 用户打开的而不是原来的账户。4. 配置 config.toml 接入 TaoToken 与 DeepSeek4.1 用 hermes setup 走一遍初始化执行hermes setup终端会依次问你 LLM Provider、API Base URL、API Key、Model Name。如果你走 TaoToken 统一通道Provider 选Custom / OpenAI CompatibleBase URL 填 TaoToken 的 API 地址Key 填你在控制台创建的那把Model Name 填deepseek-chat。如果你直接用 DeepSeek 官方Base URL 填https://api.deepseek.com/v1Key 填 DeepSeek 后台申请的Model Name 同样是deepseek-chat。两种方式在 Hermes 这边只是 Base URL 和 Key 不同配置结构完全一样。4.2 config.toml 骨架hermes setup会生成一份配置文件通常在~/.config/hermes/config.toml。你也可以手动编辑骨架如下[llm] provider openai-compatible base_url https://taotoken.net/api/v1 api_key sk-你的TaoTokenKey model deepseek-chat temperature 0.7 max_tokens 4096 [agent] name hermes workspace ~/.hermes/workspace log_level info [gateway] enabled true port 8787几个关键点说明一下。base_url走 TaoToken 时填https://taotoken.net/api/v1注意结尾的/v1不要漏Hermes 是按 OpenAI 兼容格式拼接/chat/completions的。api_key就是控制台里那把。model填deepseek-chat想要推理能力就换deepseek-reasoner。temperature和max_tokens按你的任务调做代码生成时温度可以降到 0.2 左右。注意config.toml里不要出现中文引号所有字符串用英文双引号。TOML 对格式敏感多一个空格或少一个引号都会导致解析失败。4.3 接入飞书并设置 Home Chathermes setup过程中如果提示选择平台选Feishu登录方式选Scan Code。终端会显示一个二维码用手机飞书 App 扫一扫并确认授权。接入完成后在你想接收通知的飞书群或私聊窗口里发送/sethome这条命令的作用是把当前聊天窗口设为 Hermes 的默认推送目标。以后定时任务的结果、跨平台消息都会发到这里。设置完可以发一条测试消息确认机器人有响应。5. 启动 Gateway 并验证 Agent 正常调用5.1 安装并启动 Gatewayhermes gateway install hermes gateway start看到终端输出服务运行成功的提示后Hermes Agent 就已经在隔离用户下跑起来了。你可以用下面的命令确认进程状态hermes gateway status正常会显示 running。如果显示 stopped先看日志tail -n 50 ~/.hermes/logs/gateway.log日志里最常见的两类问题是config.toml解析失败或者 API Key 鉴权失败。前者检查 TOML 格式后者检查 Key 是否复制完整、Base URL 是否带了/v1。5.2 验证模型调用是否走通最直接的验证方式是在终端里让 Hermes 发一次请求hermes chat 用一句话说明你现在用的是哪个模型如果返回内容里能正常给出模型名说明从 Hermes 到 TaoToken 再到 DeepSeek 的整条链路是通的。你也可以打开 TaoToken 的模型对话页面 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentmodel-chatutm_campaignrewrite 对照一下确认调用量有增长。再验证一下飞书侧hermes notify Hermes 隔离环境测试消息飞书里/sethome设置的那个窗口应该收到这条消息。收到就说明 Gateway、模型、消息通道三者都正常。5.3 参数对照表配置项走 TaoToken走 DeepSeek 官方provideropenai-compatibleopenai-compatiblebase_urlhttps://taotoken.net/api/v1https://api.deepseek.com/v1api_keyTaoToken 控制台创建DeepSeek 后台申请modeldeepseek-chatdeepseek-chat换模型方式控制台调整Agent 少改需改 config.toml6. 本篇常见错误排查6.1 hermes: command not found这是最高频的问题。原因通常是安装脚本跑完后没有重新加载 shell 配置或者你切换回了原来的用户。先确认终端提示符前面的用户名是 Hermes然后执行source ~/.zshrc。如果还不行检查~/.zshrc里有没有 Hermes 写入的 PATH 行没有就手动加export PATH$HOME/.hermes/bin:$PATH再source ~/.zshrc。6.2 config.toml 解析报错TOML 对格式很严格。常见错误包括用了中文引号、字符串没闭合、base_url结尾多了斜杠导致拼接出//v1。建议用cat ~/.config/hermes/config.toml把内容打出来逐行看。改完后重启 Gatewayhermes gateway restart6.3 401 鉴权失败如果日志里出现 401先确认api_key是不是完整复制。TaoToken 的 Key 一般以sk-开头复制时不要带前后空格。再确认base_url是https://taotoken.net/api/v1不是https://taotoken.net/api。少写/v1会导致请求路径不对返回 404 或 401。6.4 飞书二维码扫了没反应先确认手机飞书 App 是最新版本扫码后要在手机上点确认授权。如果终端二维码显示不全把终端窗口拉大一点再重新执行hermes setup里的飞书接入步骤。授权成功后终端会提示登录完成这时再去发/sethome。6.5 Gateway 启动后马上退出看日志~/.hermes/logs/gateway.log。如果是端口被占用改config.toml里的port比如从 8787 改成 8788然后hermes gateway restart。如果是权限问题确认当前是 Hermes 用户且~/.hermes目录归这个用户所有。7. 后续怎么用统一 Key 通道与长期运行隔离用户跑通之后日常维护其实很轻。Hermes 的所有文件都在/Users/hermes下面你原来的账户完全不受影响。要升级 Hermes切到 Hermes 用户执行安装脚本或hermes update即可。要换模型优先在 TaoToken 控制台调整通道Hermes 这边的config.toml只在换 Base URL 或换 Key 时才动。如果你后面要接 Claude Code 这类编码工具TaoToken 也有对应的接入文档https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite 以及 ClaudeCode Anthropic 的说明页 https://taotoken.net/claude-code-anthropic?utm_sourcetaotoken_aicg_blog_endutm_contentclaudecodeutm_campaignrewrite 。思路和这篇一样统一 Key 通道 独立环境避免多个工具互相踩依赖。最后留一个实用习惯每次改完config.toml先hermes gateway restart再用hermes chat test发一条最短请求验证链路。确认通了再去跑正式任务比事后翻日志省时间。
锦
锦皓数字建站
深耕本土企业品牌数字化升级,专注原创端正雅致商务官网,从视觉设计到稳定运维全程保驾护航。