AI security review agent for code, plans, and infrastructure
Project description
hiro-agent
AI security review agent for code, plans, and infrastructure.
What this project does
- Reviews code diffs for security issues
- Reviews implementation plans with threat-modeling prompts
- Reviews infrastructure configs for security misconfigurations
- Scans repositories with multi-skill, wave-based security investigations (experimental)
It integrates with Claude Code, Cursor, VSCode Copilot, and Codex CLI to enforce review workflows before commits and plan finalization.
Install
# Recommended (isolated environment, works on macOS/Linux)
pipx install hiro-agent
# Or with pip in a virtual environment
pip install hiro-agent
Quick Start
# Set up hooks for your AI coding tools
hiro setup
# Review code changes
git diff | hiro review-code
# Review an implementation plan
cat plan.md | hiro review-plan
# Review infrastructure configuration
hiro review-infra main.tf
# Experimental: full-repo scan
hiro scan
Commands
| Command | Description |
|---|---|
hiro review-code |
Security review of code changes (stdin: git diff) |
hiro review-plan |
STRIDE threat model review of a plan (stdin) |
hiro review-infra |
IaC security review (file arg or stdin) |
hiro scan |
Full-repo multi-skill security scan (experimental/beta) |
hiro chat "<question>" |
Ask security questions about current repo |
hiro setup |
Auto-detect and configure all AI coding tools |
hiro upgrade |
Update installed hooks/configs to latest package behavior |
hiro verify |
Verify hook integrity against installed version |
Setup Options
hiro setup # Auto-detect all tools
hiro setup --claude-code # Claude Code only
hiro setup --cursor # Cursor only
hiro setup --vscode # VSCode Copilot only
hiro setup --codex # Codex CLI only
Configuration
Set HIRO_API_KEY to connect to the Hiro platform for organizational context (security policies, memories, org profile). Without it, reviews still run using your ANTHROPIC_API_KEY directly.
export HIRO_API_KEY=hiro_ak_... # Optional: Hiro platform context
export ANTHROPIC_API_KEY=sk-ant-... # Required if HIRO_API_KEY not set
More details: docs/configuration.md
How It Works
hiro setupinstalls hook scripts in.hiro/hooks/and configures your AI coding tool to call them- Hooks track file modifications and block commits until
hiro review-codehas run - Hooks track plan creation and block finalization until
hiro review-planhas run - Review agents use
claude-agent-sdkto spawn a Claude instance that performs the security review - When connected to Hiro (
HIRO_API_KEY), reviews are enriched with your org's security policy, accepted risks, and architecture context
Stability
- Primary/release-gated workflows:
review-code,review-plan - Secondary workflow:
review-infra - Experimental workflow:
scan
Architecture and Methodology
- Architecture:
docs/architecture.md - Scan methodology:
docs/scan-methodology.md - Troubleshooting:
docs/troubleshooting.md - Development:
docs/development.md
Contributing
- Contribution guide:
CONTRIBUTING.md - Code of conduct:
CODE_OF_CONDUCT.md - Security reporting:
SECURITY.md
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 hiro_agent-0.1.9.tar.gz.
File metadata
- Download URL: hiro_agent-0.1.9.tar.gz
- Upload date:
- Size: 113.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e06a68c744e4da0b8b548e222cc6023fcde73cfde7e82a3d535f8794d38991ea
|
|
| MD5 |
8614879ea649e1eb288af846ef87f32d
|
|
| BLAKE2b-256 |
5771c4e58af978cc880442335139ea7ce8bd20719db3be0dd4b4a9a6180fa685
|
Provenance
The following attestation bundles were made for hiro_agent-0.1.9.tar.gz:
Publisher:
publish.yml on telophasehq/hiro-agent
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
hiro_agent-0.1.9.tar.gz -
Subject digest:
e06a68c744e4da0b8b548e222cc6023fcde73cfde7e82a3d535f8794d38991ea - Sigstore transparency entry: 1350146713
- Sigstore integration time:
-
Permalink:
telophasehq/hiro-agent@613b25f2e8afeea2425aaf1aa55579d6dbceabb9 -
Branch / Tag:
refs/tags/v0.1.9 - Owner: https://github.com/telophasehq
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@613b25f2e8afeea2425aaf1aa55579d6dbceabb9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file hiro_agent-0.1.9-py3-none-any.whl.
File metadata
- Download URL: hiro_agent-0.1.9-py3-none-any.whl
- Upload date:
- Size: 64.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cdae337bcb85cb575e593bbf7f0ad413c672e72f2b899d1fde03517b4c4e1ad1
|
|
| MD5 |
0480fc4d612d939d5a2e735182a57bab
|
|
| BLAKE2b-256 |
badd5722e8e180bc0ee785c755793b6a25ac34b695012f1ec65cf14b4f0554f5
|
Provenance
The following attestation bundles were made for hiro_agent-0.1.9-py3-none-any.whl:
Publisher:
publish.yml on telophasehq/hiro-agent
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
hiro_agent-0.1.9-py3-none-any.whl -
Subject digest:
cdae337bcb85cb575e593bbf7f0ad413c672e72f2b899d1fde03517b4c4e1ad1 - Sigstore transparency entry: 1350146820
- Sigstore integration time:
-
Permalink:
telophasehq/hiro-agent@613b25f2e8afeea2425aaf1aa55579d6dbceabb9 -
Branch / Tag:
refs/tags/v0.1.9 - Owner: https://github.com/telophasehq
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@613b25f2e8afeea2425aaf1aa55579d6dbceabb9 -
Trigger Event:
push
-
Statement type: