Signal 接入——注重隐私的聊天
Hermes 消息平台接入第6篇:Signal。端到端加密聊天里用 AI。
好的,这就为您呈上重写后的教程文章:
唠唠 Signal:给智能体装上“最隐私”的聊天工具
嘿,朋友们!今天咱们来聊聊怎么给咱们的 Hermes Agent 接上一个特别注重隐私的聊天软件——Signal。如果你对数据隐私这事儿特别上心,那 Signal 绝对是你的菜。它默认就端到端加密,代码开源,收集的元数据也少得可怜,简直是安全敏感型任务的“梦中情人”。
准备工作:装个“翻译官”
Hermes 是通过一个叫 signal-cli 的小工具来和 Signal 服务器沟通的。你可以把它想成是一个“翻译官”,负责把 Hermes 的话翻译成 Signal 能听懂的语言。
这个“翻译官”需要 Java 17 以上的环境才能跑起来。安装它很简单,Mac 用户直接:
brew install signal-cli
Linux 用户也别慌,虽然它不在软件源里,但我们可以从 GitHub 上手动下载安装,一条龙命令给你备好了:
VERSION=$(curl -Ls -o /dev/null -w %{url_effective} \
https://github.com/AsamK/signal-cli/releases/latest | sed 's/^.*\/v//')
curl -L -O "https://github.com/AsamK/signal-cli/releases/download/v${VERSION}/signal-cli-${VERSION}.tar.gz"
sudo tar xf "signal-cli-${VERSION}.tar.gz" -C /opt
sudo ln -sf "/opt/signal-cli-${VERSION}/bin/signal-cli" /usr/local/bin/
第一步:让“翻译官”上岗
装好之后,我们需要把它和你的手机 Signal 账号绑定,就像登录网页版微信一样。
signal-cli link -n "HermesAgent"
运行这个命令后,屏幕上会出现一个二维码。然后打开你手机上的 Signal,进入 设置 → 已链接设备,点击链接新设备,扫一下码就搞定了。
第二步:启动“翻译官”服务
绑定成功后,我们得让“翻译官”在后台跑起来,随时待命:
signal-cli --account +1234567890 daemon --http 127.0.0.1:8080
记得把 +1234567890 换成你自己的手机号(要带国家区号哦)。你可以用 tmux、screen 或者 systemd 让它一直在后台运行。
验证一下它是否正常工作:
curl http://127.0.0.1:8080/api/v1/check
如果返回了一串包含 signal-cli 的 JSON 信息,那就说明成功了。
第三步:让 Hermes 和“翻译官”接上头
现在,轮到咱们的 Hermes 出场了。最省事儿的方法就是用它的向导功能:
hermes gateway setup
在菜单里选择 Signal,然后跟着提示走就行。它会自动帮你检查环境、测试连接,非常贴心。
当然,你也可以选择手动配置。打开 ~/.hermes/.env 文件,把下面这些信息填进去:
# 必填
SIGNAL_HTTP_URL=http://127.0.0.1:8080
SIGNAL_ACCOUNT=+1234567890
# 强烈建议设置,只允许特定用户私聊你的机器人
SIGNAL_ALLOWED_USERS=+1234567890,+0987654321
# 可选:配置群聊
# SIGNAL_GROUP_ALLOWED_USERS=groupId1,groupId2
# SIGNAL_HOME_CHANNEL=+1234567890
配置好之后,启动网关就大功告成啦:
hermes gateway # 前台运行
hermes gateway install # 作为用户服务安装
权限管理:谁可以找我的机器人聊天?
- 私聊:如果你设置了
SIGNAL_ALLOWED_USERS,那就只有名单上的人能跟你的机器人说话。如果没设置,陌生人会收到一个配对码,需要你批准才能通过。 - 群聊:默认情况下,机器人是“两耳不闻窗外事”的,只在私聊里回应。如果你想让它也参与群聊,就得在
SIGNAL_GROUP_ALLOWED_USERS里指定群 ID,或者直接设成*让它“雨露均沾”。
玩法升级:不只是发文字
这个适配器可不只是能收发文字,它的功能还挺全的:
- 收发图片、语音、视频和文件:不管是用户发给机器人,还是机器人发给用户,都没问题。图片支持 PNG、JPEG、GIF、WebP,语音支持 MP3、OGG、WAV 等,文件更是百无禁忌。单文件最大支持 100 MB。
- 原生格式和回复引用:Hermes 发出的 Markdown 格式(比如 加粗、斜体)会直接转换成 Signal 的原生样式,对方看到的就是实实在在的加粗和斜体,而不是一堆
**符号。而且,当机器人回复特定消息时,也会像真人一样带上引用,对话体验感直接拉满。
好了,现在就去试试,给你的 Hermes Agent 装上这个“隐私保镖”吧!如果遇到问题,记得看看官方文档哦。
📖 官方文档
本文根据 Hermes Agent 官方文档编写,原文见:官方文档 › user-guide/messaging/signal