AgentSpace 安全架构解析:沙箱隔离、Provider 策略层与多 Agent 硬隔离的完整设计指南
人工智能AI AgentAgent 编排后端前端任务调度认证鉴权【免费下载链接】AgentSpaceAgentSpace: Human Agents. One Team. One Workspace项目地址https://gitcode.com/gh_mirrors/ag/AgentSpace点击查看免费下载AgentSpace 是一个人类 Agent 同队协作的工作空间Human Agents. One Team. One Workspace。当多个 AI Agent 在同一工作区里读写文件、执行命令、调用外部系统时安全就成了第一命题。本文带你从源码层面拆解 AgentSpace 的三层安全设计Sandbox 沙箱隔离、Provider 策略层Policies、以及多 Agent 硬隔离机制看看它如何做到能力给够、风险管住。一、为什么 Agent 安全需要分层隔离 普通应用的安全边界是用户接口而 Agent 系统多了一个更危险的边界——Agent 本身会执行代码、访问文件系统、发送外部消息。一旦某个 Agent 被恶意提示词诱导prompt injection它可能越权删文件、外发数据。AgentSpace 的应对思路是把防线拆成三层每层解决一类问题防线位置解决的问题Sandbox 沙箱packages/sandbox/Agent 执行代码时出不去、玩不坏策略层 Policiespackages/services/src/policies/哪些动作要审批、哪些数据算不可信多 Agent 硬隔离packages/daemon/src/agent-router/不同 Agent 互不串门、资源按授权分配二、第一层Sandbox 沙箱隔离 2.1 统一的 Sandbox 接口沙箱模块 packages/sandbox/src/interface.ts 定义了一个极简的Sandbox接口读文件、写文件、列目录、执行命令、打快照、停止、销毁。上层业务只依赖这个接口不关心底层是本地目录还是云端容器——这是典型的可替换隔离后端设计。入口工厂 packages/sandbox/src/factory.ts 根据配置把请求路由到两种 Provider 之一connectSandbox() ├─ provider cube → CubeSandbox云端强隔离实验特性 └─ provider local → LocalSandbox本地目录沙箱默认2.2 LocalSandbox路径围栏 命令超时默认的本地沙箱 packages/sandbox/src/local/local-sandbox.ts 有两条核心防线路径围栏所有文件操作都经过resolveInsideSandbox校验任何试图以../逃逸出工作目录的路径会直接抛出Path xxx escapes sandbox root.错误。Agent 的文件系统视野被限制在一个笼子内。命令生命周期管控exec启动子进程后统一跟踪超时先SIGTERM优雅终止宽限 5 秒后再SIGKILL强杀见 local-sandbox.ts任务级超时默认 12 小时可通过AGENT_SPACE_TASK_TIMEOUT_MS环境变量调整types.ts。此外沙箱支持snapshot()对工作内容打快照、destroy()彻底销毁工作目录让每次 Agent 运行都是一次性房间。2.3 CubeSandbox云级强隔离与网络策略需要更强隔离时可切换到 CubeSandbox。它是实验特性必须显式设置AGENT_SPACE_CUBE_ENABLE_EXPERIMENTALtrue才能启用避免误用cube-config.ts。配置上亮点是出站网络策略AGENT_SPACE_CUBE_ALLOW_OUT/AGENT_SPACE_CUBE_DENY_OUT出站域名白名单与黑名单cube-config.ts可选把宿主工作目录挂载进沙箱的/workspace其余环境完全由云端模板提供超时、API 请求超时默认 30 秒全部有硬上限也就是说Agent 在 Cube 沙箱里跑任务时能访问哪些网络资源是由策略显式授予的而不是默认全通。三、第二层Provider 策略层Policies⚖️策略层回答的不是能不能执行而是该不该放行、要不要人审。核心实现在 packages/services/src/policies/agent-actions.ts。3.1 动作策略allow / require_approval / deny 三态决策每个 Agent 动作发帖、写文档、发外部消息、调用技能等都会进入decideAgentActionPolicySync产出一个带reasonCode和审计数据的决策。内置动作清单包括runtime.use、message.post、external_message.send、document.read/write、file.delete、skill.invoke等agent-actions.ts。默认规则非常克制外部文档写入一律require_approval需要channel_manager角色审批发送外部消息低风险且 Provider 绑定校验通过后放行否则要求channel_manager审批高风险动作riskLevel high必须admin审批其他动作默认放行但全程记录审计数据workspace、actor、任务、资源、payloadHash 等这套默认放行 高危审批 全程审计的组合比一刀切的全审批对协作效率更友好同时把最危险的出口动作往外写、往外发全部拦在审批闸门前。3.2 数据策略外部内容一律不可信标签外部渠道如 IM进来的消息属于不可信输入。workspace-data.ts 的策略是外部消息必须显式标注trust untrusted_user_message否则直接deny标注后分类为external_untrusted_user_content允许作为普通用户内容存储、检索、进入 Agent 上下文但永远带来源标签Agent 消费时知道它是外部用户说的话而非系统指令这是对抗 prompt injection 的数据面防线源头标记 用途白名单storeInWorkspace / includeInSearch / includeInAgentContext。四、第三层多 Agent 硬隔离 4.1 每个 Agent × 频道都有独立工作目录多 Agent 协作最怕串文件。AgentSpace 在 conversation-execution-workspaces.ts 中为每个频道 Agent组合生成唯一 keygroup:频道名:agentId并映射到独立目录workdirs/channels/频道/Agent路径规则见 storage-paths.ts。这意味着同一个频道里的两个 Agent、同一个 Agent 在两个频道里各自拥有完全隔离的文件空间与运行状态——文件系统层面天然硬隔离不依赖任何君子协定。4.2 AgentRouterProvider 适配器 子进程围栏packages/daemon/src/agent-router/ 把 Claude Code、Codex、OpenCode、Hermes 等多种 CLI 型 Agent Provider 统一抽象为HarnessAdapter清单见 types.ts。每次运行都是一个受控子进程能力白名单RuntimeToolCapability声明每个工具允许的 shell 模式allowedShellPatterns被标记denied的工具会被直接转为诊断错误harness.tool_unauthorized而不是静默失败capabilities.ts。以 Claude 适配器为例工具白名单会被拼进--allowedTools参数下发claude.ts。环境变量最小化只注入允许工具所需的env与PATH目录denied 工具的环境变量一律不带capabilities.ts。密钥脱敏启动计划携带redactions规则stdout/stderr 流经redactText过滤防止 API Key 等机密被打进日志subprocess.ts。超时与诊断超时统一 SIGTERM → SIGKILL所有失败都归一化为结构化AgentRouterDiagnostic如harness.cli_missing、harness.timeout故障可观测、可归因。4.3 Runtime 授权谁能驱动哪个 Agent 运行时隔离的不只是 Agent 之间还有人 × Runtime的授权面。runtime-access.ts 实现了运行时授权模型仅 workspace 的 owner/admin 可授予或吊销 Runtime 使用权限runtime-access.ts普通用户只能使用被授予的 RuntimeAgent 绑定 Runtime 后用户还需同时通过员工可见性 频道可见性 Runtime 授权三重检查才能触发它每次授权/吊销都写入审计事件并推送通知五、总结一张图看懂 AgentSpace 的三道防线 外部消息 ──▶ 数据策略(不可信标签) ──▶ 动作策略(审批闸) │ ▼ 独立工作目录(频道×Agent) ◀── AgentRouter(白名单/脱敏/超时) │ ▼ Sandbox(路径围栏/网络策略/快照销毁)数据进来先打标外部内容永远带着不可信身份进入工作区动作出去先过闸高风险与外发动作强制人工审批全程审计执行环境先圈住独立目录 沙箱围栏 工具白名单让每个 Agent 只在自己的房间里干被授权的事。对想搭建多 Agent 协作系统的团队来说这套沙箱隔离 策略层 硬隔离的分层思路比单纯堆权限点更值得借鉴。感兴趣可以继续阅读源码沙箱模块 packages/sandbox/src/factory.ts、策略层 packages/services/src/policies/、运行时路由 packages/daemon/src/agent-router/。赞分享人工智能AI AgentAgent 编排后端前端任务调度认证鉴权【免费下载链接】AgentSpaceAgentSpace: Human Agents. One Team. One Workspace项目地址https://gitcode.com/gh_mirrors/ag/AgentSpace点击查看免费下载相关推荐Ladybird安全架构沙箱与进程隔离机制Ladybird安全架构沙箱与进程隔离机制 Ladybird浏览器采用了先进的多进程架构和沙箱技术来实现严格的安全隔离。该架构通过将浏览器功能划分为多个独立的前端WebAssembly音视频插件隔离策略lazy.nvim沙箱环境与安全边界插件隔离策略lazy.nvim沙箱环境与安全边界 引言现代Neovim插件管理的安全挑战 在Neovim生态系统中插件管理器的安全性一直是开发者关注的核心开发工具包管理器Potpie 沙箱核心设计RepoCache、Workspace 与 Runtime 三层解耦的隔离执行架构Potpie 沙箱核心设计RepoCache、Workspace 与 Runtime 三层解耦的隔离执行架构 本文围绕 Potpie 的沙箱核心设计文档 sa人工智能AI Agent代码智能体知识图谱开发工具CLI后端创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

