
agent-scan v0.5.16
AI代理、MCP服务器和代理技能的安全扫描器。
Snyk Agent Scan
发现并扫描你机器上的 agent 组件,以检测提示注入
和漏洞(包括 agents、MCP servers、skills)。
注意:CLI 输出为实验性内容,可能会发生变化
Agent Scan v0.5.x(计划弃用)
此 CLI 的原始输出——包括问题代码、字段名称、严重性标签和响应结构——均为实验性内容,可能会在版本之间不经通知而发生变化。我们不建议构建依赖特定 CLI 输出字段或问题代码的生产工作流。
Agent Scan v0.6 及更高版本
此 CLI 的原始输出——包括风险指标名称、评分、字段名称和响应结构——均为实验性内容,可能会在版本之间不经通知而发生变化。我们不建议构建依赖特定 CLI 输出字段或风险名称的生产工作流。
如果你是使用 Snyk 大规模管理 agent 安全风险的企业客户,CLI 输出可能无法反映发送到 Evo 平台并在其中显示的内容。支撑企业部署的底层集成、发现和风险评估是稳定且受支持的——任何变更都将按照 Snyk 标准产品实践进行沟通。请联系你的客户团队获取部署指导。
新功能 阅读我们与 Agent Scan 0.4 一同发布的关于 agent skill 生态系统新兴威胁的技术报告,该版本新增了对扫描 agent skills 的支持。
Agent Scan v0.5.x 输出
[!WARNING] Agent Scan v0.5.x 使用问题代码输出。此 CLI 行计划弃用。
Agent Scan v0.6 及更高版本输出
Agent Scan 可帮助你发现所有已安装的 agent 组件(harnesses、MCP servers 和 skills),并扫描它们是否存在常见威胁,例如提示注入、敏感数据处理或隐藏在自然语言中的恶意软件载荷。使用 --no-skills 可忽略对 skills 的分析。
安全警告
⚠️ 重要:扫描 MCP 配置将执行其中定义的命令。
当 Agent Scan 扫描 MCP 配置文件时,它会通过执行配置中指定的命令和参数来启动 stdio MCP servers。这是检索工具描述并执行安全分析所必需的。
建议:
- 在沙箱中运行扫描(Docker 容器、VM 或一次性环境),以评估不受信任或第三方的 MCP 配置
- 仔细查看同意提示,在交互式扫描期间,它会显示将为每个 server 执行的确切命令和参数
- 仅在已核实所有 MCP server 命令的可信环境中使用
--dangerously-run-mcp-servers默认情况下,Agent Scan 在交互式运行期间启动每个 stdio MCP server 之前,需要用户明确同意(y/n)。这让你可以控制系统中执行的内容。
快速开始
选择以下两种方式之一来运行 Agent Scan:
- 使用
uvx运行 Python 包,按照以下说明操作。 - 从 GitHub Releases 下载适用于你平台的独立二进制文件。发布版本还包括 SBOM、校验和、签名校验和以及源代码归档。
在使用任一选项之前:
- 在 Snyk 注册,并从 https://app.snyk.io/account 获取 API token(API Token → KEY → 点击显示)。
- 在运行任何扫描之前,将 token 设置为环境变量: ```bash
export SNYK_TOKEN=your-api-token-here
使用 uvx 运行
在你的系统上安装 uv。根据你的 CLI 版本选择相应的说明。
Agent Scan v0.5.x
以下示例固定使用 v0.5.17 作为具体的 v0.5.x 版本:```bash
Scan the whole machine
Scan a specific MCP configuration
uvx [email protected] ~/.vscode/mcp.json
Scan a single agent skill
uvx [email protected] ~/path/to/my/SKILL.md
Scan all Claude skills
uvx [email protected] ~/.claude/skills
> [!WARNING]
> v0.5.x 使用 issue-code 输出和 `2025-09-02` 分析 API。此 CLI 行计划弃用。
#### Agent Scan v0.6 及更高版本```bash
# Scan the whole machine
uvx snyk-agent-scan@latest
# Scan a specific MCP configuration
uvx snyk-agent-scan@latest ~/.vscode/mcp.json
# Scan a single agent skill
uvx snyk-agent-scan@latest ~/path/to/my/SKILL.md
# Scan all Claude skills
uvx snyk-agent-scan@latest ~/.claude/skills
v0.6 及更高版本使用基于风险的输出和 2026-07-10 分析 API。
两个版本都会扫描 MCP 服务器、工具、提示词、资源和技能,并自动发现受支持的代理配置,例如 Claude Code/Desktop、Cursor、Gemini CLI 和 Windsurf。
使用独立二进制文件运行
从最新的 GitHub Release 下载适用于你的操作系统和架构的二进制文件。发布页面还提供 SBOM(sbom-<version>.json)、校验和文件以及 GitHub 生成的源代码归档。请参阅验证独立二进制文件以验证你的下载。
亮点
- 自动发现 MCP 配置、代理工具、技能
- 扫描 Claude、Cursor、GitHub Copilot、Windsurf、Gemini CLI、Amp、Amazon Q 及其他代理。
Agent Scan v0.5.x
Agent Scan v0.6 及更高版本
支持的代理与能力
当代理的安装路径存在时,Agent Scan 会自动发现代理及其能力(MCP 服务器或技能)。下表显示了每个代理在哪些操作系统上会被扫描。
- ✓:该能力至少定义了一个路径。
- ✗:该代理在该操作系统下列出,但没有该能力的路径。
- —:该代理未包含在该操作系统中。
- 技能 可以使用
--no-skills忽略技能
| 代理 | macOS MCP | macOS 技能 | Linux MCP | Linux 技能 | Windows MCP | Windows 技能 |
|---|---|---|---|---|---|---|
| Windsurf | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Cursor | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| VS Code | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| GitHub Copilot | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Claude Desktop | ✓ | ✗ | — | — | ✓ | ✗ |
| Claude Code | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Gemini CLI | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| OpenClaw | ✗ | ✓ | ✗ | ✓ | ✗ | ✓ |
| Amp | ✗ | ✓ | ✗ | ✓ | ✗ | ✓ |
| Kiro | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| OpenCode | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Antigravity | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Codex | ✓ | ✓ | ✓ | ✓ | — | — |
| Amazon Q | ✓ | ✗ | ✓ | ✗ | ✓ (WSL) | ✗ |
按范围划分的检测覆盖
上方的矩阵显示了每个代理在哪些操作系统上会被扫描。此矩阵则按配置范围和组件类型(技能与 MCP 服务器)细分检测情况,并跨操作系统合并展示。“服务器”指 MCP 服务器。
四种范围:
- 系统 — 适用于所有用户的机器级 / 管理员管理 / 企业配置(例如
managed-mcp.json、/etc、/Library/Application Support或ProgramData下的文件)。 - 用户 — 用户主目录配置(适用于其所有项目)。
- 项目 / 工作区 — 限定于已打开项目或工作区的配置。
- 扩展 / 插件 — 捆绑在已安装扩展或插件内部的组件。
图例:✓ 已检测 · ✗ 代理支持此项,但 Agent Scan 尚未扫描 · N/A 代理在此范围没有此类组件。