truelove-dreamer/ask-human-to-save-tokens

Quand une tâche ferait brûler beaucoup de tokens à un modèle alors qu'un humain peut la résoudre en quelques secondes sans effort, posez-la à l'humain pour économiser des tokens et du temps. Idéal pour les situations nécessitant des devinettes répétées, des essais-erreurs multiples, des recherches vastes ou des informations que seul l'utilisateur connaît.

Qu'est-ce que ask-human-to-save-tokens ?

Cette compétence (skill) est conçue pour les agents IA et les outils de développement, afin d'optimiser l'utilisation des tokens en déléguant à l'humain les sous-tâches simples mais coûteuses en ressources. L'idée centrale est de poser une question à l'humain uniquement lorsque le modèle brûlerait beaucoup de tokens (lecture massive de données, essais-erreurs multiples, recherche web étendue) et que l'humain peut répondre en une phrase, sans préparation ni recherche. La compétence détaille une "porte de décision" à vérifier avant chaque question, des cas typiques où il est approprié de demander, et des cas où il ne faut pas poser la question. Elle spécifie aussi un format de question optimisé pour minimiser la charge cognitive de l'humain (options limitées, recommandation marquée, option de repli) et des règles de contexte (question en session interactive versus arrière-plan de workflow). L'objectif est d'éviter les interruptions inutiles tout en réduisant drastiquement la consommation de tokens, en particulier dans des environnements comme Claude Code, Cursor ou Codex où les tokens sont une ressource critique.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/truelove-dreamer/ask-human-to-save-tokens/tree/main/skills/ask-human-to-save-tokens

Installed? Explore more Productivité et collaboration skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Confier à l'humain ce qui coûte cher en tokens au modèle mais lui est facile

Principe en une phrase

Avant de brûler des tokens, demandez-vous : si je fais ça tout seul, cela va-t-il encore coûter beaucoup de tokens ? Si oui — l'humain peut-il le faire sans effort (quelques secondes, aucune préparation, pas besoin de chercher) ? Ne posez la question que si les deux réponses sont "oui" ; sinon, faites-le vous-même.

