KA Guardian — ka2 · ka4 · ka6 (agents gardiens des connecteurs)
Un seul repo pour les 3 sites gardiens : www.ka2.bot, www.ka4.bot, www.ka6.bot.
Chaque agent est une instance de orchestrator/main.py (env AGENT=ka2|ka4|ka6),
identité (accent, tagline, services surveillés) dans topology.json.
Production (nœud M4M36)
- Répertoire :
~/cluster-projects/ka-guardian(ce repo, origin = gitsrv/spbgitka-guardian.git). - Process : launchd (PAS pm2) —
com.ka2.guardian(:8799),com.ka4.guardian(:8899),com.ka6.guardian(:8999). Tunnels ngrokcom.kaX.ngrok(ne pas toucher). - Pas d'étape de build : Python servi en place (
.venvlocal au nœud).
Après toute modification (sur M4M36)
- Redémarrer le ou les agents concernés :
launchctl kickstart -k gui/$(id -u)/com.ka2.guardian(idem ka4/ka6 — les 3 partagent le code, redémarre les 3 si le changement est commun). - Vérifier :
curl -sf localhost:8799/health(8899, 8999) puis le site public. git add … && git commit && git push origin main(origin = gitsrv/spbgit, PAS GitHub).
⚠️ NE JAMAIS redémarrer les runners (com.ka.guardian-runner sur M3U96a/b, M4M64a/b) : ça tue la mission Claude en vol. Ils ne vivent pas sur ce nœud de toute façon.
⚠️ Le trafic LAN direct est bloqué par macOS 26 (Local Network Privacy) — le courrier zsh com.ka.guardian-courier s'en occupe ; ne pas le contourner.
Pages & image de marque
orchestrator/web/index.html+commander.html: les jetons__NUM__,__DOMAIN__,__TAGLINE__(balises OG) sont rendus par agent au démarrage dansmain.py(_render_page).- Bannières de partage
orchestrator/web/og-ka{2,4,6}.png(servies à/og.png) : régénérer sur le laptop avecpython3 deploy/make_og_images.py(Playwright/Chromium) si l'identité visuelle change.
Déploiement complet depuis le laptop
deploy/deploy.sh orchestrators (tar-over-ssh + vérif md5 + relance launchd). Source laptop : ~/Desktop/Groupe-KA/apps-web/ka-guardian.