Que fait ce-pickup ?
Extrait les documents ce-handoff/v1 des sessions Hermes passées en utilisant un modèle local. Zéro coût de token frontier. La sortie est au format Markdown ce-handoff/v1 standard, donc /ce-handoff resume <chemin> fonctionne immédiatement.
Utilisez ceci au lieu d'exécuter /ce-handoff sur une session froide qui brûlerait votre quota d'abonnement juste pour rattraper le retard.
Quand l'utiliser
- L'utilisateur souhaite reprendre une session laissée inachevée sans dépenser de tokens frontier pour la relire
- Vous avez besoin d'un handoff d'une ou plusieurs sessions passées mais la fenêtre de contexte est déjà chargée
- L'utilisateur demande un "pickup" ou "catch-up" pour une ancienne session
- Exécuter
/ce-handoffsur une grande session froide serait coûteux
Démarrage rapide
bash ~/.hermes/scripts/ce-pickup.sh ID_SESSION[,ID_SESSION,...]
La sortie est écrite par défaut dans /tmp/compound-engineering-$(id -u)/ce-pickup/.
Reprenez ensuite depuis n'importe quel fichier de sortie :
/ce-handoff resume /tmp/compound-engineering-<uid>/ce-pickup/<slug>.md
Arguments
- Arg 1 (obligatoire) : identifiants de session séparés par des virgules (depuis
session_searchou Hermes browse) - Arg 2 (facultatif) : nom du modèle Ollama — défaut
hf.co/ornith-ai/Ornith-1.5-35B-A3B-GGUF:Q5_K_M - Arg 3 (facultatif) : répertoire de sortie personnalisé
Surcharges d'environnement (pour les tests et les hôtes alternatifs) : CE_PICKUP_DB (défaut ~/.hermes/state.db), CE_PICKUP_OLLAMA_URL (défaut http://localhost:11434/api/chat), CE_PICKUP_MAX_CHARS (défaut 24000).
Routage du modèle
Par défaut : Ornith-1.5-35B-A3B-GGUF:Q5_K_M — qualité d'extraction vérifiée, s'exécute localement.
Si Ornith n'est pas chargé, tout modèle Ollama local capable fonctionne. N'utilisez PAS un modèle frontier (cela irait à l'encontre du but).
Vérifiez ce qui est disponible : ollama list
Fonctionnement
- Lit
~/.hermes/state.dbviasqlite3— pas de Python, pas de dialogues TCC - Extrait les messages
user+assistantordonnés par horodatage - Tronque la transcription à 24 000 caractères (~6k tokens) — suffisant pour une extraction significative
- Appelle l'API
/api/chatd'Ollama viacurlavec une invite d'extraction structurée - Écrit le frontmatter
ce-handoff/v1+ le corps du modèle dans le répertoire de sortie - Le nom de fichier est un slug du titre de la session ; suffixe numérique en cas de collision
Format de sortie
Chaque fichier de sortie est un ce-handoff/v1 valide avec :
artifact_contract: "ce-handoff/v1"dans le frontmattersession_id,cwd,branch,repositorylorsque disponibles- Extraction couvrant : objectif, travail accompli, état actuel, décisions/contraintes, blocages, approches échouées, références, prochaines étapes
Watchdog de plafond contextuel (compagnon)
scripts/context-ceiling-watchdog.sh est un moniteur déterministe, sans agent, pour le contexte de session en direct. Il estime le contexte actuel de chaque session en direct (contenu du message active=1 ÷ 4 caractères/token — n'utilisez jamais sessions.input_tokens, qui est un volume de facturation cumulatif incluant les relectures de contexte) et applique :
>= 50kRAPPEL — message d'une ligne, se répète toutes les heures>= 70kALERTE — avertissement de point de contrôle, se répète toutes les 30 min>= 80kEXTRACTION — exécute ce-pickup localement et rapporte le chemin ce-handoff/v1 ; après extraction, ne ré-alerte que si la session grimpe d'environ 10k supplémentaires (CRITIQUE)
Il est silencieux (stdout vide) sauf si un seuil est déclenché, donc il s'intègre directement dans un cron sans agent avec détection de changement. L'état réside dans ~/.cache/context-ceiling-watchdog/ (TSV plat — pas de mémoire LLM, pas de continuité récursive). Il n'écrit jamais dans la configuration Hermes ou l'état d'exécution ; state.db est ouvert avec sqlite3 -readonly.
Testez-le sans modèle réel : bash scripts/mock-ollama.sh 21143 & puis bash scripts/test-watchdog.sh (DB de fixture + seuils adaptés, 20 vérifications).
Pièges
Dialogues TCC depuis Python (macOS Sequoia+) : Exécuter Python comme sous-processus d'une application avec des droits étendus peut déclencher des dialogues TCC pour iCloud Drive ou Documents — même en lisant uniquement ~/.hermes/state.db. Le script shell utilise uniquement sqlite3 + curl + jq + awk et NE déclenche PAS TCC. N'utilisez jamais d'implémentation Python de ce workflow sauf si l'utilisateur accepte explicitement les dialogues TCC.
Troncature de la transcription : 24k caractères couvre la plupart des sessions. Les sessions très longues (200+ messages avec des sorties d'outils volumineuses) sont tronquées en fin de fichier. Si le handoff semble léger, divisez en requêtes plus ciblées.
Modèles de raisonnement + num_predict : num_predict d'Ollama limite le total des tokens générés Y COMPRIS message.thinking. Un modèle de raisonnement (Ornith en est un) peut brûler tout le budget dans le canal de raisonnement et renvoyer un message.content vide ou tronqué — que le script lit exclusivement. Symptôme : "réponse vide d'Ollama" ou un handoff qui s'arrête au milieu d'une phrase, ressemblant à un problème de qualité du modèle alors que c'est un bogue de payload. Le script envoie think:false (avec un retour sans le drapeau pour les modèles qui le rejettent). Note de Wesley : ce drapeau est correct UNIQUEMENT pour ce travail d'extraction mécanique — le raisonnement d'Ornith est un atout dans l'ingénierie agentique, et une extraction ne dit rien sur la capacité agentique. Ne généralisez pas une mauvaise extraction en verdict sur le modèle.
Ollama doit être en cours d'exécution : Vérifiez avec ollama list avant d'invoquer.
La sortie est dans /tmp : Le système d'exploitation peut la récupérer au redémarrage. Copiez vers un chemin stable si vous reprenez après un redémarrage.
Script
L'implémentation canonique est scripts/ce-pickup.sh dans ce skill — appelez-la par son chemin de skill. Une copie côté hôte existait historiquement dans ~/.hermes/scripts/ce-pickup.sh (documentée comme un lien symbolique) ; sur les machines où cette copie existe mais N'EST PAS un lien symbolique, elle est obsolète — faites confiance au répertoire du skill.
Voir aussi : le skill ce-handoff pour le workflow de reprise une fois le document de handoff créé.