Utiliser mini-me comme bibliothèque, par ACP
Des programmes écrits dans d'autres langages utilisent mini-me comme bibliothèque en pilotant mm -acp : le même protocole JSON-RPC que parle un éditeur comme Zed, sur l'entrée et la sortie standard du processus enfant. Rien ne change dans mm ; tout fichier d'agent fonctionne, avec ses outils, ses hooks, ses serveurs MCP et ses autres agents.
| Dossier | Langage | État |
|---|---|---|
nodejs/ |
Node.js (ticket 167) | fait : minime.js, quatre exemples, des tests |
nodejs-sdk/ |
Node.js, SDK ACP officiel pour TypeScript (ticket 188) | fait : même API que nodejs/, sur @agentclientprotocol/sdk, quatre exemples, des tests |
go/ |
Go (ticket 168) | fait : paquet minime, quatre exemples, des tests |
kotlin/ |
Kotlin (ticket 187) | fait : minime.Agent sur le SDK ACP officiel pour Kotlin, quatre exemples, des tests |
python/, rust/, swift/, nushell/ |
tickets 169–172 | pas commencés |
Ce que fait chaque client :
| Besoin | Message ACP |
|---|---|
| démarrer | initialize, puis session/new {cwd} |
| lancer une complétion | session/prompt |
| stream | les notifications session/update : agent_message_chunk, agent_thought_chunk, tool_call, tool_call_update |
| sans stream | concaténer les morceaux de texte jusqu'à la réponse de session/prompt et son stopReason |
| annuler | la notification session/cancel ; le prompt répond alors stopReason: "cancelled" |
confirmer un outil (yolo: false) |
répondre à la requête session/request_permission de mm |
Limites communes : le binaire mm doit être installé, tout tourne en local (stdio), et l'agent est un fichier (mm -acp -config <fichier>). Pour un programme Go sans le binaire, voir le ticket 139 (un SDK en mémoire) ; go/ explique quand choisir l'un ou l'autre.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
|