アップデート一覧に戻る
New releaseAug 31, 2026

ship-safe v9.7.5

CLIセキュリティスキャナー。エージェント時代に向けて構築されました。CI/CDの設定ミス、エージェント権限リスク、MCPツールインジェクション、ハードコードされたシークレット、DMCAフラグ付きAI依存関係を検出します。

共有

Ship Safe Logo

リスクのあるコード、AIエージェントの脆弱性、サプライチェーン問題を、リリース前に検出します。

Webサイト · ドキュメント · セキュリティとデータフロー · ベンチマーク · 料金 · ブログ · コントリビュート

npm version npm downloads CI License: MIT GitHub stars Sponsor

Ship Safe CLI

Ship Safeは、現代のソフトウェアチーム向けのAIセキュリティスキャナーです。リポジトリ内でローカルに実行され、アプリケーションコード、AIエージェント、MCP設定、プロンプト、依存関係、CI/CD、シークレット、クラウド関連設定にわたる問題を検出し、安全な修正のレビューと適用を支援します。

1つのコマンドでスキャンを開始:

npx ship-safe

サインアップ不要。スキャンにAPIキーは不要です。コアチェックはオフラインで動作します。AIを利用したレッドチームモードは、利用可能な場合に設定済みプロバイダーを使用します。

--no-ai を使用すると、完全にローカルなスキャンを保証します。プロバイダーを利用した分類、詳細分析、GPT-Redは、ベストエフォートの認証情報マスキング後、制限されたコンテキストを選択したプロバイダーに直接送信します。正確な境界とコンテキスト制限については、セキュリティとデータフローを参照してください。

Ship Safe REPLデモ


クイックスタート

# 対話型REPL: 1つのセッションでスキャン、修正、質問
npx ship-safe

# 完全監査: シークレット + 29エージェント + 依存関係 + 修復計画
npx ship-safe audit .

# AIエージェントが読み取るコンテンツに対するAIエージェントレッドチームシナリオ
npx ship-safe red-team . --gpt-red

# 対話型修正エージェント: 計画、差分、承認、検証
npx ship-safe agent .
npx ship-safe agent . --severity critical   # 重大な検出結果のみ
npx ship-safe agent . --branch --pr         # ブランチで修正 + PRを開く

# 最後の修正を元に戻す
npx ship-safe undo

# CI/CDモード — 重大な検出結果で失敗
npx ship-safe ci . --sarif results.sarif
npx ship-safe ci . --fail-on high          # より厳格: 重大または高

Ship Safeが検出するもの

領域
AIおよびLLMセキュリティプロンプトインジェクション、エージェント乗っ取り、過剰な権限、メモリポイズニング、RAGポイズニング、安全でないツール呼び出し
MCPおよびエージェント設定過度に広いツール権限、汚染されたレジストリ、信頼できないトランスポート、危険な許可リスト
アプリケーションセキュリティSQL/NoSQLインジェクション、XSS、SSRF、認証バイパス、パストラバーサル、安全でないAPIルート
シークレットとコンプライアンスAPIキー、トークン、認証情報、PII、git履歴に漏洩したシークレット
サプライチェーンタイポスクワッティング、依存関係混乱、リスクのあるインストールスクリプト、固定されていないAIアクション
CI/CDパイプライン汚染、固定されていないGitHub Actions、シークレットのログ記録、安全でないワークフロートリガー

仕組み

  1. ローカルでスキャン - Ship Safeは対象のエージェントでリポジトリを検査し、該当しないチェックはスキップします。
  2. 検出結果をレビュー - 検出結果には、重大度、ファイルの場所、証拠、推奨される修復方法が含まれます。
  3. 制御して修正 - エージェントが計画と差分を提案し、書き込み前に確認を求め、結果を検証し、変更を元に戻せる状態に保ちます。
  4. CIでゲート - ship-safe ci を使用してリスクのあるビルドを失敗させ、SARIFをGitHubコードスキャニングにアップロードします。

Ship Safeエージェントデモ


開発者が使う理由

  • AIネイティブアプリ向けに設計: エージェント、MCPサーバー、プロンプト、RAGフロー、マネージドエージェント設定、AI駆動CIのリスクを検出します。
  • AIクライアントと連携: ローカルstdioサーバーを通じて、Codex、Claude Desktop、Cursor、Windsurf、その他のMCPクライアントにShip Safeを公開します。
  • 高速なローカルフィードバック: ホスト型スキャナーにコードを送信せずに、PR前、レビュー中、CI内で実行できます。
  • 修正はレビュー可能: 提案されたすべての変更は、ファイルに触れる前に差分として表示されます。
  • お使いのスタックと連携: JavaScript、TypeScript、Python、設定ファイル、インフラストラクチャファイル、GitHub Actionsなど。
  • オープンソースコア: MITライセンスのCLIで、ドキュメント、例、成長するエージェントシステムを備えています。

