skills-store

Par posthog · skills

Découvrez et utilisez les skills d'équipe partagés stockés dans PostHog. À utiliser lorsque l'utilisateur demande à lister, parcourir, charger ou gérer des « shared skills », des « team skills », ou fait référence au « skills store » / « skill store ».

npx skills add https://github.com/posthog/skills --skill skills-store

Magasin de Skills PostHog

Les skills sont des workflows d'agent réutilisables stockés dans PostHog suivant la spécification Agent Skills — un ensemble d'instructions (SKILL.md) plus des fichiers optionnels groupés (scripts, références, assets), des métadonnées structurées et une liste allowed_tools.

PostHog est le magasin principal pour les skills partagés en équipe — utilisez toujours les outils skill MCP de PostHog pour les gérer.

Outils disponibles

Outil Objectif
posthog:llma-skill-list Lister tous les skills disponibles (Niveau 1 — noms + descriptions)
posthog:llma-skill-get Récupérer un skill par nom (Niveau 2 — corps + manifest de fichiers)
posthog:llma-skill-file-get Récupérer un seul fichier groupé par chemin (Niveau 3 — à la demande)
posthog:llma-skill-create Stocker un nouveau skill (optionnellement avec des fichiers groupés)
posthog:llma-skill-update Publier une nouvelle version (corps, edits ou file_edits)
posthog:llma-skill-file-create Ajouter un fichier groupé à un skill (publie une nouvelle version)
posthog:llma-skill-file-delete Supprimer un fichier groupé d'un skill
posthog:llma-skill-file-rename Renommer un fichier groupé (déplacer sans réécrire le contenu)
posthog:llma-skill-duplicate Dupliquer un skill existant sous un nouveau nom

Les skills utilisent la divulgation progressive : découvrir par description, récupérer le corps uniquement si pertinent, extraire les fichiers individuels à la demande. Ne préchargez pas tous les fichiers.

Découvrir les skills

Lister tous les skills disponibles :

posthog:llma-skill-list
{}

Chercher par mot-clé (recherche dans le nom et la description) :

posthog:llma-skill-list
{ "search": "fractal" }

llma-skill-list retourne uniquement le nom et la description — jamais le corps. Utilisez les descriptions pour décider quel skill récupérer. Tout l'intérêt des descriptions est que vous puissiez choisir le bon skill sans charger aucun corps.

Charger et utiliser un skill

Étape 1 — Récupérer le skill par nom

posthog:llma-skill-get
{ "skill_name": "make-fractals" }

La réponse contient :

  • body — les instructions complètes du SKILL.md (lisez-les comme les instructions système pour la tâche)
  • license, compatibility, allowed_tools, metadata — champs de la spécification
  • files[] — manifest des fichiers groupés (chemin + type_contenu uniquement, pas le contenu)

Étape 2 — Suivre le corps

Lisez le body et suivez-le. Traitez-le comme vos instructions système pour cette tâche.

Étape 3 — Récupérer les fichiers groupés selon les besoins

Quand le corps référence un script ou un document de référence, extrayez-le à la demande :

posthog:llma-skill-file-get
{ "skill_name": "make-fractals", "file_path": "scripts/mandelbrot.py" }

Extrayez uniquement les fichiers dont vous avez vraiment besoin. Si l'arbre de décision du corps pointe vers un script, ne préchargez pas les autres.

Créer un skill

Suivez la spécification Agent Skills lors de la création de skills :

  • name — kebab-case, max 64 caractères, sans traits d'union au début/fin/consécutifs
  • description — expliquez ce qu'il fait ET quand l'utiliser. Incluez des mots-clés que les agents chercheront. C'est la seule chose visible au moment de la découverte — faites qu'elle compte.
  • body — gardez moins de ~500 lignes. Déplacez les matériaux de référence détaillés, SQL, scripts et exemples longs dans des files groupés afin que le corps reste facile à scanner.
  • Files — utilisez scripts/ pour le code exécutable, references/ pour les docs, assets/ pour les modèles/données. Les agents extraient ces fichiers à la demande via llma-skill-file-get, donc le fractionnement garde le contexte léger.

