Aller au contenu

Plugin

Un plugin est un dépôt Git capable de partager d’un coup un ensemble de composants.

Les plugins sont généralement regroupés au sein de marketplaces pour être installés par les agent runtimes, mais ils peuvent aussi être installés directement via l’Agent Package Manager ou certains agent runtimes (comme goose).

Structure

Un plugin est généralement identifié par un fichier plugin.json (peut varier selon l’agent runtime). Son emplacement et son contenu (avec de légères variations) dépendent du (ou des) agent runtime(s) cible(s).

  • Format : Agent Plugins
  • Lu par : Copilot, Cursor, Devin, Hermes
  • Variables d’environnement :
    • PLUGIN_ROOT (répertoire du plugin)
    • PLUGIN_DATA (répertoire de données du plugin)
repository/
├── plugin.json
├── skills/
│   └── skill-name/
│       └── SKILL.md
├── mcp.json
└── com.example.client/
    ├── agents/
    │   └── reviewer.agent.md
    └── hooks/
        └── hooks.json

Le répertoire com.example.client est une extension client. Il contient des composants dans un format spécifique à l’agent runtime (hooks, serveurs MCP, agents, etc.).

  • Copilot : com.github.copilot/

Limitations

Format LSP

Bien que les LSP puissent être définis dans .lsp.json, une meilleure approche consiste à les définir en ligne dans plugin.json car leur format varie selon les agent runtimes.