無料CLI、有料チームワークフロー

オープンソースのCLIは、任意のリポジトリをローカルでスキャンする最速の方法です。同じスキャナーを中心としたホスト型ワークフローが必要な場合はアップグレードしてください:

ニーズ使用
ローカルスキャン、監査、エージェント支援による修正無料CLI
スキャン履歴、クラウドダッシュボード、PDFレポートPro
共有ワークスペース、PR Guardian、チームレポート、コラボレーションTeam

プランの比較はshipsafe.sh/pricingで。

スキャン履歴、PR Guardian、請求、チームワークフロー向けのホスト型ダッシュボードであるShip Safe Cloudは、商用製品コードとホスト型インフラストラクチャワークフローが含まれているため、プライベートリポジトリで開発されています。公開のship-safeリポジトリは、MITライセンスのCLI、セキュリティエージェント、ルール、フィクスチャ、CI統合、ドキュメントに焦点を当てたままです。リポジトリの境界についてはShip Safe Cloudを参照してください。


セキュリティエージェント

すべてのエージェントは並行して実行されます。各エージェントは無関係なプロジェクトを自動的にスキップします。

エージェントカテゴリ検出内容
InjectionTesterコード脆弱性SQL/NoSQLインジェクション、コマンドインジェクション、XSS、パストラバーサル、XXE、ReDoS、プロトタイプ汚染
AuthBypassAgent認証JWTの欠陥(alg:none、弱いシークレット)、CSRF、OAuth設定ミス、BOLA/IDOR、TLSバイパス
SSRFProberSSRFfetch/axiosでのユーザー入力、クラウドメタデータエンドポイント、内部IP
SupplyChainAuditサプライチェーンタイポスクワッティング、ワイルドカードバージョン、不審なインストールスクリプト、依存関係混乱
ConfigAuditor設定Docker(rootユーザー、:latest)、Terraform、Kubernetes、CORS、CSP、Firebase、Nginx
SupabaseRLSAgent認証クライアントコード内のservice_roleキー、RLSのないテーブル、anonキーインサート
LLMRedTeamAI/LLMOWASP LLM Top 10: プロンプトインジェクション、過剰な権限、システムプロンプト漏洩
MCPSecurityAgentAI/LLMMCPサーバーの悪用、ツールポイズニング、タイポスクワッティング、未検証の入力
AgenticSecurityAgentAI/LLMOWASP Agentic AI Top 10: エージェント乗っ取り、権限昇格、Kimi K3/OpenAI互換ツール呼び出しの悪用
RAGSecurityAgentAI/LLMコンテキストインジェクション、ドキュメントポイズニング、ベクターDBのアクセス制御
MemoryPoisoningAgentAI/LLMエージェントメモリファイルへの命令インジェクション、隠されたUnicodeペイロード(ASI-01、ASI-05)
PIIComplianceAgentコンプライアンスソースコード内のSSN、クレジットカード、メール、電話番号
VibeCodingAgentコード脆弱性AI生成コードのアンチパターン: 検証なし、空のcatch、TODO認証
ExceptionHandlerAgentコード脆弱性空のcatch、未処理のrejection、漏洩したスタックトレース(OWASP A10:2025)
AgentConfigScannerAI/LLM.cursorrules、CLAUDE.mdへのプロンプトインジェクション、悪意のあるClaude Codeフック
MobileScannerモバイルOWASP Mobile Top 10 2024: 安全でないストレージ、WebViewインジェクション、デバッグモード
GitHistoryScannerシークレットgitコミット履歴に漏洩したシークレット
CICDScannerCI/CDパイプライン汚染、固定されていないアクション、シークレットのログ記録(OWASP CI/CD Top 10)
APIFuzzerAPI認証のないルート、マスアサインメント、GraphQLイントロスペクション、デバッグエンドポイント
ManagedAgentScannerAI/LLMClaude Managed Agentの設定ミス: always_allowポリシー、無制限のネットワーキング(ASI-03–ASI-07)
HermesSecurityAgentAI/LLMツールレジストリポイズニング、関数呼び出しインジェクション、スキル権限のドリフト(ASI-01–ASI-10)
AgentAttestationAgentサプライチェーン固定されていないエージェントバージョン、整合性ハッシュの欠落、署名されていないマニフェスト(ASI-10、SLSA L0)
AgenticSupplyChainAgentサプライチェーン過剰な権限を持つAI CIアクション、OAuthスコープの拡大、署名されていないAI Webhookレシーバー(ASI-02、ASI-06)
RobloxSecurityAgentサプライチェーン悪意のあるRoblox/Luau Toolboxアセット(ランタイムアセットインジェクション、rbxassetid://ローダー、HttpEnabled、インスタンス属性に隠されたペイロード)
ModelScanAgentサプライチェーンMLモデル重み内のコード実行ペイロード(.pt/.pkl/.ckpt内のpickleオペコード)、weights_onlyなしのtorch.load、スキャナー回避アーカイブ(CWE-502、CWE-506)
TrustBoundaryAgentAgenticGhostApprovalシンボリックリンク攻撃(~/.ssh/~/.aws/.envへの設定名リンク)、ツリーを脱出するリポジトリシンボリックリンク、エージェントが読むドキュメント内のFriendly Fire実行時レビュー指示(CWE-59、CWE-61)
SlopSquatAgentサプライチェーン幻覚/ファントムパッケージインポート(スロップスクワッティング)— 宣言されていない、インストールされていない、組み込みでもないベアインポート、および既知のAI幻覚名(CWE-1357)
ClickFixAgentサプライチェーンClickFix / 偽CAPTCHAの貼り付け実行型おとり(偽エラー + Win+R/Ctrl+V/コマンドバーのキーストローク、PowerShellクラドル)、偽インストーラーnpmライフサイクルスクリプト(CWE-1357、CWE-506)
InstallGuardAgentサプライチェーンライフサイクルスクリプト内のnpmワーム動作(認証情報収集、環境変数流出、破壊的なrm -rf、難読化されたnode -e)、武器化されたbinding.gyp node-gypアクション(CWE-506、CWE-829)

後処理: ScoringEngine · VerifierAgent(シークレットの有効性) · DeepAnalyzer(LLM汚染分析)


REPL

$ ship-safe

  ███████╗██╗  ██╗██╗██████╗     ███████╗ █████╗ ███████╗███████╗
  ...

  v9.4.1  ·  DeepSeek  ·  ~/my-project

  /scanで問題を検出  ·  /agentで修正  ·  /helpで詳細

shipsafe ›
コマンド機能
/scanプロジェクトを再スキャン
/agent対話型修正ループを実行
/findings最後のスキャンの検出結果を一覧表示
/show <n>検出結果nの詳細を表示
/plan <n>検出結果nの修正計画をプレビュー(書き込みなし)
/undo [--all]最後の修正を元に戻す(またはすべての修正)
/shareスキャンレポートを公開URLとして公開(7日間)
/diffgit作業ツリーの差分を表示
/provider <name>セッション中にLLMプロバイダーを切り替え
/quit終了(Ctrl-DまたはCtrl-Cも可)

/で始まらないものはすべて、最新のスキャン結果をコンテキストとしてLLMに自由形式の質問として送信されます。


CI/CD

# .github/workflows/security.yml
name: Security Audit
on: [push, pull_request]
jobs:
  security:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Security gate
        run: npx ship-safe ci . --sarif results.sarif
      - uses: github/codeql-action/upload-sarif@v3
        if: always()
        with:
          sarif_file: results.sarif

GitLab CIバージョンはdocs/examples/gitlab-security-workflow.ymlにあります。

インラインPR検出結果付きGitHub Action

重大および高の検出結果を変更行に添付したい場合は、pull_requestワークフローからActionを使用してください。フォークからのコントリビューションでは、このパスにpull_request_targetを含めないでください。チェックアウトに信頼できないコードが含まれる可能性があるため、Ship Safeはこの特権的な組み合わせを拒否します。

name: Ship Safe
on:
  pull_request:

permissions:
  contents: read
  pull-requests: write
  security-events: write

jobs:
  scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: asamassekou10/[email protected]
        with:
          fail-on: high
          inline: true

インラインコメントはオプトインで、重大/高の検出結果のみを投稿します。ジョブを再実行すると、重複するインラインコメントを作成せずにサマリーが更新されます。


LLMサポート

任意のプロバイダーで動作 — 環境変数から自動検出されます。上書きするには--provider <name>を使用します。

Anthropic · OpenAI · Google · DeepSeek · Kimi K3 / Moonshot · Groq · Together · Mistral · xAI · Perplexity · Ollama · LM Studio · 任意のOpenAI互換エンドポイント

KimiはMOONSHOT_API_KEYまたはKIMI_API_KEYを通じてデフォルトでkimi-k3になります。長いコンテキストのGPT-Redおよび詳細分析実行には--provider kimi --model kimi-k3を使用します。

Kimi K3固有の長いコンテキストレッドチーミングの場合:

npx ship-safe red-team . --gpt-red --provider kimi --model kimi-k3 --k3-long-context

Ship Safeはまた、プロンプトコンテキストからの動的ツールロード、ツール許可リストの欠落、信頼できない入力に対する強制ツール呼び出し、元のアシスタントツール呼び出しメッセージなしのリプレイされたツール結果について、Kimi K3 / OpenAI互換ツール呼び出し実装をチェックします。

コアスキャンにAPIキーは不要です。AI分類とred-team --gpt-redは、利用可能な場合に設定済みプロバイダーを使用し、GPT-Redチェックには決定論的なオフラインフォールバックがあります。


誤検知の抑制

password = get_password()  # ship-safe-ignore

criticalの検出結果は常に報告されます。インラインコメントで隠すことはできず、抑制しようとするとスキャンに記録されます。このコメントは人間が誤検知を除外するためのものであり、ソースの1行を書き込めるもの(AIエージェントを含む)はコメントも書き込めるため、最高の重大度はこれを尊重しません。すべての抑制はカウントされるため、検出結果を沈黙させたスキャンが、検出結果がなかったスキャンのように読まれることはありません。

# .ship-safeignore
tests/fixtures/
docs/

ノイズはどのくらいですか?

再現率はスキャナーの簡単な半分です。すべてをフラグするツールはすべてを検出しますが役に立ちません。そこで、もう半分を測定します: Ship Safeがほぼ間違いなく問題ないコードについて何を言うか。

プロジェクト検出結果criticalグレード
express260C
requests151C
flask280D
chalk40B

v9.6.3以前の同じ4つのプロジェクトにわたる1031件の検出結果から減少し、NodeGoatとDVWAに対して検証されているため、減少は検出の喪失ではなくノイズの低減です。残りの1件のcriticalは誤検知であり、ベンチマークはどれと理由を示しています。

コーパスはコミットで固定され、1つのコマンドで再現可能、制限は文書化されています: benchmarks/false-positives/

Semgrep、Gitleaks、Trivy、CodeQLとの比較は?

Ship Safeをそれらの代わりではなく、それらと並行して実行してください。CodeQLはShip Safeが試みないプロシージャ間汚染解析を行い、Gitleaksはシークレットの専門家であり、Trivyは実際のCVEデータベースを背後に持っています。

Ship Safeはより狭い質問をカバーします: AIコーディングエージェントがリポジトリ、CI、ローカルツール設定に何をしたか。MCPクライアント設定、エージェントメモリポイズニング、幻覚パッケージインポート、AIBOMは、他の4つに同等の公開ルールが見つからなかった領域です。

完全なカバレッジマトリックスは、公開レジストリに対して検証され、それらが私たちを上回る場所も含めて: docs/comparison.md


バッジを追加

[![Ship Safe](https://img.shields.io/badge/Ship_Safe-A+-22c55e)](https://shipsafe.sh)

次の予定

10.0はHermes Agentのカバレッジです。 Ship SafeはすでにHermesデプロイメントをスキャンしますが、Hermesがv0.20.0にある間にv0.13.0に対してです — ACPアダプター、TUIゲートウェイ、サーバーレスターミナルバックエンド、cronブループリント、プラグインマニフェストはすべてその間にカバレッジなしでリリースされました。

計画されているものと意図的に計画されていないものについてはロードマップを、引き受け可能な作業については10.0マイルストーンを参照してください。その中のすべてはコントリビューターに開かれています。

コントリビューション

Ship Safeはオープンソースであり、最良のコントリビューションは、AI支援開発をより安全にする小さく焦点を絞った改善です。

良い最初の領域:

  • AI、MCP、CI、クラウド、またはサプライチェーンリスクのための焦点を絞ったセキュリティエージェントを追加
  • 既存のエージェントに正確なセキュリティルールを追加
  • 脆弱なフィクスチャと回帰テストを追加
  • ローカルスキャン、CIゲート、レッドチームワークフロー、MCP/エージェント設定の例を書く

ここから始めてください:


スポンサー

Ship SafeはMITライセンスで、永久に無料です。

Sponsor Ship Safe


スター履歴

Star History Chart


速く出荷。安全に出荷。shipsafe.sh

カテゴリ