AgentChat:用 Nostr 协议给 Agent 做加密私信与轻量文件传递

前言

多 Agent 协作时,常见做法是让每个实例只通过本地脚本或同一进程内的消息队列通信。一旦 Agent 跑在不同机器、不同会话里,就需要一套可复用的身份与投递通道。公开 Nostr 中继配合 nip04 加密私信,可以在不自建消息服务器的前提下,让 Agent 用 npub/nsec 互相发信;AgentChat 把这一套能力封装成 Skill 与 CLI,并挂在 SkillHub 社区源上分发。

这是什么

AgentChat 在 Skill 文档中的定位是「Nostr-based Agent messaging CLI(Agent’s WeChat)」:基于 Nostr 的 Agent 消息命令行工具。Skill 坐标为 @user_b634fbfe/003,版本 1.0.0,分类 ai-agent,来源 community,发布者为 user_b634fbfe。SkillHub 页面标注 requires_api_key=false,使用过程不依赖平台 API Key。

官方入口:

  • SkillHub 展示页:https://www.skillhub.cn/skills/user_b634fbfe/003
  • 资料中的 API 地址:https://api.skillhub.cn/user_b634fbfe/003

(SkillHub 抓取数据:评分约 100000,下载 1105 次。)

核心功能

以下能力来自该 Skill 包内的 SKILL.md 与实现说明,可与源码中的 MVP 列表对照:

  1. 身份:使用 Nostr 的 npub/nsec 登录与鉴权。
  2. 私信:Agent 之间通过 Nostr 发送加密 DM(文档写明协议为 NIP-01 事件格式、NIP-04 加密私信)。
  3. 小文件:通过 Nostr 事件传递小于 64KB 的文件。
  4. 开放中继:默认使用公共中继(文档示例为 relay.damus.io、nos.lol;实现中对应 wss://relay.damus.io、wss://nos.lol)。

CLI 暴露的子命令在 Skill 文档中归纳为:login、send、receive、status。

安装与启用

在 Agent 中安装 Skill

SkillHub 页面给出的安装提示是:让 Agent 按 SkillHub 安装说明 安装 @user_b634fbfe/003。

若本机已安装 skillhub CLI,可将 Skill 装到当前 Agent 的 skills 目录(安装时必须指定 --dir,否则会落到默认 ./skills/ 而不会被 Agent 加载)。Cursor 的 skills 目录一般为 ~/.cursor/skills/:

command -v skillhub && skillhub --version

skillhub install 003 --namespace user_b634fbfe --dir ~/.cursor/skills/

Claude Code、Codex 等客户端目录不同,以 SkillHub 安装文档 第四节列出的路径为准,仅把 --dir 换成对应目录即可。安装后通常需要重启或重新加载 Agent 才能识别新 Skill。

安装消息 CLI(npm)

Skill 文档要求全局安装 npm 包 agent-chat(包内 package.json 要求 Node >= 18):

npm install -g agent-chat

典型用法

下列命令摘自 Skill 包内 SKILL.md,用于在配置好 Skill 后,由 Agent 或直接在本机操作 CLI。

# 使用私钥登录
agent-chat login <nsec>

# 发送消息
agent-chat send <recipient_npub> "Hello Agent!"

# 接收消息
agent-chat receive

# 查看登录状态
agent-chat status

receive 支持可选的条数参数(文档表格中为 receive [count])。登录成功后,实现会将配置写入用户目录下的 ~/.agent-chat/config.json(含 npub、nsec 与 relay 列表),后续 send / receive 依赖该文件。

适用场景与注意

适合谁:需要在公网 Nostr 中继上做多 Agent 点对点通信、又不想维护专用 IM 后端的开发者;希望用开放协议(NIP-01 / NIP-04)做加密私信与极小附件传递的场景。

限制与注意:

  • 依赖公共中继的可用性与延迟,不适合强实时或高吞吐业务。
  • 文件大小上限为 64KB,更大对象需要另选存储与引用方式。
  • nsec 为敏感凭据,应限制文件权限并避免写入日志或提交到仓库。
  • SkillHub 上存在名称相近的其他 AgentChat 类 Skill(例如其他 namespace 下的同名或类似描述条目),安装时请确认坐标为 @user_b634fbfe/003。
  • Skill 包内 package.json 版本号为 0.0.1,与 SkillHub 页面展示的 Skill 版本 1.0.0 不一致时,以 SkillHub 元数据为准理解「商店版本」,以 SKILL.md 与 CLI 行为为准理解功能。

结尾

AgentChat 把 Nostr 身份、加密私信和小文件事件封装成 Agent 可安装的 Skill 与可执行的 agent-chat CLI,适合在分布式 Agent 之间做轻量、免 API Key 的消息协作。需要安装或查看元数据时,请打开 SkillHub 页面:https://www.skillhub.cn/skills/user_b634fbfe/003 。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye