cloudxy/book-plugin

Flux de travail complet de distillation de connaissances : distiller un livre / une longue vidéo / un podcast en un Skill exécutable (génération), dessiner un diagramme SVG conforme aux règles (sortie graphique), puis effectuer une vérification mot à mot par rapport à la source et une évaluation à quatre portes (validation). Ne livrer qu'après un feu vert complet. À utiliser lorsque l'utilisateur dit « décomposer un livre », « distiller un livre », « transformer ce livre en skill », « auditer après distillation », « distiller ce livre en compétences », « auditer les compétences distillées », ou pour exécuter une vérification de source et une mise en diagramme sur des artefacts cangjie existants. PAS pour un simple résumé de livre, une critique de lecture ou un jeu de rôle d'auteur.

Qu'est-ce que book-plugin ?

Ce skill orchestre un pipeline complet de distillation de connaissances, de la génération à la validation, pour transformer un livre, une vidéo longue ou un podcast en un agent Skill exécutable (compatible avec Claude Code, Cursor, Codex, etc.). Il se compose de cinq étapes principales : (1) distillation cangjie (analyse du livre, extraction parallèle, triple validation, tests de résistance), (2) génération optionnelle de diagrammes SVG selon des règles strictes (polices CJK, palette sémantique, lint), (3) pontage mot à mot entre les citations des fiches de capacité et le texte source original, (4) audit à quatre portes (vérification de couverture G-66, cohérence d'ancrage G-67, clôture de preuves G-68, intégrité des diagrammes SVG), et (5) compilation et livraison uniquement si toutes les portes sont vertes. En cas d'échec, le pipeline redirige vers l'étape de distillation appropriée pour correction ciblée. Le skill assure la traçabilité complète, l'intégrité des citations et la conformité aux règles, avec un coût zéro API (scripts locaux Python et Node.js).

Compatible avec✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/cloudxy/book-plugin/tree/HEAD/skills/book-workflow

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.

Aperçu

Depuis le README du skill

Titre

Documentation

book-workflow — Distillation → Diagramme → Audit → Feu vert / Retour en cuve

Conventions de chemins (à lire d'abord)

  • Racine du plugin (= racine du dépôt) = deux niveaux au-dessus du répertoire contenant ce SKILL.md (skills/book-workflow/ → ../../), notée $PLUGIN.
  • Espace de travail = racine du projet actuellement ouvert par l'utilisateur (cwd), notée $WS. Les artefacts de distillation (books/, .work/, tools/, .dsh/) sont tous placés dans $WS.
  • Les scripts de pontage/d'audit ne sont pas dans l'espace de travail : lors de l'appel, vous devez passer --ws $WS, sinon ils ne trouveront pas la racine de l'espace de travail.
  • Principe : auditer d'abord, compiler ensuite — la compilation de l'étape 5 ne s'applique qu'aux Bundles dont toutes les portes sont vertes.
cangjie distillation (étapes 0-4) → diagramme SVG (sur demande) → pontage (vérification mot à mot par rapport à la source) → audit à quatre portes → compile feu vert livraison
        ▲                                                        │
        └────────────────── retour en cuve (mappage par verdict) ◀── rouge ────────────┘

Étape 0 — Amorçage de l'espace de travail (une fois par espace de travail, idempotent)

python3 $PLUGIN/scripts/bootstrap.py $WS

Crée $WS/.venv (Python ≥3.10 + PyYAML + PyMuPDF), installe la suite de portes dsh ($WS/tools/ et $WS/.dsh/), et vérifie la présence de node (dépendance de svg-lint pour la porte graphique ; si manquant, la porte est jugée « non applicable »). Toutes les commandes ultérieures utiliseront $WS/.venv/bin/python (noté $PY ci-dessous).

Étape 1 — Distillation cangjie (côté génération)

Commencez par confirmer les entrées : texte du livre original (chemin PDF/EPUB/TXT/transcription — s'il n'y a pas de texte, arrêtez-vous et demandez à l'utilisateur, ne décomposez pas de mémoire), titre + auteur + année de publication, objectif d'utilisation (étude/consultation → single ; intégration quotidienne/combinaison entre livres → pack).

Ensuite, lisez complètement $PLUGIN/vendor/cangjie-skill/SKILL.md et exécutez-le strictement (cinq étapes RIA-TV++ : compréhension Adler du livre entier → extraction parallèle sur 5 voies → triple validation → porte de progression → fiche de capacité RIA++ → Zettelkasten → tests de résistance). Ce workflow exige :

  • Les artefacts se trouvent dans $WS/books/<slug>/ (contenant verified.md, candidates/, rejected/, .cangjie/capabilities/) ;
  • Arrêtez-vous après l'étape 4 (tests de résistance) et avant l'étape 5 (compilation et livraison), puis passez aux diagrammes et à l'audit de ce workflow ;
  • Conservez toutes les traces d'audit ; l'état de reprise après interruption (PIPELINE_STATE.md) est mis à jour à chaque étape.

Étape 1.5 — Diagramme (svg-diagram, sur demande)

Pour les fiches de capacité de type cadre/flux/calcul ou DIGEST nécessitant un diagramme, lisez d'abord $PLUGIN/vendor/svg-diagram/SKILL.md pour les règles avant de dessiner le SVG à la main (pile de polices CJK, cinq groupes de couleurs sémantiques, hauteur de boîte = taille de police × 3, espacement entre boîtes ≥ 25 px, lignes de connexion C/Q, faites-le correctement du premier coup). Emplacements :

ScénarioEmplacementMéthode de référence
Diagramme de fiche de capacité$WS/books/<slug>/.cangjie/capabilities/resources/<cap-slug>.svgÉcrire le nom de la ressource dans le corps de la fiche + déclaration resources: dans le Bundle de cette capacité
Diagramme DIGEST/OVERVIEW$WS/books/<slug>/assets/<nom>.svgChemin relatif ![Titre](assets/<nom>.svg)

Auto-vérification (les erreurs doivent être à zéro) :

node $PLUGIN/vendor/svg-diagram/tools/svg-lint/bin/svg-lint.mjs <diagramme.svg>

Étape 2 — Pontage (vérification mot à mot par rapport à la source)

$PY $PLUGIN/bridge/cangjie_to_dsh.py --book-dir $WS/books/<slug> --source <livre_original.txt|.md|.pdf> --task <slug> --ws $WS

Place le texte original dans $WS/.work/<task>/book_text.md (extraction automatique du PDF — l'objet d'ancrage de l'audit est toujours le texte original du livre), analyse les citations de la section R de chaque fiche de capacité, les compare caractère par caractère après suppression des espaces, crée un pool d'identifiants stables (CJ-NNN), génère les pools au format dsh et une copie d'audit des skills. Toute citation qui ne correspond pas ⇒ rc=1 carton rouge, retour à l'étape 1 pour corriger la couche R.

Étape 3 — Audit à quatre portes (verdict)

$PY $PLUGIN/bridge/run_audit.py --task <slug> --ws $WS

Exécute successivement : constructeur du dossier de preuves → couverture du pool G-66 → cohérence d'ancrage G-67 → clôture des preuves G-68 → porte graphique (intégrité des références SVG + conformité svg-lint). Le verdict est ajouté à $WS/.work/<task>/audit-verdict.md (chronologie de l'audit).

Étape 4 — Feu vert ou retour en cuve

VerdictAction
Tout vertFeu vert → $PY $PLUGIN/vendor/cangjie-skill/scripts/cangjie.py compile --bundle $WS/books/<slug>/.cangjie/capabilities --out <cible d'installation confirmée par l'utilisateur> --output auto
Rouge pontage source / Rouge G-67Retour à l'étape 2 de cangjie (correction des citations / ancres de date dans la couche R), relancer le pontage
Rouge G-66 (élément sélectionné non tombé dans la couche R)Retour à l'étape 1/1.5 de cangjie (ré-échantillonnage des candidats / révision des éliminations), relancer le pontage
Rouge G-68 (clôture/dérive)D'abord relancer l'entrée d'audit ; si toujours rouge, vérifier le mapping d'IDs des étapes 3/4
Rouge porte graphiqueCorriger le diagramme ou ajouter des références selon les règles, relancer l'entrée d'audit

Le retour en cuve est normal, pas un échec — corrigez de manière ciblée avec les éléments d'échec spécifiques fournis par la porte (quelle citation, quel ID, quel diagramme), ne refaites pas l'intégralité du volume.

Définitions des critères (qui vérifie quoi)

  • Retour à la source : une citation, après suppression des espaces, doit être une sous-chaîne caractère par caractère du texte original — empêche les « citations qui n'existent pas dans l'original ».
  • G-66 : les citations des capacités critical/high (marquées « cadre général » par le pontage) doivent se trouver dans la couche R d'une fiche — empêche les omissions silencieuses d'unités importantes.
  • G-67 : le couple « date × citation » d'une même ligne doit coexister dans une fenêtre de 400 caractères du texte original — empêche les ancres temporelles erronées.
  • G-68 : chaque ID de pool référencé par un skill a une clôture sha256 et le pool ne dérive pas — empêche les « références à un original introuvable / pool modifié sans reconstruction ».
  • Porte graphique : tout SVG référencé doit exister, tous les SVG doivent passer lint avec error=0 — empêche les liens brisés et les diagrammes défectueux.

Lignes rouges de qualité

  1. Pas de texte original, pas de distillation ; citations ≤ 150 caractères/paragraphe (anglais ≤ 100 mots).
  2. Les exercices synthétiques ne doivent pas se faire passer pour des cas du livre ; en A1, sans cas du livre original, indiquez-le honnêtement.
  3. Pas de compile, pas d'installation avant que l'audit ne soit entièrement vert.
  4. Les éléments éliminés (rejected/) conservent leur motif ; les lacunes importantes sont honnêtement enregistrées, pas de fausse déclaration de zéro omission.
  5. Le diagramme doit être cohérent avec le texte — si les données changent, le diagramme doit suivre ; un diagramme en contradiction avec le texte est pire que pas de diagramme du tout.
  6. La conformité des droits d'auteur est à la discrétion de l'utilisateur selon la licence du livre original ; ce workflow ne garantit que « les règles sont exécutables, les citations sont vérifiables ».

Positionnement écologique

  • cangjie-skill (inclus dans $PLUGIN/vendor/) : définition faisant autorité de la méthodologie et du processus de distillation.
  • dsh-distillation-director (idem) : implémentation faisant autorité des trois portes de verdict, scripts locaux sans coût API.
  • svg-diagram (idem) : règles de diagramme et lint.
  • Ce skill ne fait que l'orchestration et la clôture des verdicts ; les spécifications en amont sont celles des SKILL.md/README des trois vendors. En cas de conflit, la version du vendor prévaut, et les écarts sont enregistrés ici.

Skills associés