Receber por email
← Voltar para o catálogo

harness:deploy

Use when the user is done evolving and wants to finalize, clean up, tag the result, or push the optimized agent.

38estrelas
Atualizado há 6 meses

Ver no GitHub ↗ Licença: MIT

Como adicionar

/plugin marketplace add raphaelchristi/harness-evolver

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/harness-deploy/svg)](https://www.skillteca.com.br/skills/harness-deploy)

Skills relacionadas

Ver todas de DevOps e Infra →

Alerta por categoria

Receba novas skills de DevOps e Infra toda segunda

1 email curto, só com as skills novas de DevOps e Infra. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

/harness:deploy

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
Compartilhar X LinkedIn