harness:deploy
SkillCloud & infraUse when the user is done evolving and wants to finalize, clean up, tag the result, or push the optimized agent.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the harness:deploy skill
What this skill tells your AI
The instructions your AI receives, as published by raphaelchristi/harness-evolver in skills/deploy/SKILL.md and read by ahel’s review.
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.
What To Do
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")}"
1. Show Results
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
2. Ask What To Do (interactive)
{
"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)"}
]
}]
}
3. Execute
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.
4. Report
- What was done
- LangSmith experiment URL for the best result
- Suggest reviewing the changes before deploying to production
Signals
- GitHub stars
- 50
- Forks
- 6
- Last commit
- Apr 2026
Advanced
- Catalog kind
- skill
- Gateway key
harness-deploy- Source
- github.com/raphaelchristi/harness-evolver
github.com/raphaelchristi/harness-evolver