dev:dry-run
Acerca de
La habilidad dev:dry-run realiza pruebas de humo en la canalización de evolución para verificar que las herramientas y complementos funcionen de extremo a extremo. Opera en dos modos (en línea/fuera de línea) dependiendo de la disponibilidad de LANGSMITH_API_KEY, verificando la sintaxis de las herramientas y la consistencia de argparse. Utilice esta habilidad cuando los desarrolladores necesiten probar canalizaciones o escuchen frases como "prueba en seco" o "prueba de humo".
Instalación rápida
Claude Code
Recomendadonpx skills add raphaelchristi/harness-evolver -a claude-code/plugin add https://github.com/raphaelchristi/harness-evolvergit clone https://github.com/raphaelchristi/harness-evolver.git ~/.claude/skills/dev:dry-runCopia y pega este comando en Claude Code para instalar esta habilidad
Documentación
/dev:dry-run
Smoke-test the evolve pipeline. Two modes depending on whether LANGSMITH_API_KEY is available.
Resolve Paths
TOOLS="${EVOLVER_TOOLS:-$([ -d "tools" ] && echo "tools" || echo "$HOME/.evolver/tools")}"
EVOLVER_PY="${EVOLVER_PY:-$([ -f "$HOME/.evolver/venv/bin/python" ] && echo "$HOME/.evolver/venv/bin/python" || echo "python3")}"
Check: Online or Offline?
if [ -n "$LANGSMITH_API_KEY" ]; then
echo "MODE: Online (LANGSMITH_API_KEY found)"
MODE="online"
else
echo "MODE: Offline (no LANGSMITH_API_KEY)"
MODE="offline"
fi
Offline Mode (no API key)
Validate tool syntax and argparse consistency:
echo "=== Tool Syntax Check ==="
for f in $TOOLS/*.py; do
python3 -c "import ast; ast.parse(open('$f').read())" 2>&1
if [ $? -eq 0 ]; then echo "OK: $(basename $f)"; else echo "FAIL: $(basename $f)"; fi
done
echo ""
echo "=== Argparse Flags Check ==="
for f in $TOOLS/*.py; do
$EVOLVER_PY "$f" --help > /dev/null 2>&1
if [ $? -eq 0 ]; then echo "OK: $(basename $f) --help"; else echo "FAIL: $(basename $f) --help"; fi
done
echo ""
echo "=== Skill Cross-Reference Check ==="
# Check every tool referenced in evolve skill exists
for TOOL in $(grep -oh '\$TOOLS/[a-z_]*.py' skills/evolve/SKILL.md | sed 's/\$TOOLS\///' | sort -u); do
if [ -f "$TOOLS/$TOOL" ]; then
echo "OK: $TOOL referenced and exists"
else
echo "FAIL: $TOOL referenced in evolve skill but not found"
fi
done
Online Mode (with API key)
Run the full pipeline with a mock agent:
1. Create temp directory with mock agent
TMPDIR=$(mktemp -d)
cat > "$TMPDIR/agent.py" << 'PYEOF'
import json, sys
input_path = sys.argv[1] if len(sys.argv) > 1 else None
if input_path:
with open(input_path) as f:
data = json.load(f)
question = data.get("input", data.get("question", ""))
print(json.dumps({"output": f"Mock answer to: {question}"}))
else:
print(json.dumps({"output": "No input provided"}))
PYEOF
cat > "$TMPDIR/test_inputs.json" << 'JSONEOF'
[
{"input": "What is 2+2?"},
{"input": "Name a color"},
{"input": "What is Python?"}
]
JSONEOF
echo "Mock agent created at $TMPDIR"
2. Run setup
$EVOLVER_PY $TOOLS/setup.py \
--project-name "dry-run-test" \
--entry-point "python3 $TMPDIR/agent.py {input}" \
--framework "unknown" \
--goals "accuracy" \
--dataset-from-file "$TMPDIR/test_inputs.json" \
--output "$TMPDIR/.evolver.json"
3. Run eval
$EVOLVER_PY $TOOLS/run_eval.py \
--config "$TMPDIR/.evolver.json" \
--worktree-path "$TMPDIR" \
--experiment-prefix "dry-run-v001a"
4. Read results
$EVOLVER_PY $TOOLS/read_results.py \
--experiment "dry-run-v001a" \
--config "$TMPDIR/.evolver.json" \
--format markdown
5. Trace insights
$EVOLVER_PY $TOOLS/trace_insights.py \
--from-experiment "dry-run-v001a" \
--output "$TMPDIR/trace_insights.json"
6. Cleanup
rm -rf "$TMPDIR"
echo "Dry run complete. Temp files cleaned up."
Report
Dry Run Results ({MODE} mode):
Tool syntax: {N}/{N} passed
Argparse: {N}/{N} passed
Cross-refs: {N}/{N} passed
{If online: setup/eval/read/trace pipeline: PASS/FAIL}
Repositorio GitHub
Habilidades relacionadas
evaluating-llms-harness
PruebasEsta Skill de Claude ejecuta el benchmark lm-evaluation-harness para evaluar modelos de lenguaje en más de 60 tareas académicas estandarizadas como MMLU y GSM8K. Está diseñada para que los desarrolladores comparen la calidad de los modelos, realicen seguimiento del progreso del entrenamiento o reporten resultados académicos. La herramienta admite varios backends, incluidos modelos de HuggingFace y vLLM.
cloudflare-cron-triggers
PruebasEsta habilidad proporciona conocimiento integral para implementar Cron Triggers de Cloudflare y programar Workers mediante expresiones cron. Cubre la configuración de tareas periódicas, trabajos de mantenimiento y flujos de trabajo automatizados, manejando problemas comunes como expresiones cron inválidas y inconvenientes de zonas horarias. Los desarrolladores pueden utilizarla para configurar manejadores programados, probar activadores cron e integrar con Workflows y Green Compute.
webapp-testing
PruebasEsta habilidad de Claude proporciona un kit de herramientas basado en Playwright para probar aplicaciones web locales mediante scripts de Python. Permite verificación de frontend, depuración de interfaz de usuario, captura de pantallas y visualización de registros, mientras gestiona los ciclos de vida del servidor. Úsela para tareas de automatización de navegadores, pero ejecute los scripts directamente en lugar de leer su código fuente para evitar contaminación del contexto.
finishing-a-development-branch
PruebasEsta habilidad ayuda a los desarrolladores a completar el trabajo terminado verificando que las pruebas pasen y luego presentando opciones estructuradas de integración. Guía el flujo de trabajo para fusionar, crear PRs o limpiar ramas después de que se completa la implementación. Úsala cuando tu código esté listo y probado para finalizar sistemáticamente el proceso de desarrollo.
