terminal_title_stripped → tab persistence

Sidebar session_title alone on top — plus numeric tabs auto-rename to that stripped OSC title so hermes --tui -c "hey..." survives after exit.

Install plugin herdr docs
install
herdr plugin install jovylle/herdr-session-title-name --yes
sidebar (untouched)
rows = [["terminal_title_stripped"]]
sidebar (modified) — prepend
rows = [["terminal_title_stripped"], ["agent"], ...]
preview — sidebar + tab bar
agents priority
─────────────────────────────────
hey what is 1 plus 1 ← ["terminal_title_stripped"] alone on top
hermes ← ["agent"]
● lab ← ["state_icon","workspace"]
─────────────────────────────────
tab bar: hey what is 1 plus 1 ← was "1", persists after close

Poll + events sync numeric tabs (1,2…) to stripped title. Manual DASH/HUB untouched.

How it works (no fork needed)

Event hooks

tab.created / pane.created / pane.focused / tab.focused / pane.exitedsync.sh fetches herdr api snapshot and renames numeric tabs via herdr tab rename.

Startup poller

watch.sh loops every 1.5s — catches OSC title changes from hermes --tui -c that don’t fire a hook. Respects manual names.

Repuposed

Renamed from herdr-session-name (which used $session_name + session_title alias via fork) → now herdr-session-title-name pure plugin at /lab/herdr-session-title-name. Fork at /lab/herdr-fork left clean for upstream contributions. No fork build required for users.

herdr plugin log list --plugin jovylle.session-title-name herdr tab list | jq herdr api snapshot | jq '.result.snapshot.panes[] | {pane_id, terminal_title_stripped}'
MIT · jovylle · herdr docs: sidebar row layouts · repo redeploy: npx wrangler pages deploy site --project-name herdr-session-title-name --branch main