Skip to main content

Apron Agents

Apron Agents

PyPI Python versions CI MIT license

A local, one-command tool that breaks a coding task into small independent issues, hands them to worker agents that each work in an isolated sandbox, and merges their work one chunk at a time behind a human review gate.

The name comes from the airport apron: the staging area where aircraft are prepped and checked before they ever reach the runway. Apron Agents does the same with code before it reaches your real remote.

How it works

  • An orchestrator agent splits your task into small, file-independent issues.
  • Worker agents each claim an issue and work in an isolated clone of a disposable, fully local sandbox repository (a bare repo in a temp dir acting as a "fake GitHub"). Your real remote is never touched.
  • A merge controller merges one branch at a time, running tests on every candidate merge.
  • A dashboard gives you a live view of every agent plus a chunk-by-chunk review-and-merge control surface. In supervised mode, nothing merges without your approval; in autonomous mode, green tests are enough.
  • When everything is merged and green, the final result is copied into your working directory and the tool stops. You test locally and run any real git operations yourself.

Install

pip install apronagents

Then, from the project directory you want the agents to work on:

apron start

This boots the orchestrator, workers, merge controller, and dashboard server, and opens the dashboard in your browser. Enter a task, review the diffs, and approve merges chunk by chunk; when everything is green the result lands in your working directory and the tool stops.

No account? Try the whole flow with fake agents:

apron start --runner demo

Common flags:

apron start [--mode supervised|autonomous] [--runner ...] [--test-command 'pytest -q']
apron task "add dark mode"   # dispatch to a running apron from your terminal

Quick start from a clone

For hacking on Apron itself:

git clone https://github.com/Ut8v/apronagents && cd apronagents
./run start

This sets up the environment with uv and launches everything the same way.

Agent backends

Workers run on whatever you already use — pick with --runner or let auto-detection choose:

Runner Powered by Needs
claude-code The claude CLI, headless Any Claude plan (Pro/Max) or API login — whatever Claude Code already uses
codex The codex CLI, headless A ChatGPT plan or OpenAI key — whatever Codex already uses
api The Anthropic API directly ANTHROPIC_API_KEY or an ant auth login profile
demo Fake in-process agents Nothing — try the whole flow with no account

Any other headless agent CLI can be plugged in as a CliProfile (src/apron/workers/cli_runner.py).

Customizing agents

Agent behavior lives in editable markdown definitions, not code. Apron ships defaults, discovers your existing .claude/agents/ definitions read-only, and writes any edits you make in the dashboard to a .apron/ overlay that hot-reloads on the next issue.

Contributing

See CONTRIBUTING.md — setup, workflow, and the invariants every change must respect. CI runs the test suite (Python 3.11–3.13), the dashboard typecheck/build, and a wheel install smoke test on every push and pull request.

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

apronagents-0.1.1.tar.gz (406.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

apronagents-0.1.1-py3-none-any.whl (126.7 kB view details)

Uploaded Python 3

File details

Details for the file apronagents-0.1.1.tar.gz.

File metadata

  • Download URL: apronagents-0.1.1.tar.gz
  • Upload date:
  • Size: 406.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for apronagents-0.1.1.tar.gz
Algorithm Hash digest
SHA256 2c8ecd06e61b0047fa9cfc8ffa8e2de5d48781fdd7aad0391dc96c3be2a4e399
MD5 e740f20b0a7add5d5915945b484df630
BLAKE2b-256 6de80ff541c7bf5254ae2c3c58936e64e805550e49dc44a89d9cc47cf3fd1433

See more details on using hashes here.

File details

Details for the file apronagents-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: apronagents-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 126.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for apronagents-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 72021b901762356240fd6799b242cc4bf302a8c4494475f325d07834a143ff4b
MD5 e2f5e17615ec5f2bb4ca4e11c3e3c1c2
BLAKE2b-256 ee25392adf2e54ad2d3751876824c72262916e8aabdad518216d2f94cebe7bb3

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.2

2 files

This release

0.1.1 This release

2 files

0.1.0

2 files

0.0.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page