ReadyAgents Core
ReadyAgents is a free, self-hosted Apache-2.0 local one-shot agent workflow engine plus MCP toolkit: clone it, bring your own keys; always-on packs are waitlisted and not for sale.
Site: readyagents.dev. Repo: github.com/readyagents/readyagents-core.
Tried it? Open an I-ran-this issue. We are not launching. We are listening.
This repository is the free core. You keep the provider account and the bill. The package is not on PyPI. Install from this clone.
What it does
- Define agent workflows as YAML or JSON (nodes + edges)
- Run agent, tool, condition, transform, approval, parallel, include, and foreach nodes. Agent nodes may declare a
tools:allowlist for a bounded tool-use loop. - Persist after every node and resume a paused or failed run from the last successful node
- Inspect past runs:
readyagents runs list/show/replay/report(local HTML) - Scaffold a starter:
readyagents new my-flow(basic,approval,research,pipeline,review) - Builtin tools with zero extra servers:
now,calc,json_get,list_dir,read_file,write_file, optionalhttp_get - Optional MCP client and server (
readyagents mcp serve) - Extra node types and tools via Python entry points (
readyagents.packs) - Per-node token/cost, budgets, model fallback, JSON logs
- External approval injection (
readyagents decide) and outbound pause notify - Secrets / RBAC / PII-redaction hooks and an append-only audit trail
- Pydantic
output_schemaon agent nodes; opt-in local LLM cache readyagents.testinghelpers, recorded LLM mocks, and a tiny eval harness
60-second start
Requires Python 3.11+. Current version is 0.8.0. This package is not on PyPI. Install from this clone.
First-run clip: watch the 60-second run
git clone https://github.com/readyagents/readyagents-core.git
cd readyagents-core
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e .
This package is not on PyPI. Install only from the clone above.
Smoke test — no API keys:
readyagents run examples/calc_pipeline.yaml
readyagents runs list
readyagents runs report <run_id>
readyagents new my-flow
readyagents run examples/approval_gate.yaml --approve gate
readyagents run examples/composed_gate.yaml --approve gate
readyagents run examples/multi_gate.yaml --approve first --approve second
Human-in-the-loop without a decision pauses (exit 2, does not hang) and can be resumed:
readyagents run examples/approval_gate.yaml
readyagents runs list
readyagents resume <run_id> --approve gate
# or
readyagents resume <run_id> --reject gate
# or inject a JSON decision (no always-on webhook server in core):
readyagents decide <run_id> --file decision.json
With a key in .env (OPENAI_API_KEY or ANTHROPIC_API_KEY):
readyagents run examples/research_brief.yaml --input topic="agent workflows"
Architecture
flowchart LR
YAML[Workflow YAML/JSON] --> Engine
subgraph Core["ReadyAgents Core"]
Engine[Workflow engine]
Tools[Builtin tools]
LLM[BYOK LLM providers]
MCP[MCP client / server]
Packs[Pack loader]
end
Engine --> Tools
Engine --> LLM
Engine --> MCP
Packs --> Engine
Packs --> Tools
LLM --> OpenAI[OpenAI]
LLM --> Anthropic[Anthropic]
LLM --> Compat[OpenAI-compatible]
CLI
| Command | Purpose |
|---|---|
readyagents init |
Write .env from .env.example if missing |
readyagents new [name] [--template basic|approval|research|pipeline|review|foreach|agent-tools|gated] |
Scaffold workflow + README + .env.example |
readyagents validate PATH |
Schema-validate a workflow |
readyagents eval PATH |
Score a keyless fixture suite (exit 0/1) |
readyagents run PATH [--input KEY=VALUE] [--dry-run] [--approve NODE] [--reject NODE] [--decision-file FILE] [--actor NAME] [--pack PATH] |
Execute |
readyagents resume RUN_ID [--approve NODE] [--reject NODE] [--decision-file FILE] |
Resume a paused or failed run |
readyagents decide RUN_ID [--file FILE | --node ID --decision approve] |
Inject an external approval decision and resume |
readyagents runs list |
List persisted runs |
readyagents runs show RUN_ID |
Node timeline + stored state (inspect is an alias) |
readyagents runs report RUN_ID |
Local HTML summary of a run |
readyagents runs replay RUN_ID |
New run from stored inputs |
readyagents runs delete RUN_ID --yes |
Delete one local run record |
readyagents runs gc --yes |
Prune succeeded/failed/cancelled runs (paused kept) |
readyagents mcp serve |
Stdio MCP server (builtin tools) |
readyagents packs [--pack PATH] |
List installed / local packs |
readyagents version |
Print version |
Examples (no keys unless noted)
| File | What it shows |
|---|---|
examples/calc_pipeline.yaml |
Builtin tools, transform, condition |
examples/approval_gate.yaml |
Human-in-the-loop pause / resume |
examples/multi_gate.yaml |
Two sequential approval gates |
examples/fanout_gate.yaml |
Parallel branches + approval |
examples/include_demo.yaml |
Sub-workflow include |
examples/composed_gate.yaml |
Include + parallel + approval |
examples/research_brief.yaml |
Agent node (needs a key) |
examples/support_triage.yaml |
Classify then branch (needs a key) |
examples/code_review.yaml |
read_file + review (needs a key) |
examples/agent_tools.yaml |
Agent tools: [calc] (needs a key; --dry-run is keyless) |
examples/foreach_calc.yaml |
Sequential foreach + calc (no keys) |
examples/json_mutate.yaml |
json_set / json_merge (no keys) |
examples/list_dir.yaml |
Builtin list_dir (no keys, no MCP, no Node) |
Docs
- Getting started
- First ten minutes
- Concepts
- Configuration (BYOK)
- Workflows
- MCP
- Packs
- CLI
- Changelog
- Release notes 0.8.0
Install extras (still from this checkout)
LLM and MCP extras are optional. Install them from the cloned repo, not from PyPI:
pip install -e ".[openai]"
pip install -e ".[anthropic]"
pip install -e ".[mcp]"
pip install -e ".[all]"
Then cp .env.example .env and paste your own keys. Core workflows that only use builtin tools do not need extras, keys, or Node.js.
docker compose run --rm readyagents run examples/calc_pipeline.yaml
make smoke
What is not in this repository
Always-on packs are waitlisted and not for sale.
Always-on / continuous workers and schedulers. Hosted control plane. Hosted recovery and remote run stores. SSO, multi-tenant teams, billing.
The core has persist, resume, and approval pauses for a local one-shot. It does not run always-on.
License
Apache License 2.0. See LICENSE.
Security
Please report vulnerabilities as described in SECURITY.md. Do not commit API keys. Local operator files such as .env are gitignored.
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 readyagents-0.8.0.tar.gz.
File metadata
- Download URL: readyagents-0.8.0.tar.gz
- Upload date:
- Size: 130.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c2dc1a68452e7eafc9c9e8b04ef5c63e31a6eb750b6d7178be395b540b769007
|
|
| MD5 |
78656886815a64be38d416d70c98dc9b
|
|
| BLAKE2b-256 |
89f901b50ac6feef155f06a68c119457cad1ac380a586a526d8039cb6bf8e59d
|
File details
Details for the file readyagents-0.8.0-py3-none-any.whl.
File metadata
- Download URL: readyagents-0.8.0-py3-none-any.whl
- Upload date:
- Size: 88.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2401c025aabaee1cb49210d0b8f6f28d0183353d6819e4823d5baf5650888389
|
|
| MD5 |
65ebf01a687e88dd6e151320056894bf
|
|
| BLAKE2b-256 |
a1b8dc9487d1c3011c4216d3ac072f2c0a2abe04a5518e943ae9b62a5b47e1b0
|