tmux-sessionizer UX for herdr, in one static Go binary. Pick a project directory, and herdr attaches to its workspace — creating the workspace first only when it does not already exist. No duplicates, no declarative layout files, no separate picker process.
Bound inside herdr (prefix+o in the author's config):
[[keys.command]]
key = "prefix+o"
type = "pane"
command = "/home/prm/.config/herdr/bin/sessionizer"Or standalone:
sessionizer # picker: type to filter, enter to open
sessionizer direct myproject # skip the picker, resolve by namego build -trimpath -ldflags="-s -w" -o sessionizer .Requires herdr on PATH at runtime. Directory scan covers ~/project,
~/dotfiles, ~/.config up to depth 4, skipping .cache, node_modules,
.venv, .repos; adjust depth_max and the roots in main.go for your
layout.
- Attach by exact workspace label; create only on a miss. One code path,
in
open(), so attach-vs-create can never drift apart. - Traversal depth and heavy directories are bounded and named.
- herdr CLI errors degrade to "create" rather than half-failing mid-flow.