Commit graph

27 commits

Author SHA1 Message Date
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
bd7181b8db docs: mise à jour README principal — état cluster + stack IA complète
- Stack IA : diagramme multi-agents (funk-ai/system/monitor/brain),
  tableau profils Hermes, ask-agent délégation inter-agents
- Organisation repo : hermes_user, hermes-skills/, talos/, k8s/
- Gestion cluster : funk-start/stop --k8s, lien admin/cluster.md
- Roadmap : cluster k8s , MetalLB+Traefik , ask-agent ,
  hermes_user , WOL et ArgoCD restants

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 16:43:53 +02:00
alkatrazz
9f027cb833 docs: ask-agent + skills Hermes — documentation complète
- admin/ask-agent.md (nouveau) : doc détaillée ask-agent CLI,
  architecture 4 agents, skill agent-delegation, gestion skills
  dans les profils Hermes, dépannage, points d'attention
- admin/hermes.md : section Skills avec point d'attention double
  emplacement (skills/ + profiles/<profil>/skills/), tableau skills
  custom Funk, restart obligatoire après modif skill
- admin/litellm.md : flux et modèles mis à jour (qwen3-8b,
  qwen3-1.7b-system/monitor), lien vers ask-agent.md
- admin/README.md : entrée ask-agent.md ajoutée

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 16:37:36 +02:00
alkatrazz
515933c949 docs: suppression LM Studio — cluster utilise llama-server ROCm
- CLAUDE.md : état mis à jour (2026-05-13), gpu-01 → llama-server,
  setup IA → endpoints réels (llama-server + LiteLLM), rôles Ansible
  à jour, suppression CLI LM Studio
- admin/lm_studio.md : marqué supprimé du cluster, lms CLI conservée
  pour téléchargement modèles uniquement, /opt/lmstudio disparu
- admin/nfs.md : section modèles mise à jour (plus de symlink lmstudio)
- admin/rocm.md : debug section → llama-server, section Vulkan supprimée
- admin/README.md : description lm_studio.md mise à jour

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 16:21:51 +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
alkatrazz
0c89d262d1 docs: cluster.md — procédures allumage/extinction détaillées
Ajout des procédures pas-à-pas pour démarrer/éteindre avec et sans k8s.
Note sur WOL compute nodes (BIOS non configuré → allumage manuel).
Mise à jour section aliases → fonctions bash avec support --k8s.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 15:11:47 +02:00
alkatrazz
763b29495e docs: incident EXT4 2026-05-13 + hermes-agent nouvelle archi SSD
- incidents.md : incident corruption EXT4 après arrêt brutal (655 erreurs,
  e2fsck, réinstall hermes-agent, nouveau chemin /opt/hermes/.hermes/)
- hermes.md : arborescence mise à jour (code SSD vs données RAID5),
  chemins pip/venv/frontend corrigés
- Ansible role hermes_agent : venv path et wrapper mis à jour
  (hermes_home/.hermes/hermes-agent/venv/ au lieu de hermes_data_dir/)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 14:49:53 +02:00
alkatrazz
a1826fe339 docs: gestion cluster + script funk-cluster mis à jour
- admin/cluster.md : nouveau guide démarrage/arrêt (funk-start/stop/--k8s)
- admin/README.md : lien vers cluster.md
- admin/systeme.md : services llama-server mis à jour (GPU + 2 CPU)
- ansible/roles/litellm/files/funk-cluster : script versionné
  (talosctl fix, storage-01 shutdown, --k8s optionnel, stop timeout)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 02:11:21 +02:00
alkatrazz
07b94fe8a8 docs: profils Hermes multi-modèles + progression 12-13 mai
- admin/hermes.md : section profils complète (funk-ai/brain/system/monitor),
  architecture multi-modèles gpu-01, arborescence profiles/
