# Harness Gepa > Inspecciona y audita genomas GEPA: carga y valida un genoma, renderiza el system prompt que compila, o clasifica los modos de fallo de una transcripción de ejecución. Fuente: https://skillsagentes.com/skills/ruvnet/ruflo/harness-gepa Markdown: https://skillsagentes.com/skills/ruvnet/ruflo/harness-gepa.md Repositorio: https://github.com/ruvnet/ruflo Autor: ruvnet Licencia: MIT Actualizado: hace 4 días Coste de contexto: 116 tok instalada, 833 tok al activarse, 833 tok con todos los archivos del bundle Bundle: 1 archivo, 3 KB Permisos que pide: bash ## Instalación Un skill son archivos markdown: los mismos archivos valen para cualquier agente y lo único que cambia es el directorio de destino, es decir la bandera `--agent`. Añade `-g` para instalarlo en todos los proyectos de la máquina. ```bash # Claude Code npx -y skills add ruvnet/ruflo --skill harness-gepa --agent claude-code # Cursor npx -y skills add ruvnet/ruflo --skill harness-gepa --agent cursor # Codex npx -y skills add ruvnet/ruflo --skill harness-gepa --agent codex # Gemini CLI npx -y skills add ruvnet/ruflo --skill harness-gepa --agent gemini # Windsurf npx -y skills add ruvnet/ruflo --skill harness-gepa --agent windsurf # Cline npx -y skills add ruvnet/ruflo --skill harness-gepa --agent cline ``` ## Qué hace - --op genome: carga y valida un genoma (por defecto el cand-6 ya promovido). - --op render: muestra el system prompt real que compila un genoma. - --op validate: valida la estructura de un genoma y puede fallar con --alert-on-invalid. - --op analyze: clasifica los modos de fallo de una transcripción de ejecución. ## Cuándo usarla - Vas a adoptar una política evolucionada y quieres leer el system prompt real antes de conectarla a un harness. - Necesitas auditar una promoción de genoma o validarla como gate en CI. - Estás depurando una ejecución fallida y quieres clasificar sus modos de fallo. ## Cuándo no - Para ejecutar el bucle gepaOptimize en sí, que requiere un evaluador en proceso; usa harness-evolve en su lugar. ## Qué la activa - "Muestra el system prompt del genoma cand-6" - "Valida este archivo de genoma" ## Antes de instalar - Se degrada con normalidad si @metaharness/darwin no está instalado. - Necesita en el PATH: jq, node - runs shell commands ## Archivos - SKILL.md — 3 KB ## SKILL.md Reproducido tal cual desde ruvnet/ruflo bajo MIT. Esta sección es el documento original y está en inglés. 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 ```bash 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) ## Dónde encaja - Categoría: [Herramientas para desarrolladores](https://skillsagentes.com/categorias/herramientas-desarrollo.md) — Skills que cambian cómo tu agente escribe, revisa y despliega código. - Creador: [ruvnet](https://skillsagentes.com/creators/ruvnet.md) — 275 skills en el directorio - [Todas las skills](https://skillsagentes.com/skills.md) - [Ranking de instalaciones](https://skillsagentes.com/ranking.md) ## Otras skills del mismo repositorio - [Deepseek Reason](https://skillsagentes.com/skills/ruvnet/ruflo/deepseek-reason.md): Completion en modo razonamiento contra deepseek-reasoner (R1) de DeepSeek. Devuelve el chain-of-thought por separado de la respuesta final. Lee DEEPSEEK_API_KEY y degrada si falta o la API no responde. - [Deepseek Chat](https://skillsagentes.com/skills/ruvnet/ruflo/deepseek-chat.md): Completion de un solo turno contra el modelo deepseek-chat de DeepSeek vía /v1/chat/completions. Lee DEEPSEEK_API_KEY y degrada con status:degraded si falta o la API no responde. Para tareas sin razonamiento. - [Adr Index](https://skillsagentes.com/skills/ruvnet/ruflo/adr-index.md): Construye o reconstruye el índice de ADRs y su grafo de dependencias ejecutando scripts/import.mjs, en vez de cientos de llamadas MCP. - [Agntcy Status](https://skillsagentes.com/skills/ruvnet/ruflo/agntcy-status.md): Muestra el estado de la integración AGNTCY/SLIM/CASA: si los paquetes están instalados, qué transporte está activo y si el enforcement de CASA está habilitado. - [Security Scan](https://skillsagentes.com/skills/ruvnet/ruflo/security-scan.md): Ejecuta escaneos de seguridad completos sobre el código con las herramientas de seguridad de Ruflo, a profundidad quick, standard o deep. --- Skills Agentes · [Índice de páginas en markdown](https://skillsagentes.com/sitemap.md) · [Inicio](https://skillsagentes.com/index.md)