Open-source adversarial testing engine, SDK, and CLI for AI agents.
Most testing tools test prompts. Humanbound tests agents.
Repositories · Quick Start · Usage · Documentation · Contributing
📖 Full documentation lives at docs.humanbound.ai — this README covers the essentials; the docs have the depth.
- Tests agents, not prompts. Drives real multi-turn conversations against your live endpoint instead of scoring one-shot completions.
- Probes tool use and scope. Attempts the actions your agent shouldn't take — over-scoped tool calls, boundary violations — not just unsafe text generation.
- Scores against your policy. Findings are evaluated against a security policy you define, not a generic safety rubric.
- Closes what it finds.
hb guardrailsturns failing test cases directly into deployable guardrail rules, so a single run both surfaces and fixes the gap. - Local-first. Runs entirely on your machine with no account required; connect to the Humanbound Platform only if you want managed runs, history, and team dashboards.
Humanbound is split across a few focused repos rather than one monolith:
| Repo | Description | Stars |
|---|---|---|
humanbound |
Open-source adversarial testing engine, SDK, and CLI for AI agents. Runs locally or against the Humanbound Platform. | |
humanbound-firewall |
Multi-tier firewall for AI agents — blocks prompt injections, jailbreaks, and scope violations. Local tiers first; LLM judge only when uncertain. | |
plugins |
Humanbound plugin marketplace for Claude Code and Cursor — adversarial security testing for local AI agents. | |
actions |
Official GitHub Actions for Humanbound — adversarial security testing for AI agents in CI. |
See all repositories → github.com/humanbound
pip install humanbound # CLI + SDK, core deps
pip install humanbound[engine] # + OpenAI / Anthropic / Gemini / Ollama providers
pip install humanbound[firewall] # + humanbound-firewall runtime
pip install humanbound[engine,firewall] # everythingThe commands below illustrate the shape of a typical run — check docs.humanbound.ai for the current, complete CLI reference before relying on exact flags.
Run an adversarial test suite against your endpoint:
hb run --endpoint https://api.yourapp.com/agent --policy policy.yamlConvert failing tests into deployable guardrail rules:
hb guardrails --from-run last --out guardrails.yamlOr drive it from the SDK:
from humanbound import Engine
engine = Engine(endpoint="https://api.yourapp.com/agent", policy="policy.yaml")
results = engine.run()
if results.failures:
engine.guardrails.generate(results, out="guardrails.yaml")Contributions welcome. See CONTRIBUTING.md for the dev loop, release process, and DCO sign-off requirement (see DCO.md).
- 🐛 Report a bug
- 💡 Request a feature
- 🔒 Report a security issue — not via public Issues
- 💬 Join Discord
Humanbound is licensed under the Apache License 2.0.