{"id":49353876,"url":"https://github.com/humanbound/humanbound","last_synced_at":"2026-05-11T11:01:35.210Z","repository":{"id":337218034,"uuid":"1152676785","full_name":"humanbound/humanbound","owner":"humanbound","description":"Open-source AI agent red-team engine, SDK, and CLI. Run offline or against the Humanbound Platform.","archived":false,"fork":false,"pushed_at":"2026-05-05T18:50:32.000Z","size":2923,"stargazers_count":18,"open_issues_count":7,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-05T20:32:16.475Z","etag":null,"topics":["adversarial-testing","agentic-ai","ai-agents","ai-red-teaming","ai-safety","ai-security","aisecops","cli","cybersecurity","guardrails","humanbound","llm","llm-security","multimodal-ai","multimodal-security","owasp","pentesting","prompt-injection","security-testing","security-tools"],"latest_commit_sha":null,"homepage":"https://docs.humanbound.ai/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/humanbound.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":"CLA.md"}},"created_at":"2026-02-08T08:47:43.000Z","updated_at":"2026-05-05T08:03:55.000Z","dependencies_parsed_at":null,"dependency_job_id":"83da4497-1ea3-48ec-920a-44bea225f714","html_url":"https://github.com/humanbound/humanbound","commit_stats":null,"previous_names":["humanbound/humanbound-cli","aiandme-io/humanbound-cli","humanbound/humanbound"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/humanbound/humanbound","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/humanbound%2Fhumanbound","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/humanbound%2Fhumanbound/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/humanbound%2Fhumanbound/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/humanbound%2Fhumanbound/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/humanbound","download_url":"https://codeload.github.com/humanbound/humanbound/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/humanbound%2Fhumanbound/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32891966,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-10T13:40:02.631Z","status":"online","status_checked_at":"2026-05-11T02:00:05.975Z","response_time":120,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["adversarial-testing","agentic-ai","ai-agents","ai-red-teaming","ai-safety","ai-security","aisecops","cli","cybersecurity","guardrails","humanbound","llm","llm-security","multimodal-ai","multimodal-security","owasp","pentesting","prompt-injection","security-testing","security-tools"],"created_at":"2026-04-27T12:00:22.562Z","updated_at":"2026-05-11T11:01:35.205Z","avatar_url":"https://github.com/humanbound.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cpicture\u003e\n    \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"assets/logo-light.svg\"/\u003e\n    \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"assets/logo-dark.svg\"/\u003e\n    \u003cimg src=\"assets/logo-dark.svg\" alt=\"Humanbound\" width=\"280\"/\u003e\n  \u003c/picture\u003e\n\u003c/p\u003e\n\n\u003ch3 align=\"center\"\u003ehumanbound\u003c/h3\u003e\n\n\u003cp align=\"center\"\u003e\n  Open-source AI agent red-team engine, SDK, and CLI.\n  \u003cbr/\u003e\n  Runs locally or against the Humanbound Platform. No login required to start.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#quick-start\"\u003eQuick Start\u003c/a\u003e \u0026middot;\n  \u003ca href=\"#cli-usage\"\u003eCLI\u003c/a\u003e \u0026middot;\n  \u003ca href=\"#python-sdk\"\u003eSDK\u003c/a\u003e \u0026middot;\n  \u003ca href=\"https://docs.humanbound.ai/\"\u003eDocumentation\u003c/a\u003e \u0026middot;\n  \u003ca href=\"#contributing\"\u003eContributing\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://pypi.org/project/humanbound/\"\u003e\u003cimg src=\"https://img.shields.io/pypi/v/humanbound?style=flat-square\u0026color=FD9506\" alt=\"PyPI version\"/\u003e\u003c/a\u003e\n  \u003ca href=\"https://pypi.org/project/humanbound/\"\u003e\u003cimg src=\"https://img.shields.io/pypi/pyversions/humanbound?style=flat-square\u0026color=FD9506\" alt=\"Python versions\"/\u003e\u003c/a\u003e\n  \u003ca href=\"https://pypi.org/project/humanbound/\"\u003e\u003cimg src=\"https://img.shields.io/pypi/dm/humanbound?style=flat-square\u0026color=FD9506\" alt=\"Downloads\"/\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/humanbound/humanbound/actions/workflows/ci.yml\"\u003e\u003cimg src=\"https://img.shields.io/github/actions/workflow/status/humanbound/humanbound/ci.yml?style=flat-square\u0026color=FD9506\" alt=\"CI\"/\u003e\u003c/a\u003e\n  \u003ca href=\"LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-Apache--2.0-FD9506?style=flat-square\" alt=\"License\"/\u003e\u003c/a\u003e\n  \u003ca href=\"https://discord.gg/gQyXjVBF\"\u003e\u003cimg src=\"https://img.shields.io/badge/discord-community-FD9506?style=flat-square\" alt=\"Discord\"/\u003e\u003c/a\u003e\n  \u003ca href=\"https://docs.humanbound.ai/\"\u003e\u003cimg src=\"https://img.shields.io/badge/docs-humanbound.ai-FD9506?style=flat-square\" alt=\"Docs\"/\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n\u003e 📖 **Full documentation** lives at [**docs.humanbound.ai**](https://docs.humanbound.ai/) —\n\u003e this README covers the essentials; the docs have the depth.\n\n## Quick Start\n\n### Install\n\n```bash\npip install humanbound                       # CLI + SDK, core deps\npip install humanbound[engine]               # + OpenAI / Anthropic / Gemini providers\npip install humanbound[firewall]             # + humanbound-firewall runtime\npip install humanbound[engine,firewall]      # everything\n```\n\n### CLI usage\n\n```bash\n# Configure your LLM provider\nexport HB_PROVIDER=openai\nexport HB_API_KEY=sk-...\n\n# Run a security test\nhb test --endpoint ./bot-config.json --repo . --wait\n\n# View results\nhb posture                         # security score (0-100, A-F)\nhb logs                            # conversation logs\nhb report -o report.html           # HTML report\nhb guardrails -o rules.yaml        # firewall rules\n```\n\nFull air-gap with [Ollama](https://ollama.com) — zero external API calls:\n\n```bash\nexport HB_PROVIDER=ollama\nexport HB_MODEL=llama3.1:8b\nhb test --endpoint ./bot-config.json --scope ./scope.yaml --wait\n```\n\n### Python SDK\n\n```python\nfrom humanbound import Bot, LocalRunner, OwaspAgentic, TestingLevel, EngineCallbacks\n\n# Compose your own test pipeline\nbot = Bot(endpoint=\"https://my-agent/chat\", api_key=\"...\")\n\nclass Callbacks(EngineCallbacks):\n    def on_finding(self, insight): ...\n    def on_progress(self, pct): ...\n\nrunner = LocalRunner()\n# See docs.humanbound.ai for the full example\n```\n\n## Stability contract\n\n| Import path | Stability |\n|---|---|\n| `from humanbound import X` | **Stable** — semver-protected |\n| `from humanbound.\u003cmodule\u003e import Y` | **Stable** — semver-protected |\n| `from humanbound_cli.* import Z` | **Internal** — may change any release, do not import from user code |\n\nThe full Tier-by-Tier walkthrough, orchestrator authoring guide, Platform\nintegration, and API reference all live on\n[docs.humanbound.ai](https://docs.humanbound.ai/).\n\n## What's shipping in 2.0\n\n- **Clean name**: `humanbound` is the new PyPI install. The old\n  `humanbound-cli` package is a discontinued transitional stub (final\n  release 1.2.2 depends on `humanbound\u003e=2.0.2`); please install\n  `humanbound` directly.\n- **Public SDK namespace** alongside the CLI — use the CLI or drive the\n  engine from Python. Both share the same implementation, so they can't\n  drift.\n- **Firewall integration**: `pip install humanbound[firewall]` pulls the\n  renamed [`humanbound-firewall`](https://github.com/humanbound/humanbound-firewall)\n  (formerly `hb-firewall`) alongside the CLI.\n\nSee [CHANGELOG.md](./CHANGELOG.md) for the full 2.0.0 release notes.\n\n## Contributing\n\nContributions welcome. See [CONTRIBUTING.md](./CONTRIBUTING.md) for the dev\nloop, release process, and CLA requirement (see [CLA.md](./CLA.md)).\n\n- 🐛 [Report a bug](https://github.com/humanbound/humanbound/issues/new/choose)\n- 💡 [Request a feature](https://github.com/humanbound/humanbound/issues/new/choose)\n- 🔒 [Report a security issue](./SECURITY.md) — **not via public Issues**\n- 💬 [Join Discord](https://discord.gg/gQyXjVBF)\n\n## License\n\n[Apache-2.0](./LICENSE). Free to use in any context — commercial or\nopen-source — with attribution. See [TRADEMARK.md](./TRADEMARK.md) for the\ntrademark policy. The code is open; the name is not.\n\nThe sibling project [`humanbound-firewall`](https://github.com/humanbound/humanbound-firewall)\nis also Apache-2.0 — same license, different product.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhumanbound%2Fhumanbound","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhumanbound%2Fhumanbound","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhumanbound%2Fhumanbound/lists"}