Open source · Free · No signup

Ship code,
not vulnerabilities.

16 security agents scan for secrets, injection, auth bypass, SSRF, supply chain attacks, agentic AI, MCP, RAG, PII, and more — with LLM-powered deep analysis and confidence tuning that cuts false positives by 70%.

$npx ship-safe audit .
0Security agents
0Attack classes
0OWASP standards
0To run
npx ship-safe audit .

From vulnerable to secure,
automatically.

npx ship-safe remediate . --all rewrites your code, writes the .env file, updates .gitignore, and fixes common vulnerabilities — all in one shot.

config.jsBEFORE
// config.js
import OpenAI from 'openai';

const openai = new OpenAI({
  apiKey: "sk-proj-xK9mN2pL8qR3f5..."  ← exposed
});
config.jsAFTER
// config.js
import OpenAI from 'openai';

const openai = new OpenAI({
  apiKey: process.env.OPENAI_API_KEY  ← ✓ safe
});
.env auto-generated · git-ignored
OPENAI_API_KEY=sk-proj-xK9mN2pL8qR3f5...

Everything that can get you hacked.

16 agents. 5 OWASP standards. One tool.

Secrets & Injection

50+ secret patterns plus injection testing — SQL, NoSQL, XSS, command injection, path traversal, XXE, ReDoS, prototype pollution.

  • API keys, database URLs, private keys, JWTs
  • SQL injection, XSS, eval(), pickle.loads
  • Entropy scoring to catch random-looking secrets
  • Smart .gitignore — always scans .env files

Auth, SSRF & Supply Chain

Dedicated agents for auth bypass, SSRF, and supply chain attacks — the hardest vulns to catch manually.

  • JWT alg:none, weak secrets, CSRF, OAuth misconfig
  • SSRF via fetch/axios, cloud metadata endpoints
  • Typosquatting detection (Levenshtein distance)
  • Suspicious install scripts, wildcard versions

Config, CI/CD & AI/LLM

Scans Docker, Terraform, Kubernetes, CI/CD pipelines, LLM integrations, MCP servers, agentic AI, and RAG pipelines.

  • Dockerfile root user, :latest tags, open ports
  • Pipeline poisoning, unpinned actions, secret logging
  • OWASP LLM Top 10 + Agentic AI Top 10 — MCP, RAG, PII
  • LLM-powered deep analysis for exploitability verification

A specialist for every attack surface.

Each agent is purpose-built to find what general scanners miss.

InjectionTesterCode Vulns

SQL/NoSQL injection, XSS, command injection, eval, path traversal, XXE, ReDoS, prototype pollution

AuthBypassAgentAuth

JWT alg:none, weak secrets, CSRF, OAuth misconfig, BOLA/IDOR, timing attacks

SSRFProberSSRF

User input in fetch/axios, cloud metadata endpoints, internal IPs, redirect following

SupplyChainAuditSupply Chain

Typosquatting, dependency confusion, git/URL deps, wildcard versions, suspicious install scripts

ConfigAuditorConfig

Dockerfile, Terraform (RDS, CloudFront, Lambda, S3), Kubernetes, CORS, CSP, Firebase, Nginx misconfigs

SupabaseRLSAgentAuth

Row Level Security — service_role key in client code, CREATE TABLE without RLS, anon inserts, unprotected storage

LLMRedTeamAI/LLM

OWASP LLM Top 10 — prompt injection, excessive agency, system prompt leakage, RAG poisoning

MCPSecurityAgentAI/LLM

MCP server security — unvalidated tool inputs, missing auth, excessive permissions, tool poisoning

AgenticSecurityAgentAI/LLM

OWASP Agentic AI Top 10 — agent hijacking, privilege escalation, unsafe code execution, memory poisoning

RAGSecurityAgentAI/LLM

RAG pipeline security — unvalidated embeddings, context injection, document poisoning, vector DB access control

PIIComplianceAgentCompliance

PII detection — SSNs, credit cards, emails, phone numbers in source code, logs, and configs

MobileScannerMobile

Insecure storage, WebView injection, HTTP endpoints, debug mode, permissions

GitHistoryScannerSecrets

Leaked secrets in git history — checks if still active in working tree

CICDScannerCI/CD

Pipeline poisoning, unpinned actions, secret logging, self-hosted runners

APIFuzzerAPI

Routes without auth, missing validation, mass assignment, GraphQL introspection, rate limiting, OpenAPI spec issues

ReconAgentRecon

Attack surface mapping — frameworks, auth patterns, databases, cloud providers

How audit works

One command. Four phases. Prioritized fix list.

1

Scan for secrets

Scans every file for 50+ secret patterns with entropy scoring. Respects .gitignore for build output but always scans .env, .pem, and other security-sensitive files.

2

Run 16 security agents

Deploys specialized agents for injection, auth bypass, SSRF, supply chain, config, Supabase RLS, LLM security, mobile, git history, CI/CD, API fuzzing, and recon. Context-aware confidence tuning reduces false positives.

