Security harness for AI coding agents (Claude Code, Codex CLI, etc.) — mitmproxy payload inspection + TOML policy control.
Project description
Agent Zoo
日本語 | English
A security harness that isolates AI coding agents (Claude Code / Codex CLI / Gemini CLI) inside Docker containers and forces all outbound traffic through mitmproxy. Payload inspection plus TOML policy control physically prevent data exfiltration and dangerous command execution, without relying on the agent's own trustworthiness.
Quickstart
uv tool install agent-zoo # install from PyPI
mkdir my-zoo && cd my-zoo
zoo init # secure by default: empty allow list (Inbox approval required)
# or: zoo init --policy claude # allow Anthropic/Claude only
# or: zoo init --policy {codex,gemini,all} # see `zoo init --help`
zoo build # build the claude image (5-10 min)
zoo run # interactive mode (first run prompts /login)
zoo init now defaults to --policy minimal (empty domains.allow.list) so
that the first outbound request is rejected and surfaced to the Inbox for
per-request approval. Pick another profile (claude / codex / gemini /
all) to preseed the allow-list, or edit .zoo/policy.toml directly. Live
audit is available through the dashboard (zoo up --dashboard-only,
http://localhost:8080).
Features
- Docker isolation: agent containers run on an
internal: truenetwork, cut off from the host OS and other containers; the only egress is the mitmproxy sidecar - Domain allow-list: outbound destinations are explicitly enumerated in
policy.toml, with hot reload support - Payload inspection: request and response bodies are inspected (Base64 decoding, secret patterns, URL-embedded secrets)
- tool_use detection: SSE streams are parsed and dangerous tool invocations are blocked at the request hook
- Dashboard auditing: requests / tool_uses / blocks shown live, with whitelist nurturing and Inbox (agent-to-human approval requests)
- Agent-agnostic: same harness covers Claude Code / Codex CLI / Gemini CLI; the unified image enables cross-agent invocation
Documentation
| Doc | Contents |
|---|---|
| Install & Setup | Detailed uv tool install → zoo init → zoo run flow, full command reference, unified profile |
| Inbox guide (JP) | Approving agent-issued allow-list requests through the dashboard |
| Security model | Defense in depth, known limitations, operating principles |
| Policy reference | Every setting in policy.toml |
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agent_zoo-0.1.4.tar.gz.
File metadata
- Download URL: agent_zoo-0.1.4.tar.gz
- Upload date:
- Size: 1.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
30b42e2262ba9726f1469801c84eece5ed018238329c4e978d26fb0351c1ba20
|
|
| MD5 |
bf8d573cbf6843f766ae896d917bfa4e
|
|
| BLAKE2b-256 |
e107277a808384510da67d3e97c4448282195686f386f4e4a818bd4e600a1851
|
Provenance
The following attestation bundles were made for agent_zoo-0.1.4.tar.gz:
Publisher:
release.yml on ymdarake/agent-zoo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
agent_zoo-0.1.4.tar.gz -
Subject digest:
30b42e2262ba9726f1469801c84eece5ed018238329c4e978d26fb0351c1ba20 - Sigstore transparency entry: 1341799095
- Sigstore integration time:
-
Permalink:
ymdarake/agent-zoo@9eff19168af7bd05aef7023d157d605db7e04fa9 -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/ymdarake
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9eff19168af7bd05aef7023d157d605db7e04fa9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file agent_zoo-0.1.4-py3-none-any.whl.
File metadata
- Download URL: agent_zoo-0.1.4-py3-none-any.whl
- Upload date:
- Size: 97.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
34856bd5b6ee649bde03d6520c85e62cb4dcbe2f14fcb405e710cafd2d6acbd3
|
|
| MD5 |
3a064ec8daa9470866051936470df828
|
|
| BLAKE2b-256 |
446b31965de294d5fc1dbd411ec2ec0448e3233c90f7821b6c8afb484cf2c694
|
Provenance
The following attestation bundles were made for agent_zoo-0.1.4-py3-none-any.whl:
Publisher:
release.yml on ymdarake/agent-zoo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
agent_zoo-0.1.4-py3-none-any.whl -
Subject digest:
34856bd5b6ee649bde03d6520c85e62cb4dcbe2f14fcb405e710cafd2d6acbd3 - Sigstore transparency entry: 1341799099
- Sigstore integration time:
-
Permalink:
ymdarake/agent-zoo@9eff19168af7bd05aef7023d157d605db7e04fa9 -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/ymdarake
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9eff19168af7bd05aef7023d157d605db7e04fa9 -
Trigger Event:
push
-
Statement type: