feat(herdr): sidebar affiche le modèle hermes de chaque pane

- modules/nixos/herdr : config.toml posé par tmpfiles L+ (rows_by_agent hermes
  = state_icon/machine/tab + terminal_title_stripped + agent), importé par
  profiles/tower/configuration.nix
- services/hermes : display.interface = "tui" (seule interface qui publie un
  titre OSC lu par herdr) + plugins.enabled = [] (neutralise l'entrée
  herdr-agent-state, inerte sous sudo su -l hermes)
This commit is contained in:
Hermes Agent
2026-09-26 18:09:58 -04:00
parent c858558d08
commit eb048167fe
4 changed files with 71 additions and 0 deletions
+22
View File
@@ -0,0 +1,22 @@
# Config herdr (multiplexeur d'agents, github:ogulcancelik/herdr).
# But : voir le modele Hermes de chaque pane dans la sidebar, sans rien taper.
#
# Principe : le TUI hermes ecrit son titre OSC sous la forme
# <etat> <session> . <modele> . <cwd> (⚠ bloqué, ⏳ travaille, ✓ idle)
# herdr lit ce titre (il s'en sert deja pour l'etat blocked/working/done, cf
# ~/.local/state/herdr/agent-detection/remote/hermes.toml) et l'expose aux
# lignes de la sidebar via le token terminal_title_stripped.
[ui]
# Label d'agent sur les bordures de panes splittees (le titre du pane porte deja le modele).
show_agent_labels_on_pane_borders = true
# Titre ecrit dans le terminal hote : les barres d'onglets du WM suivent le pane actif.
window_title = "{hostname}: {workspace} · {terminal_title}"
# Rows par agent : par defaut herdr n'affiche pas le titre du terminal, seulement
# l'agent ("hermes"), ce qui ne dit pas quel modele tourne dans le pane.
[ui.sidebar.agents.rows_by_agent]
hermes = [
["state_icon", "machine", "tab"],
["terminal_title_stripped"],
["agent"],
]
+26
View File
@@ -0,0 +1,26 @@
{
config,
pkgs,
lib,
...
}: {
# --- herdr : config de marc posee par le systeme ---
# herdr (multiplexeur d'agents) n'a pas d'option NixOS ; sa config vit dans
# ~/.config/herdr/config.toml et sert a afficher le MODELE hermes de chaque
# pane dans la sidebar (cf modules/nixos/herdr/config.toml).
#
# Marc est en home-manager STANDALONE (users/marc/home.nix, `HM=marc just home`,
# que hermes n'active pas) : on pose donc le fichier cote systeme, sous forme de
# symlink vers le store, exactement ce que ferait xdg.configFile. Un `just nixos`
# suffit, sans attendre une generation home-manager.
# (Le module home-manager `programs.herdr` n'existe pas dans le home-manager
# epingle : xdg.configFile serait la seule alternative, meme mecanisme.)
#
# Effet a chaud : `herdr server reload-config` (ou relance du client). Le fichier
# est en lecture seule (store) : une edition manuelle de ~/.config/herdr/config.toml
# ne tient pas, c'est ce fichier-ci qui fait foi.
systemd.tmpfiles.rules = [
"d /home/marc/.config/herdr 0755 marc users -"
"L+ /home/marc/.config/herdr/config.toml - - - - ${./config.toml}"
];
}