首页 资讯 下载 教程 Skills 社群

会话作用域与隔离策略

什么是会话作用域

会话作用域决定了不同用户和不同聊天频道之间的上下文隔离方式。简单来说:A 在飞书上跟龙虾说的话,B 在 Discord 上能不能看到?

这取决于你选择的 sessionScope 配置。

四种作用域模式

{
  agents: {
    defaults: {
      sessionScope: "main"  // 默认值
    }
  }
}
模式 说明 适用场景
main 所有人共享一个会话 个人使用(推荐)
per-peer 每个用户独立会话 多人共用一个龙虾
per-channel-peer 每个用户在每个频道独立 团队使用
per-account-channel-peer 最细粒度隔离 企业/多租户

个人使用:main

如果只有你一个人用,main 是最好的选择。所有平台(飞书、微信、Discord)的对话共享同一个上下文,龙虾记住你在任何地方说过的话。

飞书:"帮我查一下昨天说的那个航班"
Discord:"收到,你昨天在飞书上提到的是 3 月 28 日上海飞北京的航班"

团队使用:per-peer

多人共用时,每个用户应该有独立的上下文:

{
  agents: {
    defaults: {
      sessionScope: "per-peer"
    }
  }
}

这样用户 A 的对话历史和偏好不会泄露给用户 B。

线程绑定

在支持线程的平台(如 Discord、Slack)中,可以让每个线程成为独立会话:

{
  channels: {
    discord: {
      threadBinding: "per-thread"
    }
  }
}

会话重置

# 重置当前会话
openclaw sessions reset main

# 查看所有活跃会话
openclaw sessions list

选择建议

  • 只有自己用main(默认,最简单)
  • 家人/朋友共用per-peer(各自独立)
  • 团队协作per-channel-peer(按频道 + 用户隔离)
  • 企业多租户per-account-channel-peer(最严格隔离)