Hermes 智能体 VPS 安装指南
开源AI代理如 OpenClaw和Hermes Agent不再只是那些技术极客才能搭建的框架。
虽然软件工程师和开发者因为熟悉命令行界面(CLI)而具有竞争优势,但非技术人员也可以通过使用Claude或其他代理实现相同的效果。
是的,非技术人员可能需要更多时间来调试,因为他们依赖Claude的推理能力来继续,但他们最终还是能让AI代理运行起来。
因此,这个远程配置不是专注于执行命令和与机器交互,而是旨在帮助你做出最佳决策,这样你就可以顺畅、安全、快速地开始构建,而不是阅读大量文章和X上的帖子。
最终,无论你是否是开发者,你想要的是一个准备好开始构建的代理,而这正是我即将向你展示的。
1、选择一个好的VPS提供商
如果你想在本地机器上安装Hermes Agent,可以跳过本节,但如果你仍在寻找合适的VPS提供商,请继续阅读。
有几个便宜的VPS提供商,如 Hetzner、Hostinger和Contabo。
我使用 Contabo的德国VPS提供商已经超过四年了,从未遇到过任何问题。我不是说它比其他更好,但到目前为止运行良好,没有中断或安全问题。
你基本上可以仅以3.60欧元/月的价格运行你的代理,但如果需要更高性能,我推荐使用VDS(虚拟专用服务器)。这样,你机器的计算资源不会与其他服务器共享,你会获得更高的稳定性和速度。
如果你决定选择Contabo,安装步骤很简单,但对于磁盘镜像,如果你是第一次使用Linux,我推荐使用Ubuntu。
安装完成后,你应该可以通过在终端中运行以下命令来访问你的远程机器:
ssh root@<server_host>
如果你没有添加SSH密钥,它会要求输入密码,然后你就可以立即访问VPS。
现在有两个选择。你可以使用root作为默认用户,或者仅为Hermes创建一个新用户。
我选择了第二种方法,因为我的VPS上除了这个AI代理还有很多其他项目,我想将它与其他文件和文件夹分开。
创建新用户的方法如下:
adduser myhermes
你可以为其设置密码:
passwd myhermes
现在还不需要安装Hermes,让我们继续安全部分。
2、将所有设备连接到Tailscale
Tailscale由三位Google工程师于2019年创立,他们决定基于WireGuard协议简化安全的点对点虚拟专用网络(VPN)。
这个协议让你的设备和服务能够安全地通过互联网连接,就好像它们在同一个私有网络上一样。换句话说,你可以将多个设备关联到你控制的一个网络中。
这可以确保没有人能访问你的远程机器,即使他们拥有你的密码和SSH密钥。只有私有网络内的设备才能互相通信。
在本节中,我将向你展示如何做到这一点。
至少应该将三台设备添加到你的网络中:你的VPS、你的个人电脑和你的智能手机。
为什么需要智能手机?因为我们将使用它来与Hermes交互,在下一节中会用到Termius。
你可以先在Tailscale网站上创建一个账户,然后会提示你添加第一台设备。
根据操作系统(OS)的不同,你会看到多种安装方式,但都很简单。
一旦你的个人电脑添加完成,你可以对智能手机做同样的操作。选择Android或iPhone并扫描二维码。你也可以直接下载应用程序并使用相同的邮箱登录。
两台机器已添加,现在是远程机器的轮到你了。由于它是Linux发行版,你需要在VPS中(以root身份)运行以下命令:
curl -fsSL https://tailscale.com/install.sh | sh
启动客户端:
sudo tailscale up
你会得到一个URL作为输出来验证你的Tailscale网络。你所有的设备应该都在Tailscale的控制台上可见:
现在我们需要确保SSH连接VPS的唯一方式是通过Tailscale。为此,我们需要UFW(简单防火墙),这是一个Ubuntu的防火墙管理工具。
# 1. 确保UFW已安装(Ubuntu自带,但以防万一)
sudo apt update && sudo apt install ufw -y
# 2. 设置默认策略:拒绝所有入站流量,允许出站流量
sudo ufw default deny incoming
sudo ufw default allow outgoing
# 3. 仅允许从Tailscale的IP范围进行SSH连接
sudo ufw allow in on tailscale0 to any port 22 proto tcp
# 4. (可选)如果你想允许Tailscale设备之间的所有流量
# 如果你以后想运行仅限私有访问的服务,这很方便
sudo ufw allow in on tailscale0
# 5. 启用防火墙
sudo ufw enable
# 6. 检查你的规则
sudo ufw status verbose
就是这样,现在所有流量只通过Tailscale网络传输。如果你想使用Cloudflare,有一系列IP范围需要允许。你可以**在这里**找到列表。
# 允许来自Cloudflare IPv4范围的HTTPS(端口443)
sudo ufw allow from 173.245.48.0/20 to any port 443 proto tcp
sudo ufw allow from 103.21.244.0/22 to any port 443 proto tcp
sudo ufw allow from 103.22.200.0/22 to any port 443 proto tcp
sudo ufw allow from 103.31.4.0/22 to any port 443 proto tcp
sudo ufw allow from 141.101.64.0/18 to any port 443 proto tcp
sudo ufw allow from 108.162.192.0/18 to any port 443 proto tcp
sudo ufw allow from 190.93.240.0/20 to any port 443 proto tcp
sudo ufw allow from 188.114.96.0/20 to any port 443 proto tcp
sudo ufw allow from 197.234.240.0/22 to any port 443 proto tcp
sudo ufw allow from 198.41.128.0/17 to any port 443 proto tcp
sudo ufw allow from 162.158.0.0/15 to any port 443 proto tcp
sudo ufw allow from 104.16.0.0/13 to any port 443 proto tcp
sudo ufw allow from 104.24.0.0/14 to any port 443 proto tcp
sudo ufw allow from 172.64.0.0/13 to any port 443 proto tcp
sudo ufw allow from 131.0.72.0/22 to any port 443 proto tcp
现在你已经将所有三台设备连接到Tailscale,我们需要确保它们都能与Hermes实例通信。让我们从智能手机开始。
3、使用Termius从手机控制Hermes
有两种从智能手机访问VPS机器的好方案:Termius和Termux。后者是免费且开源的,Termius提供付费计划,但用于连接VPS,你可以使用免费版。
我更喜欢Termius,因为它有简洁的界面和快速的服务器连接。你只需要安装应用程序并添加一个新主机。
对于新主机,不要使用VPS提供商中显示的IP。相反,你需要添加Tailscale的IP(在控制台的机器页面查看)。它应该类似于:100.xx.xxx.xx。同时添加用户名(root或第二个用户)和密码(如果你使用密码的话)。
就是这样,你现在应该可以在手机上连接到你的VPS了。注意,如果你的智能手机还没有连接到Tailscale网络,这将无法工作。
但是,如果你可以通过Telegram、WhatsApp和其他聊天应用控制你的代理,为什么还需要Termius?那是因为有时某些提示可能会关闭Telegram(或任何其他应用的)网关,你可能无法从智能手机给你的代理发指令。这是一个不常发生的烦人问题,但如果发生了,你可以使用Hermes TUI(终端用户界面)从终端重启网关。
我们还没有安装Hermes,但要启动TUI,你只需要用Termius启动Hermes Agent并告诉它重启网关。问题解决了!
此外,如果你需要在午休时间进行调整,你也可以从智能手机直接访问你的仓库。
现在让我们看看如何使用IDE访问VPS。
4、将VPS连接到你的IDE
我们之前已经看到,一个命令就可以将你的个人机器连接到VPS。但你可能想要轻松访问远程机器上的所有文件夹和项目,以及能够在不使用Linux命令的情况下调整技能、脚本和配置。
这就是使用IDE的好处。理想情况下,你想要一个辅助代理来调整代理创建的代码和文件。所以最好使用像Cursor或带有Claude或Codex扩展的VS Code这样的AI驱动IDE。
有一个命令行可以直接用远程机器打开IDE:
# 使用Cursor IDE启动
cursor --remote ssh-remote+root@100.xx.xxx.xx /root
# 使用VS Code IDE启动
code --remote ssh-remote+root@100.xx.xxx.xx /root
上面是root的例子,但你也可以连接到其他用户。记住,你需要使用VPS的Tailscale IP。
这就是你开始使用代理构建并通过Claude、Codex或Composer 2进行调整所需的一切。至少这是我的做事方式:使用Hermes Agent创建技能、文件、整体编排和脚本,使用扩展进行编辑和优化。
当你的代理足够成熟时,你可以切换到Telegram,但在初始阶段,最好对仓库、技能和生成的代码有完全控制权,这就是为什么IDE是必要的。
哦,但我们到现在还没安装Hermes Agent!让我们在下一节看看如何安装。
5、在VPS上安装Hermes
要安装Hermes Agent,运行以下命令:
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
你可以使用以下命令开始引导:hermes setup。但这不是继续配置的必要条件。
如果你想直接进入引导,代理会要求你选择一个LLM提供商。我的首选是OpenRouter,因为我可以使用数百个模型,包括视频、图像和语音模型。
如果你不想在代理上有多个API密钥(一个用于生成视频,另一个用于语音转文字等),最好使用一个涵盖所有用例的API。
尽管如此,Nous Research团队(Hermes Agent的创建者)在其门户上引入了新的订阅计划。他们的计划如下:
- 免费:仅可访问免费模型,0美元信用额度。
- 基础版:10美元/月,每月20美元信用额度。可访问超过300个模型,以及托管工具使用。
- 增强版:与基础版相同,20美元/月,每月20美元信用额度。
- 扩展版:与增强版相同,50美元/月,每月50美元信用额度。
- 旗舰版:与扩展版相同,100美元/月,每月100美元信用额度。
选择最适合你需求的提供商,完成引导(或者不完成)。
6、管理配置文件(代理)和项目
大多数用户想要的一件事是快速将他们的代理连接到Telegram或WhatsApp。虽然这很方便,但不应该是优先事项,特别是如果你还在设置代理和工作流时。
理想情况下,当你想在代理已有一定成熟度时使用聊天应用与它们通信,而不是用于实现稳健的配置。
如果你开始提出超越遵循技能说明或应用工具的复杂请求,Telegram网关可能会关闭,你将失去对代理的访问权限。这时候你需要在手机上使用Termius重启网关(如果你不在笔记本电脑旁的话)。
6.1 为你的代理创建Telegram机器人
使用BotFather创建/newbot,按照以下步骤:
- 打开Telegram并搜索BotFather。
- 发送
/newbot。 - 选择一个显示名称(例如"Hermes Agent")。
- 选择一个用户名。这必须是唯一的且以
bot结尾(例如my_hermes_bot)。 - BotFather会回复你的API token。
这就是机器人的设置,但要将它们链接到配置文件(代理),你还需要获取你的用户ID,最快的方法是搜索@userinfobot。
它的回复应该如下所示:
@<my_username>
Id: <my_id>
First: Marco
Last: Rodrigues
Lang: en
Registered: Check Date
🧠 Explanations and answers
Free AI → DeepSeek (https://t.me/deepseek_gidbot) & ChatGPT (https://t.me/chatgpt_gidbot)
🖼 Visualize your ideas
Make Image → NanoBanana (https://t.me/nanobanana_gidbot)
6.2 创建新的Hermes配置文件
你可以为每个代理(配置文件)创建一个Telegram机器人,每个都应该有自己的token。以下是生成新配置文件的方法:
hermes profile create <new_agent>
你也可以直接让Hermes创建一个。一旦生成了新配置文件,它就拥有自己的技能、内存和配置,就像一个新的Hermes实例一样。
如果你想监控每个配置文件的token使用量,你应该为每个配置文件创建一个OpenRouter密钥,这也更好,可以避免你的API出现太多请求。
Telegram API和用户ID应该提供,这样配置文件就连接到Telegram了。你也可以直接在代理的.env文件中更改:
TELEGRAM_BOT_TOKEN=8769...
TELEGRAM_ALLOWED_USERS=89...
TELEGRAM_HOME_CHANNEL=89...
6.3 创建项目并与代理管理它们
使用Hermes构建的人中常见的一个问题是:我该如何组织我的项目和我的代理?
没有一个统一的答案。有些人会说在.hermes文件夹内创建文件夹,而其他人会告诉你不要这样做。
我的方法?在.hermes外面创建一个projects文件夹,然后将配置文件沙盒化到这些文件夹中。
如果你有项目A、B和C,你希望代理1只能访问项目A,你可以这样告诉你的主机器人:
我希望代理1只能访问projects中项目A的文件夹以及它自己的配置文件文件夹。
如果你应用了这一点,代理将被沙盒化,无法访问其自身配置文件文件夹和项目A之外的任何信息。
当然,你只能通过你的主机器人发出这些指令,它拥有访问一切的权限。
这样,你可以将项目与Hermes实例分离,减少不必要更改的风险。这对Git工作流和整体组织也更好。
7、结束语
在本教程中,我们没有专注于如何与Hermes Agent交互、它的技能、工具、配置文件等。你可以在我的其他文章中找到更多相关信息。
目标是为你提供一个设置,使你的代理安全、有组织,并且正确连接到你的智能手机和电脑。
我们介绍了Tailscale如何创建一个只有你能访问的私有网络,保护你所有设备免受外部攻击。
其次,我们看到当你需要重启Telegram网关或在无法使用电脑时对仓库进行调整时,Termius是多么有用。
接下来,我们看到在构建AI代理时为什么需要AI驱动的IDE,因为它们让你对远程仓库有完全控制,并允许你使用Claude、Codex或Cursor的模型来调整代理生成的脚本。
最后,我们了解了如何正确安装框架、配置Telegram机器人、创建配置文件,并以正确的方式将它们与项目关联起来。
这个设置是经过大量Hermes Agent实验后建立的,也包括我的**培训**中客户分享的问题。
它可能不是唯一的设置,但它是一个值得实施的方案,以确保安全性、灵活性和可靠性。
原文链接: The Only Hermes Agent Setup You Need For Your Remote Machine
汇智网翻译整理,转载请标明出处