XSafeClaw 安全架构

Multi-Layer Guard & Proactive Safety for AI Agents
// System Architecture Overview
💬
Feishu
飞书 WebSocket
📱
Telegram
Bot API
🔗
Slack
Socket Mode
🌐
Web UI
WebSocket
🛡️
XSafeClaw UI
SafeChat
OpenClaw Gateway — 最小改动

Gateway 控制平面

HTTP/WebSocket · Channel Manager · Session Routing · Event Broadcasting · Skills 由 XSafeClaw 注入
📡

Channel Manager

启停 Channel 插件
接收外部消息
投递 Agent 回复
🤖

Agent (Pi Engine)

LLM 推理引擎
工具调用编排
会话上下文管理
🔧

工具执行

before_tool_call
→ HTTP 调用 XSafeClaw
→ Allow / Block / Pending
🔀

LLM 调用

原始: 直连 Provider
修改: → Safe Router
baseUrl 指向代理
📋

注入安全 Skills

🛡️ 资产保护 Skill
🎯 红队预演 Skill
XSafeClaw → Agent Skills
▼ ▲ Skill / Memory 管理 & 文件扫描
XSafeClaw 后端 — 主动安全层

XSafeClaw 主动防御系统

Skill/Memory 文件安全扫描 · 工具调用轨迹级 Guard · 资产访问权限控制 · 红队预演 → Skill 生成 · 全生命周期安全介入
🔍

Skill & Memory 扫描

Agent 加载前扫描所有 Skill 和 Memory 文件,校验安全性与合法性。阻止被篡改或注入恶意指令的文件被使用
文件哈希校验 内容审查 注入检测 白名单
GUARD
🔧

工具调用轨迹级 Guard

通过 before_tool_call hook 拦截所有工具调用并记录完整调用轨迹。实时风险评估 + AgentDoG 离线轨迹分析,形成闭环
block / allow / pending 参数审查 轨迹记录 AgentDoG 评估
🏗️

资产保护 Skill

注入 Agent 的安全 Skill。修改文件/资产前必须调用 XSafeClaw 接口判定权限和安全性,"修改审批"能力
权限检查 危险操作拦截 变更审计 API 回调
🎯

红队预演 Skill

对各类任务进行红队攻击预演,发现风险场景后自动生成安全执行指南 Skill,引导 Agent 安全执行
红队攻击 风险提取 指南生成 动态更新
baseUrl override
XSafeClaw 新增组件 — LLM 代理层

Safe Router — LLM 代理 & 安全网关

OpenAI 兼容 API 代理,拦截所有 LLM 调用,在转发前后应用 Input/Output Guard
📥

Input Guard (用户输入级)

检查发往 LLM 的完整 Prompt,包含用户原始消息、System Prompt、工具结果上下文
prompt injection jailbreak sensitive data policy violation
📤

Output Guard (Agent 输出级)

检查 LLM 返回的回复,在返回给 Agent 之前。捕获有害内容、数据泄露、不安全的工具调用意图
harmful content data leakage unsafe reasoning policy breach
📊

Audit & Logging

记录所有 LLM 交互,供轨迹级分析。对接 AgentDoG 离线评估系统
trajectory log token usage latency metrics AgentDoG
forward to actual provider
🟢
OpenAI
GPT-4o / o3
🔵
Anthropic
Claude
🟡
Moonshot
Kimi
🟣
DeepSeek
V3 / R1
Others
任何 OpenAI 兼容
// 多层 Guard 覆盖矩阵
Guard 层 拦截位置 机制 覆盖范围 可执行动作
SKILL/MEMORY SCAN XSafeClaw 后端 → Agent 加载前 扫描 ~/.openclaw/skills/memory/ 目录内所有文件,校验哈希与内容安全 所有 Agent 实例启动前 阻止加载 / 告警 / 隔离
INPUT GUARD Safe Router → 转发 LLM 前 检查 /chat/completions 的 messages 字段 所有来源 (所有 LLM 调用必经) Block / Modify / Log
TOOL TRAJECTORY Gateway → Agent → 工具执行前 + 离线分析 before_tool_call hook 实时拦截 + AgentDoG 离线轨迹评估闭环 所有来源 (Channel + Web + XSafeClaw) Block / Allow / Pending / 风险标记
ASSET GUARD Agent 内部 → 修改文件/资产前 Agent 通过注入的资产保护 Skill 主动调用 XSafeClaw 权限接口 所有文件写入/修改/删除操作 Allow / Deny / 建议安全修改方式
OUTPUT GUARD Safe Router → 收到 LLM 响应后 检查 completion response 再返回给 Agent 所有来源 (所有 LLM 响应必经) Block / Redact / Log
RED TEAM SKILL XSafeClaw 后端 → 离线预演 → 注入 Agent 红队攻击预演 → 提取风险场景 → 自动生成安全执行指南 Skill 覆盖已知高风险任务场景 引导安全执行 / 规避不安全操作
// 完整消息流 (以飞书用户发送消息为例)
0

XSafeClaw → Skill/Memory 扫描 → SCAN GUARD ✓

Agent 启动前,XSafeClaw 扫描 ~/.openclaw/skills/memory/ 目录下所有文件。校验文件哈希、检测恶意指令注入、比对白名单。不安全的 skill 或被篡改的 memory 将被隔离,不加载到 Agent 中。

