- consignes, rappel et refus renvoient vers l'outil MCP deleguer - skill deleguer réécrite pour l'appel direct - subagent déplacé dans docs/agent-delegue.md, réglage modele_subagent retiré
134 lines
5.3 KiB
Markdown
134 lines
5.3 KiB
Markdown
# Plugins Claude Code — A2M Systèmes
|
|
|
|
Ce dépôt est le marketplace A2M Systèmes. Actuellement, il contient le plugin `miam`, MIAM est un orchestrateur de LLMs locaux avec un mcp pour opencode et claude code.
|
|
|
|
## Sommaire
|
|
|
|
- [Plugins Claude Code — A2M Systèmes](#plugins-claude-code--a2m-systèmes)
|
|
- [Sommaire](#sommaire)
|
|
- [Plugins disponibles](#plugins-disponibles)
|
|
- [Installation](#installation)
|
|
- [1. Ajouter la marketplace](#1-ajouter-la-marketplace)
|
|
- [2. Installer un plugin](#2-installer-un-plugin)
|
|
- [Dépôt privé](#dépôt-privé)
|
|
- [Mises à jour](#mises-à-jour)
|
|
- [Ajouter un plugin au dépôt](#ajouter-un-plugin-au-dépôt)
|
|
- [Structure du dépôt](#structure-du-dépôt)
|
|
- [Licence](#licence)
|
|
|
|
## Plugins disponibles
|
|
|
|
| Plugin | Description | Documentation |
|
|
| :--- | :--- | :--- |
|
|
| `miam` | Délègue des tâches à un modèle local géré par MIAM (Mon IA Manager, orchestrateur llama.cpp), via son serveur MCP. | [plugins/miam/README.md](plugins/miam/README.md) |
|
|
|
|
Le plugin `miam` fournit :
|
|
- le serveur MCP `miam` (outils `etat`, `modeles`, `presets`, `demarrer`, `deleguer`, `suivre`…) ;
|
|
- la skill `deleguer` (quand et comment déléguer) ;
|
|
- un compteur de tokens économisés (notification, ligne d'état, `/miam-economies`), net du pilotage et des
|
|
corrections, en vert ou en rouge selon le signe du gain ;
|
|
- une seule ligne d'état avec le gain net et l'usage Claude sur 5 h et sur la semaine ;
|
|
- une incitation à déléguer (consigne système et rappel après une grosse lecture), désactivable.
|
|
|
|
## Installation
|
|
|
|
### 1. Ajouter la marketplace
|
|
|
|
Dans VS Code, utilisez la commande `/plugins`, puis l'onglet « Marketplaces ». Collez l'URL suivante et cliquez sur « Add » :
|
|
|
|
```text
|
|
https://a2msystemes-git.duckdns.org/ange/plugin-claude-miam.git
|
|
```
|
|
|
|
Dans le terminal, la commande équivalente est :
|
|
|
|
```text
|
|
/plugin marketplace add https://a2msystemes-git.duckdns.org/ange/plugin-claude-miam.git
|
|
```
|
|
|
|
**Attention :** L'URL doit impérativement se terminer par `.git`. Sans cette extension, Claude Code interprète l'adresse comme un fichier `marketplace.json` et échoue avec l'erreur « expected object, received string ».
|
|
|
|
### 2. Installer un plugin
|
|
|
|
Dans VS Code, allez dans l'onglet « Plugins » et cliquez sur « Install ».
|
|
|
|
Dans le terminal, utilisez la commande suivante :
|
|
|
|
```text
|
|
/plugin install miam@a2m-plugins
|
|
```
|
|
|
|
La portée conseillée est « Install for you » (tous les projets du poste).
|
|
|
|
### Dépôt privé
|
|
|
|
Ce dépôt est privé sur Gitea. Pour le cloner, Claude Code utilise les identifiants Git configurés sur votre poste.
|
|
- **HTTPS** : Les identifiants sont gérés par le gestionnaire d'identifiants de Git.
|
|
- **SSH** : L'hôte doit être présent dans `known_hosts` et la clé doit être utilisable sans saisie de phrase de passe (agent SSH).
|
|
|
|
### Mises à jour
|
|
|
|
Le champ `version` du fichier `plugin.json` de chaque plugin fige la version installée. Pour mettre à jour :
|
|
1. Augmentez la version dans le fichier `plugin.json` du plugin.
|
|
2. Poussez les modifications sur Gitea.
|
|
3. Exécutez l'une des commandes suivantes :
|
|
- Dans VS Code : onglet « Marketplaces » → « Update marketplace ».
|
|
- Dans le terminal : `/plugin marketplace update a2m-plugins`.
|
|
|
|
## Ajouter un plugin au dépôt
|
|
|
|
Pour ajouter un nouveau plugin au catalogue :
|
|
|
|
1. Créez un dossier `plugins/<nom>` à la racine du dépôt.
|
|
2. Ajoutez un fichier `.claude-plugin/plugin.json` avec le nom en kebab-case, la version et la description.
|
|
3. Ajoutez les composants nécessaires (dossiers `skills/`, `agents/`, `hooks/`, fichier `.mcp.json`, etc.).
|
|
4. Ajoutez un fichier `README.md` et un fichier `LICENSE` (la licence est propre à chaque plugin ; il n'y en a pas à
|
|
la racine), et une ligne au tableau de la section [Licence](#licence).
|
|
5. Ajoutez une entrée dans la liste `plugins` du catalogue `.claude-plugin/marketplace.json` :
|
|
```json
|
|
{
|
|
"name": "<nom-en-kebab-case>",
|
|
"source": "./plugins/<nom>",
|
|
"description": "Description courte du plugin"
|
|
}
|
|
```
|
|
6. Vérifiez la validité du catalogue et du plugin avec :
|
|
```text
|
|
claude plugin validate .
|
|
claude plugin validate ./plugins/<nom>
|
|
```
|
|
|
|
## Structure du dépôt
|
|
|
|
```text
|
|
.claude-plugin/
|
|
marketplace.json # Catalogue central des plugins
|
|
docs/
|
|
token-summary-mod.md # Contrat technique pour le compteur de tokens
|
|
plugins/
|
|
miam/ # Plugin actuel
|
|
.claude-plugin/
|
|
plugin.json # Métadonnées et version du plugin
|
|
.mcp.json # Configuration du serveur MCP
|
|
hooks/
|
|
hooks.json # Liste des hooks
|
|
register.tsx # Enregistrement des hooks (compteur, ligne d'état, incitation)
|
|
economies.ts # Calcul des économies de tokens
|
|
usage.ts # Usage Claude 5 h et hebdo
|
|
*.test.ts(x) # Tests unitaires
|
|
skills/
|
|
deleguer/ # Skill pour déclencher la délégation
|
|
SKILL.md
|
|
LICENSE # Licence du plugin (MIT)
|
|
README.md # Documentation du plugin
|
|
README.md # Ce fichier
|
|
```
|
|
|
|
## Licence
|
|
|
|
Chaque plugin a sa propre licence, dans son dossier (`plugins/<nom>/LICENSE`) : elle s'installe avec lui.
|
|
|
|
| Plugin | Licence |
|
|
| :--- | :--- |
|
|
| `miam` | MIT, voir [plugins/miam/LICENSE](plugins/miam/LICENSE) |
|