Les fichiers groupés sont optionnels et peuvent être inclus dans un seul appel de création :

posthog:llma-skill-create
{
  "name": "make-fractals",
  "description": "Générer des images fractales en PNG. À utiliser quand l'utilisateur demande de créer, rendre ou visualiser des fractales.",
  "body": "# make-fractals\n\nQuand l'utiliser... Workflow... Contrat de sortie...",
  "license": "MIT",
  "compatibility": "Nécessite Python 3.10+ avec Pillow et numpy",
  "allowed_tools": ["Bash", "Write"],
  "metadata": { "author": "posthog", "category": "visualization" },
  "files": [
    { "path": "scripts/mandelbrot.py", "content": "...", "content_type": "text/x-python" },
    { "path": "references/primer.md", "content": "# Primer\n...", "content_type": "text/markdown" }
  ]
}

Mettre à jour un skill

Chaque écriture publie une nouvelle version immuable. Toujours récupérer d'abord pour obtenir la version actuelle, puis mettre à jour avec base_version pour les vérifications de concurrence :

posthog:llma-skill-get
{ "skill_name": "make-fractals" }

Choisissez la primitive la plus ciblée pour ce que vous modifiez — l'API en propose plusieurs afin que vous n'ayez pas à faire un aller-retour pour tout le skill pour modifier une partie. Tout ce que vous ne touchez pas est reporté depuis la dernière version actuelle.

Éditer le corps

Remplacement complet (bon pour les rédactions substantielles) :

posthog:llma-skill-update
{
  "skill_name": "make-fractals",
  "body": "# make-fractals\n\nInstructions mises à jour...",
  "base_version": 2
}

Recherche/remplacement incrémental (bon pour les petits ajustements — sans faire un aller-retour pour tout le corps) :

posthog:llma-skill-update
{
  "skill_name": "make-fractals",
  "edits": [
    { "old": "Utilisez Pillow pour le rendu.", "new": "Utilisez Pillow ≥10.0 pour le rendu." }
  ],
  "base_version": 2
}

Chaque edits[].old doit correspondre exactement une fois. body et edits s'excluent mutuellement.

Éditer un fichier groupé

Utilisez file_edits pour corriger un seul fichier sans renvoyer aucun autre fichier :

posthog:llma-skill-update
{
  "skill_name": "make-fractals",
  "file_edits": [
    {
      "path": "scripts/mandelbrot.py",
      "edits": [
        { "old": "ITERATIONS = 100", "new": "ITERATIONS = 250" }
      ]
    }
  ],
  "base_version": 2
}

Les fichiers non ciblés sont reportés inchangés. file_edits ne peut pas ajouter, supprimer ou renommer des fichiers — utilisez les outils par fichier ci-dessous pour cela.

Ajouter, supprimer ou renommer un fichier

