--- name: agent-delegation description: "Délègue des sous-tâches aux agents spécialisés du cluster Funk via ask-agent. OBLIGATOIRE pour toute analyse de logs, métriques ou monitoring système." version: 1.2.0 author: Funk Lab license: MIT platforms: [linux] metadata: hermes: tags: [multi-agent, delegation, funk, system, monitor, brain, local] --- # Délégation inter-agents — Cluster Funk ## Contexte critique Tu tournes **EN LOCAL sur `storage-01`**. Ne jamais SSH vers `storage-01` depuis toi-même — toutes les commandes locales (systemctl, journalctl, etc.) s'exécutent directement via Terminal sans SSH. --- ## Ce qu'est ask-agent `ask-agent` est un **binaire shell** dans `/usr/local/bin/ask-agent`. **Signature exacte :** ``` ask-agent "" ``` Le deuxième argument est **toujours du texte** (une question ou des données copiées-collées). **Ce n'est PAS un wrapper de commandes shell.** Ne jamais passer de commandes comme `tail`, `journalctl`, etc. comme argument. --- ## Erreurs INTERDITES ```bash # ❌ FAUX — ask-agent ne reçoit pas de commandes shell terminal: ask-agent monitor tail -n 20 /var/log/messages terminal: ask-agent monitor journalctl -u litellm -n 20 terminal: ask-agent monitor /var/log/messages # ✅ CORRECT — deux étapes obligatoires terminal: journalctl -u litellm -n 20 --no-pager terminal: ask-agent monitor "voici les logs litellm : — y a-t-il des erreurs ?" ``` --- ## Pattern OBLIGATOIRE : 2 étapes **Étape 1 — Collecter les données** (commande shell normale via Terminal) **Étape 2 — Passer le texte à ask-agent** (avec les données collées dans la question) ```bash # Exemple complet — analyse logs litellm terminal: journalctl -u litellm -n 20 --no-pager # → récupère le résultat, puis : terminal: ask-agent monitor "voici les 20 dernières lignes de litellm : — identifie les erreurs" # Exemple complet — services en erreur terminal: systemctl --state=failed --no-pager # → récupère le résultat, puis : terminal: ask-agent monitor "services systemd en erreur sur storage-01 : — résume les problèmes" # Exemple complet — espace disque terminal: df -h /srv/data # → récupère le résultat, puis : terminal: ask-agent system "est-ce que cette utilisation disque est préoccupante : " ``` --- ## Quand utiliser quel agent | Situation | Agent | |---|---| | Analyser logs d'un service systemd | `monitor` | | État de santé des services | `monitor` | | Résumer une sortie de commande | `system` | | Question Linux / formatage / calcul | `system` | | Architecture, revue critique, raisonnement complexe | `brain` | --- ## Agents disponibles | Agent | Modèle | Usage | |---|---|---| | `brain` | Claude Sonnet 4.6 API | Raisonnement complexe, architecture | | `funk-ai` | Qwen3-8B GPU (:1234) | Toi-même — rarement utile | > Agents `system` et `monitor` retirés le 2026-06-20 (serveurs CPU :1236/:1237 supprimés). > Pour les réactiver, repointer leur alias LiteLLM sur `qwen3-8b`. --- ## Syntaxe complète ```bash ask-agent "" ask-agent "" --max-tokens 2000 # pour de longs logs ask-agent "" --system "" # avec prompt système ``` Toujours via Terminal : ``` terminal: ask-agent monitor "les logs que j'ai récupérés : — analyse" ``` --- ## Différence avec delegate_task - **`ask-agent`** → appel LiteLLM direct, réponse immédiate, pour analyses rapides - **`delegate_task`** → spawn d'un agent Hermes complet → pour tâches longues multi-étapes Pour le monitoring et les analyses système : **toujours `ask-agent`**. --- ## Notes techniques - `ask-agent` appelle `http://127.0.0.1:4000/v1/chat/completions` - `system` et `monitor` : `/no_think` activé automatiquement → réponse rapide sans raisonnement interne - `brain` consomme des tokens API Anthropic — réserver aux cas complexes - Timeout : 120s