最近 Claude Code や Cursor を組織に展開しはじめた方から、似たような質問をよく受けます。
Snyk の AI 修正、IDE に出るやつと
/snyk-fixと CLI のやつがあるみたいなんですが、何が違うんですか
紛らわしいですし、名前も似ていますね。
また、使い分けを決めるなら、機能差と別に確認すべき軸もあります。
前提
-
/snyk-fixとsnyk fix --agenticは同じものです。 どちらも Remediation Agent で、公式ドキュメントも同じページで両方を扱っています。ADE の中で呼ぶか、ターミナルで呼ぶかの違いだけです。 - Agent Fix は別物。 DeepCode AI Fix の流れを汲む、Snyk プラットフォーム側の機能です。
3つあるように見えて、呼び出し口は2つです。
そのうえで、両者は無関係ではありません。Remediation Agent は SAST を直すとき、内部で Agent Fix の提案を適用します。
比較
| Agent Fix | /snyk-fix |
snyk fix --agentic |
|
|---|---|---|---|
| 正体 | プラットフォーム側の修正機能 | Remediation Agent(ADE 経由) | Remediation Agent(CLI 経由) |
| 動く場所 | Snyk IDE プラグイン / PR | Claude Code、Cursor など7種の ADE | ターミナル |
| 使う LLM | Snyk 側がホスト | ADE 自身のモデル | あなたのキー |
| トークン代 | Snyk 持ち | ADE の契約枠 | 自社の LLM 契約 |
| コードの行き先 | Snyk のインスタンス | ADE のモデルプロバイダ | 選べる |
| 対象 | Snyk Code(SAST)のみ | SCA / SAST | SCA / SAST |
| キー準備 | 不要 | 不要 | 必要 |
| CI/CD | 不向き | 不向き | 可能 |
各機能の提供ステータス(GA / preview など)は変動が速いため、本記事では扱いません。最新は公式ドキュメントで確認してください。
軸1: コードがどこに行くか
日本企業では、よく議論に挙がります。
Agent Fix は Snyk 側がホストするモデルで動きます。公式ドキュメントには「Snyk Agent Fix は顧客のコードを、モデルの学習にもデータセットへの追加にも性能改善にも使用しない」と明記されているので、社内審査にはこの記載とデータの取り扱いに関するドキュメントを出すのが早いです。
/snyk-fix は Claude Code なり Cursor なり、その ADE のモデルプロバイダにコードが行きます。つまり ADE 自体の審査が通っていれば追加の判断は要りません。逆に言うと、ADE の契約と設定に従います。
snyk fix --agentic はここが決定的に違います。LLM のエンドポイントを自分で指定します。
| プロバイダ | 設定 | 意味 |
|---|---|---|
anthropic(既定) |
ANTHROPIC_API_KEY |
自社契約のキー |
openai |
OPENAI_API_KEY |
自社契約のキー |
vertex |
gcloud auth application-default login + GOOGLE_CLOUD_PROJECT / GOOGLE_CLOUD_LOCATION
|
GCP 利用企業は自社プロジェクト内で完結 |
litellm |
LITELLM_BASE_URL / LITELLM_API_KEY
|
社内 LLM ゲートウェイを向ける |
ollama |
--provider=ollama --model=<model> |
完全ローカル |
LiteLLM と Ollama が入っているのが実務上いちばん効きます。
- 社内に LLM ゲートウェイを立てて全トラフィックを集約・監査している →
litellmでそこを向ければ、既存のログ・コスト管理・ポリシーにそのまま乗ります - コードの外部送信が原則禁止 →
ollamaでローカルモデルに寄せられます
「AI 修正を入れたいがコードを外に出せない」という要件に、設定だけで応えられるのがこのコマンドの位置づけです。
軸2: 誰がトークン代を払うか
- Agent Fix — Snyk 側。利用者がモデルを指定しないので、利用者側のトークン消費は発生しない
-
/snyk-fix— Claude Code / Cursor の契約枠。既に払っているので追加ゼロ -
snyk fix --agentic— 自社の LLM 予算。だからコスト管理に乗せられる
既に商用 LLM に予算を持っている組織ほど、3つ目が向いています。「Snyk が LLM を提供する」のではなく、既に払っているトークンに Snyk の文脈を載せるという構造だからです。
公開されているベンチマークは複数あります。用途によって引用先を選んでください。
| 内容 | 数値 | 出典 |
|---|---|---|
| Snyk の文脈をモデルに埋め込んだ場合の修正率改善 | SAST 約14% / SCA 約94% | Agentic AppSec ブログ |
| Claude Sonnet 4.6 単体 → Agent Fix の文脈あり(SAST、merge-ready) | 約72% → 約82% | CLI リリースブログ |
| claude-haiku-4-5 に Snyk のツールと intelligence layer を追加(公開 OSS リポジトリでの制御ベンチマーク) | 修正率 約23% → 約45% critical/high/medium 約44% → 約91% 1修正あたりのトークンコスト 約61%削減 |
同上 |
コストの話をするなら3つ目が一番効きます。修正率が上がってトークンが減るという方向なので、LLM 予算を持っている読者にはここが刺さります。ベンチマークの前提(モデル、対象リポジトリ)を必ず添えて引用してください。
使い方
# 依存関係
snyk fix --agentic --experimental --sca [path]
# ソースコード
snyk fix --agentic --experimental --sast [path]
前提は Snyk CLI、snyk auth による認証、そして LLM プロバイダのキーです。
人が介在する度合いが ADE と CLI で違います。ADE では破壊的変更のリスクがないと判断されると自動で進みますが、CLI では何を修正するか都度確認を求められます。 現場に入れるなら、確認が挟まる CLI 側から始めた方が安全です。
本記事の動作確認環境
コードを外に出せないケースを確認したかったので、Ollama を使って完全ローカルで試しました。
snyk fix --agentic --experimental --sca \
--provider=ollama --model=qwen2.5-coder:7b
--sca と --sast のどちらも動作しました。外部の LLM API を一切叩かずに、Snyk のインテリジェンスをローカルモデルに食わせて修正させられます。「AI 修正を入れたいがコードを外に出せない」という要件は、この構成で満たせます。
ただし修正の品質はモデルに依存します。 上のベンチマークはクラウドの商用モデルでの結果なので、7B のローカルモデルで同じ精度は出ません。Snyk 自身も、LLM 非依存だがモデルによって性能は変わるとブログで明記しています。
閉域環境では「まずローカルで回して、レビュー前提で使う」のが現実的な落としどころだと思います。他のプロバイダについては公式ドキュメントを参照してください。
併用する Fix PR との関係
Fix PR / Auto Fix PR は今回の3つとは別系統ですが、現役で、併用するものです。
依存関係の脆弱なバージョンから上げるための、ルールベースの決定論的な PR です。AI は使っていません。Snyk 自身も、この仕組みで毎年数百万件の修正が出ており、なくなるものではないと書いています。
役割は明確に分かれます。
- Fix PR — 決定論的に上げられるものを、放っておいても上げてくれる
- Remediation Agent — 判断が要るもの(破壊的変更のリスク、到達可能性、SAST の修正)を、文脈を与えたうえで直す
Fix PR で片付く分は Fix PR に任せて、そこで詰まったものに Remediation Agent を当てる、という切り分けが素直です。
なお、旧 snyk fix は別物です
--agentic を付けない旧 snyk fix は、LLM を使わない依存関係アップグレードコマンドで、非推奨です。検索すると古い情報に当たるので注意してください。
使い分けの整理
3つを排他で選ぶ必要はありません。役割が違うので、重ねて使うのが前提です。
- 開発者の手元の既定は
/snyk-fix。Snyk Studio のインストーラと MCP プロファイルの設定は要りますが、LLM のキー配布が不要な分、組織展開はしやすい。まとめて片付けたいときは/snyk-batch-fixもあります - LLM の経路やコストを組織として統制したい、または CI に組み込みたいなら
snyk fix --agentic - Agent Fix は PR と IDE で自動的に効きます。加えて、Remediation Agent が SAST を直すときの中身でもあるので、有効にしておくと両方に効きます
なお、ここまではすべて「開発者が自分の手元で実行する」話です。エージェントが何を使い、何を実行し、何を生成しているかを組織全体で継続的に把握・統制する層は別にあり、Snyk では Agentic Development Security (ADS) が担当します。手元の話と組織の話を分けて考えると、社内での説明がしやすくなるはずです。
参考
公式ドキュメントのみ。ブログの出典は本文中にリンクしています。
-
Remediation Agent —
/snyk-fixとsnyk fix --agenticの両方 - snyk fix - CLI コマンドリファレンス — 全フラグ
- Fix code vulnerabilities automatically — Agent Fix
- Snyk のデータガバナンスと生成 AI の取り扱い — 社内審査用