مقال

Cartographie des skills et harness d'agents

Ce que sont les Agent Skills et les harness d'agents, comment choisir parmi 30 dépôts GitHub vérifiés au 2026-10-15, et comment installer un skill tiers sans exécuter n'importe quoi.

متوسط 10 دقائق قراءة

هذا المحتوى غير مترجم بعد. تُعرض النسخة الأصلية.

Un lundi matin, un développeur installe un skill « deploy-helper » trouvé dans une liste à 50 000 étoiles. Le SKILL.md est propre. Le dossier scripts/ contient un setup.sh qui, à la troisième ligne, envoie ~/.aws/credentials vers un domaine inconnu. L'agent l'a exécuté sans poser de question, parce que la session tournait en approbation automatique. Le nombre d'étoiles d'une liste ne dit rien du contenu de chaque entrée.

Cette page sert à choisir : quel format de skill, quel harness, quel outil d'évaluation, quelle source MCP. Les 30 dépôts listés ont été vérifiés un par un par l'API GitHub publique le 2026-10-15 (existence, étoiles, dernier push, licence, statut archivé).

Deux notions à ne pas confondre

Un skill est un dossier qui contient un fichier SKILL.md (un nom, une description, des instructions) et, si besoin, des scripts, des références et des modèles. L'agent ne lit au démarrage que le nom et la description de chaque skill ; il charge le reste quand la tâche correspond. Le format est une spécification ouverte (agentskills.io), lue par Claude Code, Codex, Gemini CLI, OpenCode, Cursor et d'autres.

Un harness est le programme qui fait tourner l'agent : il appelle le modèle, exécute les outils qu'il demande, gère le contexte, les permissions, les hooks, les sous-agents, et charge les skills. Claude Code, Codex CLI, Gemini CLI, OpenCode, Pi, goose, Cline et OpenHands sont des harness. ADK, smolagents et le Claude Agent SDK sont des briques pour construire le vôtre.

Le skill dit à l'agent comment faire une tâche. Le harness décide ce que l'agent a le droit de faire. MCP (Model Context Protocol) donne à l'agent l'accès à des systèmes externes. L'évaluation mesure si l'ensemble marche.

flowchart LR
  U["Demande de l'utilisateur"] --> H["Harness : boucle, permissions, hooks"]
  H --> M["Modèle"]
  M -->|"appel d'outil"| H
  H --> S["Skills : SKILL.md + scripts"]
  H --> P["Serveurs MCP : GitHub, bases, SaaS"]
  H --> X["Shell et fichiers (bac à sable ?)"]
  E["Harness d'évaluation : Inspect, promptfoo, SWE-bench"] -.->|"mesure"| H

Comment choisir

Pour écrire des skills, lisez la spécification (agentskills/agentskills) puis trois skills de anthropics/skills qui ressemblent à votre besoin. Écrivez au format standard même si vous ne visez qu'un outil : le même dossier fonctionnera ailleurs. Pour vos skills métier sous Gemini Enterprise, partez du catalogue Skills Gemini Enterprise.

Pour installer des skills existants, préférez les éditeurs officiels (anthropics/skills, google/skills, google-gemini/gemini-skills, openai/plugins), puis les collections dont vous avez lu le code. obra/superpowers vaut le détour si vos sessions manquent de méthode ; wshobson/agents si vous voulez un catalogue multi-outils, à installer plugin par plugin.

Pour choisir un harness de code : Claude Code si vous utilisez Claude et voulez l'écosystème de plugins le plus fourni ; Codex CLI si le bac à sable par défaut est votre critère principal ; Gemini CLI dans l'écosystème Google ; OpenCode si vous changez souvent de fournisseur de modèle ; Cline si l'équipe reste dans l'IDE ; OpenHands pour des agents auto-hébergés en continu ; goose pour des utilisateurs non développeurs.

Pour comprendre un harness, lisez mini-swe-agent (une centaine de lignes de Python) puis Pi, avant de construire le vôtre dans la thématique Harness d'agents.

Pour évaluer, promptfoo pour des tests déclaratifs en CI, Inspect pour des évaluations d'agents en bac à sable, SWE-bench pour comparer des agents de code sur une base publique. Mesurez avant et après l'ajout d'un skill : un skill dont la description se déclenche au mauvais moment fait baisser le taux de réussite.

Pour MCP, cherchez d'abord dans le registre officiel, puis dans punkpeye/awesome-mcp-servers, et lisez les serveurs de référence avant d'écrire le vôtre.

Les 30 dépôts retenus

Étoiles et dernier push relevés le 2026-10-15 par l'API GitHub. Critères : dépôt existant, non archivé, push depuis moins de 12 mois.

