AntOmniEvo README

The project's README from github.com/ant-research/AntOmniEvo. As one markdown file: README.md.

AntOmniEvo

An auto-evolution framework that optimizes anything — your 7×24 team of algorithm engineers.

License arXiv

English · 中文


AntOmniEvo is an auto-evolution framework with a strict division of labor: you define your system's tunable artifacts and what "good" means — the framework controls the loop, AI agents do the work — and it delivers optimized tunable artifacts.

Your system's tunable parts are abstracted as tunable artifacts — a real directory of files: an agent's SKILL.md + references + scripts, a workflow's pipeline.json + node scripts, a single-file algorithm + its description. Anything so representable, and repeatably evaluatable, AntOmniEvo can optimize — optimization becomes plain file editing. The system-under-optimization need not contain an LLM; the proposer must be agents.

🚀 What it is

AntOmniEvo is an auto-evolution framework for AI agent systems. It treats your system's tunable artifacts (skills, prompts, workflow configs, pipeline code) as the genome, and runs a concurrent evolution loop where a coding-agent Proposer reads failure trajectories and rewrites those artifacts — the way a human would edit code.

It works for any system that can be expressed as a directory of tunable files and has a repeatable, reasonably-cheap evaluation:

🧩 How it works

Division of labor: you define, framework controls, AI works.

You define — five things, once:

You provide Role
System how to run your system on one eval instance
Evaluator how to score its output (0–1) — its scoring criteria is the optimization objective
eval data the train/val instances that define "good"
TunableArtifactSchema maps your system's tunable artifacts onto a directory: the file tree + what each file is for
initial tunable artifacts the starting point

The framework controls — it runs the evolution loop, and all the control and engineering work inside it: scheduling, budgets, selection / elimination, persistence — deterministic machinery you don't write, keeping the strongest candidates in the population. Every candidate, run, analysis, and changelog is persisted to a CandidateStore — interruptible and resumable.

The AI works — the changing itself is done by a coding-agent Proposer: it reads failure trajectories, locates which file to edit, and lands a structured change as a new candidate's tunable artifacts — the way a human would edit code.

It delivers — the best candidate's tunable artifacts: a real directory of files you can diff, review, and deploy, with a change lineage attributing every edit to the failure evidence that motivated it.

📚 Documentation

Topic English 中文
Install & quick start docs/quickstart.md docs/quickstart.zh-CN.md
Features docs/features.md docs/features.zh-CN.md
Extensibility docs/extensibility.md docs/extensibility.zh-CN.md
When to use it docs/when-to-use.md docs/when-to-use.zh-CN.md
System design docs/system-design.md docs/system-design.zh-CN.md
Workspace artifacts & attribution docs/workspace-artifacts.md docs/workspace-artifacts.zh-CN.md
Checkpoint resume & crash recovery docs/checkpoint-resume.md docs/checkpoint-resume.zh-CN.md
Visualizer docs/visualizer.md docs/visualizer.zh-CN.md

📄 Paper

Coming soon. We will link the paper here once it is released.

⭐ Star History

Star History Chart

License

Licensed under the Apache License 2.0. Legal disclaimer: see LEGAL.md.

AntOmniEvo (ant-research/AntOmniEvo)

agent-framework
Searching Database…

What is this?AntOmniEvo is an auto-evolution framework: you give it your system's tunable artifacts (skills, prompts, workflow configs, or code) plus a way to score them, and it runs a concurrent evolution loop where a coding-agent 'Proposer' rewrites those files to produce better-performing candidates.
Is this a framework I plug into my own system, or a standalone app?It is a framework, not a standalone app or a plain library you call. You provide a System runner, an Evaluator, eval data, and a TunableArtifactSchema, and the framework drives the optimization loop and the coding-agent Proposer for you.
How do I get it running on my own system?Follow docs/quickstart.md for install and quick-start steps: you wire up a System (how to run your system on one eval instance), an Evaluator (how to score output 0-1), eval data, and a TunableArtifactSchema describing the tunable file tree, then start the evolution loop.
What do I need to supply before I can start an evolution run?You need your own System, Evaluator, and eval data, plus a coding-agent that will act as the Proposer editing the artifacts — the framework itself doesn't ship an LLM or evaluator.
Any catch I should know before relying on this?The system you're optimizing doesn't need to contain an LLM, but the Proposer that edits your files must be an agent, and the project's accompanying paper hasn't been published yet.
Who is this meant for?It's aimed at teams who have an agent system, workflow, or algorithm that is already expressible as files and can be scored repeatably and cheaply — effectively giving them a round-the-clock team of algorithm engineers automating that tuning.
What exactly counts as a 'tunable artifact'?Anything expressible as a directory of files with a repeatable evaluation: an agent's SKILL.md plus references and scripts, a workflow's pipeline.json plus node code, or a single algorithm file with its description.
How does the Proposer decide what to change?It reads failure trajectories from evaluation runs, locates which file is responsible for the failure, and lands a structured edit as a new candidate, the way a human engineer would edit code.
Can I stop and resume a long evolution run?Yes — every candidate, run, analysis, and changelog is persisted to a CandidateStore, so runs are interruptible and resumable, including crash recovery.
What do I actually get back at the end?The best candidate's tunable artifacts as a real directory of files you can diff, review, and deploy, with a change lineage tracing every edit back to the failure evidence that caused it.
Size
44.6 MB
Stars
1.2K
Updated
CommitOct 15
Age
1mo
Commits · 90 Days