doc-to-skill
Transforme une source documentaire (README, doc, PDF, DOCX, page web, dépôt) en un brouillon de SKILL.md prêt à relire OU en fiche de connaissance, avec checklist de frontmatter et détection de doublo
Files1
View on GitHubSKILL.mdcowork-plugins/tk-knowledge/skills/doc-to-skill/SKILL.md
GitHubdoc-to-skill — Source documentaire → skill (ou fiche), proposé et dédupliqué
Capitalise une doc, un PDF ou un dépôt en compétence réutilisable : ingérer, extraire l'intention,
rédiger un brouillon de SKILL.md (ou une fiche), vérifier qu'il n'existe pas déjà, proposer.
La création et l'installation restent un acte humain (R53 ; R26 : anti-doublon — définitions dans
${CLAUDE_PLUGIN_ROOT}/references/regles.md).
Pipeline
- Ingestion selon la source :
- PDF → skill
pdf(extraction texte) ; DOCX → skilldocx; XLSX → skillxlsx. - Page web / dépôt → WebFetch (README brut via
raw.githubusercontent.comsi volumineux) ; gros contenu lu par tranches. - Contenu déjà dans le vault → lecture directe des notes voisines pour situer l'existant.
- PDF → skill
- Extraction d'intention : de quoi parle la source ? quel besoin récurrent couvre-t-elle ? quels déclencheurs naturels ? entrées/sorties ? garde-fous ? Si la réponse est « c'est du contenu, pas une capacité » → fiche, pas skill.
- Brouillon :
- Skill →
SKILL.mdconforme à la checklist ci-dessous ; corps = workflow, format de sortie, garde-fous, un exemple. - Fiche de connaissance → format de fiche du domaine concerné (frontmatter du vault).
- Skill →
- Détection de doublon (R26) : confronter
nameet intention aux skills installés (plugins,skills/) et aux notes du vault. Équivalent trouvé → proposer une extension plutôt qu'un doublon ; recouvrement partiel → le signaler. - Proposition : brouillon + note (source, intention, doublons, recommandation : créer / étendre /
abandonner, où installer). L'humain valide ;
skill-creatorfinalise et évalue si besoin.
Checklist frontmatter du brouillon produit
À vérifier avant de livrer — un brouillon qui échoue ici n'est pas livrable :
-
name: kebab-case, ≤ 64 caractères, identique au nom du dossier. -
description: ≤ 1024 caractères, 3e personne, QUOI + QUAND (déclencheurs entre guillemets) + « Ne pas utiliser pour … → skill-existant » ; aucun chevron<>. - Clés autorisées uniquement :
name,description,license,allowed-tools,metadata,compatibility(+disable-model-invocation: truesi usage manuel).version,author,status,langues→ sousmetadata:. - Ne citer que des skills qui existent réellement chez l'utilisateur.
- Corps < 500 lignes ; tableaux et référentiels →
references/; helpers →scripts/. - Aucun chemin personnel, IP, ni nom de conteneur privé (R37) si destiné à un dépôt public.
-
## Changelogdaté en fin de fichier. - Validation :
python3 …/skill-creator/scripts/quick_validate.py <dossier>→ « Skill is valid! ».
Exemple entrée → sortie
Entrée : README d'un outil en ligne de commande srtfix (dépôt MIT) qui décale et convertit des
sous-titres.
Étape 2 : intention = « réparer le timing/format de sous-titres » ; déclencheurs « décale mes
sous-titres », « convertir srt en vtt » ; entrée = fichier, sortie = fichier ; garde-fou = ne pas
écraser l'original.
Étape 4 : subtitle-fix existe déjà dans ce plugin et couvre 90 % → recommandation : étendre
(ajouter la gestion .ass si le README l'apporte), pas de nouveau skill.
Sortie : note de proposition — source (URL + licence MIT, reprise de code possible), intention,
doublon détecté (subtitle-fix), recommandation « étendre », et le diff proposé pour subtitle-fix
en attente de GO. Aucun fichier installé.
Garde-fous
- Proposition d'abord : ne crée ni n'installe jamais un skill seul (R53).
- Anti-duplication stricte (étape 4, R26).
- Source et licence citées ; jamais d'import de code copyleft (AGPL) dans un dépôt public — l'inspiration de design reste permise.
- Frontière contenu vs capacité : du contenu de domaine devient une fiche, pas un skill.
Changelog
- 2026-09-07 — 1.1 : ingestion via les skills
pdf/docx/xlsx(plus dedocument-ingestion),graphifysupprimé ; checklist frontmatter du brouillon ; exemple entrée → sortie ; frontmatter normalisé. - 2026-06 — 1.0 : version initiale.