darwinian-evolver

Evolve prompts, regex, SQL, or code against a fitness function.

78|16|Updated Apr 23, 2026
One-click install
npx skills add https://github.com/sheawinkler/hermes-agent-ultra --skill darwinian-evolver-sheawinkler
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: darwinian-evolver
Source: https://github.com/sheawinkler/hermes-agent-ultra/tree/main/optional-skills/research/darwinian-evolver
Command: npx skills add https://github.com/sheawinkler/hermes-agent-ultra --skill darwinian-evolver-sheawinkler

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires jinja2, openai, and includes scripts (resource) components.

What problem does it solve?

Evolve prompts/regex/SQL/code with an LLM-driven evolutionary search loop to optimize artifacts against a fitness function.

Core Features & Use Cases

  • Parrot/OpenRouter driver and templates to run model-agnostic evaluation loops.
  • Flexible, custom Problem definitions that guide organism creation, evaluation, and mutation.
  • Production-ready evolution workflow with Problem, Evaluator, and Mutator orchestration via EvolveProblemLoop.

Quick Start

Run the built-in parrot example to start an evolution by running the darwinian-evolver parrot driver with your API key.

Frequently Asked Questions about darwinian-evolver

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate prompt engineering to optimize prompts against a fitness function?▼

You can automate prompt engineering by running an LLM-driven evolutionary search loop that mutates and evaluates artifacts against a custom fitness function. This structured loop uses trainable and holdout data to optimize prompts iteratively.

Can I use an evolutionary loop to evolve regex and SQL queries?▼

Yes, you can evolve regex and SQL queries using the evolutionary loop. The loop applies mutation and evaluation to optimize these artifacts against a fitness function, treating them as organisms that improve over generations.

Do I need Python and an API key to run LLM evolution experiments?▼

Yes, you need Python version 3.11 or higher, the uv CLI, and access to an LLM provider via an API key such as OPENROUTER_API_KEY to run the evolution experiments and execute the built-in parrot driver.

What is the best way to optimize small code snippets using LLM experimentation?▼

The best way to optimize small code snippets is defining a custom Problem that guides organism creation, evaluation, and mutation. The EvolveProblemLoop orchestrates the Evaluator and Mutator to refine code through structured evaluation.

Does darwinian-evolver support model-agnostic evaluation loops?▼

Yes, darwinian-evolver supports model-agnostic evaluation loops. It includes a Parrot and OpenRouter driver with templates that allow you to run evolution experiments across different LLM providers seamlessly.

When should I not use an LLM-driven evolutionary search for artifact optimization?▼

You should avoid LLM-driven evolutionary search when you lack a definable fitness function or sufficient trainable and holdout data. Without clear evaluation metrics, the mutation and selection loop cannot effectively optimize prompts, regex, SQL, or code artifacts.