Extraction de compétences : de 3 500 candidates à 466 capacités
> Nous avons passé au crible 3 500 compétences candidates et en avons adopté 466. Une boucle systématique d'extraction et d'ingestion pour construire, à grande échelle, une bibliothèque de compétences d'agents IA cohérente.
Les chiffres de cet article reflètent le système au moment de la publication (janvier 2026). Consultez notre page équipe pour les chiffres actuels.
Le problème des 3 500 compétences
Quand nous avons commencé à construire un système d’orchestration d’agents, nous avons fait face à un défi intéressant : des milliers de compétences potentielles sont éparpillées dans tout l’écosystème IA. Dépôts GitHub, documentation d’éditeurs, projets communautaires, schémas internes — les compétences existent partout. Mais lesquelles comptent ? Lesquelles fonctionnent ? Et comment maintenir une bibliothèque de compétences cohérente que les agents peuvent réellement utiliser ?
Notre réponse : une boucle systématique d’extraction et d’ingestion.
Les chiffres aujourd’hui
À peine plus de trois mois après le lancement des Agent Skills par Anthropic le 16 octobre 2025, voici où nous en étions à la publication de cet article, le 27 janvier 2026 :
| Métrique | Nombre |
|---|---|
| Candidates identifiées | plus de 3 500 |
| Compétences adoptées | 466 |
| Compétences d’éditeurs | 373 |
| Compétences internes | 93 |
| Éditeurs actifs | plus de 25 |
| Tokens moyens par compétence | 2 834 |
| Outils référencés | 89 |
| Tags uniques | 635 |
Nous avons passé en revue plus de 3 500 compétences candidates. Nous en avons adopté 466. Cela représente un taux d’adoption de 13 % — et cette sélectivité est voulue.
Le système de paliers de connaissance
Toutes les compétences ne se valent pas. Nous les organisons en cinq couches de connaissance (K0-K4), chacune représentant une portée d’applicabilité différente :
K0 : Fondations (universelles)
Des compétences que chaque agent devrait posséder. Elles représentent des capacités de « bon penseur » qui fonctionnent partout.
foundations/
├── test-first-discipline # TDD: Red-Green-Refactor
├── evidence-based-completion # Verify before claiming done
├── systematic-debugging # Root cause methodology
├── structured-planning # Break work into tasks
└── context-budget-awareness # Manage token consumption
Les compétences K0 sont portables vers n’importe quel projet, domaine ou pile technologique. Elles encodent des schémas cognitifs universels.
K1 : Identités (discipline)
Des compétences de « bon ingénieur » ou de « bon chercheur » qui s’appliquent à travers les projets au sein d’une discipline.
identities/
├── research-workflows # Multi-source research
├── web-extraction-playbook # Content extraction
├── code-review # PR review patterns
└── cli-interface-standards # CLI design patterns
K2 : Domaines (expertise sur un sujet)
Des compétences de « bon expert base de données » ou de « bon ingénieur sécurité », portables au sein d’un domaine.
domains/
├── schema-migration-workflow # Safe migration patterns
├── rpc-validation-checklist # RPC health checks
├── auth-validation-checklist # JWT/OAuth patterns
└── secrets-audit-checklist # Credential scanning
K3 : Piles techniques (technologie)
Des compétences de « bon utilisateur Supabase » ou de « bon développeur Cloudflare » pour des piles technologiques spécifiques.
stacks/
├── maguyva-quickstart # Our semantic search patterns
├── cloudflare-deployment # Workers/Pages deployment
└── mcp-tool-best-practices # MCP tool selection
K4 : Projet (organisation)
Des compétences propres à notre organisation et à nos flux de travail.
project/
├── agent-creation-workflow # How we build agents
├── skill-authoring-workflow # How we write skills
├── mining-session-workflow # This very process
└── vendor-skill-evaluation # Evaluation rubrics
La boucle de minage
Phase 1 : découverte
Les compétences viennent de partout :
Dépôts d’éditeurs : AWS, Anthropic, Cloudflare, Supabase et des contributeurs communautaires publient des collections de compétences. Nous suivons plus de 25 racines d’éditeurs.
Projets communautaires : GitHub regorge de templates Claude Code, de schémas d’agents et de définitions de flux de travail.
Schémas internes : à mesure que notre équipe résout des problèmes, des schémas émergent. Ils sont formalisés en compétences.
Minage de documentation : la documentation technique contient souvent des compétences implicites — procédures, listes de vérification, arbres de décision.
La découverte est continue. Nous utilisons un backlog de compétences pour suivre les candidates avant évaluation formelle.
Phase 2 : évaluation
Chaque candidate passe par la même grille :
adoption_criteria:
- fills_real_gap: true # We lack this capability
- well_structured: true # Progressive disclosure
- actively_maintained: true # Commits in last 6 months
- portable: true # Not hyper-specific
- tested: true # Evidence of usage
Les cinq critères produit doivent tous être satisfaits. C’est pourquoi 87 % des candidates sont rejetées.
Ensuite, chaque candidate passe par une revue de confiance distincte. Nous ne traitons pas un dépôt officiel d’éditeur, un mainteneur communautaire bien connu et un dépôt GitHub aléatoire comme des sources de vérité équivalentes.
trust_review:
vendor_credibility:
- ownership_verified # Official vendor, known maintainer, or internal source
- maintenance_signal # Recent commits, issue response, release history
- adoption_signal # Evidence of real use, stars alone are not enough
- provenance_clear # We can trace where the skill came from
prompt_injection_scan:
- hidden_instruction_check # Buried "ignore previous instructions" patterns
- exfiltration_check # Prompts that try to leak files, secrets, or context
- authority_check # Claims of priority over system or developer rules
script_audit:
- inspect_scripts # Read shell/python/js helpers before adoption
- network_and_exec_review # curl|bash, remote downloads, subprocess execution
- file_and_secret_review # Env vars, credential access, broad file writes
- destructive_action_check # rm, reset, overwrite, or unsafe automation
Les éditeurs de confiance bénéficient d’une revue de provenance plus légère, mais pas d’un laissez-passer. Les sources non fiables ou inconnues subissent un audit manuel plus approfondi, et nous n’exécutons pas les scripts intégrés avant qu’ils n’aient été lus, délimités, et classés comme sûrs.
Analyse d’écart : avant d’adopter, nous cherchons dans notre registre :
uv run orkestra skills search "<capability>"
Si nous l’avons déjà, nous n’en avons pas besoin. Si nous avons quelque chose de proche, nous pourrions fusionner plutôt qu’adopter.
Notation de profondeur et de conformité aux standards : nous notons aussi à quel point une candidate exploite pleinement le modèle agent-compétence. Un simple SKILL.md isolé peut rester utile, mais des compétences plus profondes ont plus de valeur quand elles séparent instructions, références, scripts et actifs de la façon que agentskills.io encourage.
skill_depth:
- level_1: SKILL.md only # Single instruction file
- level_2: SKILL.md + strong description # Clear triggers and scope
- level_3: adds references/ # Load docs only when needed
- level_4: adds atomic scripts/ # Small, reviewable helpers
- level_5: adds assets/examples/templates # Full progressive disclosure
depth_signals:
- standards_adherence # Structure aligns with agentskills.io conventions
- reference_quality # Curated references, not giant context dumps
- script_atomicity # Focused helpers, not opaque monoliths
- tool_boundary_clarity # Clear limits on what the skill can execute
- community_signal # Stars/forks/users help, but only as a weak boost
Les étoiles GitHub peuvent légèrement rehausser un score de crédibilité, mais elles ne sauvent jamais une compétence superficielle ou dangereuse. Un dépôt très étoilé avec un seul SKILL.md vague et des scripts opaques note moins bien qu’un plus petit dépôt avec une description précise, des references/ soignées, et des utilitaires atomiques qui exploitent réellement toute la capacité du modèle de compétence.
Analyse structurelle : nous vérifions la qualité de la compétence :
wc -l vendor/<repo>/<skill>/SKILL.md # Size check
ls vendor/<repo>/<skill>/scripts/ # Supporting files
ls vendor/<repo>/<skill>/references/ # Bundled docs
Si une candidate inclut des scripts, cette revue devient plus stricte. Une bonne compétence n’est pas seulement utile ; elle doit être lisible, délimitée et sûre à confier à un agent. Ce seul filtre de sécurité disqualifie une part significative de candidates par ailleurs intéressantes.
Phase 3 : ingestion
Quand une compétence passe l’évaluation, elle entre dans le registre. Mais les compétences ne sont jamais adoptées sans modification. Elles sont adaptées à notre système.
Modifications lors de l’adoption :
- Normalisation des métadonnées : chaque compétence reçoit notre schéma de frontmatter
- Attribution du palier K : les compétences sont placées dans la couche de connaissance appropriée
- Enrichissement des tags : des tags sont ajoutés pour la découverte
- Déclaration des outils : les outils autorisés sont explicitement déclarés
- Alignement des sections : le contenu est restructuré pour correspondre à notre modèle
Un YAML de compétence typique après ingestion :
metadata:
identifier: vendor-skill-evaluation
name: vendor-skill-evaluation
description: Systematic evaluation of vendor skills for adoption.
type: workflow
layer: K4
semantic_folder: project
source: core
last_updated: '2026-01-17'
frontmatter:
tags:
- agents
- meta
- skill-adoption
- vendor
allowed_tools:
- Bash
- Read
- Write
- Edit
- Grep
- Glob
- Task
Phase 4 : attribution de portée
Les compétences sont attribuées à des portées — des catégories qui déterminent quels agents chargent quelles compétences :
scopes:
database:
primary_skills:
- domains/schema-migration-workflow
- domains/rpc-validation-checklist
- vendor/supabase/supabase-database
- vendor/supabase/supabase-auth
research:
primary_skills:
- identities/research-workflows
- identities/web-extraction-playbook
- identities/dataset-discovery-quickstart
Les agents déclarent leurs portées, et les compétences sont attribuées automatiquement :
# Agent definition
scopes: [database, research]
# Gets: all database skills + all research skills + universal skills
Phase 5 : matérialisation
Les compétences ne vivent pas en YAML en production. Elles sont rendues en fichiers SKILL.md que Claude Code peut charger :
uv run orkestra sync
Cette commande :
- Lit toutes les définitions YAML de compétences
- Les rend via des templates Jinja
- Écrit les fichiers SKILL.md dans
.claude/skills/ - Organise par palier K (foundations/, identities/, domains/, stacks/, project/)
La structure de sortie finale :
.claude/skills/
├── foundations/ # K0: Universal
├── identities/ # K1: Discipline
├── domains/ # K2: Subject
├── stacks/ # K3: Technology
├── project/ # K4: Organization
└── vendor/ # External skills
Le schéma des portées dormantes
L’un de nos schémas les plus puissants est celui des compétences « adoptées mais non chargées ». Nous appelons cela des portées dormantes.
Prenez les compétences de calcul scientifique du dépôt k-dense-scientific. Nous avons adopté plus de 120 compétences couvrant la bio-informatique, la chimie, l’informatique quantique et l’informatique clinique. Mais la plupart de nos agents n’ont pas besoin d’amarrage moléculaire ni d’analyse d’expression génique.
Au lieu de charger les 120 compétences dans chaque agent (ce qui gonflerait les fenêtres de contexte), nous :
- Adoptons les compétences avec une portée spécifique (par exemple,
bioinformatics) - Les gardons dormantes — enregistrées mais non chargées
- Les activons seulement quand un agent déclare cette portée
# In scopes.yaml - dormant scope
bioinformatics:
description: "Bioinformatics and genomics"
primary_skills: [] # Empty - skills exist but aren't loaded
# When an agent needs bioinformatics:
# Agent YAML
scopes: [research, bioinformatics] # Now loads bioinformatics skills
Ce schéma nous permet d’avoir 466 compétences dans le registre, tandis qu’un agent typique n’en charge que 40 à 60 pertinentes.
Types de compétences
Les compétences suivent trois schémas cognitifs :
Flux de travail
Des étapes procédurales ordonnées : « 1. Faire X, 2. Puis Y, 3. Enfin Z »
type: workflow
# Examples: schema-migration-workflow, mining-session-workflow
Discipline
Des garde-fous comportementaux : « Toujours X », « Jamais Y », « Préférer Z »
type: discipline
# Examples: test-first-discipline, evidence-based-completion
Liste de vérification
Des critères de vérification : « Confirmer X », « Vérifier Y », « Contrôler Z »
type: checklist
# Examples: auth-validation-checklist, secrets-audit-checklist
Portes de qualité
Chaque compétence doit passer une validation avant de partir en production :
validation:
file_exists: true # Skill file at declared path
frontmatter_valid: true # Frontmatter parses correctly
sections_complete: true # Expected sections present
tools_registered: true # Declared tools exist in registry
Les descriptions doivent compter de 50 à 400 caractères, avec des phrases de déclenchement (« À utiliser quand… », « Quand vous avez besoin de… ») pour que Claude Code sache quand les suggérer.
Nous validons en continu :
uv run orkestra validate --show-warnings
L’écosystème d’éditeurs
Nos 373 compétences d’éditeurs viennent de :
| Fournisseur | Compétences | Domaine |
|---|---|---|
| AWS Agent | 19 | Services cloud |
| Anthropic | 12 | Génération de documents |
| Cloudflare | 8 | Edge computing |
| Supabase | 5 | Base de données |
| k-dense | plus de 100 | Calcul scientifique |
| silvainfm | 4 | Data science |
| Java Developer Kit | plus de 45 | Spring/Java |
| Vercel | 1 | Automatisation navigateur |
Chaque racine d’éditeur est déclarée dans metadata.yaml :
vendor_roots:
- path: vendor/aws-agent-skills
provider: aws
- path: vendor/k-dense-scientific/scientific-skills
provider: k-dense
- path: vendor/supabase-skills
provider: supabase
Quand orkestra sync s’exécute, les compétences d’éditeurs sont liées par symlink dans .claude/skills/vendor/ avec leur espace de noms fournisseur.
Ce que nous avons appris
La sélectivité paie. Il est tentant d’adopter tout ce qui paraît utile. Mais chaque compétence coûte des tokens. Avec 2 834 tokens en moyenne par compétence, le gonflement fait mal vite. Notre taux d’adoption de 13 % garde les agents légers.
La structure permet la découverte. Le système de paliers K n’est pas qu’une question d’organisation — c’est une question de portabilité. Les compétences K0 sont réutilisables partout. Les compétences K4 sont intentionnellement propres au projet. Cette clarté aide les humains comme les agents à trouver ce dont ils ont besoin.
Les portées dormantes passent à l’échelle. Vous pouvez adopter des centaines de compétences sans toutes les charger. Les portées vous permettent de construire un registre exhaustif tout en gardant maniables les fenêtres de contexte de chaque agent.
La modification lors de l’adoption est essentielle. Les compétences brutes d’éditeurs correspondent rarement à votre système. Le processus d’ingestion — ajouter des métadonnées, attribuer des paliers, enrichir les tags — fait fonctionner les compétences externes en interne.
Le minage est continu. Le chiffre de 3 500 continue de croître. De nouveaux dépôts d’éditeurs apparaissent. Des schémas communautaires émergent. Des flux de travail internes se solidifient. La boucle ne s’arrête jamais.
Et ensuite
Nous travaillons sur plusieurs améliorations :
- Détection automatisée d’écarts : alerter quand des échecs courants d’agents pourraient être résolus par une compétence non adoptée
- Flux de travail de dépréciation des compétences : un processus formel pour retirer les compétences supplantées ou inutilisées
- Dépendances entre compétences : déclaration explicite des prérequis d’une compétence
- Analytique d’usage : suivre quelles compétences les agents invoquent réellement, par opposition à celles qu’ils se contentent de charger
La boucle de minage de compétences est de l’infrastructure. Ce n’est pas glamour. Mais c’est ce qui fait que 41 agents travaillent de façon cohérente avec 466 capacités, tout en restant dans les limites de contexte.
Voilà l’histoire de comment 3 500 devient 466. Pas en ignorant 3 000 — en les évaluant systématiquement et en n’adoptant que ce qui fonctionne.
Vous voulez voir le système de compétences en action ? Consultez uv run orkestra skills list pour explorer notre registre actuel.
Lectures associées
Encore plus du journal de bord Maguyva
Pourquoi nous avons fait évoluer la recherche de code vers voyage-4-large_
Nous avons migré nos embeddings de code vers voyage-4-large — actuellement en tête du classement public RTEB pour la récupération de code. La version honnête : le compromis que nous faisons, ce que nous indexons réellement, et pourquoi nous payons pour des embeddings premium.
Auto-amélioration récursive des langages : affiner l'intelligence du code sur environ 280 langages_
Nous prenons en charge l'intelligence du code pour environ 280 langages. Aucun humain ne peut auditer cela à la main. Nous avons donc construit une boucle d'auto-amélioration récursive des langages — contrôle ponctuel, LLM en tant que juge, correction d'un seul élément, revalidation — et nous la faisons tourner avec une flotte d'agents isolés jusqu'à ce que l'extraction soit vraiment correcte, pas seulement au vert.
Recherche par fusion multimodale : choisir le bon moteur de récupération pour chaque requête_
Une requête comme « où est défini parseConfig » appelle une recherche différente de « comment fonctionne l'authentification ». Maguyva classe l'intention, pondère en conséquence quatre modalités de récupération, puis fusionne les résultats avec une Reciprocal Rank Fusion pondérée.