dev-dry-run
Use when the user wants to smoke-test the evolve pipeline, test tools, or verify the plugin works end-to-end. Also use when the…
Use when the user is done evolving and wants to finalize, clean up, tag the result, or push the optimized agent.
Claude Code
$ npx -y skills add raphaelchristi/harness-evolver --skill deploy --agent claude-code
Codex
$ npx skills add raphaelchristi/harness-evolver --skill deploy -a codex -y
Cursor
$ npx skills add raphaelchristi/harness-evolver --skill deploy -a cursor -y
Gemini CLI
$ npx skills add raphaelchristi/harness-evolver --skill deploy -a gemini-cli -y
GitHub Copilot
$ npx skills add raphaelchristi/harness-evolver --skill deploy -a github-copilot -y
OpenCode
$ npx skills add raphaelchristi/harness-evolver --skill deploy -a opencode -y
Windsurf
$ npx skills add raphaelchristi/harness-evolver --skill deploy -a windsurf -y
name: harness:deploy description: "Use when the user is done evolving and wants to finalize, clean up, tag the result, or push the optimized agent." allowed-tools: [Read, Write, Bash, Glob, AskUserQuestion]
Finalize the evolution results. In v3, the best code is already in the main branch (auto-merged during evolve). Deploy is about cleanup, tagging, and pushing.
TOOLS="${EVOLVER_TOOLS:-$([ -d ".evolver/tools" ] && echo ".evolver/tools" || echo "$HOME/.evolver/tools")}"
EVOLVER_PY="${EVOLVER_PY:-$([ -f "$HOME/.evolver/venv/bin/python" ] && echo "$HOME/.evolver/venv/bin/python" || echo "python3")}"python3 -c "
import json
c = json.load(open('.evolver.json'))
baseline = c['history'][0]['score'] if c['history'] else 0
best = c['best_score']
improvement = best - baseline
print(f'Baseline: {baseline:.3f}')
print(f'Best: {best:.3f} (+{improvement:.3f}, {improvement/max(baseline,0.001)*100:.0f}% improvement)')
print(f'Iterations: {c[\"iterations\"]}')
print(f'Experiment: {c[\"best_experiment\"]}')
"Show git diff from before evolution started:
git log --oneline --since="$(python3 -c "import json; print(json.load(open('.evolver.json'))['created_at'][:10])")" | head -20{
"questions": [{
"question": "Evolution complete. What would you like to do?",
"header": "Deploy",
"multiSelect": false,
"options": [
{"label": "Tag and push", "description": "Create a git tag with the score and push to remote"},
{"label": "Just review", "description": "Show the full diff of all changes made during evolution"},
{"label": "Clean up only", "description": "Remove temporary files (trace_insights.json, etc.) but don't push"},
{"label": "Promote learnings", "description": "Add proven evolution insights to CLAUDE.md (permanent knowledge)"}
]
}]
}**If "Tag and push"**:
VERSION=$(python3 -c "import json; c=json.load(open('.evolver.json')); print(f'evolver-v{c[\"iterations\"]}')")
SCORE=$(python3 -c "import json; print(f'{json.load(open(\".evolver.json\"))[\"best_score\"]:.3f}')")
git tag -a "$VERSION" -m "Evolver: score $SCORE"
git push origin main --tags**If "Just review"**:
git diff HEAD~{iterations} HEAD**If "Clean up only"**:
rm -f trace_insights.json best_results.json comparison.json production_seed.md production_seed.json
**If "Promote learnings"**:
$EVOLVER_PY $TOOLS/promote_learnings.py --memory evolution_memory.md --target CLAUDE.md --threshold 5 --dry-run
Show the dry-run output. If the user approves, run without `--dry-run`.
Point at any LLM agent codebase. Harness Evolver will autonomously improve it — prompts, routing, tools, architecture — using multi-agent evolution with LangSmith as the evaluation backend.
Use when the user wants to smoke-test the evolve pipeline, test tools, or verify the plugin works end-to-end. Also use when the…
Use when the user wants to release a new version, publish to npm, create a GitHub release, bump version, or tag a release. Also…
Use when the user wants to validate the plugin, check integrity, verify cross-references, or before a release. Also use when the…
Use when the user wants to verify that the evolved agent's score is stable and reliable. Runs evaluation multiple times and…
Use when the user wants to run the optimization loop, improve agent performance, evolve the agent, or iterate on quality.…
Use when the user wants to check dataset quality, diagnose eval issues, or before running evolve. Checks size, difficulty…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.