版本 0.22.0

你的智能体。你的团队。
你的机器。

团队中的每个人都能与每个智能体单独聊天,并且只看到自己负责的客户。智能体所在的机器只需连接一次,之后就能在 Emperor 中重启、雇用和移除那里的智能体。而且,智能体在发送、花钱或删除之前会先征求同意。

0.9.0 以来的全部更新 · 内附升级说明在 GITHUB 上查看 →

0.9 让 Hermes 智能体变快了。此后的版本则让它们适配真实的团队:多个人、多个客户、多台机器,以及对每个智能体能做什么的明确话语权。本说明涵盖 0.9.1 到 0.22.0;完整更新日志(英文)列出了每一项改动。界面为英文,下文中的界面名称保留英文原文。

人与智能体协同

  • 每人一个私聊。Settings → Direct chats(设置 → 私聊)可以选择每个智能体共用一个聊天,还是为每个人提供一个独立的私聊,各自拥有自己的上下文。系统自动发起的工作会进入每个智能体共享的聊天,现在称为该智能体的 Work log(工作日志)。现有公司保持共享模式;新公司默认使用私聊。(0.9.3、0.12.0)
  • 客户和项目上的访问权限。每个客户和项目上都有一个 Access(访问权限)按钮,可以授予某人在那里的 Admin(管理员)、Can edit(可编辑)或 Can view(可查看)权限,例如在某个客户中担任管理员,在其他地方只能查看。被限定到特定客户的人只能看到这些客户。从不使用该功能的公司不受任何影响。(0.20.0)
  • 只邀请到某一个客户。通过邮件邀请某人加入单个客户或项目;对方只能看到这些内容。(0.20.0)
  • 谁可以使用每个智能体。在雇用智能体时或在其 Scope(范围)标签页中,选择 Everyone(所有人)、Specific people(特定人员)或 Only one person(仅一人)。其他人看不到它,也无法给它发消息或分配工作。管理员可以看到它的名称、所有者、状态和成本,但永远看不到它的聊天内容;专属于某个人的智能体,看到的数据永远不会超过此人。如果它的所有者离开,管理员可以为它指定新的所有者,且无需查看之前的对话。(0.20.0)
  • 它可以与哪些智能体协作。每个智能体的 Scope 标签页还可以选择它能看到、能发消息以及能移交工作的其他智能体。(0.10.1)
  • 看到智能体在各处都在做什么。你与某个智能体的聊天会显示它还在忙些什么,并在它忙碌导致你的消息排队时告诉你。(0.12.0)

你的机器

运行在 VPS、闲置电脑或树莓派上的智能体,过去只能通过 SSH 管理。现在它们会直接出现在 Emperor 中。

  • 一条命令连接一台机器。Settings → Runtime hosts(设置 → 运行时主机)会给你一个一次性代码,以及要在机器上粘贴运行的命令。之后 Emperor 会显示这台机器的内存、磁盘、CPU、能否运行浏览器、各组件版本,以及它配置了哪些模型服务商。(0.21.0)
  • 机器上已有的智能体会被自动识别,每个智能体的页面都会显示它运行在哪里。(0.21.0)
  • 在 Emperor 中重启智能体。从主机卡片或智能体页面重启它的 bridge 或网关,并实时查看进度。在多个智能体共用一个网关的机器上,重启会等到它们空闲时再执行,除非你选择 “restart now”(立即重启)。(0.21.0)
  • 在某台机器上雇用智能体。“Hire agent or team”(雇用智能体或团队)现在会先问 “Where should it run?”(它应该运行在哪里?),并列出你的机器及其可用内存和模型服务商。选择一台机器、一个服务商和一个模型,Emperor 就会在那里配置好智能体,并实时显示进度,直到它上线。中途停下的配置可以在智能体页面上重试。(0.22.0)
  • 移除也是同样的方式。删除智能体时,也会把它从所在的机器上移除(默认开启)。它的访问权限会被立即切断;如果机器处于离线状态,移除操作会排队等待,并显示在机器卡片上。(0.22.0)
密钥留在机器上

