跳转至

访问控制

哪些人可以通过 Matrix 联系 OpenClaw,它会保留哪些补充上下文,以及哪些发送者可以运行命令。

机器人到机器人房间

默认情况下,来自其他已配置的 OpenClaw Matrix 账户的 Matrix 消息会被忽略。使用 allowBots 可以有意识地允许代理间流量:

{
  channels: {
    matrix: {
      allowBots: "mentions", // true | "mentions"
      groups: {
        "!roomid:example.org": {
          requireMention: true,
        },
      },
    },
  },
}
  • allowBots: true 接受来自其他已配置的 Matrix 机器人账户在允许的房间和私信中的消息。
  • allowBots: "mentions" 仅当这些消息在房间中明确提及此机器人时接受它们;无论设置如何,私信仍然允许。
  • groups.<room>.allowBots 为单个房间覆盖账户级设置。
  • 接受的已配置机器人消息使用共享的机器人循环保护。配置 channels.defaults.botLoopProtection,然后使用 channels.matrix.botLoopProtection 按账户覆盖,或使用 channels.matrix.groups.<room>.botLoopProtection 按房间覆盖。
  • OpenClaw 仍会忽略来自相同 Matrix 用户 ID 的消息,以避免自回复循环。
  • Matrix 没有原生机器人标志;OpenClaw 将“机器人创建”视为“由本 OpenClaw 网关上的另一个已配置 Matrix 账户发送”。

在共享房间中启用机器人到机器人流量时,请使用严格的房间允许列表和提及要求。

上下文可见性

Matrix 支持共享的 contextVisibility 控制,用于补充房间上下文,例如获取的回复文本、线程根和待处理历史。

  • contextVisibility: "all" 是默认值。补充上下文按接收到的内容保留。
  • contextVisibility: "allowlist" 将补充上下文过滤为当前房间/用户允许列表检查所允许的发送者。
  • contextVisibility: "allowlist_quote" 的行为与 allowlist 类似,但仍保留一条明确的引用回复。

这仅影响补充上下文的可见性,而不影响入站消息本身是否可以触发回复。触发授权仍来自 groupPolicy、groups、groupAllowFrom 和私信策略设置。

工具上下文读取

官方 Matrix 插件支持在捆绑或从 npm 或 ClawHub 安装时,通过消息工具读取消息、表情回应、置顶、自定义表情、成员资料和房间详情。这些读取使用所选账户的房间和私信范围检查及其 actions 设置。成员资料要求是所请求房间的成员;自定义表情包括该房间的表情包和账户的个人表情包。

私信和房间策略

{
  channels: {
    matrix: {
      dm: {
        policy: "allowlist",
        allowFrom: ["@admin:example.org"],
        threadReplies: "off",
      },
      groupPolicy: "allowlist",
      groupAllowFrom: ["@admin:example.org"],
      groups: {
        "!roomid:example.org": { requireMention: true },
      },
    },
  },
}

若要完全静默私信,同时保持房间正常工作,请设置 dm.enabled: false:

{
  channels: {
    matrix: {
      dm: { enabled: false },
      groupPolicy: "allowlist",
      groupAllowFrom: ["@admin:example.org"],
    },
  },
}

有关提及门控和允许列表行为,请参阅群组。

Matrix 私信的配对示例:

openclaw pairing list matrix
openclaw pairing approve matrix <CODE>

如果未批准的 Matrix 用户在批准前持续发送消息,OpenClaw 会重用相同的待处理配对代码,并可能在短暂冷却后发送提醒回复,而不是生成新代码。

有关共享的私信配对流程和存储布局,请参阅配对。

斜杠命令

斜杠命令(/new、/reset、/model、/agents、/session、/acp、/approve 等)可直接在私信中使用。在房间中,OpenClaw 还会识别以机器人自身的 Matrix 提及为前缀的命令,因此 @bot:server /new 无需自定义提及正则表达式即可触发命令路径——这使机器人能够响应 Element 及类似客户端在用户输入命令前通过 Tab 补全机器人时发出的房间风格 @mention /command 帖子。

授权规则仍然适用:命令发送者必须满足与普通消息相同的私信或房间允许列表/所有者策略。

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 cl/openclaw