tripwire
Health Warn
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 5 GitHub stars
Code Fail
- rm -rf — Recursive force deletion command in .github/workflows/code-review-graph.yml
- process.env — Environment variable access in .github/workflows/complexity-report.yml
Permissions Pass
- Permissions — No dangerous permissions requested
No AI report is available for this listing yet.
Sandboxed security scanning for AI skills and MCP servers — precise findings, heatmap posture, fail-closed agent guard. Multi-scanner security platform for AI skills and MCP servers, scan what the agents install!
Tripwire
Discover and scan AI skills and MCP servers, then review the findings in one dashboard.
Meterian Security / Stability / Licensing badges mirror the public
Meterian project report
(dependency and policy scan for this GitHub repo — not a Tripwire scan adapter).
CI / Nightly / Complexity badges reflect GitHub Actions on main.

Where do you want to go?
| If you want to… | Go here |
|---|---|
| Try a hosted dashboard (no clone) | Live demo on neomatrix369.github.io |
| Watch the demo walkthrough | YouTube — Tripwire dashboard tour |
| Try a safe demo (no cloud accounts) — Recommended | QUICKSTART — Try the demo |
| Run a real Live scan — Advanced | QUICKSTART — Live |
| Change the code | CONTRIBUTING |
| Understand the system | Architecture · docs hub · Status |
What Tripwire does
Tripwire helps technical teams assess AI skills and MCP servers before they rely
on them. It discovers targets, runs the enabled scanner adapters in an isolated
Modal sandbox, stores findings in Supabase, and brings them together in one
dashboard (Live or Mock).
Optionally, after each scan batch it runs a tiered router: Superlinked SIE
triages findings, and Alibaba Cloud Model Studio escalates when scanners
disagree or coverage looks incomplete (ADR-0016).
Providers and scanners
| Layer | Provider / tool | Role |
|---|---|---|
| Platform | Modal | Isolated scan sandbox (Docker image + Python adapters) |
| Platform | Supabase | Postgres + Realtime store for runs, scanners, findings |
| Scanner | Cisco Skill Scanner / MCP Scanner / AI Defense | Skill and MCP security inspection |
| Scanner | Snyk (snyk-agent-scan) |
Depth / agent scan for skills and MCP servers |
| Scanner | Tessl | Five skill capabilities: Lint (auth-free), Review (Quality), Scenario Generation, Eval, Review (Security) |
| Scanner | DepShield (depshield-mcp) |
Dependency audit (npm + PyPI via OSV.dev); no credentials |
| Scanner | Ossprey (ossprey-cli) |
Malware / malicious-package scan (skills + MCP); needs OSSPREY_API_KEY |
| Router (optional) | Superlinked SIE | Cheap post-scan triage on every item |
| Router (optional) | Alibaba Cloud Model Studio | Escalation only when SIE signals |
Missing Snyk / Cisco / Tessl / Ossprey keys → that scanner reports skipped /needs_setup / skipped_missing_credential rather than claiming a complete scan.
DepShield always runs when the sandbox image includes it (no secret sync).
Capability honesty and evidence states: docs/STATUS.md ·
inventory: ARCHITECTURE §0 ·
Ossprey key allowlist: OPTIONAL_SCANNER_KEYS.
Who Tripwire is for
Tripwire is currently an early-adopter tool with a hands-on setup and management
component. It is a good fit if you are comfortable using a terminal and shell,
managing local tooling and environment variables, editing .env and other
configuration files carefully, creating cloud/vendor accounts, and using command
output to resolve a setup issue.
| You are... | You want to... |
|---|---|
| An AI-tooling developer or team | Assess skills and MCP servers before using or sharing them |
| A platform, operations, or security practitioner | Run and maintain scans for a team |
| A contributor | Extend scanner support, the CLI, or the dashboard |
You do not need to be a security specialist, but you should be ready to interpret
findings and decide when to escalate them. The optional Mock preview is available
for evaluating the dashboard without accounts; real scans require the setup below.
If you plan to change Tripwire, start the contributor setup
after cloning: it installs the commit and push hooks before your first change.
Run your first Live scan
Follow this order before running a scan or opening the Live dashboard. The
Quickstart supplies the commands; the linked guides
explain each decision before you make it.
- Check the required tools and install the CLI.
- Create the accounts you need: Supabase,
Modal, then add Snyk, Tessl, and Cisco
(Skill/MCP LLM + optional AI Defense) credentials with the
environment-variable procurement guide.
DepShield needs no keys. AddOSSPREY_API_KEYwhen you have Ossprey access
(otherwise that adapter skips safely). For optional post-scan routing
(ADR-0016),
also set up Superlinked SIE (required for routing)
and optionally Alibaba Cloud Model Studio
(escalation only). Key map for every.envname: env-vars.md
(mirrors.env.example). - Create
.envonly after you have the values, then fill it with
env-vars.md as the single key reference. - Bootstrap Supabase and deploy the Modal scan app with the
Live setup commands. - Run a fixture scan and open the Live dashboard from the
Quickstart. After routing, usetripwire routeto
re-run a batch and read router results
for pathway strips and Escalated / SIE-only filters.
Supabase and Modal are required for Live results. If Snyk, Tessl, Cisco, or Ossprey
credentials are absent, Tripwire reports that scanner as skipped rather than calling
the scan complete.
SIE and Model Studio are optional: without SIE keys, scans still complete and auto-route
logs a warning and skips. With SIE but without Model Studio, SIE-only reviews still log.
Preview the dashboard (optional)
Use Mock demo data only when you want a no-account look at the UI; it does not replace
the Live setup above or produce a scan result. Prefer the
hosted demo when you
do not need a local clone, or watch the
demo walkthrough on YouTube.
git clone https://github.com/neomatrix369/tripwire.git
cd tripwire
node scripts/serve-dashboard.mjs
Open http://127.0.0.1:8765/.
On the dashboard toolbar, Skills can be triaged by Tessl quality score using
Quality ≥ 80, Quality < 80, and No quality score tabs (skills only;
MCP servers are excluded from quality buckets but remain visible on all tabs).
The first visit shows a landing intro screen (threat statistics, architecture overview,
shipped skills, and roadmap). Click Open Dashboard → to proceed to the scan results
view. The "About" nav button toggles the intro back on at any time; the choice is
remembered in sessionStorage.
Visual identity v2: cream paper, tan primary CTA, and AA-readable ink tokens
(Fraunces display headings) — shipped via PR #96.
Screenshots in docs/screenshots/ regenerated 2026-08-20.
After installing the CLI, you can also validate target discovery locally without
accounts or a scan:
tripwire scan --dry-discover ./fixtures/skills/safe-csv-cleaner
What happens next
Tripwire’s Live path is a short pipeline. Each hop uses a concrete piece of the
stack (same names as the badges above):
| Step | What runs | Stack | Setup |
|---|---|---|---|
| Discover | CLI finds skills / MCP servers (tripwire scan --dry-discover or a real scan) |
Node.js CLI | setup-commands |
| Scan | Adapters run in an isolated sandbox | Modal (+ Docker), Cisco / Snyk / Tessl / DepShield / Ossprey | modal-setup · env-vars |
| Store | Findings and scan_run rows land for the dashboard | Supabase / Postgres | supabase-setup |
| Route (optional) | Every item through SIE; escalate only when signaled | Superlinked SIE → Alibaba Cloud Model Studio via tripwire route / auto-route |
sie-setup · model-studio-setup |
| Review | Heatmap, drawers, pathway strips, Escalated / SIE-only filters | Dashboard (Live or Mock) | reading-router-results · screenshots |
Mock skips Discover→Scan→Store and still shows Review (plus router fixtures).
Without SIE keys, Route warns and skips; scanner results still store. Sample CLIs
for router backends (no full batch): prototypes/sie-studio/,prototypes/model-studio/.
flowchart LR
discover["Discover<br/>Node CLI"] --> scan["Scan<br/>Modal + Cisco/Snyk/Tessl/DepShield/Ossprey"]
scan --> store["Store<br/>Supabase"]
store --> route["Route optional<br/>SIE → Model Studio"]
route --> review["Review<br/>Dashboard"]
How to read strips and filters after Route:
reading-router-results.md.
Screenshots
CLI scan — Modal (live)
|
Dashboard — Mock overview
|
Router — Escalated (Mock)
|
Skill — Red (Mock)
|
MCP — Red (Mock)
|
Full gallery (SIE-only, severity filters, list view) → docs/screenshots/
Find the right guide
| Your task | Start here |
|---|---|
| Check tools and technical fit | Prerequisites |
| Follow the Install → Live path map | Path commands · onboarding cheatsheet |
| Create the Supabase project | Supabase setup |
| Deploy the Modal scan app | Modal setup |
Procure scanner and router .env keys |
Environment variables |
| Run your first Live scan | Quickstart · setup commands |
| Preview Mock UI or dry-discover locally | Optional local validation |
| Enable SIE / Model Studio routing | SIE setup · Model Studio setup · tripwire route |
| Interpret pathway strips / Escalated / SIE-only | Reading router results |
| Browse CLI / dashboard screenshots | Screenshot gallery |
| Smoke-test SIE or Model Studio alone | SIE sample CLI · Model Studio sample CLI |
| Understand results and system shape | Capability status · Architecture · ADRs |
| Contribute or maintain | Contributing · command catalog |
| Report a vulnerability | SECURITY |
Full map (including planning / CI): docs/README.md.
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found