agroute
Route delegated agent tasks across local coding agents within live usage limits.
agroute is a configurable, plan-only local task router for coding agents (codex,
claude, and agy). Given a host agent and native quota/rate-limit state, it filters
available (agent, model, effort) candidate routes, emits a howhard 2.1+
candidate inventory with provider-qualified model identities (<agent>/<model>), and
resolves a howhard decision into a deterministic execution plan:
- Native host delegation (
target_agent == host_agent): emits a structured native subagent tool directive for the current host (invoke_subagentin Antigravity,Agentin Claude Code, orspawn_agentin Codex). - Cross-agent CLI execution (
target_agent != host_agent): emits a non-interactive CLI execution plan (codex exec --json,claude -p --verbose --output-format stream-json, oragy -p --output-format stream-json) with exact model, effort, and output-capture adapter metadata.
agroute never spawns worker processes itself. Model/effort selection, outcome observation,
portable execution accounting, and writable semantic memory remain in howhard.
Quickstart
You need Python 3.11+, a POSIX shell, Git, howhard 2.1+,
and a current Codex, Claude Code, or Antigravity client with native plugin support.
Install agroute and howhard in your project environment:
python3 -m venv .venv-agroute
. .venv-agroute/bin/activate
python -m pip install "agroute==0.1.0" "howhard>=2.1.0"
agroute --version
Expect agroute 0.1.0. Keep the environment active and start your coding agent from the
same shell so it can find agroute and howhard.
Install the native plugin for your host:
# Codex
codex plugin marketplace add xu-hao/agroute
codex plugin add agroute@agroute
# Claude Code
claude plugin marketplace add xu-hao/agroute
claude plugin install agroute@agroute
# Antigravity
agy plugin install https://github.com/xu-hao/agroute
agy plugin list
Invoke the skill explicitly with $agroute or /skills in Codex, /agroute:agroute in
Claude Code, or /agroute in Antigravity.
Core workflow
-
Inspect or update native quota state:
agroute usage show --json agroute usage ingest --agent codex --file /tmp/codex-status.jsonl --json agroute usage set --agent claude --session-used-pct 92 --session-reset-at 2026-11-08T21:00:00Z --json
-
Emit filtered
howhardcandidates for the current host:agroute candidates --host agy --output /tmp/task-candidates.json --json
-
Select a cell with
howhard(calling-agentcontext/retrieve/decideorpick) and resolve the decision into an execution plan:agroute plan --host agy --decision /tmp/task-decision.json --prompt-file /tmp/task.txt --json
-
Execute the returned plan (native tool call when
target_agent == host_agent, or CLI command whentarget_agent != host_agent) and record the outcome inhowhard:howhard observe DECISION_ID clean --id EXECUTION_ID --json
See the quickstart, documentation index, routing and storage contracts, configuration guide, skill guide, and changelog. Contributors use AGCoord and isolated worktrees.
Metadata
Release files for agroute 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| agroute-0.1.0.tar.gz | 44.9 kB | Without provenance | Details for agroute-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| agroute-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for agroute-0.1.0-py3-none-any.whl |
Total release size: 70.0 kB
Release files / agroute-0.1.0.tar.gz
| Download URL | agroute-0.1.0.tar.gz |
|---|---|
| Size | 44.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b32cc6dff3d76be6fc85c45d9cd46b6df14f9f5d9beede45874a75f81ed4e85c
|
|
BLAKE2b-256 checksum How to use checksums |
810aaf558f29e3e278cdcc1e950c00efdb498386a0303fada3e265beac506379
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.5
|
Release files / agroute-0.1.0-py3-none-any.whl
| Download URL | agroute-0.1.0-py3-none-any.whl |
|---|---|
| Size | 25.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ba6ef2354f969ef68bc7b60d41ecc761fc3f1eaaa9e53ae9b87ac887d4620678
|
|
BLAKE2b-256 checksum How to use checksums |
30f178c21e1cf4af1b80e6a9c5005df4423782beade54529ac994b0dbea773a0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.5
|
Security for agroute 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.