机器只会上报其模型服务商的名称,绝不上报它们的 API key;在那台机器上雇用智能体时,会使用机器上已有的 key。它只会执行 Emperor 可能请求的一组固定命令,绝不执行任意命令。每一项操作都仅限管理员执行并会被审计,你也可以随时吊销某台主机,立即切断它的连接。

控制与安全

  • 按智能体设置操作权限。对每一类操作选择 Off(关闭)、Ask first(先询问)或 Allowed(允许):既包括消息、任务和笔记等 Emperor 内部操作,也包括发送邮件、在社交平台发帖、花钱、删除数据、部署、浏览网页和运行 shell 命令等现实世界中的操作。“Ask first” 会在你的收件箱中放入一条审批,准确展示智能体想做什么;批准后,只放行那一次操作。你可以设置公司级默认值,再按智能体单独覆盖。(0.17.0)
  • 一个收件箱,汇集所有需要你处理的事。审批、受阻或失败的工作、停滞的智能体,以及智能体在聊天中请你做的决定,按紧急程度排序,并可直接在列表中批准或拒绝。(0.10.0)
  • 可以清空的收件箱。打开之前保持未读,按 e 归档并可在 8 秒内撤销,一键全部标为已读,支持搜索,还有 Archived(已归档)视图。已归档的条目如果发生变化,会自动回到收件箱。(0.16.0)
  • 模块可开可关。所有者和管理员可以按公司开关 Customers(客户)、Automations(自动化)、Timeline(时间线)、Costs(成本)、Approval history(审批历史)、Views(视图)和 Display screens(显示屏)模块。关闭的模块会从菜单中移除,智能体也会失去相应的工具,从而让提示词更短;模块的数据会被保留。公司模板(Agency 代理机构、Product / solo 产品 / 个人、Operations 运营)会开启对应的一组模块。(0.18.0)
  • 全部暂停。所有者和管理员可以在首页暂停和恢复所有智能体,暂停期间会显示一条横幅。(0.16.0)
  • 失败时会说清楚原因。额度用尽、key 被拒、触发速率限制、未知模型、达到预算上限、运行时离线:每种失败都会显示一个明确的原因和一个修复按钮。(0.13.0、0.15.0)

由智能体构建的视图

  • 按需生成的仪表盘。对智能体说“给我做一个本月店铺数据的视图”,它就会创建一个由面板组成的页面(带环比变化的数字、图表、表格、列表、进度条),并持续保持更新。每个面板都会标明最后更新时间和更新它的智能体,你也可以回退到之前的版本。(0.15.0)
  • 私有或共享。每个视图都有一个所有者和一种可见性:Private(私有)、Shared with people you pick(与你选择的人共享),或 Everyone(所有能看到其所属公司、客户或项目的人)。你在私聊中请求创建的视图默认是私有的。(0.19.0)
  • 按工作所在的位置组织。视图按公司、客户和项目分组,并提供 Mine(我的)、Shared with me(与我共享)和 Pinned(已置顶)筛选。置顶到首页是按人设置的,更新滞后时会显示琥珀色警告,“Ask about this panel”(询问这个面板)会打开你与其背后智能体的聊天。(0.19.0)

看清工作

  • 每个任务都有一个专属页面,讲述它的完整经过:笔记、审批、文件、消息,以及每一次智能体运行的结果、时长、token 和成本。(0.10.0)
  • 时间线。谁在做什么,每个智能体或每个项目一行,智能体之间的交接用箭头表示,还会对耗时和成本最高的任务和项目进行排名。(0.11.0–0.12.5)
  • 按客户、项目、模型和智能体统计成本,附带每日图表、逐层下钻和 CSV 导出。每个数字都会标明是运行时上报的还是估算的。(0.14.0)
  • 搜索一切,用一个搜索框或 ⌘K:任务、笔记、消息、知识、文件、项目、客户和智能体,范围限定在你有权打开的内容。(0.10.0、0.14.0)
  • 活动记录。管理员可以看到谁(人或智能体)改了什么,并提供变更前后对比视图。绝不包含聊天内容、笔记正文或密钥。(0.14.0)
  • 实时更新。聊天、仪表盘、收件箱、任务页面和项目看板会在发生变化的瞬间更新。(0.11.0)
  • 更清爽的项目看板,带 “Needs attention”(需要关注)筛选和列表视图;任务简报和笔记支持 Markdown;可以一次性归档已完成的工作。(0.10.1、0.12.5)