3

Audit dependencies

Runs your package manager's own audit tool — npm, yarn, pnpm, pip, or bundler. Finds known CVEs in your dependency tree and flags vulnerable versions.

4

Score & remediation plan

Computes a 0–100 security score across 8 weighted categories. Generates a prioritized remediation plan — CRITICAL first, then HIGH, then MEDIUM — so you know exactly what to fix first.

5

HTML report

Outputs a standalone dark-themed HTML report with every finding, file location, severity, CWE/OWASP mapping, and suggested fix. Share it with your team or attach it to a PR.

All commands

Everything you need. Nothing you don't.

red-team
$npx ship-safe red-team .

Run 16 security agents (80+ attack classes) against your codebase. Targeted deep scan.

--agents <list>--json--html [file]--deep--local--budget <cents>
scan
$npx ship-safe scan .

Quick secret scan — 50+ patterns with entropy scoring. No API key needed.

--json--sarif--no-cache
score
$npx ship-safe score .

0–100 security health score with A–F grade. 8 weighted categories.

--no-deps
deps
$npx ship-safe deps .

Audit npm, yarn, pnpm, pip, or bundler dependencies for known CVEs.

--fix
agent
$npx ship-safe agent .

AI-powered audit — scan + classify with Claude + auto-fix secrets.

--dry-run--model <model>
watch
$npx ship-safe watch .

Continuous monitoring — watches files for changes and re-scans automatically.

ci
$npx ship-safe ci .

CI/CD pipeline mode — compact output, threshold gating, exit codes. Optimized for automation.

--threshold <score>--fail-on <severity>--sarif <file>--json--baseline
baseline
$npx ship-safe baseline .

Accept current findings as baseline — only report regressions on future scans.

--diff--clear
remediate
$npx ship-safe remediate .

Auto-fix secrets and common vulnerabilities — TLS bypass, debug mode, XSS, Docker :latest.

--all--dry-run--yes
guard
$npx ship-safe guard

Install a git hook that blocks git push if secrets are found.

--pre-commit

Drop it into your pipeline.

Use ship-safe ci for threshold-based gating, compact output, and SARIF. Zero config.

.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 . --threshold 75 --sarif results.sarif

      - uses: github/codeql-action/upload-sarif@v3
        if: always()
        with:
          sarif_file: results.sarif

Use --sarif with scan to upload findings directly to GitHub's Security tab via github/codeql-action/upload-sarif.

Common questions

Does it work without an API key?
Yes. audit, scan, red-team, ci, score, deps, and guard all work fully offline with no API key. AI classification and deep analysis are optional — pass --no-ai to skip it. If you want AI, ship-safe supports Anthropic, OpenAI, Google Gemini, and local Ollama models.
Is my code sent to an LLM?
Only if you use the agent command or omit --no-ai. When AI is used, only matched snippets (±2 lines) are sent. Secret values are masked — the LLM sees sk-proj-***Q3f5, not your actual key. The audit command with --no-ai is fully local.
Does it respect my .gitignore?
Yes, with smart filtering. Build output (node_modules, dist, build) is skipped. But security-sensitive files like .env, .pem, .key, and credentials.json are always scanned even if gitignored — because those files are gitignored because they contain secrets.
How fast is it on repeated runs?
Ship Safe caches file hashes and findings in .ship-safe/context.json. On subsequent runs, only changed files are re-scanned — unchanged files reuse cached results. This makes repeated scans ~40% faster. Use --no-cache to force a full rescan.
Can I use it inside Claude Code?
Yes. Install the plugin with claude plugin add github:asamassekou10/ship-safe and use /ship-safe for a full audit, /ship-safe-scan for secrets, /ship-safe-score for your health score, /ship-safe-fix for auto-remediation, or /ship-safe-baseline to manage your baseline. Claude interprets the results and can fix issues directly.
How is this different from Semgrep or Snyk?
Ship Safe is purpose-built for indie devs and small teams. One command covers secrets, code vulns, deps, config, CI/CD, LLM security, and mobile — no account, no config files, no dashboard to log into. It's free, open-source, and runs in under 5 seconds.
Is it safe to run in CI?
Yes. Use ship-safe ci . for pipeline-optimized output with threshold gating (--threshold 80) and severity-based failure (--fail-on critical). Use --sarif to upload findings to GitHub's Security tab. Exit code 0 = pass, 1 = fail.
What about false positives?
v5.0 has context-aware confidence tuning that automatically downgrades findings in test files, documentation, comments, and example code — reducing false positives by up to 70%. Use --deep for LLM-powered exploitability verification, ship-safe baseline . to accept current findings and only see new regressions, or add # ship-safe-ignore to suppress individual lines.

Ready to ship with confidence?

Free CLI — no signup. Or use the web dashboard for history, teams, and AI-powered fixes.

$npx ship-safe audit .