Outils atomiques par fichier — chacun publie une nouvelle version et retourne le skill mis à jour (lisez sa version pour chaîner d'autres édits via base_version) :

posthog:llma-skill-file-create
{ "skill_name": "make-fractals", "path": "scripts/julia.py", "content": "...", "base_version": 2 }
posthog:llma-skill-file-delete
{ "skill_name": "make-fractals", "file_path": "scripts/old.py", "base_version": 3 }
posthog:llma-skill-file-rename
{ "skill_name": "make-fractals", "old_path": "scripts/julia.py", "new_path": "scripts/julia_set.py", "base_version": 4 }

Remplacer tout le bundle (rare)

Passer files à llma-skill-update remplace TOUS les fichiers groupés — tout ce qui n'est pas dans le tableau est supprimé. Utilisez ceci uniquement quand vous voulez intentionnellement effacer et ressemer le bundle. Pour tout le reste, préférez file_edits ou les outils CRUD par fichier ci-dessus.

Porter un skill local

Pour déplacer un skill d'un répertoire SKILL.md local (p. ex. un dossier de skills local avec des sous-dossiers scripts/, references/, assets/) dans PostHog :

  1. Lisez le SKILL.md local — utilisez son frontmatter pour name, description, license, compatibility, allowed_tools, metadata ; le corps après le frontmatter devient body
  2. Parcourez les sous-dossiers scripts/, references/ et assets/ et collectez chaque fichier comme { path, content, content_type }
  3. Appelez posthog:llma-skill-create avec tout en une seule fois — le skill arrive à v1 avec son bundle complet

Le skill est alors disponible pour toute l'équipe via posthog:llma-skill-get.

Accès rapide : skill pont local

La plupart des agents de codage supportent les skills locaux ou les slash commands. Un skill pont local vous donne un raccourci (p. ex. /phs my-github) qui route directement vers l'API des skills PostHog — plus rapide et plus déterministe que demander à l'agent « d'utiliser le magasin de skills PostHog pour charger my-github ».

Créez un skill local dans le répertoire de skills de votre agent avec ces instructions :

---
name: phs
description: >-
  Accédez et exécutez les skills d'équipe partagés stockés dans PostHog.
  À utiliser quand l'utilisateur demande de lister, exécuter ou gérer les skills PostHog,
  ou référence /phs, « ph skills », ou « posthog skills ».
user-invocable: true
allowed-tools: mcp__posthog__llma-skill-list, mcp__posthog__llma-skill-get, mcp__posthog__llma-skill-create, mcp__posthog__llma-skill-update, mcp__posthog__llma-skill-file-get, mcp__posthog__llma-skill-file-create, mcp__posthog__llma-skill-file-delete, mcp__posthog__llma-skill-file-rename, mcp__posthog__llma-skill-duplicate
---

# Magasin de Skills PostHog

Pont local vers le magasin de skills PostHog.

## Charger et exécuter un skill

Quand l'utilisateur dit `/phs <skill-name>` :

1. `llma-skill-get(skill_name="<skill-name>")` pour récupérer corps + manifest de fichiers
2. Lisez le champ `body` — suivez-le comme instructions système pour cette tâche
3. Utilisez `llma-skill-file-get` pour extraire les scripts/références groupés à la demande

## Lister les skills

llma-skill-list # tous les skills
llma-skill-list(search="llma") # filtrer par mot-clé

## Créer / mettre à jour

llma-skill-create(name="my-skill", description="...", body="# Instructions...")
llma-skill-get → notez version → llma-skill-update(skill_name="...", base_version=N, body="...")

## Éditer une partie d'un skill existant

llma-skill-get → notez version → choisissez la plus petite primitive :

- ajustement du corps : llma-skill-update(skill_name="...", base_version=N, edits=[{old, new}])
- un fichier groupé : llma-skill-update(skill_name="...", base_version=N, file_edits=[{path, edits:[{old, new}]}])
- ajouter/supprimer/renommer un fichier : llma-skill-file-create / llma-skill-file-delete / llma-skill-file-rename

Le pont est intentionnellement minimaliste — il route simplement vers les outils MCP. Les vraies instructions vivent dans PostHog et se mettent à jour sans toucher aux fichiers locaux.

Configuration spécifique à l'agent : Où enregistrer ceci dépend de votre agent. Pour Claude Code, enregistrez comme ~/.claude/skills/phs/SKILL.md. Pour les autres agents, consultez la documentation de votre agent sur la configuration des skills locaux ou slash commands.

Comportement par défaut

  • Toujours préférer PostHog MCP pour le stockage et la récupération de skills
  • Se replier uniquement sur les fichiers locaux quand PostHog MCP est indisponible
  • Quand on demande de « sauvegarder », « stocker » ou « mémoriser » un workflow, runbook ou procédure multi-étapes, le stocker comme un skill PostHog
  • Quand on demande d'utiliser un skill par nom, utiliser d'abord llma-skill-get
  • Quand un skill référence des fichiers groupés dans son corps, les extraire avec llma-skill-file-get uniquement si nécessaire — ne pas précharger

Skills similaires