乐于分享
好东西不私藏

OpenClaw 隔离性分析

OpenClaw 隔离性分析

下述是通过该 skills 进行的分析,便于判断如何管理 openclaw 中的隔离性,更好管理任务:https://github.com/flyer103/skills

🌳 知识树

核心(80% 价值)

  1. Gateway
     - 全局共享
  2. Session
     - 会话级隔离
  3. Agent Profile
     - 配置级隔离
  4. Workspace
     - 可配置隔离

进阶(15% 价值)

  1. sessionTarget: isolated
     - Cron 任务隔离
  2. dmScope: per-channel-peer
     - DM 按 peer 隔离
  3. tools.allowlist
     - 工具权限控制

细节(5% 价值)

  1. 多用户 workspace 访问风险
  2. Token 池管理
  3. 跨会话文件访问控制

📊 架构图


🔄 资源隔离矩阵

🎯 隔离性决策树

📋 隔离性速查表

资源类型
默认行为
隔离级别
对话历史
✅ 自动隔离
Session 级别
Token 池
✅ 自动隔离
Session 级别
Memory
✅ 自动隔离
Session 级别
Workspace
❌ 共享
可配置
Model
❌ 共享
可配置
Skills
❌ 共享
可配置
Tools
❌ 共享
可配置
API Keys
❌ 共享
高复杂度
Gateway 进程
❌ 共享
高复杂度

🚀 快速入门(5 分钟)

场景 1:多频道隔离(默认已满足)

每个 Discord channel 自动获得独立 session,无需额外配置。

场景 2:只读频道

# 创建只读 profileopenclaw config set agents.profiles.readonly.tools.allowlist '["read", "web_search"]'# 为特定频道配置openclaw config set channels.discord.guilds.1477529551985704960.channels.1481233224720977991.agentProfile readonly

场景 3:独立 workspace

# 创建隔离 profileopenclaw config set agents.profiles.isolated.workspace /isolated/workspace# Cron 任务使用openclaw config set cron.jobs.daily-analysis.agentProfile isolated

⚠️ 安全检查清单

  • 多用户访问同一 workspace? → 考虑独立 workspace
  • 需要限制 API 调用成本? → 为轻量任务配置便宜模型
  • 敏感操作? → 配置 tools denylist
  • 完全隔离需求? → 考虑多个 Gateway 实例

📚 参考资料

  • OpenClaw 文档: https://docs.openclaw.ai
  • 本地配置: ~/.openclaw/openclaw.json
  • Session 存储: ~/.openclaw/agents/main/sessions/