| name | harvest |
| description | Lancer le harvester à la demande - relit tes sessions Claude Code récentes, repère les corrections / frustrations / répétitions, et produit une proposition d'amélioration de tes skills/agents (rapport local ou PR GitHub). Usage : /harvest [--no-pr | --digest-only]
|
Harvest - run du harvester à la demande
Déclenche le harvester manuellement. Même pipeline que le cron, lancé quand tu veux tester ou récolter. Configuration et prérequis : INSTALL.md.
Ce que ça fait
Lit les transcrits Claude Code modifiés depuis le dernier run (cursor) + MEMORY.md, fait juger les signaux (corrections / frustrations / répétitions) par Claude en mode headless, puis selon ton OUTPUT_MODE : écrit un rapport local dans runs/<date>.md, ou ouvre une PR GitHub sur ton vault (via un worktree isolé, sans jamais toucher ton arbre de travail).
Garde-fou : le juge propose des changements en clair, il ne réécrit jamais tes skills. Tu valides en revue.
Étapes
-
Lance le run depuis le dossier du skill (l'appel au juge prend ~1-2 min, donc en tâche de fond) :
bash harvest.sh > /tmp/harvest.log 2>&1; echo "EXIT=$?" >> /tmp/harvest.log
En tâche de fond, puis attends la fin et lis /tmp/harvest.log.
-
Restitue à l'utilisateur :
- Le chemin du rapport (
runs/<date>.md) en mode local, ou l'URL de la PR ouverte (ligne github.com/.../pull/N) en mode PR.
- Le tableau des signaux (cible / type / sévérité / confiance / pattern court), depuis
runs/<date>.md.
- Confirme que le cursor a avancé (ligne
cursor avance a ...).
-
Si 0 session ou aucun signal : pas de sortie, dis-le simplement (run à vide, normal).
Options (à passer en argument à harvest.sh)
--no-pr : force le mode local pour ce run (prévisualise sans ouvrir de PR).
--digest-only : sort juste les sessions vues depuis le cursor (aucun appel au juge, gratuit).
--signals-file F : injecte des signaux et saute le juge (test hors ligne, gratuit).
--date YYYY-MM-DD : force la date du run.
Si l'utilisateur dit "preview" / "sans PR" -> ajoute --no-pr. Si "qu'est-ce qu'il verrait" -> --digest-only.
Itérer le juge
Si un signal est raté ou inventé : édite le prompt du juge dans program.md (c'est le niveau d'amélioration piloté par l'humain), pas le code.
Notes
claude -p tourne sur ton auth Claude Code (pas une clé API facturée).
- Le compteur (
skills-signals.json) et les rapports (runs/) restent machine-local.
- En mode PR, merger la PR acte le rapport ; les
suggested_change restent à appliquer à la main (le juge suggère, il ne réécrit pas les prompts).
- Quand les propositions sont bonnes plusieurs runs de suite -> planifie le harvester en cron (voir
INSTALL.md).