13. 访问级别

访问级别是智能体的”前门”。在角色策略和按工具的细粒度门控之前,访问级别决定一个人是否能开起会话。


13.1 三个级别

Public。 任何拿到智能体 URL 或通道句柄的人都能对话。新访客自动成为 guest 身份。

Protected。 需要登录。访客必须先认证才能聊。登录后默认是 guest,直到你提升。

Private。 只有 owner 显式加进来的身份才能对话。陌生新联系人在门口就被拦下;不会自动创建 guest。

PublicProtectedPrivate
拿到 URL 即可对话
需要登录
Owner 必须批准每个新身份
首次消息时自动创建 guest

13.2 怎么选

  • Public —— 演示、支持机器人、任何你有意希望陌生人使用的场景。配紧的角色策略一起用。
  • Protected —— 你希望一个已知群体使用的内部工具。登录把过路访客挡在外面,也给了你一个可挂角色的真实身份。
  • Private —— 敏感工作区、个人智能体、任何陌生人接触会成为问题的地方。

新建的智能体默认是 private。放宽是一个有意识的动作。


13.3 设置级别

hermit config --agent <agent-id> security set access public
hermit config --agent <agent-id> security set access protected
hermit config --agent <agent-id> security set access private

Web UI:Manage → Basic 有访问级别选择器。

更改立刻生效。已被允许身份的现有会话不会被打断。


13.4 与通道的交互

访问级别对所有通道统一生效 —— 没有”Web 上 public、Telegram 上 private”这种组合。需要这种不对称就跑两个智能体。

对自带门控的通道(比如一个私有 Slack 工作区),那一层门控会和智能体的访问级别叠加。私有 Slack 频道本身就已经限制了谁能私聊这个 bot;再把智能体设成 protected,大体上是重复。


13.5 角色差异

OwnerUserGuest
查看当前访问级别
修改访问级别

13.6 How-to 配方

13.6.1 把之前公开的智能体锁起来

hermit config --agent main security set access private

已存在的 guest 身份不会被自动清除;他们只是不能再开新会话。要清理:

在管理界面的 Users 选项卡找到 guest 成员,然后通过 UI 或 DELETE /api/agents/main/members/<user-id> 删除成员关系。


13.6.2 单独把某个 demo 智能体开放为公开,其它保持私有

访问级别按智能体设置。把 demo 智能体设为 public,其它保持 private。同一个网关,不同的门。


13.7 FAQ

改访问级别会影响已有用户的行为吗? 不会 —— 它只管新身份的创建和会话开启。要改能力,改角色或策略。

我能看到谁试图访问一个 private 智能体被拦下吗? 网关日志记录了被拦的尝试;把它在 UI 里露出来在路线图上。

访问级别和策略怎么互动? 它们叠加。访问级别是外层门;策略是内层(按工具/资源)的门。一个 private 智能体即便策略宽松,仍然是 private —— 只有被允许的身份能到策略层。


13.8 指引