From 4735fc150235ee180d0bb08d4fc871027690fea9 Mon Sep 17 00:00:00 2001 From: Bruno Charest Date: Tue, 18 Aug 2026 23:11:42 -0400 Subject: [PATCH] =?UTF-8?q?docs(readme):=20ajout=20des=20d=C3=A9tails=20d'?= =?UTF-8?q?installation=20et=20de=20gestion=20des=20agents?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Emplacement des agents, binaires, état et config par OS - Pipeline complet d'installation (catalogue, dépendances, méthodes) - Tableau des commandes réelles par méthode d'installateur - Cycle de gestion : démarrage, arrêt, mise à jour, désinstallation --- README.md | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/README.md b/README.md index ecea7d3..3951f88 100644 --- a/README.md +++ b/README.md @@ -113,6 +113,48 @@ sur le PATH) · ⚪ not-installed · 🔴 not-installable (SaaS/desktop) | am uninstall | désinstalle et nettoie (--purge : logs + config) — gère aussi les agents externes (npm/pip/uv/cargo/bun, sinon suppression des fichiers) | | am export / am import | sauvegarde et restaure config + état | +### 📁 Où et comment agent-manager installe et gère les agents + +`am` ne touche jamais au système : chaque agent est installé dans un **répertoire utilisateur isolé**, et ses exécutables (ou shims) sont centralisés dans un `bin/` commun que `am` met automatiquement sur le `PATH` au lancement. + +| Plateforme | Répertoire de l'agent | Dossier `bin` partagé | Fichier d'état | Configuration utilisateur | +|---|---|---|---|---| +| Linux | `~/.local/share/agent-manager/agents//` | `~/.local/share/agent-manager/bin/` | `~/.local/state/agent-manager/state.json` | `~/.config/agent-manager/config.yaml` | +| macOS | `~/Library/Application Support/agent-manager/agents//` | `~/Library/Application Support/agent-manager/bin/` | `~/Library/Application Support/agent-manager/state.json` | `~/.config/agent-manager/config.yaml` | +| Windows | `%LOCALAPPDATA%\agent-manager\agents\\` | `%LOCALAPPDATA%\agent-manager\bin\` | `%LOCALAPPDATA%\agent-manager\state.json` | `%APPDATA%\agent-manager\config.yaml` | + +Les variables d'environnement `AGENT_MANAGER_DATA`, `AGENT_MANAGER_STATE` et `AGENT_MANAGER_CONFIG_DIR` peuvent déplacer ces emplacements. Le répertoire d'installation est aussi configurable via `settings.install_dir` et celui des logs via `settings.log_dir`. + +#### Cycle d'installation (`am install `) + +1. **Résolution du catalogue** — `am` fusionne le catalogue embarqué (72 agents) avec `~/.config/agent-manager/config.yaml` et un éventuel `./agent-manager.yaml`. Vos définitions remplacent les entrées par défaut du même nom. +2. **Vérification des dépendances** — les outils requis (`node`, `python`, `uv`, `cargo`, `go`, `bun`, `git`...) sont détectés sur le `PATH`. S'il en manque, `am` détecte l'OS et propose la commande d'installation (`scoop`, `winget`, `apt`, `dnf`, `pacman`, `brew`...). Avec `--yes` ou `settings.auto_install_deps: true`, il peut l'exécuter à votre place. +3. **Choix de la méthode** — chaque agent déclare une méthode principale et des alternatives. `--method ` force le choix ; sinon `am` prend la première disponible. Pour `am update`, c'est la méthode utilisée lors de l'installation initiale qui est reconstruite. +4. **Exécution de l'installateur** — selon le type, les commandes réelles lancées sont : + +| Méthode | Ce que `am` exécute localement | Où ça atterrit | +|---|---|---| +| `npm` | `npm install -g --prefix ` | binaires dans `/bin/`, liens ou copie dans `bin/` | +| `bun` | `BUN_INSTALL= bun install -g ` | binaires dans `/bin/`, shims dans `bin/` | +| `pip` | `python -m venv /venv` puis `/bin/pip install --upgrade ` | exécutables dans `/venv/bin/` | +| `uv` | `uv venv --python 3.13 /venv` puis `uv pip install --python /bin/python ` | exécutables dans `/venv/bin/` | +| `cargo` | `cargo install --root ` | binaires dans `/bin/` | +| `go` | `GOBIN= go install @latest` | binaire directement dans `bin/` | +| `curl` | télécharge le script, l'affiche en `--verbose`, puis l'exécute avec `sh