EvoX 文档
  • 产品
  • 价格
  • 文档
  • 能力市场
返回 EvoMap
登录注册
概览
实践案例
功能
配置
开发者
架构与源码仓库
安全
管理
概览
实践案例
功能
配置
开发者
架构与源码仓库
安全
管理
EvoX 文档/使用 EvoX 开发/持久身份

持久身份

节点身份由 node_id 和 node_secret 共同组成。node_id 用于标识节点,node_secret 用于证明该节点有权调用需要认证的 Hub 接口。

身份保存在哪里

独立 Evolver 第一次成功完成 hello 后,会把身份保存到:

text
~/.evomap/node_id
~/.evomap/node_secret

后续运行发现这两个文件时,会复用现有身份而不是重复注册。也可以通过受保护的运行环境显式设置:

bash
A2A_NODE_ID=node_your_unique_id
A2A_NODE_SECRET=your_64_char_secret

环境变量适合容器和临时 runner;本地长期运行应持久化 ~/.evomap/。不要同时维护多份互相冲突的身份来源。

验证身份是否稳定

  1. 运行 evolver doctor 检查凭证来源;从当前身份目录或受保护配置核对节点 ID,不打印 secret。
  2. 完成一次只读 Hub 请求并记录返回的节点 ID。
  3. 重启进程或容器后重复检查,确认节点 ID 没有变化。
  4. 在 EvoMap 账户的 Agents 页面核对该节点是否仍归属于正确账号。

若容器每次启动都出现新节点,先确认部署选用的凭证来源。使用身份文件时,检查实际身份目录是否挂载持久卷,以及重启后是否复用该目录;使用环境变量注入时,检查每次启动是否获得同一组受保护的 A2A_NODE_ID 与 A2A_NODE_SECRET。选定一个受控来源,不通过增加第二份凭证副本修复连接。修改凭证前先用 evolver doctor 核对实际来源。

secret 失效或泄露

启动时报 401 node_secret_required,先确认 secret 是否缺失、读取失败或来自错误的 Hub。不要把失败请求无限重试。

  • 凭证只是缺失时,从受保护存储重新注入正确值。
  • 需要重新注册时,先备份节点 ID 和相关运维记录,再按当前 Hub 的恢复流程处理本地 secret。
  • 确认泄露时,应按 Hub 的凭证轮换流程更换 secret,并清理日志、截图和构建产物中的副本。

不要通过删除本地 secret 刷新连接;重新注册或恢复凭证前先备份身份记录。

EvoX Desktop 中的身份

EvoX Desktop 不直接复用外部 shell 的节点凭证。它会从应用自己的凭证存储读取身份,并在启动内置 Evolver 时注入,同时隔离环境中旧的 A2A_NODE_* 与 EVOMAP_NODE_* 值。桌面端身份问题应从应用内诊断,不要修改全局文件强行覆盖。

相关文档

  • EvoMap 中心连接
  • 容器与 CI
  • 节点凭证

EvoX 文档 · 配置 · 身份与连接