README.md

July 31, 2026 · View on GitHub

NuGuard

NuGuard

AI-SBOM generation, static analysis, and automated red-teaming / adversarial-attack-generation for AI agents and LLM applications.

License: Apache 2.0 PR Tests PyPI Python versions GitHub Stars

What it does · Framework coverage · Comparison · Getting started · FAQ


NuGuard is an open source AI application security toolkit. It generates an AI Bill of Materials (AI-SBOM) for your agentic application, statically analyzes it for structural risk, then red-teams a running instance with a catalog of 125 adversarial scenarios — prompt injection, tool abuse, data exfiltration, and more — so you find the finding before an attacker does.

What It Does

SBOM: from local code or a remote repo. Analyze: static risk scan, no running app needed. Policy: propose, lint, and compliance-check. Behavior: runtime test vs declared intent. Red-team: 125 adversarial scenarios, live or sandboxed. Canaries: seeded values for high-confidence exfil findings. Remediate: fix suggestions with code snippets. Export: text, JSON, Markdown, SARIF.

Example

NuGuard SBOM generation and red-team run against a live vulnerable fintech app: 122-node SBOM generated, then 9 findings (7 HIGH, 2 LOW) including SQL injection and IDOR, risk score 67.8/100.

→ View the full report — every scenario, turn-by-turn transcripts, and the generated remediation plan.

Framework Coverage

Donut chart: 10 out of 10 OWASP LLM Top 10 categories covered.

The attack catalog (catalog.yaml) tags every scenario against the OWASP Top 10 for LLM Applications (2025) — all 10 categories are covered.

  • 125 red-team scenarios
  • 18 attack categories, spanning prompt injection, tool abuse, data exfiltration, supply chain, and more
  • Scenarios can map to more than one OWASP category, so per-category counts sum to more than 125
  • MITRE ATLAS and NIST AI RMF mapping — planned for a future catalog release

Comparison

Capability comparison cards. NuGuard: AI-SBOM generation, supply-chain analysis, policy engine, adaptive multi-turn attacks, OWASP LLM Top 10 mapping, auto remediation — all six. Garak: adaptive multi-turn attacks only. Promptfoo: adaptive multi-turn attacks and OWASP LLM Top 10 mapping.

Getting Started

Install, then generate an SBOM, statically analyze it, and red-team a live target:

pip install nuguard

nuguard init --target <your-app-url>
nuguard sbom generate --source <path-to-your-app> --output app.sbom.json
nuguard analyze --sbom app.sbom.json --format markdown
nuguard redteam --config nuguard.yaml --format markdown --output reports/redteam.md

🚀 Ready to run NuGuard?

Installation, the full CLI surface, and the configuration reference — all in one guide.

Read the Quick Start guide

⚙️ Need advanced red-team config?

Canaries, guided conversations, and finding triggers — covered in the Red-Team Design doc.

Read the Red-Team Design doc

🤖 Using coding agents?

Install the NuGuard plugin and run SBOM, analysis, behavior, and red-team scans directly from Claude Code or Claude Desktop.

Read the Plugin Guide

Hosted Version

🌐 NuGuard.ai

A managed SaaS version of NuGuard, with additional features and support on top of everything in this repo.

Contributing

🤝 Want to contribute?

Dev setup, running tests and lint, and the pull request process are covered in the Contributing guide.

Read the Contributing guide

Repo Notes

  • The repository currently contains example outputs and benchmark fixtures under tests/output/
  • Some red-team and benchmark tests are opt-in and gated by environment variables
  • LLM-assisted features depend on provider credentials being available via environment variables

FAQ

Do I need a live app to get findings? No. nuguard sbom + nuguard analyze find structural and supply-chain risk statically. nuguard behavior and nuguard redteam need a running target.

Which LLM providers are supported for LLM-assisted features? Configured via the llm section of nuguard.yaml; provider credentials are read from environment variables. Azure-backed setups are exercised directly in this repo's own test suite.

What if I don't want to run all 125 scenarios? Filter by category or profile, or set enabled: false per scenario in a catalog exported with nuguard redteam catalog-export.

License

Apache 2.0.


Docs: Getting started · Quick start · CLI reference · Policy engine · Static analysis · Red-team design · Claude plugin · Publishing · Troubleshooting · Security · Contributing