DépôtCatégorieLicenceÉtoiles au 2026-10-15Dernier pushPour qui
agentskills/agentskillsSpécification skillsApache-2.026 1732026-08-09auteurs de skills, éditeurs d'agents
anthropics/skillsCollection de skillspar skill (Apache-2.0 / source disponible)181 3452026-10-09utilisateurs de Claude, auteurs de skills
obra/superpowersCollection de skillsMIT299 6822026-10-10équipes de développement qui utilisent un agent de code
vercel-labs/skillsOutil d'installation de skillsMIT35 0762026-10-09équipes multi-outils
wshobson/agentsCollection multi-harnessMIT40 8442026-10-15équipes qui veulent un catalogue prêt à l'emploi
google/skillsSkills pour d'autres agentsApache-2.021 3292026-10-15équipes Google Cloud
google-gemini/gemini-skillsSkills pour d'autres agentsApache-2.04 2822026-10-13développeurs d'applications Gemini
openai/pluginsSkills pour d'autres agentsnon indiquée7 4512026-10-08utilisateurs de Codex
anthropics/claude-codeHarness de codepropriétaire (Commercial Terms)151 0282026-10-14utilisateurs de Claude Code
anthropics/claude-plugins-officialRegistre de pluginsApache-2.038 6952026-10-15utilisateurs de Claude Code
anthropics/claude-agent-sdk-pythonSDK de harnessMIT8 2842026-10-14développeurs Python qui construisent un agent
google-gemini/gemini-cliHarness de codeApache-2.0107 3872026-10-14développeurs dans l'écosystème Google
openai/codexHarness de codeApache-2.0129 3772026-10-15développeurs, équipes qui veulent un bac à sable par défaut
anomalyco/opencodeHarness de codeMIT213 8252026-10-15développeurs qui veulent changer de fournisseur de modèle
earendil-works/piHarness minimalMIT115 4072026-10-15qui veut un harness réduit et modifiable
OpenHands/OpenHandsPlateforme d'agentsMIT90 9802026-10-15équipes qui veulent des agents auto-hébergés
Aider-AI/aiderHarness de codeApache-2.049 5662026-05-22développeurs attachés à git
aaif-goose/gooseAgent généralApache-2.055 3122026-10-15utilisateurs qui veulent un agent au-delà du code
cline/clineHarness de codeApache-2.070 3612026-10-15développeurs qui travaillent dans l'IDE
huggingface/smolagentsBibliothèque d'agentsApache-2.029 8632026-10-06développeurs Python, recherche
google/adk-pythonFramework d'agentsApache-2.021 8622026-10-15développeurs d'agents sur Google Cloud
SWE-agent/mini-swe-agentHarness minimalMIT8 5482026-10-12chercheurs, équipes qui évaluent des modèles
hesreallyhim/awesome-claude-codeListe « awesome »CC BY-NC-ND 4.055 7472026-10-15utilisateurs de Claude Code
punkpeye/awesome-mcp-serversListe « awesome »MIT96 3882026-10-15intégrateurs MCP
UKGovernmentBEIS/inspect_aiHarness d'évaluationMIT3 0112026-10-15équipes qui évaluent agents et skills
promptfoo/promptfooHarness d'évaluationMIT26 0172026-10-15équipes produit, CI
SWE-bench/SWE-benchHarness d'évaluationMIT6 0332026-09-18chercheurs, équipes qui comparent des agents de code
modelcontextprotocol/serversServeurs MCP officielsApache-2.0 / MIT (transition)91 2832026-10-13intégrateurs MCP
modelcontextprotocol/registryRegistre MCP officielApache-2.0 / MIT (transition)7 3622026-10-14éditeurs et clients MCP
github/github-mcp-serverServeur MCP officielMIT33 6402026-10-15équipes qui donnent GitHub à un agent

Écartés après vérification : openai/skills (déclaré obsolète par son README au profit de openai/plugins), et plusieurs listes « awesome » sans licence claire ou peu entretenues. Quatre dépôts ont changé de propriétaire (OpenHands, goose, OpenCode, Pi) : les anciennes URL redirigent, mais mettez à jour vos scripts d'installation.

Ce qui casse en production

Un skill exécute du code. Un skill peut embarquer des scripts que l'agent lance avec vos droits : variables d'environnement, clés cloud, jeton GitHub, accès réseau. Le SKILL.md lui-même peut demander à l'agent de lancer une commande. Symptôme : une action inattendue dans l'historique du shell, un appel réseau sortant. Parade : lire tout le dossier avant installation, scripts compris, et désactiver l'approbation automatique des commandes shell.

La version change sous vos pieds. npx skills add owner/repo ou une marketplace de plugins installent la version courante. Un mainteneur compromis ou une mise à jour maladroite modifie le comportement de tous vos postes. Parade : épingler un commit ou une version, copier le skill dans votre dépôt et le faire relire comme du code.

Les descriptions se concurrencent. Cent skills installés, ce sont cent descriptions dans le contexte de chaque session. L'agent choisit le mauvais skill ou n'en choisit aucun. Parade : installer le minimum par projet, mesurer le déclenchement avec une évaluation.

MCP élargit la surface d'attaque. Un agent qui lit des issues publiques via un serveur MCP et possède des droits d'écriture sur des dépôts privés est exposé à l'injection de prompt. Parade : jetons à portée minimale, jeux d'outils restreints, sessions séparées entre lecture de contenus non fiables et actions sensibles.

La licence ne suit pas. Licence propriétaire (Claude Code), source disponible (skills documentaires d'Anthropic), CC BY-NC-ND (awesome-claude-code), aucune licence détectée (openai/plugins) : réutiliser le code dans un produit n'est pas toujours permis. Vérifiez le fichier de licence du sous-dossier que vous reprenez.

Pratique

Votre équipe veut adopter un skill communautaire de déploiement Kubernetes trouvé dans une liste à 90 000 étoiles. Le SKILL.md est clair et bien écrit. Que faites-vous avant de l'installer ?

Vous ajoutez un skill de revue de code à votre agent. Les développeurs trouvent les revues meilleures, mais le taux de réussite des tâches de correction de bugs a baissé. Quelle est la première vérification ?

Pour aller plus loin

  • Construire votre propre harness, pas à pas : Harness d'agents.

  • 160 skills métier au format standard, prêts à importer : Skills Gemini Enterprise.

  • Je sais expliquer la différence entre skill, harness et serveur MCP.

  • Je lis les scripts d'un skill tiers avant de l'installer et j'épingle sa version.

  • Je choisis un harness selon un critère explicite (bac à sable, fournisseur, IDE, auto-hébergement).

  • Je mesure l'effet d'un skill avec une évaluation avant de le généraliser.

الموارد

    تنزيل الكل (.zip)

    المراجع