Vibeleaderboard
Index / tool
Visit github.com
Category
Cybersecurity
Rank
No. 1580Tools index

Previous survey · No. 1511 ·

Pricing
Open Source
Type
TOOL
Use case
Security & Identity
Interfaces
Web
GitHub
12 stars
Date

About

Tripwire is a security scanning platform that discovers AI skills and MCP servers, runs multiple third-party scanner adapters (Cisco, Snyk, Tessl, DepShield, Ossprey) inside an isolated Modal sandbox, and aggregates findings into a Supabase-backed dashboard. It optionally routes ambiguous findings through an AI triage/escalation layer (Superlinked SIE and Alibaba Cloud Model Studio) to help teams decide whether a skill or MCP server is safe to trust.

What it does

Tripwire wraps other vendors' security checkers and points them at the add-ons an AI coding agent might install: skills, MCP (Model Context Protocol) tool servers, and package folders. A Node command-line tool finds targets, fingerprints their contents so unchanged ones are not rechecked, and ships each to a throwaway cloud container. Results land in Postgres and a browser view that sorts items by risk color. Its defining rule is honesty about gaps: a checker that lacked a key, crashed, or does not support the language is reported as skipped or as no coverage, never as clean.

Why it's ranked here

The case for it is the fail-closed design, written down as a formal decision and enforced in the database rollup: an item where no checker completed shows grey, not green. It is MIT licensed and declares a 95 percent test coverage floor on its Python scan code. The case against is maturity. The project calls itself early-adopter software, its own status page marks several checkers as implemented but not verified on a live run, and a real scan needs Supabase and Modal accounts plus separate keys for each commercial checker. Worth a look for teams vetting agent add-ons, not yet a drop-in tool.

What's good

Skips are labeled precisely. A missing credential, a broken checker and an unsupported language each get their own state, so a quiet result cannot pass as a safe one. Rust projects get a dedicated audit against the RustSec advisory database because Snyk does not cover them, and that gap is stated rather than hidden. Quoted findings count as verified only when the quoted text actually exists at the reported line. A CI check keeps the late checkers inside the five minute container limit. A mock mode and a hosted demo show the interface with no accounts at all.

Tradeoffs

Setup is heavy. A live scan needs a Supabase project and a Modal account, and full coverage adds Snyk, Tessl and Cisco keys, with Ossprey access still described by the project as not provisioned. Checkers run one after another under a 300 second container cap, so a slow early checker can starve later ones. The browser interface still lives under a prototypes folder. The database grants anonymous read on every results table, which suits a demo but means findings are readable by anyone holding the public key. The optional AI triage step sends findings to Superlinked and Alibaba Cloud.

How to use it well

Best fit is a platform or security engineer who wants one view of what several commercial checkers say about the agent skills and MCP servers a team relies on, and who is willing to wire up accounts. Start with mock mode and a dry discovery run, then go live with only the database and container accounts before adding paid checkers. Treat grey and skipped states as work to do, not as passes. It does not replace the underlying checkers, and the install-blocking guard hook is explicitly outside the current release scope.

Technical notes+

db/schema.sql defines items, scan_runs, scan_run_scanners, findings, coverage and judge_panel_runs/judge_panel_judgements; tripwire_rollup_item sets heatmap_status to grey when a complete run has zero completed engines and to error for failed, running or empty partial-failed runs, and scan_run_scanners.status accepts 14 states including skipped_missing_credential, unreachable and not_applicable. RLS is enabled with anon SELECT policies using (true) on six tables; writes rely on service_role. docs/adr/0009-fail-closed-incomplete-evidence.md maps zero-exit empty or malformed JSON, timeouts and missing binaries to unreachable, and docs/adr/0005-upstream-scanner-cli-adapters.md records wrapping vendor CLIs as subprocesses and collapsing severities to red/amber/green. docs/ARCHITECTURE.md gives SCAN_TIMEOUT 240s, DEPSHIELD_TIMEOUT 120s and OSSPREY_TIMEOUT 100s against a 300s Modal hard kill, with scanners run sequentially in run_all_scanners. pyproject.toml ships a wheel with no runtime dependencies, an optional guard extra pinning supabase>=2.4,<3, coverage fail_under = 95 on the sandbox package, and bandit skips B404/B603 for subprocess use. cli/package.json exposes a tripwire bin built on commander, pg and @supabase/supabase-js with a 60 percent line coverage gate. guard/__init__.py exports a Claude Code hook entry (decide, check_call) that docs/ARCHITECTURE.md marks as excluded from Horizon A. No injection-shaped instructions were present in the fetched text.

Observed

License
MIT
Languages
Python (requires 3.12+) scan sandbox; Node.js CLI (engines node >=18)
Interface
CLI binary named tripwire with scan, setup and route commands
Packaging
Python wheel built with hatchling containing the sandbox and guard packages; no required runtime dependencies
Required services for live scans
Supabase (Postgres) and Modal; Snyk, Tessl, Cisco and Ossprey keys optional per checker
Failure policy
Missing keys report skipped_missing_credential; crashes, timeouts and malformed output report unreachable, never a clean result
Test coverage gate
Coverage fail_under set to 95 for the sandbox package
Database access
Row level security enabled with anonymous SELECT on results tables; writes require the service role
Scan time budget
Sequential checkers with a 240s per-call cap inside a 300s container kill
Security policy
Private disclosure requested; deliberately vulnerable demo fixtures are documented as test data

Read from README.md, pyproject.toml, cli/package.json, docs/ARCHITECTURE.md, docs/STATUS.md, QUICKSTART.md, guard/__init__.py, docs/adr/0009-fail-closed-incomplete-evidence.md, docs/adr/0005-upstream-scanner-cli-adapters.md, db/schema.sql, LICENSE, SECURITY.md.

What it can do

  • Run third-party security scanner adapters (Cisco, Snyk, Tessl, DepShield, Ossprey) inside an isolated Modal sandbox

    AI skill or MCP server → Scan findings

  • Aggregate scan findings into a Supabase-backed dashboard

    Scanner results → Dashboard view

  • Route ambiguous findings through an AI triage/escalation layer (Superlinked SIE, Alibaba Cloud Model Studio) for trust assessment

    Ambiguous scan findings → Trust/safety assessment

Tags

mcp-securityai-securityvulnerability-scannersandboxsupabasemodaldevsecopsskills-scanning

Tech Stack

Python

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.