用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/JohnNuwan/EVA_CORE --skill eva-agent-skill-authoring命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
Concevoir et maintenir un watchdog auto-correcteur pour services HTTP — checks de santé, auto-restart, état persistant, rapports et pièges bash.
Serveur de messagerie sécurisé auto-hébergé (Signal-like) avec Flask + WebSocket + AES-256-GCM + pont EVA
ADAM-SENTINEL — Veilleur technologique 24h/24h. Scanne 10 domaines, cree des rapports, met a jour les skills, alerte sur les CVE et breaking changes.
基于 SOC 职业分类
正在显示 SKILL.md
| name | EVA-agent-skill-authoring |
| description | Rédiger une compétence (SKILL.md) dans le dépôt. |
| version | 1.0.0 |
| author | EVA Agent |
| license | Privée EVA St-Étienne |
| platforms | ["linux","macos","windows"] |
| metadata | {"EVA":{"tags":["skills","authoring","EVA-agent","conventions","skill-md"],"related_skills":["plan","requesting-code-review"]}} |
Le fichier de compétence SKILL.md peut résider à deux emplacements distincts :
~/.EVA/skills/<categorie>/<nom>/SKILL.md — personnel, non partagé. Il se crée via skill_manage(action='create').skills/<categorie>/<nom>/SKILL.md — versionné sous Git et distribué avec le paquet. Utilisez write_file puis git add. L'outil skill_manage(action='create') ne cible pas cette arborescence.skills/ (utilisez un patch pour les corrections mineures, et write_file pour une réécriture complète ; skill_manage fonctionne pour modifier une compétence du dépôt, mais pas pour la créer).La source de vérité se trouve dans tools/skill_manager_tool.py::_validate_frontmatter. Les contraintes obligatoires sont :
--- dès les premiers octets (pas de ligne vide initiale).\n---\n juste avant le corps du document.name.description, d'une longueur maximale de 1024 caractères (MAX_DESCRIPTION_LENGTH).--- de fermeture.Modèle de structure partagé par l'ensemble des compétences sous skills/software-development/ :
---
name: nom-de-ma-competence # minuscules, tirets, ≤ 64 caractères (MAX_NAME_LENGTH)
description: Use when <declencheur>. <comportement en une ligne>.
version: 1.0.0
author: EVA Agent
license: Privée EVA St-Étienne
metadata:
EVA:
tags: [mots, cles, descriptifs]
related_skills: [autre-competence, encore-une-autre]
---
Les champs version, author, license et metadata ne sont pas imposés par le validateur, mais toutes les compétences existantes les intègrent. Ne pas les inclure rendrait la compétence incomplète par rapport aux autres.
SKILL.md : ≤ 100 000 caractères (limite fixée par MAX_SKILL_CONTENT_CHARS, soit environ 36k tokens).software-development/ comptent généralement entre 8 000 et 14 000 caractères. C'est la taille idéale. Si vous dépassez 20 000 caractères, divisez le contenu en créant des fichiers sous references/*.md et pointez vers eux depuis le fichier SKILL.md.Toute compétence intégrée au dépôt doit respecter la structure suivante :
ModuleNotFoundError), toujours vérifier:
pip show via terminal);source activate && python script.py).# <Titre de la Compétence>
## Vue d'ensemble
Un ou deux paragraphes : quoi et pourquoi.
## Quand l'utiliser
- Liste à puces des cas d'usage (déclencheurs).
- Section « À proscrire pour : » (cas non applicables).
## <Sections thématiques spécifiques à la compétence>
- Tableaux de référence rapide.
- Blocs de code contenant les commandes exactes.
- Recettes spécifiques à EVA (tests via scripts/run_tests.sh, chemins ui-tui, etc.).
## Pièges Courants (Common Pitfalls)
Liste numérotée des erreurs fréquentes et de leurs corrections.
## Liste de vérification (Checklist)
- [ ] Liste à puces de vérifications post-action.
## Recettes Clés en Main (facultatif)
Scénarios nommés suivis de séquences de commandes concrètes.
Toutes les sections ne sont pas strictement obligatoires, mais le minimum requis pour garantir l'homogénéité comprend : Vue d'ensemble, Quand l'utiliser, le corps d'instructions concrètes et les Pièges Courants (Common Pitfalls).
skills/<categorie>/<nom-de-la-competence>/SKILL.md
Catégories actuellement présentes dans le dépôt (à confirmer via ls skills/) : autonomous-ai-agents, creative, data-science, devops, dogfood, email, gaming, github, leisure, mcp, media, mlops/*, note-taking, productivity, red-teaming, research, smart-home, social-media, software-development.
Sélectionnez la catégorie existante la plus proche. Évitez de créer de nouvelles catégories de premier niveau sans nécessité absolue.
ls skills/<categorie>/
Lisez 2 ou 3 fichiers SKILL.md pour vous imprégner du ton et de la structure.tools/skill_manager_tool.py en cas de doute.write_file sous skills/<categorie>/<nom>/SKILL.md.import yaml, re, pathlib
content = pathlib.Path("skills/<categorie>/<nom>/SKILL.md").read_text()
assert content.startswith("---")
m = re.search(r'\n---\s*\n', content[3:])
fm = yaml.safe_load(content[3:m.start()+3])
assert "name" in fm and "description" in fm
assert len(fm["description"]) <= 1024
assert len(content) <= 100_000
skill_view ou skills_list ne détecteront la nouvelle compétence qu'à la session suivante. C'est le comportement attendu.La section metadata.EVA.related_skills regroupe les compétences des deux répertoires (celui du dépôt skills/ et celui de l'utilisateur ~/.EVA/skills/) lors du chargement. Vous pouvez faire référence à une compétence locale à l'utilisateur depuis une compétence du dépôt, mais celle-ci ne se résoudra pas pour les autres développeurs clonant le projet. Privilégiez les références vers d'autres compétences du dépôt. Si une compétence fréquemment référencée n'existe que dans ~/.EVA/skills/, envisagez de la déplacer dans le dépôt.
skill_manage(action='patch', name=..., old_string=..., new_string=...) convient pour modifier les compétences du dépôt.SKILL.md avec write_file. L'action skill_manage(action='edit') fonctionne également mais nécessite de passer la totalité du nouveau contenu en paramètre.write_file sous skills/<categorie>/<nom>/references/<fichier>.md, templates/<fichier> ou scripts/<fichier>. L'outil skill_manage(action='write_file') est également utilisable et applique la liste d'autorisation des sous-dossiers.Utiliser skill_manage(action='create') pour une compétence du dépôt. Cela écrit dans le répertoire utilisateur ~/.EVA/skills/ au lieu du dépôt. Utilisez write_file pour créer une compétence dans le dépôt.
Présence d'espaces avant ---. Le validateur vérifie content.startswith("---") ; toute ligne vide ou caractère BOM en tout début de fichier invalidera la compétence.
Description trop générique. Les descriptions doivent débuter par « Use when ... » (ou son équivalent traduit) et décrire la classe de déclenchement plutôt qu'une tâche isolée. Préférez « Use when debugging X » à « Debug X ».
Omission du bloc author/license/metadata. Bien que non bloquant pour le validateur, ce bloc est présent sur toutes les autres compétences et son absence donne une impression d'inachevé.
Créer une compétence qui duplique une compétence existante. Avant de créer, inspectez ls skills/<categorie>/ et lisez quelques fichiers. Privilégiez l'enrichissement d'une compétence existante plutôt que la création d'une déclinaison trop proche.
S'attendre à ce que la session actuelle de l'agent détecte la nouvelle compétence. La configuration est lue au démarrage de la session. Vérifiez la compétence dans une nouvelle session ou accédez directement au fichier par son chemin.
Lier des compétences inexistantes dans le dépôt. Renseigner related_skills: [ma-competence-locale] fonctionne sur votre poste mais échouera ailleurs. Privilégiez les liens vers des compétences du dépôt.
skills/<categorie>/<nom>/SKILL.md (et non dans ~/.EVA/skills/).--- et se ferme par \n---\n.name, description, version, author, license et metadata.EVA.{tags, related_skills} sont tous définis.# Titre → ## Vue d'ensemble → ## Quand l'utiliser → Corps de texte → ## Pièges Courants (Common Pitfalls) → ## Liste de vérification (Checklist).related_skills pointent vers des compétences existantes du dépôt.git add skills/<categorie>/<nom>/ && git commit a été exécutée sur la bonne branche.