0.5

XSafeClaw → 注入安全 Skills → SKILL INJECT ✓

XSafeClaw 将两个安全 Skill 注入 Agent:① 资产保护 Skill(指导 Agent 修改文件前先调用 XSafeClaw API 获取权限)和 ② 红队预演 Skill(包含已知风险场景和安全执行指南,由红队预演系统自动生成和更新)。

1

飞书 → Gateway Channel Plugin

用户在飞书群发消息。Channel 插件通过 WebSocket 接收,去重、解析发送者身份。此步不变。

2

Gateway → dispatchInboundMessage → Agent

Gateway 路由消息到 Agent,解析会话、加载上下文。Agent 开始构建 Prompt(此时已包含注入的安全 Skills)。此步不变。

3

Agent → Safe Router (LLM 调用) → INPUT GUARD ✓

Agent 构造 Prompt 并调用 LLM。由于 baseUrl 指向 Safe Router,请求先到达 XSafeClaw。Input Guard 检查完整 Prompt(包含用户消息 + system prompt + 历史上下文)。若不安全 → 拦截并返回错误。

4

LLM Provider → Safe Router → OUTPUT GUARD ✓

LLM 生成回复。Safe Router 收到后,Output Guard 检查回复内容(有害内容、数据泄露、不安全工具调用意图)。若不安全 → 过滤/拦截后再返回给 Agent。

5

Agent → 工具调用 → TOOL GUARD ✓

LLM 回复中包含工具调用时,Agent 尝试执行。before_tool_call hook 触发 → 调用 XSafeClaw Guard API。评估工具名 + 参数 + 会话上下文。返回 allow / block / pending(等待人工审批)。

5.5

Agent → 修改文件 → ASSET GUARD ✓

当 Agent 需要修改文件或资产时,资产保护 Skill 引导 Agent 先调用 XSafeClaw 的资产权限接口 /guard/asset-check,传入目标路径、操作类型、变更内容。XSafeClaw 判定后返回 allow / deny / suggest_safe_alternative

6

Agent → 回复 → Channel → 用户

Agent 完成推理,回复通过 Channel 插件发回飞书。完整轨迹已由 Safe Router 记录,供 AgentDoG 离线分析。红队预演系统持续分析新场景并更新安全指南 Skill。

// 需实现的组件
🔀

Safe Router 服务

Python/FastAPI 实现的 OpenAI 兼容 API 代理。接收 /v1/chat/completions 请求,应用 Input/Output Guard,然后转发到真实 Provider。Gateway 的 baseUrl 指向此服务。

🔌

Tool Guard 插件

极薄的 JS/TS 模块,作为 OpenClaw 插件安装。注册 before_tool_call hook,向 XSafeClaw Guard API 发 HTTP 请求。支持阻断和异步审批。

🔍

Skill/Memory 扫描引擎

XSafeClaw 后端服务。定期 / Agent 启动前扫描 skill 和 memory 文件。文件哈希校验、内容审查(检测 prompt injection)、白名单比对。隔离不安全文件并告警。

🏗️

安全 Skill 体系

资产保护 Skill: 给 Agent 提供 XSafeClaw 资产权限 API 接口,指导 Agent 修改文件前先检查权限。
红队预演 Skill: 自动化红队攻击 → 提取风险场景 → 生成安全执行指南,动态更新。

🧠

Guard 模型

前期: 集成开源安全模型 (ShieldGemma、Llama Guard、WildGuard 等),快速验证架构可行性,零训练成本。
后期: 基于积累的标注数据自训练专用 Guard 模型并私有化部署,提升精度和领域适配性。

// 关键设计决策
决策点方案理由
OpenClaw 改动范围 仅修改 baseUrl 配置 + 安装一个 plugin hook + 注入安全 Skills 最小侵入性,不改动 OpenClaw 核心代码,升级兼容。Skill 是 OpenClaw 原生机制
Safe Router 协议 100% OpenAI API 兼容 (/v1/chat/completions) Agent 无需任何改动,对它来说只是换了个 baseUrl
Guard 判定方式 同步 await + 可选异步审批 (长轮询) 工具调用可 pending 等待人工审批;LLM guard 同步快速判定
覆盖范围 多层全覆盖 (Scan + Input + Tool + Asset + Output + Trajectory + Red Team) 从 Agent 启动前到执行中到完成后,全生命周期安全防护
流式支持 Safe Router 支持 SSE streaming 代理 Agent 使用流式 LLM 响应,代理需透传 stream
Skill/Memory 安全 哈希校验 + 内容扫描 + 白名单 → 启动前拦截 防止被篡改的 Skill 或 Memory 文件通过 prompt injection 影响 Agent 行为
资产保护机制 通过 Skill 引导 Agent 主动调用 XSafeClaw API,而非强制拦截 利用 OpenClaw 原生 Skill 系统,Agent 自然遵循;配合 Tool Guard 形成双保险
红队预演策略 离线预演 → 风险场景提取 → 自动生成/更新安全 Skill 将攻击知识转化为防御知识,让 Agent 学习安全执行;持续更新不影响在线服务