更容易上手

  • 任何兼容 OpenAI 的模型。可以把智能体指向 Ollama、LM Studio、vLLM 或 LiteLLM,key 可选。本地安装可以访问同一台机器上的模型。(0.15.0)
  • 本地智能体开箱即用。设置向导会一直保留到你的第一个智能体运行起来,并显示下载进度和错误;雇用失败时会明确告知并提供重试。(0.15.0)
  • 一个可供探索的示例客户。新工作区可以添加 “Sample: Harbor Dental”(示例:Harbor Dental),其中包含一个项目、若干任务和一条笔记,并可一键移除。(0.16.0)
  • 空页面会说明这里该放什么,禁用的按钮会说明原因;浅色模式下的深色面板、颜色和对话框问题已修复。(0.13.0、0.16.0)

安全

  • 私聊在任何地方都保持私密:实时事件、智能体令牌、显示屏,以及 Slack、Discord 或 webhook 通知,后者只会收到一个不含内容的标题。(0.9.3、0.12.0)
  • 智能体限制在每一个路由和工具上都生效,查看者为只读,移除成员会让其退出登录并吊销其令牌。(0.10.0)
  • 智能体已保存的模型 key 无法被重定向到其他端点,自定义端点也不能指向内部地址或云元数据地址。(0.15.0)
  • 在机器上配置的智能体拥有各自的令牌,一旦配置失败或智能体被删除,令牌会立即被吊销。(0.22.0)

升级

运行 Watchtower 的 Docker 安装会自动更新。否则,请在安装目录中执行:

docker compose pull
docker compose up -d

Hermes 智能体主机需要 0.22.0 版本的 bridge。从 0.12.1 起,bridge 与应用使用相同的版本号。下载安装程序及其校验文件,校验通过后再更新:

mkdir -p ~/.local/bin && cd ~/.local/bin
curl -fsSLO https://github.com/emperorclaw/emperorclaw/releases/download/v0.22.0/emperor-hermes.sh
curl -fsSLO https://github.com/emperorclaw/emperorclaw/releases/download/v0.22.0/emperor-hermes.sh.sha256
sha256sum -c emperor-hermes.sh.sha256
mv emperor-hermes.sh emperor-hermes && chmod +x emperor-hermes
emperor-hermes update

把机器连接为运行时主机是可选的。仍在 0.21 的主机依然可以执行重启;如需在其上雇用智能体,请先更新。

回滚到 0.20 之前

迁移 0072 会把每个受限成员的客户列表迁入新的 Access 记录;没有人会因此获得或失去访问权限。要回退到 0.19,必须先执行 Rolling Back 0.20 (Access)(英文)中的 SQL,否则受限成员将看不到任何客户。

  • 反向代理必须在 /api/ws 上转发 WebSocket 升级请求,实时更新才能工作。否则页面会退回到轮询。(0.11.0)
  • 需要了解的默认值。启用操作权限后,发送邮件、发帖、花钱、删除和部署默认为“先询问”;其他操作仍然默认允许。(0.17.0)
  • 角色。查看者不能再创建、编辑或删除任何内容。只有所有者和管理员可以更改智能体的模型服务商、模型、端点或 key,切换服务商或端点时需要提供新的 key。模型定价在整个实例范围内生效,只有实例管理员可以修改。(0.10.0、0.14.0、0.15.0)
  • 智能体名称。同一家公司中两个智能体重名时,凡是可以指定智能体名称的地方都不再接受这个名称;请改用其 id。(0.20.0)
  • 旧的看门狗。如果有自建的看门狗(watchdog)在重启 0.3 版本的 bridge,emperor-hermes install 会拒绝迁移;请移除它们,或传入 --disable-watchdogs。(0.9.2)
全部更新← 版本发布说明逐行查看每一项改动(英文)完整更新日志 →