Porte de décision (à vérifier une par une avant de poser la question)

  1. Condition A · Côté modèle : coûteux : Si je continue sans poser la question, je vais devoir — lire beaucoup de texte/d'images, faire des essais-erreurs multiples, lancer une recherche web étendue, générer de longs contenus alternatifs, ou deviner une direction (et me tromper me fera tout recommencer). Ne comptez que ce qui reste à dépenser à partir de maintenant, pas ce qui a déjà été dépensé.
  2. Condition B · Côté humain : sans effort : L'humain peut répondre en une phrase — répondre par oui/non, choisir parmi ≤ 3 options, coller un contenu connu, jeter un œil à l'écran/fichier/résultat et donner son avis. Aucune réflexion, recherche, outil ou action en plusieurs étapes de sa part.
  3. Contexte le permet : Dialogue interactif (l'utilisateur attend) → on peut demander ; tours en arrière-plan / sous-agent / pause impossible → ne pas bloquer (voir "Règles de contexte").
  4. Fusionner les questions : Regroupez toutes les questions qui satisfont les conditions en un seul message avant de demander, ne dérangez pas l'humain une par une.

Quand demander (cas typiques de A ∩ B)

  1. Alignement sur l'intention/objectif : La tâche est floue, il existe plusieurs interprétations valables, et choisir la mauvaise direction implique une grosse reprise → listez vos interprétations et demandez "Laquelle est la plus proche ?".
  2. Informations que seul l'utilisateur possède : Tel fichier existe-t-il/où se trouve-t-il, état réel avant/après une opération, contenu du presse-papiers/compte/environnement, signification d'un code interne ou d'un terme propriétaire — rechercher ou deviner coûte cher et est probablement faux.
  3. Faits visuels/interface : Besoin de connaître l'apparence réelle de l'écran, d'une popup, d'un rendu — seul l'utilisateur peut fournir l'info (ne demandez pas si le modèle lit déjà les images à faible coût).
  4. Connexion, identifiants, CAPTCHA : Actions que le modèle ne peut pas faire seul, que l'utilisateur fait sans effort.
  5. Choix esthétiques : Style d'interface, ton du texte, dénomination, choix entre quelques options — l'utilisateur a généralement une préférence, et une longue analyse comparative du modèle coûte cher.
  6. Indications sur des solutions connues : Une bibliothèque/API/piège que l'utilisateur connaît déjà par expérience ; chercher sur le web ou lire la documentation coûterait beaucoup de tokens, l'utilisateur donne la réponse en une phrase.
  7. Vérification finale avec "un coup d'œil humain suffit" (rendu, ton, intuition de structure) → faites valider par l'utilisateur plutôt que de monter une automatisation coûteuse.

Quand ne PAS demander (même si une seule condition est remplie)

  • Seulement A : L'humain aussi doit fournir un effort/rechercher (par exemple "lis ces articles en détail et compare-les") → le modèle le fait lui-même.
  • Seulement B : Le modèle le fait presque gratuitement (copier du texte connu, formater mécaniquement) → faites-le vous-même.
  • Les deux sont peu coûteux : Encore moins de raison de déranger.
  • Coûts irrécupérables : Ce qui a déjà été dépensé ne se rattrape pas ; ne demandez pas juste parce que "j'ai déjà cherché beaucoup".
  • Vérification possible à faible coût dans le contexte actuel : grep possible, petits fichiers lisibles, problème reproductible localement.
  • Règles imposant que le modèle termine seul / contenu confidentiel.
  • L'utilisateur a clairement dit "arrête de me demander" ou se trouve en mode sans dérangement / batch.

Format standard des questions (minimiser le coût d'attention de l'humain)

  1. Utilisez un outil de question pour fusionner toutes les questions en un seul appel (chaque question avec un ID unique).
  2. Chaque question ≤ 3 options, la première étant votre recommandation marquée "(recommandé)".
  3. L'énoncé tient en une phrase : "Pourquoi je demande + ce que je veux", pas de long contexte.
  4. La description de chaque option ne dépasse pas une phrase.
  5. Ajoutez une phrase de repli : "Si vous n'êtes pas sûr, répondez 'continue', je suivrai la valeur par défaut" — réduisez le coût de réponse au minimum.

Règles de contexte

  • Session interactive (l'utilisateur attend) : Dès que les critères sont satisfaits, posez la question immédiatement, le plus tôt possible — idéalement avant le début de la tâche ou avant toute action lourde.
  • Tours en arrière-plan / sous-agents / workers de workflow : N'attendez pas, ne bloquez pas. Les critères restent valides, mais écrivez "question + résumé du contexte" dans le résultat du tour en cours, et attendez la réponse de l'humain au tour suivant pour continuer.
  • Si la même question apparaît à plusieurs reprises dans des tours en arrière-plan, ne l'écrivez qu'une fois, avec la mention "déjà demandée, en attente de réponse".
  • Si les critères sont satisfaits pour un sous-agent : rapportez à l'agent parent, qui décide s'il pose la question à l'humain, pour éviter les perturbations redondantes entre les couches.

Liste de vérification (avant chaque interruption potentielle)

  • Si je ne demande pas et continue seul, cela va-t-il visiblement plus brûler de tokens ? (comptez le futur, pas le passé)
  • L'humain peut-il vraiment répondre en une phrase, sans préparation ?
  • La question posée maintenant va-t-elle significativement déranger (interruptions fréquentes / l'utilisateur est occupé) ? Si oui, fusionnez ou reportez.
  • Cette question n'aurait-elle pas dû être posée au début de la tâche ? Est-il encore temps de changer de direction ?
  • Toutes les questions fusionnables sont-elles bien regroupées ? Toutes les options sont-elles fournies ?

Tout est vérifié → demandez ; sinon → avancez seul, et placez la question à la fin de la sortie.

Skills associés