mirror of
https://github.com/Alkatrazz24/Funk-lab.git
synced 2026-07-08 06:24:42 +02:00
Asa peut AGIR sur le homelab (l'autre moitié de la vision), via le vrai agent Hermes, profil par défaut, tous ses outils — avec confirmation et jeton. Découverte : Hermes n'a pas d'API HTTP (appli TUI), mais un mode one-shot `hermes -z "<prompt>" --yolo`. On s'appuie dessus. storage-01 — exécuteur : - tools/hermes-exec/server.py : service HTTP qui lance `hermes -z --yolo` en user hermes, derrière un jeton Bearer (compare_digest), timeout + audit, une action à la fois. - rôle Ansible hermes_exec : systemd (User=hermes, env hermes-agent), jeton via EnvironmentFile 0640 (Vault vault_hermes_exec_token) ; ajouté au playbook storage-01. STT-server (0.5.0 → 0.6.0) : - agent.py : pont vers hermes-exec (jeton) + détection confirme/annule. - contexts.py : contexte « agent » (court-circuite le LLM). - app.py : flux dédié — handshake 2 temps par session (pending action) → sur « confirme », appelle hermes-exec ; « annule » annule. /v1/contexts masque « agent » si désactivé. - config : STT_ACTIONS_ENABLED (opt-in, défaut false) + URL + jeton (secret k8s). - deployment : env actions + secret stt-server-secrets/hermes-exec-token (optionnel). Sécurité : opt-in désactivé par défaut ; jeton obligatoire (sinon contexte caché + exécuteur refuse tout) ; --yolo atteint seulement jeton+confirmation en main ; audit storage-01. Client : AUCUN changement (le contexte « agent » apparaît tout seul dans le sélecteur). Validé en local : exécuteur (401 sans/mauvais jeton, exec avec bon jeton via echo), handshake serveur (TestClient : confirme→exécute, annule→annule, agent masqué si OFF). Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| hermes/builtin | ||
| ia | ||
| infra | ||
| install | ||
| k8s | ||
| ops | ||
| funk-cluster | ||
| incidents-llm-gpu.md | ||
| incidents.md | ||
| index_knowledge.py | ||
| README.md | ||
Administration Funk — Index
Navigation rapide
| Besoin | Fichier |
|---|---|
| Allumer / éteindre le homelab | ops/cluster.md |
| Déployer quelque chose sur k8s | k8s/argocd.md |
| Débugger l'inférence LLM | ia/llama_server.md · ia/rocm.md |
| Débugger Hermes / ask-agent | ia/hermes.md |
| Assistant vocal (STT / « Jarvis ») | ia/stt.md · ia/hermes-voice.md |
| RAG / recherche dans la doc | ia/rag.md |
| Voir les métriques / alertes | k8s/monitoring.md |
| Problème réseau / nftables | infra/reseau.md |
| Problème NFS / stockage | infra/nfs.md |
| Incident passé | incidents.md |
Guides d'installation (première mise en place)
| Guide | Cible |
|---|---|
| install/storage-01.md | AlmaLinux + RAID5 + Ansible + stack IA complète |
| install/gpu-01.md | AlmaLinux + ROCm + llama-server (RX 6700XT) |
| install/kubernetes.md | Talos + MetalLB + Traefik + DNS wildcard + NFS + monitoring |
ops/ — Opérations quotidiennes
| Fichier | Contenu |
|---|---|
| ops/cluster.md | funk-start, funk-stop, funk-status — démarrage/arrêt cluster complet |
| ops/ansible.md | Commandes Ansible — ping, apply, vault, debug, facts |
| ops/systeme.md | Services systemd, logs, ressources, NetworkManager, dnf |
infra/ — Infrastructure socle
| Fichier | Contenu |
|---|---|
| infra/reseau.md | nftables, IP forwarding, routage, NAT, debug |
| infra/nfs.md | NFS + RAID5 — exports, montages, automount, ajout de partages |
| infra/dnsmasq.md | DNS local lab.local — résolution, logs, ajout d'entrées |
| infra/ssh.md | Connexions SSH — alias, jump host, transfert de fichiers |
| infra/email.md | Postfix relay — SMTP sortant via Gmail (App Password) |
k8s/ — Cluster Kubernetes
| Fichier | Contenu |
|---|---|
| k8s/talos.md | Talos Linux — talhelper, nœuds, upgrades, backup etcd |
| k8s/argocd.md | ArgoCD GitOps — App of Apps, déploiement, dépannage |
| k8s/monitoring.md | Grafana · Prometheus · AlertManager — métriques, dashboards, alertes |
| k8s/n8n.md | n8n — automatisation, workflows actifs, credentials |
| k8s/open-webui.md | Open WebUI — chat web, backend LiteLLM |
| k8s/ghostfolio.md | Ghostfolio — suivi de portefeuille (PostgreSQL s01 + Redis) |
| k8s/k9s.md | k9s — TUI de gestion du cluster |
ia/ — Stack IA Funk
| Fichier | Contenu |
|---|---|
| ia/llama_server.md | llama-server — 4 instances (GPU + 2× CPU + embeddings :1238), métriques, build, modèles |
| ia/rocm.md | GPU RX 6700XT — ROCm, HSA_OVERRIDE_GFX_VERSION, debug |
| ia/litellm.md | LiteLLM Proxy — routage Qwen local + Claude API, config, validation |
| ia/hermes.md | Hermes Agent + ask-agent — profils, skills, SOUL.md, délégation |
| ia/hermes-souls.md | Prompts système (souls) par profil Hermes |
| ia/hermes-auto-improve.md | Worker d'analyse quotidienne de la doc par Hermes (trigger :9095) |
| ia/hermes-voice.md | Client vocal Hermes (CLI : faster-whisper + Piper + wake word) |
| ia/stt.md | STT — assistant vocal « Jarvis » (client stt + STT-server in-cluster + mémoire) |
| ia/rag.md | RAG — rag-query/rag-ingest, Qdrant funk-docs, embeddings |
| ia/alertmanager-webhook.md | Pont AlertManager → ask-agent (analyse LLM des alertes) |
incidents.md
incidents.md — historique des incidents avec causes, résolutions et fixes permanents.