医疗器械设计控制:用数字化把“安全”锁进全流程

医疗器械设计控制:用数字化把“安全”锁进全流程

在医疗器械行业,合规从来不是“多做几份文档”那么简单。尤其当产品走向多配置、软硬件融合、远程互联,安全就不能靠一次测试“博概率”,而要靠全过程把风险锁住。一、行业正在发生什么变化?驱动医疗器械变革的因素,主…

2026/10/16 18:25:04 阅读更多 →
咸阳全飞秒医院医生推荐:3.0 与精准 4.0 区别及适配条件

咸阳全飞秒医院医生推荐:3.0 与精准 4.0 区别及适配条件

咸阳全飞秒医院医生推荐怎么选?全飞秒凭借切口小、无瓣、恢复快的特点,是咸阳上班族、学生跨城摘镜的高频选择。但很多人到了面诊环节才发现,全飞秒还分 SMILE 3.0 与微创全飞秒精准 4.0 两代,价格相差六千元。本文讲清楚全飞秒的…

2026/10/16 18:25:04 阅读更多 →
Gurobi安装配置与Python接口实战:从下载到调参的完整指南

Gurobi安装配置与Python接口实战:从下载到调参的完整指南

简介:这份资源面向运筹优化、数学建模与工程计算领域的学习者和研究者,提供Gurobi求解器的软件下载包,可用于线性规划、混合整数规划、二次规划等优化问题的建模与求解,适合课程作业、科研实验及竞赛备赛等场景。压缩包为zip格式&…

