AIエージェントに「スキル」を追加するとき、そのスキルが本当に安全かを確認しないままインストールしていないでしょうか。Claude Code や Codex CLI、Gemini CLI などが利用するエージェントスキルは、暗黙の信頼のもとで最小限の検証だけで実行されることが多く、外部から取り込んだスキルにプロンプトインジェクションや認証情報の持ち出しといったリスクが潜んでいても気づきにくいのが実情です。
チームでエージェントスキルや MCP サーバーを使い始めた現場では、「このスキルは入れて大丈夫か」を導入のたびに手作業で確認している方も多いはずです。レビューの抜け漏れが怖い一方で、何をどこまでチェックすればいいのかという基準が定まっていないと、判断そのものに時間がかかってしまいます。
こうした課題に対して、スキルをインストールする前に脆弱性や悪意あるパターンを自動で検査するために登場したのが、NVIDIA が公開した OSS「SkillSpector」です。64 種類の検出パターンと 2 段階の解析を備え、「このスキルはインストールして安全か」という問いに答えることを目的に設計されています。
本記事では、SkillSpector がどんな課題を解決するのか、何をどこまで検出できるのか、どのように使うのか、そして類似する OSS と何が違うのかを、公式ドキュメントと README をもとに整理します。実行・インストールは行わず、ドキュメントベースで「自分のチームに採用すべきか」を判断するための材料を提供します。
SkillSpectorとは|AIエージェントスキルのセキュリティスキャナ
SkillSpector は、AIエージェントスキルを対象としたセキュリティスキャナです。GitHub のリポジトリ説明では「Security scanner for AI agent skills. Detect vulnerabilities, malicious patterns, and security risks.(AIエージェントスキルのセキュリティスキャナ。脆弱性・悪意あるパターン・セキュリティリスクを検出する)」と位置づけられています(NVIDIA/SkillSpector)。
基本情報は次のとおりです。いずれも 2026 年 6 月時点の公開メタデータに基づきます。
項目 | 内容 |
|---|---|
提供元 | NVIDIA |
主要言語 | Python |
ライセンス | Apache-2.0 |
スター数 | 5,581 |
フォーク数 | 424 |
最終更新(push) | 2026-06-13 |
公開状態 | 公開(アーカイブ・フォークではない) |
このリポジトリはアーカイブされておらず、フォークでもない本家リポジトリです。最終更新が直近である点とあわせて、現役で開発が続いているプロジェクトだと判断できます(メンテナンス状況の詳細は後述します)。
SkillSpector が解決しようとしているのは、エージェントスキルが「暗黙の信頼」で実行されてしまう問題です。エージェントスキルは、エージェントに特定のタスクを実行させるための指示やスクリプト、依存関係をまとめたものですが、外部から取り込む際に内容を精査せず取り込んでしまうと、意図しない動作や情報漏洩につながる恐れがあります。SkillSpector は、こうしたスキルをインストール前に検査し、「入れて安全か」をスコアと根拠つきで提示することを狙ったツールです。
なぜAIエージェントスキルの事前検査が必要か
事前検査の必要性は、SkillSpector が引用している研究の数字を見ると具体的にイメージできます。SkillSpector は、論文「Agent Skills in the Wild: An Empirical Study of Security Vulnerabilities at Scale」(Liu et al., 2026)の知見に基づいて設計されています。
この研究では、主要なマーケットプレイスから収集した 42,447 件のスキルを分析した結果、次のような傾向が報告されています(出典: Liu et al., 2026 / NVIDIA/SkillSpector README)。
- スキルの 26.1% が何らかの脆弱性を含んでいた
- スキルの 5.2% に悪意ある意図の可能性が見られた
- 実行可能なスクリプトを含むスキルは、含まないものに比べて 2.12 倍脆弱性を持ちやすかった
4 分の 1 を超えるスキルに脆弱性が潜んでいるという数字は、外部スキルを無検証で取り込むことのリスクを端的に示しています。とくに、実行スクリプトを同梱したスキルが 2 倍以上脆弱性を持ちやすいという点は、レビュー時に「どのスキルを優先的に精査すべきか」という判断軸にもなります。
エージェントスキルや MCP サーバーは、社内の生産性向上のために今後さらに使われていく一方で、ソフトウェアサプライチェーンの新たな入口にもなります。一つひとつを手作業で監査するのは現実的でないため、検出パターンを体系化した自動スキャナを導入フローに組み込む意義は大きいといえます。なお、攻撃者目線でAIエージェントのセキュリティを学べるスキル集としてはAnthropic Cybersecurity Skillsも参考になり、検査側と攻撃側の両面からリスクを理解しておくとレビューの精度が高まります。
SkillSpectorの検出範囲|64パターン16カテゴリ
SkillSpector の中核は、64 種類の脆弱性パターンを 16 カテゴリに整理した検出体系です。「自社が気にしているリスクをカバーしているか」を判断するうえで、まずこの全体像を押さえておくと比較がしやすくなります。
16カテゴリの全体マップ
README で挙げられている 16 カテゴリは、大きく「スキルの指示・コンテンツに起因するリスク」「コードや依存関係に起因するリスク」「MCP に固有のリスク」に分けて捉えると整理しやすくなります。
区分 | カテゴリ | 想定するリスクの例 |
|---|---|---|
指示・コンテンツ系 | プロンプトインジェクション | 悪意ある指示の埋め込み |
指示・コンテンツ系 | システムプロンプト漏洩 | 内部プロンプトの抜き出し |
指示・コンテンツ系 | メモリポイズニング | エージェントの記憶汚染 |
指示・コンテンツ系 | トリガー悪用 | 特定条件での隠れた挙動発火 |
指示・コンテンツ系 | 出力ハンドリング | 出力経由の情報漏洩・誤誘導 |
振る舞い系 | データ持ち出し(exfiltration) | 認証情報・データの外部送信 |
振る舞い系 | 権限昇格 | 想定外の権限取得 |
振る舞い系 | 過剰な自律性(excessive agency) | 権限を超えた自律的行動 |
振る舞い系 | ツール誤用 | ツールの不正・想定外利用 |
振る舞い系 | ローグエージェント | 制御を外れたエージェント挙動 |
コード・依存系 | サプライチェーン | 依存ライブラリ経由のリスク |
コード・依存系 | 危険コード(AST) | exec/eval/subprocess 等の危険呼び出し |
コード・依存系 | テイント追跡 | 入力から危険な出口への流れ |
コード・依存系 | YARA シグネチャ | 既知の悪性パターン照合 |
MCP 系 | MCP 最小権限 | MCP の過剰な権限付与 |
MCP 系 | MCP ツールポイズニング | MCP ツール定義への攻撃 |
※ 区分は理解を助けるための本記事独自の整理で、カテゴリ名は README の記載に基づきます(NVIDIA/SkillSpector README)。
このマップから分かるのは、SkillSpector がスキルの「指示文(SKILL.md など)」だけでなく、同梱されるスクリプトのコードや依存関係、さらに MCP サーバーの権限設計まで横断的にカバーしている点です。プロンプトインジェクション対策だけのツールではなく、コードレベルの危険呼び出しやサプライチェーンまで含めて 1 つのスキャンで扱える点が特徴です。
注目したい検出の仕組み
64 パターンの中でも、運用判断に関わりそうな代表的な検出の考え方を 2 つ取り上げます。
1 つ目は、依存関係のライブ脆弱性照会です。SkillSpector は、スキルが利用する依存パッケージについて OSV.dev に問い合わせ、リアルタイムの CVE データと突き合わせて既知の脆弱性を検出します。オフライン環境では内蔵のフォールバックリストを使うため、ネットワーク接続の有無で検出範囲が変わる点は運用上の注意点になります。
2 つ目は、AST(抽象構文木)ベースの危険コード検出です。正規表現による文字列マッチに加えて、コードを構文解析して exec / eval / subprocess といった危険な呼び出しを検出します。文字列の見た目に依存しないため、難読化された危険呼び出しにも一定の検出力が期待できる設計です。
これらの検出は次に説明する「2 段階解析」の前半(静的解析)に組み込まれています。
2段階解析の仕組み|静的解析とLLM意味解析
SkillSpector は、速度と精度のバランスを取るために 2 段階の解析を採用しています。「誤検知は多くないか」「LLM を使わずに運用できるか」という運用上の懸念に直結する部分なので、それぞれの役割を押さえておきましょう。
第 1 段階は静的解析です。11 種類の静的アナライザによる正規表現マッチと、前述の AST ベースの危険呼び出し検出、そして OSV.dev によるライブ CVE 照会を組み合わせます。README ではこの段階を「高リカバリ・中程度の精度」と位置づけており、見逃しを減らすことを優先する一方で、一定の誤検知(false positive)が含まれうると明示されています。LLM を使わずに高速にスキャンを回せるため、第 1 段階だけでも導入は可能です。
第 2 段階は LLM による意味解析で、こちらはオプションです。スキルが「何をすると主張しているか」と「コードが実際に何をしているように見えるか」を比較し、文脈と意図を評価することで誤検知をフィルタし、人間が読める説明を付与します。README によると、この段階を加えることで精度は約 87% まで向上するとされています。また、LLM プロンプトには anti-jailbreak(ジェイルブレイク対策)の保護が施されている旨も記載されています。
LLM プロバイダは環境変数 SKILLSPECTOR_PROVIDER で選択でき、openai / anthropic / nv_build から選べます。デフォルトは NVIDIA の nv_build(build.nvidia.com)で、Ollama・vLLM・llama.cpp などの OpenAI 互換ローカルサーバーにも対応しています。社内ポリシー上、外部 API にコードを送信できない場合でも、ローカル LLM を使う選択肢が用意されている点は導入判断のうえで押さえておきたいところです。
運用の観点では、「まず静的解析だけで広くスクリーニングし、警告が出たものに対して LLM 意味解析で精査する」という段階的な使い方が想定しやすい設計になっています。
使い方の概要|入力形式と出力形式
ここからは、SkillSpector をどんなフローに組み込めるかを判断するために、入力・出力・利用形態の概要を整理します。なお本記事はドキュメントベースの紹介であり、実行・動作検証は行っていません。具体的なコマンドや最新の手順は公式ドキュメントを確認してください。
入力形式は幅広く、Git リポジトリ・URL・zip ファイル・ディレクトリ・単一ファイルをスキャンできます。レビュー対象のスキルがどの形で配布されていても受け付けられるため、導入前チェックに組み込みやすい設計です。
出力形式は、Terminal / JSON / Markdown / SARIF の 4 種類が用意されています。とくに SARIF 形式に対応している点は、CI/CD や IDE のセキュリティ機能と連携しやすいことを意味します。結果はリスクスコア(0〜100)に重大度ラベルと推奨アクションが付く形で提示されるため、「どの警告から対応すべきか」を判断しやすくなっています。
利用形態は CLI に加えて、Docker と Python API が用意されています。Docker を使えば Python 環境を整えずに実行でき、Python API では LangGraph ワークフローとして呼び出せます。README には次の呼び出し例が掲載されています。
from skillspector import graph
出典: NVIDIA/SkillSpector README(コードは README からの抜粋。input_path / output_format / use_llm などの引数を渡してワークフローを実行する旨が記載されています)
CI への組み込みや拡張を検討する場合は、アーキテクチャやアナライザパイプラインの拡張方法をまとめた開発ガイドが参考になります(docs/DEVELOPMENT.md)。また、NVIDIA の公式ドキュメントにも、スキャンの基本的な進め方やトリアージポリシーの考え方をまとめたページが用意されています(Scan Agent Skills Before Installation | NVIDIA Skill Documentation)。
SARIF 出力・Docker・Python API という 3 点がそろっているため、「導入前の手動レビュー」だけでなく「CI/CD のゲートに組み込む」「レビューフローに自動チェックを追加する」といった運用へ発展させやすいツールだといえます。
類似OSSとの違い|snyk/agent-scan・Cisco mcp-scanner
AIエージェント周りのセキュリティスキャナは SkillSpector 以外にも登場しており、「どれを選ぶか」は導入検討の重要な論点です。ここでは代表的な類似 OSS を 2 件取り上げ、対象とする粒度の違いから整理します。
ツール | 提供元 | 言語/ライセンス | 主な対象 | スター数 |
|---|---|---|---|---|
SkillSpector | NVIDIA | Python / Apache-2.0 | エージェントスキルの事前監査(指示・コード・依存・MCP) | 5,581 |
agent-scan | Snyk | Python / Apache-2.0 | エージェント本体・MCP・スキルの資産インベントリとスキャン | 2,576 |
mcp-scanner | Cisco AI Defense | Python / Apache-2.0 | MCP サーバーのスキャン(IDE 拡張統合) | 962 |
※ スター数等は調査時点の公開メタデータに基づきます。
最大の違いは「何を主対象にするか」という粒度です。
snyk/agent-scan は、AIエージェント本体・MCP サーバー・エージェントスキルという構成要素をインベントリとして管理し、それらをまとめてスキャンする資産管理寄りのアプローチです。「自社の環境に何があり、それぞれがどんなリスクを抱えているか」を俯瞰したい場合に向いています。
一方 cisco-ai-defense/mcp-scanner は、MCP サーバーのスキャンに特化し、IDE 拡張に統合して使えるのが特徴です。MCP サーバーの利用が中心で、開発者の手元で素早くチェックしたい場合に適しています。
これらに対して SkillSpector は、「スキル」のインストール前監査に特化しつつ、64 パターン/16 カテゴリという体系化された検出範囲を明示している点が際立ちます。スキルの指示文・同梱スクリプト・依存関係に加えて MCP(最小権限・ツールポイズニング)までカバーし、OSV.dev のライブ照会・SARIF 出力・LLM 2 段階解析を備えています。CLI に加えて Python API・Docker と利用形態も幅広く取れます。
選定の軸を整理すると、次のように考えられます。
- 外部から取り込む「スキル」を導入前に体系的に監査したい → SkillSpector
- エージェント環境全体の資産を棚卸ししてスキャンしたい → agent-scan
- MCP サーバーを IDE で素早くチェックしたい → mcp-scanner
なお、ブラウザだけで完結する SkillRisk のような選択肢もありますが、OSS リポジトリとしての位置づけは弱く、CI への組み込みや自前拡張を前提とする場合は対象から外れます。社内フローに組み込む前提なら、上記 3 つの OSS から目的に合うものを選ぶのが現実的です。
SkillSpectorを使う際の注意点とメンテナンス状況
導入を判断するうえで、検出の限界とメンテナンス状況も確認しておきましょう。
まず、README に明記されている制約事項(Limitations)は次のとおりです。
- 非英語コンテンツに含まれるパターンは見逃す可能性がある
- 画像内のテキストや、暗号化・バイナリ化されたコードは解析できない
- 静的解析が中心であり、動的実行(実際に動かしての挙動確認)は行わない
- オフライン時は、依存脆弱性のライブ照会(OSV.dev)の代わりに小さな静的フォールバックリストのみを使用する
これらは「SkillSpector を通せばすべてのリスクが消える」わけではないことを意味します。とくに日本語を含むスキルを扱う現場では、非英語コンテンツの見逃しリスクを踏まえ、自動スキャンと人によるレビューを組み合わせる運用が現実的です。動的な挙動に起因するリスクは静的解析だけでは捉えきれないため、サンドボックスでの動作確認など別の手段と併用する前提で考えるとよいでしょう。SkillSpector で安全性を確認したスキルや MCP サーバーを実際に運用フローへ組み込む段階では、エージェント自体の認証・権限設計も重要になります。スキャン後の実装に進む読者は、AIエージェントの認証・セキュリティ実装もあわせて確認しておくと、検査から実装までを一貫して設計しやすくなります。
メンテナンス状況については、ライセンスが Apache-2.0 で、最終更新(push)が 2026 年 6 月 13 日と直近である点から、現時点では活発に開発が続いているプロジェクトだと判断できます。アーカイブやフォークではなく本家リポジトリである点も、継続的な利用を前提にできる材料です。導入を検討する際は、公式リポジトリで最新のリリース状況や Issue の対応状況を確認しておくと、メンテナンスの健全性をより確実に把握できます。
なお、本記事の内容は公開されている README・公式ドキュメントの記載に基づくもので、実際のインストールや実行による動作検証は行っていません。実運用に向けた最終確認は公式情報で行ってください。
まとめ|SkillSpectorの採用判断ポイント
SkillSpector は、AIエージェントスキルをインストールする前に脆弱性や悪意あるパターンを検出する、NVIDIA 製のセキュリティスキャナです。64 パターン/16 カテゴリの体系的な検出範囲、静的解析と LLM 意味解析を組み合わせた 2 段階の仕組み、SARIF 出力や Docker・Python API といった連携のしやすさが特徴です。
採用判断のポイントを整理すると、次のチームに向いています。
- 外部から取り込むエージェントスキルや MCP サーバーを多用しており、導入前の監査を仕組み化したいチーム
- CI/CD やレビューフローにセキュリティチェックを組み込みたい DevSecOps の現場
- 日本語コンテンツの見逃しや動的挙動の限界を理解したうえで、人によるレビューと併用できるチーム
逆に、エージェント環境全体の資産棚卸しが目的なら agent-scan、MCP サーバーを IDE で素早く確認したいだけなら mcp-scanner というように、目的に応じて使い分けるのが妥当です。
「自社のスキル導入フローに事前監査を組み込めるか」を判断する第一歩として、まずは 公式リポジトリの README と NVIDIA の公式ドキュメント で検出範囲と出力形式を確認することをおすすめします。


