Skip to main content

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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nuguard-0.8.9.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nuguard-0.8.9-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file nuguard-0.8.9.tar.gz.

File metadata

  • Download URL: nuguard-0.8.9.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for nuguard-0.8.9.tar.gz
Algorithm Hash digest
SHA256 d33b53e2e1913c73f3e31eadf5bdf864584b4446c94cafdfd26c254565d97fde
MD5 888cc4694f84d6bea1dd3fbebc91dae2
BLAKE2b-256 a45ac627ecd4c80dee28217f78253c6784b5266abfb6814e08fc0143d4697f6c

See more details on using hashes here.

Provenance

The following attestation bundles were made for nuguard-0.8.9.tar.gz:

Publisher: publish-pypi.yml on NuGuardAI/nuguard

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nuguard-0.8.9-py3-none-any.whl.

File metadata

  • Download URL: nuguard-0.8.9-py3-none-any.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for nuguard-0.8.9-py3-none-any.whl
Algorithm Hash digest
SHA256 cb1a9865baeaf61429094919f97e0172fd2e0f6ffb1acedfb5a8da051c0e2909
MD5 6dd99cb4dd4d76ebc74a0ca75b362074
BLAKE2b-256 60e8002179068814c4827220ff0e89fbe540249331aac9798f35e3b48e8f0ae6

See more details on using hashes here.

Provenance

The following attestation bundles were made for nuguard-0.8.9-py3-none-any.whl:

Publisher: publish-pypi.yml on NuGuardAI/nuguard

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page