Commit graph

10 commits

Author SHA1 Message Date
470c69881c
chore(gpu-01): retire les serveurs llama CPU system/monitor/dev (inutilisés) (#31)
Trois instances llama-server CPU manuelles (hors Ansible) tournaient sur gpu-01
sans servir : déjà orphelines de LiteLLM (alias absents de config.yaml, d'où le
bruit "Invalid model name"). Suppression complète :

gpu-01 (opérationnel, déjà fait) :
- systemctl disable --now + rm des units llama-server-{system,monitor,dev}
- ports firewall 1235/1236/1237 fermés

Repo :
- monitoring : scrape jobs (values.yaml) + alertes LlamaServer{System,Monitor}Down
  (alerts-ai.yaml) retirés → plus de "target down"/alertes fantômes ; panneaux de
  statut dashboard-infrastructure recyclés (system→llama-embed, monitor supprimé).
- docs admin/ + hermes-skills (souls funk-ai/brain, SKILL agent-delegation) mises à
  jour : inventaire modèles, profils Hermès system/monitor sans backend (à repointer
  sur qwen3-8b), litellm, ops, monitoring.

Les profils Hermès system/monitor existent toujours mais sans backend dédié.
Dashboards Grafana dashboard-ai (panneaux graphiques CPU) laissés tels quels
(cosmétique, séries vides, aucune alerte).

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-20 13:25:50 +02:00
c023ab0e58
docs: passe de cohérence documentaire (STT, Ghostfolio, embeddings, Qdrant) (#15)
Aligne la documentation sur l'état réel du cluster au 2026-06-18 :

- Qdrant : crash-loop résolu le 17/06 (statut « HS / EN COURS » corrigé dans
  CLAUDE.md, README, admin/ia/rag.md, admin/incidents.md, admin/ia/stt.md).
  Précision : collection funk-docs supprimée lors de la réparation → re-ingest
  RAG encore à faire (pas de surévaluation du statut).
- STT (assistant vocal « Jarvis ») : ajouté partout (était déployé mais non documenté).
- Ghostfolio : ajouté partout (était déployé mais non documenté).
- Embeddings dédiés nomic-embed-text :1238 : marqués opérationnels (roadmap
  README disait encore « TODO »).
- llama-server : ×3 → ×4 (instance embeddings) ; gap IaC précisé (embeddings géré
  par le rôle, seules les 2 instances CPU restent manuelles).
- Structure k8s/ corrigée dans CLAUDE.md : ajout stt/ + ghostfolio/, suppression
  des sous-dossiers traefik/ + metallb/ inexistants (installés via helm au bootstrap).
- Namespaces et liste des secrets Vault (vault_pg_ghostfolio_password) complétés.
- admin/README.md : index complété (~10 docs manquants : email, n8n, open-webui,
  ghostfolio, k9s, stt, rag, hermes-voice/souls/auto-improve, alertmanager-webhook).
- Funk/ (conception d'origine : LM Studio + agents Goose, obsolète) déplacé sous
  archive/ avec bandeau « obsolète » + archive/README.md (historique git préservé).


Claude-Session: https://claude.ai/code/session_017Qjq5jHiqNepnobJpHYpCa

Co-authored-by: Claude <noreply@anthropic.com>
2026-06-18 11:16:34 +02:00
alkatrazz
e17396a150 feat(souls): révision complète des 4 SOUL.md Hermes + doc
funk-ai : ajout rag-query, tableau services complet, patterns courants
monitor : format VERDICT obligatoire, services Funk + signes d'erreur, sévérités alertes
system  : contexte AlmaLinux/k8s, formats de réponse par type, exemples concrets
brain   : contexte cluster complet, contrainte GPU, RAM k8s, quand l'appeler

docs: admin/ia/hermes-souls.md — résumé des 4 profils, déploiement

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-14 22:22:56 +02:00
alkatrazz
eae6e76645 feat(rag): RAG Hermes — Qdrant + rag-ingest/rag-query + skill funk-ai
Indexation de admin/ (284 chunks) dans Qdrant via embeddings Qwen3-8B.
rag-query utilisable en CLI et depuis le profil funk-ai de Hermes.
Note: modèle d'embedding générique — qualité limitée, voir admin/ia/rag.md.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-14 22:16:06 +02:00
alkatrazz
00d10234f9 feat: amélioration routing ask-agent + identité SOUL.md profils
- SOUL.md funk-ai : tableaux détaillés system vs monitor (quand appeler
  chaque agent avec exemples concrets), section delegate_task vs ask-agent
- SOUL.md system : rôle clarifié (traitement texte, PAS analyse santé),
  format de réponse explicite (verdict direct, pas de préambule)
- hermes-agent.service : SupplementaryGroups=systemd-journal pour que
  journalctl fonctionne sans sudo depuis le Terminal de Hermes
- Ansible common : admin_user (alkatrazz) ajouté au groupe systemd-journal
- admin/hermes.md : section SOUL.md complète (déploiement, contenu, profils)
- admin/ask-agent.md : distinction system vs monitor documentée avec
  tableau et exemples, note /no_think, monitor réservé supervision

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 18:59:48 +02:00
alkatrazz
ed963180f2 fix: SOUL.md funk-ai — journalctl --output=cat + no sudo + no skill_manage
3 corrections suite à la session TUI :
- Interdire sudo journalctl (hermes a accès direct, sudo = timeout + ANSI)
- Forcer --output=cat sur journalctl pour éviter les codes couleur ANSI
- Clarifier que ask-agent s'appelle via Terminal, jamais via skill_manage
- Règle absolue : ask-agent reçoit du texte, jamais des commandes shell

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 18:05:34 +02:00
alkatrazz
37a2afe66e feat: SOUL.md pour les 4 profils Hermes (funk-ai, system, monitor, brain)
- funk-ai : identité complète — environnement cluster, machines, services,
  SSH hermes@gpu-01, kubectl, outils ask-agent avec règles d'usage et
  erreurs interdites, style concis/technique
- system : agent utilitaire rapide, réponses directes sans reasoning
- monitor : agent surveillance logs/métriques, orienté détection d'anomalies
- brain : agent analyse avancée Claude Sonnet, contexte cluster Funk

Corrige aussi system/monitor dont les SOUL.md étaient corrompus
(séquelles de l'incident EXT4 du 2026-05-13).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 17:59:16 +02:00
alkatrazz
2b84a8c357 fix: SKILL.md v1.2.0 — section erreurs interdites + pattern 2 étapes
Le modèle passait des commandes shell comme argument à ask-agent
(ask-agent monitor journalctl ...) au lieu de passer du texte.

Ajout section "Erreurs INTERDITES" avec exemples / explicites,
et reformulation du pattern obligatoire en 2 étapes clairement séparées.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 17:41:59 +02:00
alkatrazz
5e93c1d3d7 fix: ask-agent /no_think + SKILL.md renforcé + tests 10/10
- ask-agent : ajout /no_think pour agents system et monitor
  (Qwen3-1.7B en mode thinking consommait tous les tokens sur
  le raisonnement interne, laissant content: "" vide)
- SKILL.md v1.1.0 : règles OBLIGATOIRES de délégation, distinction
  ask-agent vs delegate_task, exemples concrets, syntaxe exacte
- test.sh : suite 10 tests end-to-end — CLI disponible, LiteLLM,
  system/monitor/brain, données réelles, skill présence/activation,
  Hermes funk-ai appelle Terminal: ask-agent

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 17:26:25 +02:00
alkatrazz
6be2a89480 feat: rôle hermes_user + ask-agent + skills délégation
- Nouveau rôle hermes_user : création user/group UID 1002 sur storage-01
  et gpu-01, sudoers limités par host, clé SSH ed25519 générée sur
  storage-01 et distribuée vers gpu-01, ssh_config + known_hosts
- Kubeconfig copié depuis ansible vers hermes sur storage-01
- ask-agent : script bash LiteLLM pour déléguer aux agents
  system/monitor/brain/funk-ai
- hermes-skills/funk/agent-delegation : skill Hermes pour les
  inter-profile calls avec pattern Terminal: ask-agent
- Playbooks storage-01 et gpu-01 : ajout du rôle hermes_user

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 16:03:43 +02:00