Why GEPA Omni
One evaluator in, a better artifact out
Write a function that scores a candidate and explains why it failed. The engines handle mutation, selection, and budgeting.
Four engines, one contract
GEPA, AutoResearch, Meta-Harness, and Best-of-N all run against the same candidate, data, and budget.
Omni by default
Phase 1 explores with three engines in parallel; Phase 2 continues the best candidate with a fresh optimizer.
Portable plugin packaging
Ships as an Agent Plugins 1.0 manifest plus a Codex compatibility manifest, so any compatible coding agent can install and drive it.
Names
The repository isfleet-gepa-omni, the installable plugin is gepa-omni, and the shipped skill is gepa-omni-skill. These are separate identities by design.
Install with Codex
Add the GitHub repository as a Codex marketplace, then install the plugin:How Omni works
Omni is the default workflow. Three isolated exploration engines run against the same candidate, objective, evaluator, and selection data. The best Phase 1 candidate is handed to a fresh Phase 2 continuation — GEPA by default. Setcontinuation_engine to autoresearch or meta_harness to continue natively instead.
Key boundaries:
test_setis withheld from every Phase 1 branch and scored only by the final Phase 2 run.- Omni requires an explicit positive
max_evalsand/ormax_token_cost. The total is split into four balanced slices (three explorations plus one continuation), so an evaluation-only run needs at least four evaluations. - Omni is orchestration, not a public
engine="omni"value. Omit the engine override for the default workflow, or select a standalone engine to compare. - Keep
run_dirandoutput_diroutside the checkout whenever an engine needs a workspace or writes diagnostics.
The evaluator contract
GEPA Omni optimizes whatever your evaluator returns: a higher-is-better score plus feedback that explains why a candidate failed.info. A bare float gives the proposer little direction. For stochastic systems, average multiple samples inside the evaluator and include the sample diagnostics.
Launch directly against the pinned PyPI API:
The direct PyPI
optimize_anything() signature has no test_set argument and does not produce held-out-score metadata. The plugin wrapper run_optimization(..., engine="gepa") may accept task["test_set"] and score it after the run. Report that wrapper result separately from the selection score.
Engines and backends
All engines use the same OpenAI-compatible Chat Completions API. Configure the endpoint, model, and key once before launching:
agent_backend remains a compatibility label (codex, pi, or claude) kept in runtime and session metadata. OPENAI_MODEL is authoritative, and the three OPENAI_* variables are used for every model call.
For GEPA P×N proposal sampling, pass gepa_parallel_proposals=(parents, mutations) with a suitable max_concurrency. Omitting it retains the sequential one-worker configuration.
Requirements
- Python 3.10 or newer.
uvfor repository development.- The published
gepa[full]==0.1.4environment for standalonegepaand the reflective integration. OPENAI_BASE_URL,OPENAI_MODEL, andOPENAI_API_KEYfor an OpenAI-compatible Chat Completions endpoint.- Both input and output USD-per-million token rates when using
max_token_cost.
--test-lm is explicitly supplied:
Packaging
GEPA Omni is packaged twice from the same tracked content:plugin.json— the portable Agent Plugins 1.0 manifest..codex-plugin/plugin.json— the OpenAI/Codex compatibility manifest..agents/plugins/marketplace.json— marketplace metadata, which lets the GitHub repository itself act as a plugin marketplace.skills/gepa-omni-skill/— the shared payload (instructions, references, scripts, and the native runtime) referenced by both manifests.
tools/stage_plugin.py builds deployable bundles from a development checkout: --format portable emits plugin.json + skills/ + LICENSE, and --format codex emits .codex-plugin/ + skills/ + LICENSE.
Learn more
Quickstart
Install, configure the endpoint, run preflight, and launch your first Omni run.
Omni workflow
Phases, budget partitioning, and continuation choices.
Engines and backends
The four engines and the shared Chat Completions runtime.
Writing evaluators
Feedback-rich
info, judges, batching, multi-objective, and stochastic averaging.API reference
Published
optimize_anything and plugin run_optimization / run_omni contracts.Gotchas
Reward hacking, selection bias, budget sizing, and stop conditions.
Attribution
GEPA Omni is distributed under the MIT License and builds on the original GEPA Anything project (optimize_anything, gepa-ai/gepa, MIT). The reflective engine is consumed from the pinned gepa==0.1.4 PyPI release, and portions of the shipped native runtime are adapted from the pinned upstream commit 8a2bed96.
Source: github.com/Qredence/gepa-omni.