evolve-design

Designs and launches checkpointed evolutionary search runs that iteratively optimize text-shaped candidates against measurable scores.

64|15|Updated Aug 14, 2026
One-click install
npx skills add https://github.com/openJiuwen-ai/sciencediscovery --skill evolve-design-openjiuwen-ai
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: evolve-design
Source: https://github.com/openJiuwen-ai/sciencediscovery/tree/main/skills/evolve-design
Command: npx skills add https://github.com/openJiuwen-ai/sciencediscovery --skill evolve-design-openjiuwen-ai

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Improving a program, prompt, document, configuration, or experimental protocol by hand is slow and unsystematic. This Skill structures the problem as an evolutionary search: it defines a measurable scoring criterion, builds a robust evaluator, sizes the run, and launches an automated search that rewrites candidates dozens of times and keeps what scores higher. ## Core Features & Use Cases - Four-step checkpointed design flow: Agree what "better" means, build and probe the scoring, size the run (units, gate, expansions, workers), then start it via create_evolve_run. - Two search algorithms: PUCT (flat-PUCT tree ranking) and OpenEvolve (MAP-Elites islands with ring migration), sharing the same design flow and scoring modes. - Four scoring modes: dataset_metric, test_gate, custom_script, and llm_judge, chosen by what the task actually is, with a server-side discrimination probe that verifies the scoring can rank candidates. - Use Case: A researcher wants a better cache eviction policy. The Skill seeds a working LRU, writes an evaluator over generated workloads, sizes a 16-expansion run, and launches a search whose candidates swap in ARC, LIRS, and TinyLFU variants, climbing from 0.22 to 0.94. ## Quick Start Ask the assistant to run /evolve-design to iteratively improve your script, prompt, or protocol against a measurable target, choosing the PUCT or OpenEvolve algorithm.

Frequently Asked Questions about evolve-design

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

FAQPage Schema
How do I iteratively improve a program or prompt with evolutionary search?▼

Define a measurable scoring criterion, write a simple working seed candidate, build an evaluator that scores it, then launch a run with create_evolve_run. The search rewrites the candidate dozens of times and keeps versions that score higher on held-out gate shards.

What is the difference between PUCT and OpenEvolve algorithms?▼

PUCT ranks candidates by a PUCT score over a flat tree, while OpenEvolve uses MAP-Elites islands with ring migration and diversity-based cells. Both share the same four-step design flow and four scoring modes; only candidate ranking and selection differ.

Which scoring mode should I use for an evolution run?▼

Use dataset_metric when cases have known answers and a metric to optimize, test_gate when correctness is pinned by tests, custom_script for simulations or heuristics with no natural table, and llm_judge only when quality requires a model's reading, such as prose.

Why does an evolution run get refused by the discrimination probe?▼

The probe scores a deliberately broken candidate alongside the seed; refusal means the evaluator cannot tell them apart. Fix it by adding harder cases, making the rubric more mechanical, or weakening an overly strong starting point, then call create_evolve_run again.

When should I not use evolutionary search for optimization?▼

Skip it for a single fix, a refactor, or questions about existing code, where one direct edit suffices. It also fails when no measurable criterion can separate a good candidate from a bad one, since the search has no signal to climb.

How many expansions and workers does an evolution run need?▼

Expansions must be at least four times the worker count or the tree stays flat. Use 4-6 for a known defect, 12-20 for swapping approaches or restructuring, and 20 or more when writing something from scratch.