io.github.readyagentsdev/readyagents
OfficialReadyAgents 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. 1.0 means every run can be recorded, replayed offline, forked, diffed, and frozen into a regression test — with a written stability contract.
Site: readyagents.dev. Repo: github.com/readyagentsdev/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. Install with pip install readyagentsdev, or from this clone.
60-second start
Requires Python 3.11–3.14 on Linux, macOS, or Windows. Tagged 1.9.0 is the connector suite (pip install readyagentsdev). This checkout also has Unreleased A2A and memory — clone and pip install -e . to try those; they are not on the 1.9.0 tag.
git clone https://github.com/readyagentsdev/readyagents-core.git
cd readyagents-core
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e .
readyagents run examples/calc_pipeline.yaml
readyagents runs list
readyagents doctorreadyagents run examples/calc_pipeline.json is the same graph.
Or from PyPI (the wheel does not ship examples/):
pip install readyagentsdev
readyagents new my-flowHITL next: docs/first-ten-minutes.md.
What it does
Define agent workflows as YAML or JSON (nodes + edges)
Run agent, tool, condition, transform, approval, parallel, include, foreach, a2a, and memory 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)Record, replay offline, fork, diff, and freeze a run into an eval fixture (time machine)
Optional agent firewall: taint, tool policy, MCP pinning (security model, policy) — defence in depth, not a solution to prompt injection
Scaffold a starter:
readyagents new my-flow(basic,approval,research,pipeline,review,foreach,agent-tools,gated)Builtin tools with zero extra servers:
now,calc,json_get,list_dir,read_file,write_file, optionalhttp_getSmall governed connector set (
rest,sql,object_storage,message,ingest) plusreadyagents connectorscatalog — connectorsOptional MCP client and server (
readyagents mcp serve,readyagents mcp probe) with official tasks and MRTR approvalsOptional A2A serve/probe and
type: a2adelegation (Unreleased on this checkout; 0.3 JSON-RPC projection; remote content untrusted; not certification)Optional memory (
type: memory, local JSON/SQLite, BM25, TTL/forget) — Unreleased on this checkout; untrusted; delayed injection and scope escape first; not a quality claimExtra node types and tools via Python entry points (
readyagents.packs)Per-node token/cost, budgets,
--estimate/--max-spendcaps, local spend ledger, model fallback, JSON logsExternal approval injection (
readyagents decide) and outbound pause notifySecrets / RBAC / PII-redaction hooks and an append-only, hash-chained audit trail;
readyagents evidencewrites a local pack of a run — evidence, not legal compliance or certification (compliance)Pydantic
output_schemaon agent nodes; opt-in local LLM cachereadyagents.testinghelpers, recorded LLM mocks, and a tiny eval harness
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 |
| Write |
| Scaffold workflow + README + |
| Schema-validate a workflow (source-located errors on failure) |
| Print/write/check the generated workflow JSON Schema |
| Score a keyless fixture suite (exit 0/1) |
| Execute (or |
| Foreground: one workflow, many JSONL/CSV rows (opt-in; Unreleased) |
| Data-residency attestation (technical evidence, not legal compliance) |
| Offline wheel set for |
| Resume a paused or failed run |
| Validate a firewall policy file (fail closed) |
| Show which tools each node may call and why |
| Local evidence pack (not a compliance certificate) |
| Walk the hash-chained audit trail |
| TokenOps: aggregate the local spend ledger (informational vs the provider invoice) |
| Deterministic Mermaid routing (executes nothing) |
| Inject an approval; |
| Queue of paused gates the caller may see |
| Time-bounded, single-hop, revocable approval delegation |
| List or revoke local delegations |
| Verify an assertion against local trust anchors |
| Workload fingerprint (never the private key) |
| List persisted runs |
| Node timeline + stored state ( |
| Local HTML summary of a run |
| New run from stored inputs |
| Delete one local run record |
| Prune succeeded/failed/cancelled runs (paused kept; in-window records refused unless |
| Time machine: fork a run, diff two, freeze a cassette, migrate JSON→SQLite |
| Small governed catalog ( |
| Supply-chain: signatures prove origin, not safety |
| Foreground localhost approval page (not a hosted dashboard) |
| Stdio MCP server (builtin tools); |
| Read-only |
| Foreground A2A door for one workflow (loopback by default) |
| Deterministic Agent Card (no network) |
| Read-only remote card diagnostic (no secret values) |
| Local scoped memory (offline except optional embeddings) |
| List installed / local packs |
| Read-only platform / extras / permissions / loopback / run-store / sovereign diagnostic |
| Print version |
Examples (no keys unless noted)
File | What it shows |
| Builtin tools, transform, condition |
| Same graph as |
| Human-in-the-loop pause / resume |
| Keyless loopback OpenAI-compat path (no live model) |
| Two-approver gate (keyless) |
| Lazy deadline, |
| Two sequential approval gates |
| Parallel branches + approval |
| Sub-workflow |
| Include + parallel + approval |
| Agent node (needs a key) |
| Classify then branch (needs a key) |
|
|
| Agent |
| Sequential foreach + |
| Policy gate on tainted |
| Starter firewall policy |
|
|
| Builtin |
| Keyless |
|
|
|
|
| Keyless |
| Keyless |
| Local |
| Approval then |
Docs
Connectors (small catalog; write-shaped ops gate by default)
Sovereign mode (in-process egress refuse, not an OS sandbox)
Cost / TokenOps (informational vs the provider invoice)
Time machine (record / replay / fork / diff / freeze)
A2A (untrusted remote content; delegation can exfiltrate; not certification)
Memory (untrusted; delayed injection and scope escape; not a quality claim)
Scale and batch (opt-in; Unreleased; not a distributed worker; benchmarks are not a marketing claim)
Streaming (opt-in
--stream; Unreleased; not audio)Supply-chain trust (signatures prove origin, not safety)
Continuous pack (optional, separate distribution)
Compliance evidence (Articles 12–14 mapping; not certification)
Install extras
LLM and MCP extras are optional.
pip install "readyagentsdev[openai]"
pip install "readyagentsdev[anthropic]"
pip install "readyagentsdev[mcp]"
pip install "readyagentsdev[all]"From a clone, the same extras are pip install -e ".[openai]" (and anthropic / mcp / all).
The optional [otel] extra is not included in [all]; it starts no collector (see observability.md).
The optional [sign] extra (Ed25519 artifact signatures) and [jwt] extra are
also not in [all]. Unsigned default runs never import them.
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 smokeWhat is not in this repository
Always-on packs are waitlisted and not for sale.
Always-on / continuous workers are not in Core. The optional readyagents-pack-continuous distribution (separate repository, not a Core extra) can run configured workflows from an explicit foreground command. Installing Core still starts no scheduler or listener.
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. Public contact: info@readyagents.dev. Do not commit API keys. Local operator files such as .env are gitignored.