Files
mes_skills/docs/structure_skill.md

141 lines
3.3 KiB
Markdown

# Structure des Skills par Agent IA
Ce document décrit le format exact attendu pour chaque agent.
Un même skill peut exister en plusieurs versions (une par agent).
---
## Format commun (frontmatter YAML)
Tous les agents partagent ces champs de base :
| Champ | Requis | Description |
|-------|--------|-------------|
| `name` | oui | Identifiant unique du skill (kebab-case) |
| `version` | oui | Version semver `X.Y.Z` |
| `description` | oui | Description + déclencheurs (crucial pour l'activation automatique) |
| `agents` | oui | Liste des agents : `[claude-code]`, `[gemini-cli]`, etc. |
| `category` | oui | Catégorie : `dev`, `infra`, `ai`, `tools`, `jardinage`, `electronique`, `diy`, `task` |
| `tags` | recommandé | Mots-clés libres : `[bash, debug, git]` |
---
## Claude Code
**Docs :** https://code.claude.com/docs/en/skills
**Fichier dans le dépôt :** `skills/<categorie>/<nom>/claude-code.md`
**Destination globale :** `~/.claude/skills/<categorie>/<nom>/SKILL.md`
**Destination locale :** `.claude/skills/<categorie>/<nom>/SKILL.md`
```yaml
---
name: mon-skill
version: 1.0.0
description: Description et déclencheurs.
agents: [claude-code]
category: dev
tags: [tag1, tag2]
# Optionnels :
# disable-model-invocation: true # seul l'utilisateur peut invoquer
# user-invocable: false # seul Claude peut invoquer
# allowed-tools: [Read, Grep] # restreint les outils disponibles
---
```
**Commande de test :**
```bash
claude "utilise le skill <nom>" --print
```
---
## Gemini CLI
**Docs :** https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/skills.md
**Fichier dans le dépôt :** `skills/<categorie>/<nom>/gemini-cli.md`
**Destination globale :** `~/.gemini/skills/<categorie>/<nom>/SKILL.md`
**Destination locale :** `.gemini/skills/<categorie>/<nom>/SKILL.md`
**Alias :** `~/.agents/skills/` et `.agents/skills/`
```yaml
---
name: mon-skill
version: 1.0.0
description: Description et déclencheurs.
agents: [gemini-cli]
category: dev
tags: [tag1, tag2]
---
```
**Commande de test :**
```bash
gemini -p "utilise le skill <nom>"
```
---
## Codex (OpenAI)
**Docs :** https://developers.openai.com/codex/skills
**Fichier dans le dépôt :** `skills/<categorie>/<nom>/codex.md`
**Destination globale :** `~/.codex/skills/<categorie>/<nom>/SKILL.md`
**Destination locale :** `.codex/skills/<categorie>/<nom>/SKILL.md`
```yaml
---
name: mon-skill
version: 1.0.0
description: Description et déclencheurs.
allow_implicit_invocation: true
agents: [codex]
category: dev
tags: [tag1, tag2]
---
```
**Commande de test :**
```bash
codex "$<nom>"
```
---
## Hermes Agent (NousResearch)
**Docs :** https://hermes-agent.nousresearch.com/docs/user-guide/features/skills/
**Fichier dans le dépôt :** `skills/<categorie>/<nom>/hermes.md`
**Destination globale :** `~/.hermes/skills/<categorie>/<nom>/SKILL.md`
**Destination locale :** `.hermes/skills/<categorie>/<nom>/SKILL.md`
```yaml
---
name: mon-skill
version: 1.0.0
description: Description et déclencheurs.
agents: [hermes]
category: dev
tags: [tag1, tag2]
metadata:
hermes:
tags: [tag1, tag2]
category: dev
---
```
Structure Markdown recommandée par Hermes :
- `## Quand utiliser ce skill`
- `## Référence rapide`
- `## Procédure`
- `## Pièges connus`
- `## Vérification`
**Commande de test :**
```bash
hermes "utilise le skill <nom>"
```