- PROGRESS.md : entrées 2026-05-12 et 2026-05-13

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 01:52:58 +02:00
alkatrazz
0ce6be04bb docs: réorganisation install/ — guides séparés par machine
- admin/install/README.md        — index + ordre d'installation recommandé
- admin/install/storage-01.md   — AlmaLinux + RAID5 + Ansible + stack IA (Hermes/LiteLLM/Qdrant/PostgreSQL)
- admin/install/gpu-01.md       — AlmaLinux + ROCm + llama-server (RX 6700XT, HSA_OVERRIDE)
- admin/install/kubernetes.md   — ex admin/installe.md (Talos + MetalLB + Traefik)
- admin/README.md               — séparation install/ vs référence opérationnelle

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 23:03:05 +02:00
alkatrazz
0bdfe49d75 docs: guide d'installation complet cluster Talos/k8s
Couvre de A à Z : outils, SOPS/age, talconfig, installation des 3 nœuds,
bootstrap etcd, MetalLB, Traefik, DNS wildcard. Section pièges documentant
toutes les erreurs rencontrées lors de l'installation réelle.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 22:51:03 +02:00
alkatrazz
c8a1faa632 feat: MetalLB + Traefik + wildcard DNS lab.local
- MetalLB pool 192.168.10.200-230 (L2 mode)
- Traefik LoadBalancer sur 192.168.10.200 (HTTP/HTTPS)
- dnsmasq wildcard *.lab.local → 192.168.10.200
- Fix Flannel CrashLoopBackOff : ClusterRoleBinding corrigée (kube-flannel → kube-system)
- Doc talos.md : procédure complète MetalLB + Traefik + pièges Flannel

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 22:45:06 +02:00
alkatrazz
bb72145365 feat(talos): bootstrap Kubernetes cluster funk (3 nodes, v1.33.1)
- Add talconfig.yaml with compute-01/02/03 (nvme0n1, Flannel CNI)
- Add SOPS/age encryption for talsecret.sops.yaml
- Add patches: NTP/DNS → storage-01, kubelet reserved for 8GB workers
- Fix nftables: open DHCP port 67 for cluster LAN
- Add dnsmasq DHCP with static leases for all 3 compute nodes
- Add admin/talos.md: full install procedure + admin commands
- Install kubectl + talosctl on storage-01

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 22:11:38 +02:00
alkatrazz
a87d1baf76 docs(hermes): add update procedure and post-update checks
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 20:28:27 +02:00
alkatrazz
6d375da7b2 docs: add Funk/ reference docs and update hermes TUI instructions
- Remove Funk/ from .gitignore (repo is private)
- Add HOMELAB.md and agent configs for Hermes context
- Update hermes TUI doc: must run as hermes user from /srv/data/hermes

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 19:51:42 +02:00
alkatrazz
dca71144d6 docs(admin): add ops documentation and fix hermes dashboard service
- Remove admin/ from .gitignore (repo is now private)
- Add --tui flag to hermes-dashboard.service template
- Document hermes-tui wrapper, dashboard access, TUI usage

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 18:50:43 +02:00
alkatrazz
1544a2fc6d Merge branch 'main' of github.com:Alkatrazz24/Funk-lab 2026-05-12 18:02:12 +02:00
alkatrazz
572e949ce4 ajout de linterface hermes + route 2026-05-12 18:01:50 +02:00
21ff95f4b4
Update README.md
add image
2026-05-12 17:33:14 +02:00
alkatrazz
5615ead566 Ajout de l'image cluster 2026-05-12 17:32:10 +02:00
alkatrazz
bcd134a091 docs: add README with cluster overview and architecture 2026-05-12 17:22:26 +02:00
alkatrazz
a2dee9fe1c Merge branch 'main' of github.com:Alkatrazz24/Funk-lab 2026-05-12 17:19:06 +02:00
alkatrazz
b3fce8af5d feat: initial commit — Ansible roles storage-01/gpu-01 opérationnels 2026-05-12 17:17:03 +02:00
5b68f332b1
Initial commit 2026-05-12 17:02:24 +02:00