Herd
A sidebar for tmux, in the spirit of herdr: your projects (tmux sessions)
and your agents (seats), here and on remote hosts, one click away, with a
right-click menu built from what is installed. Session's TUI — a
controller and view for the session tools, drawn beside tmux.
sessionview 0.0.1 on PyPI reserves the name; the tool follows (Mike, approved by mail 00:25 Thu 2026-09-10).
herd [SESSION] # in this terminal: sidebar left, SESSION attached
# right (a private outer tmux holds the two panes)
prefix H # the same sidebar as a popup in any tmux client
Read SPEC.md first: what Herd is, the rules of the view, the
contract with session, the plugin manifest, config, measured limits.
This repo is the reference implementation (Mike, 18:23 Sun
2026-09-06: "a working reference implementation ... it can be a life
raft") — session integrates from the spec; this stays comparable and
runnable.
Layout
bin/tmux-sidebar the view, the clicks, the menus (Python 3.11+, stdlib)
bin/herd the front door (the frame) + the sidebar supervisor
bin/herd-frame the frame: outer tmux, sidebar pane + client pane
bin/herd-session a project session with code / git / project / tasks tabs
bin/herd-newtab the tab bar's "+"
tmux/herd.conf the herd look, session-scoped (sourced with S= and HERD_ROOT=)
tmux/tabs-top.conf the same look, global (source-file it from ~/.tmux.conf)
config/config.json every default, explicit; ~/.sessionview/config.json is made from it
plugins/*/ herd-plugin.toml (+ scripts): session, voicemode, taskmaster
Paths resolve from the checkout (HERD_ROOT); state lives in
~/.local/state/herd (HERD_STATE). Needs: tmux ≥ 3.7, Python ≥ 3.11,
session on PATH; tm and the voicemode plugin are optional (their menu
items appear only when they are installed).
Install
git clone ms2:git/repos/sessionview.git ~/Code/failmode/mbailey/sessionview
ln -s ~/Code/failmode/mbailey/sessionview/bin/{herd,herd-frame,tmux-sidebar,herd-session} ~/.local/bin/
herd
Keys and clicks
- sidebar: click a project or seat → go there; right-click → its menu;
new→ a session picker (type to filter, ↑↓, enter); the store name → pick a store;all · groupedon the agents heading are toggles;qreloads,Qquits, esc backs out of any view - tab bar: click selects, drag reorders,
+new tab; a close×when@herd_tab_closeis set (HERD_TAB_CLOSE=1 herd) - menu: ↑↓ / j k move, the letter or enter picks, esc closes
Built by Pip, Fri 2026-09-04 – Sun 2026-09-06, from Mike's asks by voice, with Cora reading herdr's own window for the colours.
Release files for sessionview 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sessionview-0.0.1.tar.gz | 3.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sessionview-0.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 6.3 kB
Release files / sessionview-0.0.1.tar.gz
| Download URL | sessionview-0.0.1.tar.gz |
|---|---|
| Size | 3.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6fe578c48bb0b5d4420a2bdcf318bfbfa09ec9b66dec66dd971fc5531aaba0f9
|
|
BLAKE2b-256 checksum How to use checksums |
1a4383024ff666f1e099193d28558032c53b2da70d98f94761c3add2f395e895
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.9 {"installer":{"name":"uv","version":"0.11.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / sessionview-0.0.1-py3-none-any.whl
| Download URL | sessionview-0.0.1-py3-none-any.whl |
|---|---|
| Size | 2.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7cb5efcf38ee04cb61874f05e3c345c32c4ee6a222e52d5736db02297bb11a94
|
|
BLAKE2b-256 checksum How to use checksums |
4d1818c5c06f37aa8c2500218e78228247e2cfd450f0c86792453c48f5895c84
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.9 {"installer":{"name":"uv","version":"0.11.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|