VM级隔离的安全代码执行环境
docker-sandbox Docker官方沙箱功能的文档型技能,指导用户创建VM级隔离环境安全运行AI Agent,实现零信任代码执行与网络细粒度管控。
什么时候用这个 Skill?
核心用法
docker-sandbox 是一个纯文档型技能,指导用户利用 Docker Desktop 4.49+ 内置的 docker sandbox 插件创建轻量级 VM 隔离环境。核心工作流包括:通过 docker sandbox create 初始化沙箱(支持 Claude、Codex、Copilot、Gemini、Kiro 等主流 Agent),使用 docker sandbox exec 执行命令,或 docker sandbox run 直接启动 Agent 会话。关键特性是网络代理控制层——用户可通过 --policy deny 实施默认拒绝策略,再精确允许特定域名(如 registry.npmjs.org、、api.openai.com`),实现最小权限网络访问。
显著优点
安全架构领先:VM 级隔离而非容器级,配合 virtiofs 挂载实现性能与隔离的平衡。网络代理支持域名白名单、CIDR 阻断、直连绕过三重控制,满足零信任安全模型。多 Agent 生态兼容:原生支持五大主流 AI Agent,避免厂商锁定。开发体验优化:预装 Node.js LTS、Git、Python 等工具链,工作目录自动挂载保留路径结构,跨平台一致(Windows/macOS/Linux)。可复现环境:支持 docker sandbox save 将配置固化为团队共享模板。
潜在缺点与局限性
版本门槛严苛:强制要求 Docker Desktop 4.49+,旧版本用户无法使用。Node.js 代理兼容性问题:原生 fetch(undici)不识别 HTTP_PROXY 环境变量,需手动注入 require hook,增加使用摩擦。Windows 路径转换陷阱:Git Bash/MSYS2 环境存在路径自动转换问题,需设置 MSYS_NO_PATHCONV=1。资源开销:每个沙箱独立 VM,大量并行实例将显著消耗内存与 CPU。功能依赖官方:作为 Docker Desktop 专属功能,无法迁移至纯 Linux Docker Engine 环境。
适合的目标群体
安全敏感型开发者:需要运行 npm 生态中来源可疑的包、执行 LLM 生成的未审计代码。AI Agent 重度用户:频繁调用 Claude/Codex 等工具处理多项目代码,需防止交叉污染。DevOps/SRE 工程师:构建可复现的 CI 测试环境,验证破坏性变更。安全研究员:分析恶意样本或漏洞利用代码,需网络可控的隔离沙箱。企业合规团队:满足代码审计、供应链安全等合规要求。
使用风险
性能风险:VM 启动延迟(数秒级)不适合高频短命令场景;virtiofs 大文件 IO 可能瓶颈。依赖风险:Docker Desktop 更新可能破坏沙箱状态(需 docker sandbox reset 修复)。配置风险:网络策略误配可能导致 Agent 无法访问必要 API,或过度放行丧失隔离意义。隐性成本:Docker Desktop 商业许可在企业场景可能产生费用。
简单 3 步,立即在 AI 工具中使用
- 1
- 2
-
3
用普通话描述任务
直接说出你的需求,AI 会自动按此 Skill 预设流程落地结果。
复制给 Agent 自动安装
选择你在用的工具,复制下方指令粘贴给 AI,AI 会先说明用途和权限,自动完成安装。
使用前注意事项与安全等级
安全等级 A:已整理并检查,正常使用无明显风险。 ## 核心用法 `docker-sandbox` 是一个纯文档型 Skill,封装 Docker Desktop 4.49+ 的 `docker sandbox` 插件功能,用于创建 VM 级隔离环境运行 AI 代理。主要操作包括: - **创建沙盒**:`docker sandbox create --name <name> <agent> <workspace>`,支持 Claude、Codex、Copilot、Gemini、Kiro 等代理 - **执行命令**:`docker sandbox exec <sandbox> <command>`,支持环境变量、工作目录、交互式终端等选项 - **直接运行代理**:`docker sandbox run <agent> <workspace> -- <agent-args>` - **网络控制**:通过 `docker sandbox network proxy` 实现细粒度访问控制,支持允许列表/拒绝列表策略 - **生命周期管理**:start/stop/rm/ls/save 等标准容器操作 ## 显著优点 1. **VM 级硬件隔离**:基于轻量级 VM(非容器命名空间),提供真正的内核级隔离 2. **细粒度网络控制**:内置代理支持域名/IP 级别的白名单/黑名单,满足最小权限原则 3. **多代理原生支持**:一站式支持主流 AI 编码代理,无需额外配置 4. **零依赖自包含**:纯 Markdown 文档,无第三方代码依赖,仅依赖系统级 Docker 工具 5. **工作目录自动挂载**:通过 virtiofs 实现高性能文件共享,路径映射透明 ## 潜在缺点与局限性 1. **平台限制**:仅支持 Docker Desktop 4.49+,Linux 原生 Docker 引擎不支持 2. **资源开销**:每个沙盒为独立 VM,内存/CPU 开销高于普通容器 3. **Node.js fetch 代理问题**:`globalThis.fetch` 不自动识别 `HTTP_PROXY` 环境变量,需手动注入代理修复代码 4. **Windows 路径转换问题**:Git Bash/MSYS2 环境下存在路径自动转换问题,需设置 `MSYS_NO_PATHCONV=1` 5. **无持久化卷支持**:重启后状态重置(除非使用 `save` 保存为模板) ## 适合人群 - 需要运行**不可信代码**或第三方 npm 包的安全研究人员 - 在**企业环境**中需网络隔离约束的 AI 代理用户 - 希望**破坏性测试**(如批量删除、系统调用测试)不影响宿主机的开发者 - 需要**可复现实验环境**的数据科学家和工程师 ## 常规风险 | 风险类型 | 说明 | 缓解措施 | |---------|------|---------| | 供应链风险 | 维护者为个人开发者账号,非知名组织 | 定期审查更新,关注社区反馈 | | 许可证风险 | 当前未声明开源许可证 | 使用前确认合规要求 | | 配置风险 | 网络代理策略配置错误可能导致意外放通 | 遵循 `--policy deny` 最小化原则 | | 更新风险 | 依赖 Docker Desktop 特定版本功能 | 关注 Docker 官方安全公告,及时更新 |
report_id: CLS-2026-0504-DCKR
report_date: "2026-05-04T05:07:28Z"
scanner_version: CLS-Certify v2.1.0
scan_mode: Full Scan
skill_name: docker-sandbox
skill_version: 1.0.0
skill_path: /tmp/bss_skill_y_03qfdl
maintainer: gitgoodordietrying
license: Unspecified
source_url: https://github.com/clawdbot/skills
trust_level: T3
trust_level_text: 个人开发者/社区项目 (T3)
scan_duration: 12.5s
code_stats: 2 files · 257 lines · 100% Markdown
grade: A
score: 82
evaluation: 标准安全级别,满足基本安全要求,无高危风险项
stamp_color: green
total_风险发现: 3
sample_hash: sha256:8853a2e943430a0ca89bfdaf43e9997d3f1b18ce1c070cb50312616ea088b8ac
disclaimer: 本认证结果仅代表检测时点样本的安全状况,不构成对该 Skill 未来版本或维护者其他项目的安全背书。使用者应结合自身安全需求和风险评估做出最终决策。
radar:
- name: 静态代码分析
short: 静态
score: 85
status: pass
detail: 纯 Markdown 文档,无实际可执行代码。代码示例中存在 Function 构造函数使用,但为正常代理配置示例,无恶意意图。 - name: 动态行为分析
short: 动态
score: 90
status: pass
detail: 该 Skill 为纯文档型,无实际可执行代码需动态分析。所有命令均为 Docker 官方 CLI 调用示例。 - name: 依赖审计
short: 依赖
score: 95
status: pass
detail: 无第三方依赖。仅依赖 Docker Desktop 4.49+ 的 docker sandbox 插件(系统级工具)。 - name: 网络流量分析
short: 网络
score: 75
status: warn
detail: 包含 Docker 内部代理配置示例 (host.docker.internal:3128),此为沙盒网络代理的标准配置,非外部数据传输风险。 - name: 隐私合规检查
short: 隐私
score: 88
status: pass
detail: 不收集用户敏感信息。仅使用标准 Docker 命令,无数据上报或追踪行为。 - name: 威胁情报
short: 情报
score: 70
status: warn
detail: 来源为个人开发者账号 (gitgoodordietrying),非知名组织/基金会。建议使用者关注后续更新和社区反馈。
compliance:
- text: GDPR 数据最小化原则
status: pass - text: CCPA 用户知情权
status: pass - text: 无恶意代码传播
status: pass - text: 无已知 CVE 漏洞
status: pass - text: 无不必要权限申请
status: pass - text: 来源可信度审查
status: warn
风险模式
- info: 纯文档型 Skill(无实际可执行代码)
- success: 标准 Docker CLI 命令封装
- info: 支持 Claude/Codex/Copilot/Gemini/Kiro 多代理
- warning: 来源为个人开发者 (T3)
- success: 具备网络代理隔离控制功能
分析摘要
- Skill 类型判定:该 Skill 为纯 Markdown 文档型(T-MD),仅包含 Docker Sandbox 功能的使用说明和命令示例,无实际可执行代码脚本。
- 核心功能:提供 Docker Desktop Sandbox 功能的文档化封装,支持创建隔离的 VM 环境运行各类 AI 代理(Claude、Codex、Copilot、Gemini、Kiro),具备网络代理控制和文件系统隔离能力。
- 安全风险:未发现高危安全风险。检测到的 "Function 构造函数" 使用为代码示例中的正常代理配置(用于 Node.js fetch 的 HTTPS 代理修复),非恶意动态代码执行。
- 网络行为:涉及的网络通信仅限于 Docker 内部代理 (host.docker.internal:3128),用于沙盒环境与宿主机的网络代理通信,无外部数据传输风险。
- 来源评估:维护者 "gitgoodordietrying" 为个人开发者 GitHub 账号(T3 级别),非知名组织或基金会。建议使用者在使用前进行额外审查,并关注社区反馈。
外部接口
| Endpoint | Method | Reputation | Encryption | Data Types | Provider |
|---|---|---|---|---|---|
| host.docker.internal:3128 | PROXY | Internal | N/A | Network traffic | Docker Desktop |
| docs.docker.com | HTTPS | Trusted | TLS 1.2+ | Documentation | Docker Inc. |
| api.example.com | HTTPS | Example | TLS 1.2+ | N/A | Example only |
风险发现
RISK-001
severity: low
category: code_example
title: Function 构造函数使用(代码示例)
location: SKILL.md:167
description: 在代理配置代码示例中使用了 globalThis.fetch = function(url, opts = {}) {...} 重定义全局 fetch 函数。这是为了修复 Node.js fetch 不自动使用 HTTP_PROXY 环境变量的技术方案,属于正常的代理配置示例。
impact: 无实际风险。此代码仅为使用说明中的示例,Skill 本身不执行该代码。
recommendation: 已在文档中明确标注此为 "proxy-fix.js" 示例文件,使用者按需自行部署。无需修改。
verified: false_positive
RISK-002
severity: info
category: source_reputation
title: 来源为个人开发者账号 (T3)
location: _meta.json
description: Skill 维护者为 GitHub 用户 "gitgoodordietrying",属于个人开发者账号,非知名组织或顶级开源基金会(T1/T2)。根据 CLS 分级标准,个人开发者项目需更严格的代码审查。
impact: 低。纯文档型 Skill 风险可控,但后续更新需关注维护者信誉变化。
recommendation: 建议关注该 Skill 的社区反馈和使用评价。如需更高安全保证,可等待项目成熟或迁移至知名组织维护。
verified: confirmed_low_risk
RISK-003
severity: info
category: license_missing
title: 未明确声明开源许可证
location: SKILL.md, _meta.json
description: Skill 文档和元数据中未找到明确的开源许可证声明(如 MIT、Apache-2.0、GPL 等)。
impact: 中。未声明许可证可能导致使用者的法律合规风险,限制 Skill 在企业环境的采用。
recommendation: 建议维护者在仓库根目录添加 LICENSE 文件,并在 SKILL.md 中声明许可证信息。
verified: confirmed_low_risk
改进建议
1. 添加开源许可证声明
描述: 当前 Skill 未声明开源许可证,建议维护者在仓库根目录添加 LICENSE 文件(推荐 MIT 或 Apache-2.0),并在 SKILL.md frontmatter 中添加 license 字段。
2. 定期审查 Docker 安全更新
描述: 该 Skill 依赖 Docker Desktop 4.49+ 的沙盒功能。建议使用者关注 Docker 官方安全公告,及时更新 Docker Desktop 以获取最新的安全补丁。
3. 网络代理策略最小化
描述: 使用该 Skill 创建沙盒时,建议遵循文档中的 "Safe Package Exploration" 模式,采用 --policy deny 默认拒绝策略,仅显式允许必要的域名(如 registry.npmjs.org),实现网络访问最小化原则。
4. 监控维护者账号活动
描述: 鉴于维护者为个人开发者账号,建议定期审查该账号的 GitHub 活动、提交历史和社区反馈,以评估长期维护能力和可信度。
本报告由 CLS-Certify v2.1.0 生成
认证时间: 2026-05-04
报告 ID: CLS-2026-0504-DCKR
国内网盘直下载与运维维护
百度/夸克直链转存,无需翻墙或挂代理。
固定有效版本,经过实测排查,避免代码变动导致失效。
专人维护网盘地址,发现链接失效 24h 内完成补链。
随时获取最新修复说明,帮非技术用户节省大把调优时间。
源码与文件预览(1 个文件)
正在加载代码…