Skip to content

Système de compétences Skills

源码版本v2026.7.20

Responsabilité

Une Skill est une unité de capacité plus haut-niveau qu'un Tool : un flux réutilisable, doté d'un frontmatter (façon spec agentskills.io), rangé par domaine sous skills/<category>/. Contrairement aux outils « fonctions statiques », les compétences peuvent être créées, réécrites, affinées par la boucle d'apprentissage ; elles sont le support par lequel l'agent « devient plus malin à l'usage ». Les compétences sont exposées à la boucle principale via skills_tool.

Fichiers clés

Flux de données

  1. Au démarrage, skill_preprocessing (agent/skill_preprocessing.py) scanne skills/<category>/ et lit les frontmatters.
  2. skill_bundles (agent/skill_bundles.py) empaquète les compétences pertinentes et les injecte dans le prompt du tour via build_turn_context:268.
  3. Le provider décide d'appeler une compétence → tool_call skillstools/skills_tool.py charge et exécute le flux de la compétence.
  4. Le résultat d'exécution est réinjecté dans la boucle principale.
  5. La boucle d'apprentissage examine ce tour en arrière-plan et peut :

Résumé

Compétence = flux haut-niveau évolutif, décrit par frontmatter, défini par fichier, réécrivable par la boucle d'apprentissage. Rapport aux outils : les outils sont les atomes appelés dans le flux d'une compétence, la compétence est la connaissance « comment combiner les outils pour accomplir une classe de tâches ». Le mécanisme d'évolution des compétences est décrit dans la boucle d'apprentissage.

Site d'apprentissage communautaire non officiel. Basé sur le code source de NousResearch/hermes-agent (licence MIT).