2026/10/16 18:24:04 阅读更多 →

最新新闻

SHOT特征描述子原理与工程实践:从局部参考坐标系到点云配准

SHOT特征描述子原理与工程实践:从局部参考坐标系到点云配准

做三维视觉的,迟早要和点云打交道。无论是做配准、分割还是目标识别,点云本质上就是一堆无序的坐标点,计算机没法直接拿它们和另一个场景里的点云做“比对”。这时候就得靠特征描述子,把局部几何信息浓缩成一个可量化的向量。SHOT…

2026/10/16 21:11:34 阅读更多 →
Matlab阶跃响应指标精准计算:修复stepinfo三大缺陷

Matlab阶跃响应指标精准计算:修复stepinfo三大缺陷

简介:本资源是一套面向控制工程学习者与MATLAB/Simulink实践者的阶跃响应性能指标自动化计算工具包,专为控制系统分析与控制器设计场景打造,适用于本科课程设计、毕业设计及工程调试等中初级应用需求。压缩包共3个文件(2个.m函数脚…

2026/10/16 21:11:34 阅读更多 →
Flume聚合架构详解:多Agent日志汇流与Avro Source/Sink配置实践

Flume聚合架构详解:多Agent日志汇流与Avro Source/Sink配置实践

假设你手上有10台业务服务器,每台都在不停吐日志,Flume的单机采集玩法你已经跑得很顺了。可一旦要把这10台机器的日志统一汇到一个地方,事情就没那么简单:HDFS上出现一堆彼此独立的目录,业务方取数前得自己做合并&…

2026/10/16 21:11:34 阅读更多 →
AI生成PPT工具实测:8款年终总结制作效率与效果对比

AI生成PPT工具实测:8款年终总结制作效率与效果对比

每到年底,办公桌上最容易堆积的就是一件“看似重要、实则让人头大”的活:年终总结PPT。我今年也不例外,而且因为团队扩编,要交的汇报还不止一份。大概在11月初,我决定彻底转变方式,把所有能用AIPPT工具解决…

2026/10/16 21:11:34 阅读更多 →
一维卷积直接处理振动信号:轴承故障诊断实战

一维卷积直接处理振动信号:轴承故障诊断实战

简介:本资源是一份基于PaddlePaddle框架实现的一维卷积神经网络(1D CNN)轴承故障识别完整复现方案,面向深度学习初学者、工业智能方向研究者及设备故障诊断实践工程师。项目严格复现《基于卷积神经网络的轴承故障诊断算法研究》论…

2026/10/16 21:11:34 阅读更多 →
大模型偏见污染:从Mac推荐看AI一本正经的胡说八道

大模型偏见污染:从Mac推荐看AI一本正经的胡说八道

1. 从一条Mac评论开始:当AI的"自信"掩盖了"偏差"你有没有遇到过这种情况:打开AI助手,问了一个关于Mac的问题,它给出的答案措辞严谨、结构清晰、语气笃定,乍一看完全值得信赖。但你仔细一琢磨&…

2026/10/16 21:10:33 阅读更多 →

日新闻

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 0:00:05 阅读更多 →
信号与系统频域分析作业解题指南

信号与系统频域分析作业解题指南

1. 作业背景与核心要求解析信号与系统作为电子信息类专业的核心基础课,其作业设计往往直接关联课程的核心知识框架。2026年春季第六次作业的布置,通常对应着课程进展到频域分析的关键阶段。根据常规教学进度推测,本次作业可能涉及以下核心内容…

2026/10/16 0:00:05 阅读更多 →
Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

1. 从一个"四不像"的练手项目说起如果你已经看完了Django的官方教程前几章,跟着敲完了投票应用,大概会有一种"我好像会了,又好像什么都不会"的割裂感。教程里每个知识点都是拆开的——这一章讲模型,下一章讲视…

2026/10/16 0:00:05 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/15 16:18:54 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/15 19:41:51 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/16 15:04:24 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 3:49:43 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 14:23:36 阅读更多 →