Metadata-Version: 2.5
Name: sessionview
Version: 0.0.1
Summary: sessionview - a sidebar for tmux: your projects (sessions) and your agents (seats), here and on remote hosts. Name reserved; the tool follows.
Project-URL: Homepage, https://github.com/mbailey/session
Author: Mike Bailey
License-Expression: GPL-3.0-or-later
Classifier: Development Status :: 1 - Planning
Requires-Python: >=3.11
Description-Content-Type: text/markdown

# 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](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 · grouped` on the agents heading are toggles; `q`
  reloads, `Q` quits, esc backs out of any view
- tab bar: click selects, drag reorders, `+` new tab; a close `×` when
  `@herd_tab_close` is 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.
