Lancer un agent dans un conteneur Docker
Ce guide montre comment déclarer un agent qui tourne dans un conteneur Docker, pour que Sidekicks converse avec lui, affiche ses fichiers et y ouvre un terminal. Il suppose Docker installé, et une image contenant le programme de l'agent (par exemple mm, compilé pour Linux).
Ce dont Sidekicks a besoin
Trois réglages vont ensemble :
| Réglage | Rôle |
|---|---|
command et args |
comment l'agent démarre : docker exec -i <conteneur> <programme> <arguments>. Sidekicks lui parle par l'entrée et la sortie standard (ACP) : -i est indispensable, -t ne doit pas être utilisé. |
workspace |
le dossier de l'agent sur cet ordinateur. La commande y est lancée, et l'agent reçoit ce même chemin comme dossier de travail de ses sessions — il doit donc exister aussi au même chemin dans le conteneur. |
runtime |
où sont ses fichiers et son terminal : {type: container, container: <conteneur>}. |
Étapes
-
Démarrez le conteneur avec le dossier de l'agent monté au même chemin, et un processus init (il nettoie les programmes que le terminal termine) :
AGENT_DIR=/Users/moi/agents/scout # le dossier de l'agent sur cet ordinateur docker run -d --init --name scout-box \ -v "$AGENT_DIR:$AGENT_DIR" -w "$AGENT_DIR" \ mon-image-agent sleep infinity -
Vérifiez que le programme tourne et voit le dossier :
docker exec scout-box sh -c 'command -v mm; pwd; ls' -
Dans Settings, ajoutez l'agent et enregistrez :
agents: - name: scout title: Scout (Docker) icon: "🐳" command: docker args: [exec, -i, scout-box, mm, -acp] workspace: /Users/moi/agents/scout runtime: type: container container: scout-box -
Démarrez l'agent depuis le panneau Agents (▶), ou écrivez-lui : il répond depuis le conteneur. 📂 affiche
container scout-box · /Users/moi/agents/scout, ses fichiers et un terminal.
Variantes
- Sidekicks lancé depuis le Finder : une telle application a un
PATHréduit et peut ne pas trouverdocker. Écrivez son chemin complet (command: /usr/local/bin/docker, voirwhich docker), ou ajoutezenv: {PATH: "…"}à l'agent. Les fichiers et le terminal trouvent Docker tout seuls. - Le serveur de modèles tourne sur cet ordinateur (llmman, Ollama…) : dans le conteneur,
localhostest le conteneur lui-même ; utilisezhost.docker.internaldans la configuration propre de l'agent. - Le dossier est monté ailleurs dans le conteneur : indiquez ce chemin dans
runtime.workspacePathpour les fichiers et le terminal. Les sessions de l'agent reçoivent toujoursworkspacecomme dossier de travail : préférez le même chemin. - Un conteneur existant : tout conteneur démarré convient, s'il contient le programme et le dossier ;
docker psdonne son nom.
Voir aussi
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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
|