/harness-gepa
Inspect and audit GEPA genomes via the `@metaharness/darwin/gepa` library entry (darwin 0.8.0) — load/validate a genome (default: the shipped cand-6 promotion), render the system prompt a genome compiles to, or classify failure modes in a run transcript. The `gepaOptimize` loop
$ npx -y skills add ruvnet/ruflo --skill harness-gepa --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/harness-gepa
Context preview
The summary Claude sees to decide when to auto-load this skill.
Inspect and audit GEPA genomes via the `@metaharness/darwin/gepa` library entry (darwin 0.8.0) — load/validate a genome (default: the shipped cand-6 promotion), render the system prompt a genome compiles to, or classify failure modes in a run transcript. The `gepaOptimize` loop
SKILL.md
harness-gepa.SKILL.mdname: harness-gepa
description: Inspect and audit GEPA genomes via the `@metaharness/darwin/gepa` library entry (darwin 0.8.0) — load/validate a genome (default: the shipped cand-6 promotion), render the system prompt a genome compiles to, or classify failure modes in a run transcript. The `gepaOptimize` loop itself is library-only (bring your own evaluator) and not surfaced here — use `harness-evolve` for sandbox-scored evolution. Degrades gracefully when @metaharness/darwin is absent.
argument-hint: "--op genome|validate|render|analyze [--path <genome.json>] [--transcript <t.json>] [--alert-on-invalid]"
allowed-tools: Bash
Surfaces the GEPA (genetic-evolution prompt-adaptation) *library* exports from `@metaharness/darwin/gepa`. Unlike the other skills in this plugin there is no CLI binary behind this — the script dynamic-imports the library (local resolution first, versioned cache install as fallback) and calls the subprocess-safe subset.
When to use
- **Adopting an evolved policy**: `--op render` shows the actual system
prompt a genome compiles to — read THAT, not the raw JSON, before wiring a genome into a harness.
- **Auditing a promotion**: `--op genome` loads + validates the shipped
cand-6 genome (first holdout-confirmed cheap-tier promotion; provenance ships in the package) or any genome file you point at.
- **CI gate on genome edits**: `--op validate --alert-on-invalid` exits 1
on structural errors.
- **Debugging a bad run**: `--op analyze --transcript run.json` classifies
failure modes (GEPA's failure-class taxonomy) from a transcript array.
What is deliberately NOT here
`gepaOptimize` — the optimization loop takes an in-process `evaluate(candidate)` callback ("bring your own evaluator") that cannot cross a subprocess boundary. Two supported paths instead:
1. **Library consumers**: `import { gepaOptimize, loadCand6Genome } from '@metaharness/darwin/gepa'` 2. **Sandbox-scored evolution**: `harness-evolve` (darwin CLI `evolve`), which pairs GEPA with its own sandbox evaluators.
Algorithm
Implementation: [`scripts/gepa.mjs`](../../scripts/gepa.mjs).
1. `import('@metaharness/darwin/gepa')`; on MODULE_NOT_FOUND fall back to a one-time `npm install --prefix ~/.ruflo/darwin-cache-0.8.0` and import the cached `dist/gepa/index.js` (versioned dir → pin bumps invalidate). 2. Dispatch `--op`:
- `genome` → `loadGenome(fs, path)` or `loadCand6Genome()` + `validateGenome`
- `validate` → `validateGenome(rawJson)` (raw parse so broken files reach
the validator instead of throwing in the loader)
- `render` → `buildSystemFromGenome(genome, ext?, glob?)`
- `analyze` → `analyzeTranscript(entries)`
3. Emit one JSON object; exit 0 (or 1 under `--alert-on-invalid`, 2 on bad input).
Examples
node scripts/gepa.mjs --op genome # cand-6 + validation
node scripts/gepa.mjs --op render | jq -r .system # what does cand-6 SAY?
node scripts/gepa.mjs --op validate --path my-genome.json --alert-on-invalid
node scripts/gepa.mjs --op analyze --transcript run.json
Exit codes
- `0` — op completed (or degraded — darwin not installable)
- `1` — `--alert-on-invalid` and validation found errors
- `2` — config error (unknown op, missing/broken input file)
Read more
name: harness-gepa description: Inspect and audit GEPA genomes via the `@metaharness/darwin/gepa` library entry (darwin 0.8.0) — load/validate a genome (default: the shipped cand-6 promotion), render the system prompt a genome compiles to, or classify failure modes in a run transcript. The `gepaOptimize` loop itself is library-only (bring your own evaluator) and not surfaced here — use `harness-evolve` for sandbox-scored evolution. Degrades gracefully when @metaharness/darwin is absent. argument-hint: "--op genome|validate|render|analyze [--path <genome.json>] [--transcript <t.json>] [--alert-on-invalid]" allowed-tools: Bash
Surfaces the GEPA (genetic-evolution prompt-adaptation) *library* exports from `@metaharness/darwin/gepa`. Unlike the other skills in this plugin there is no CLI binary behind this — the script dynamic-imports the library (local resolution first, versioned cache install as fallback) and calls the subprocess-safe subset.
When to use
- **Adopting an evolved policy**: `--op render` shows the actual system
prompt a genome compiles to — read THAT, not the raw JSON, before wiring a genome into a harness.
- **Auditing a promotion**: `--op genome` loads + validates the shipped
cand-6 genome (first holdout-confirmed cheap-tier promotion; provenance ships in the package) or any genome file you point at.
- **CI gate on genome edits**: `--op validate --alert-on-invalid` exits 1
on structural errors.
- **Debugging a bad run**: `--op analyze --transcript run.json` classifies
failure modes (GEPA's failure-class taxonomy) from a transcript array.
What is deliberately NOT here
`gepaOptimize` — the optimization loop takes an in-process `evaluate(candidate)` callback ("bring your own evaluator") that cannot cross a subprocess boundary. Two supported paths instead:
1. **Library consumers**: `import { gepaOptimize, loadCand6Genome } from '@metaharness/darwin/gepa'` 2. **Sandbox-scored evolution**: `harness-evolve` (darwin CLI `evolve`), which pairs GEPA with its own sandbox evaluators.
Algorithm
Implementation: [`scripts/gepa.mjs`](../../scripts/gepa.mjs).
1. `import('@metaharness/darwin/gepa')`; on MODULE_NOT_FOUND fall back to a one-time `npm install --prefix ~/.ruflo/darwin-cache-0.8.0` and import the cached `dist/gepa/index.js` (versioned dir → pin bumps invalidate). 2. Dispatch `--op`:
- `genome` → `loadGenome(fs, path)` or `loadCand6Genome()` + `validateGenome`
- `validate` → `validateGenome(rawJson)` (raw parse so broken files reach
the validator instead of throwing in the loader)
- `render` → `buildSystemFromGenome(genome, ext?, glob?)`
- `analyze` → `analyzeTranscript(entries)`
3. Emit one JSON object; exit 0 (or 1 under `--alert-on-invalid`, 2 on bad input).
Examples
node scripts/gepa.mjs --op genome # cand-6 + validation node scripts/gepa.mjs --op render | jq -r .system # what does cand-6 SAY? node scripts/gepa.mjs --op validate --path my-genome.json --alert-on-invalid node scripts/gepa.mjs --op analyze --transcript run.json
Exit codes
- `0` — op completed (or degraded — darwin not installable)
- `1` — `--alert-on-invalid` and validation found errors
- `2` — config error (unknown op, missing/broken input file)
An agent meta-harness for Claude Code and Codex. Agent = Model + Harness. The model writes; the harness gives it tools, memory, loops, sandboxes, and controls so it can actually work.
Repo: ruvnet/ruflo
Other skills on claude-flow.
- /agentdb-advanced
Master advanced AgentDB features including QUIC synchronization, multi-database management, custom distance metrics, hybrid search, and distributed systems integration. Use when building distributed AI systems, multi-agent coordination, or advanced vector search applications.
Open skill - /agentdb-learning
Create and train AI learning plugins with AgentDB's 9 reinforcement learning algorithms. Includes Decision Transformer, Q-Learning, SARSA, Actor-Critic, and more. Use when building self-learning agents, implementing RL, or optimizing agent behavior through experience.
Open skill - /agentdb-memory-patterns
Implement persistent memory patterns for AI agents using AgentDB. Includes session memory, long-term storage, pattern learning, and context management. Use when building stateful agents, chat systems, or intelligent assistants.
Open skill - /agentdb-optimization
Optimize AgentDB performance with quantization (4-32x memory reduction), HNSW indexing (150x faster search), caching, and batch operations. Use when optimizing memory usage, improving search speed, or scaling to millions of vectors.
Open skill - /agentdb-vector-search
Implement semantic vector search with AgentDB for intelligent document retrieval, similarity matching, and context-aware querying. Use when building RAG systems, semantic search engines, or intelligent knowledge bases.
Open skill - /agentic-jujutsu
Quantum-resistant, self-learning version control for AI agents with ReasoningBank intelligence and multi-agent coordination
Open skill

