Directories
ΒΆ
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
sesshin
command
Command sesshin is the sesshin CLI.
|
Command sesshin is the sesshin CLI. |
|
sesshin-hook
command
Command sesshin-hook is Claude Code's entry point into sesshin: sesshin-hook <verb>, with the event's payload on stdin.
|
Command sesshin-hook is Claude Code's entry point into sesshin: sesshin-hook <verb>, with the event's payload on stdin. |
|
internal
|
|
|
buildinfo
Package buildinfo reports the version, commit, uncommitted changes, and Go version of the running binary, and of another binary without running it (implementation-spec.md, Toolchain).
|
Package buildinfo reports the version, commit, uncommitted changes, and Go version of the running binary, and of another binary without running it (implementation-spec.md, Toolchain). |
|
cli
Package cli builds sesshin's cobra commands, runs each command's operation, and writes the one-line envelope and exit code (cli-spec.md).
|
Package cli builds sesshin's cobra commands, runs each command's operation, and writes the one-line envelope and exit code (cli-spec.md). |
|
config
Package config reads config.toml, sesshin's settings (design-spec.md, config.toml; implementation-spec.md, Settings).
|
Package config reads config.toml, sesshin's settings (design-spec.md, config.toml; implementation-spec.md, Settings). |
|
fsys
Package fsys is a thin interface over os.Root and flock, with a real implementation (OS) and a fault-injecting one (Fault).
|
Package fsys is a thin interface over os.Root and flock, with a real implementation (OS) and a fault-injecting one (Fault). |
|
hook
Package hook runs sesshin-hook's verbs under the hooks contract (hooks-spec.md, The contract).
|
Package hook runs sesshin-hook's verbs under the hooks contract (hooks-spec.md, The contract). |
|
hookconf
Package hookconf reads hooks.properties, sesshin-hook's one setting (design-spec.md, Hook settings; implementation-spec.md, Settings).
|
Package hookconf reads hooks.properties, sesshin-hook's one setting (design-spec.md, Hook settings; implementation-spec.md, Settings). |
|
hooklog
Package hooklog appends to hooks.log, the hooks' only channel to a person (hooks-spec.md, Log), and rotates it at 1 MiB (implementation-spec.md, Log rotation).
|
Package hooklog appends to hooks.log, the hooks' only channel to a person (hooks-spec.md, Log), and rotates it at 1 MiB (implementation-spec.md, Log rotation). |
|
jsonio
Package jsonio writes the design spec's File format, and reads the JSON sesshin needs kept exactly: every sesshin file, settings.json, and kitty's ls output into an ordered tree, and the statusline payload as raw bytes (implementation-spec.md, JSON reading and JSON writing).
|
Package jsonio writes the design spec's File format, and reads the JSON sesshin needs kept exactly: every sesshin file, settings.json, and kitty's ls output into an ordered tree, and the statusline payload as raw bytes (implementation-spec.md, JSON reading and JSON writing). |
|
live
Package live derives each session's liveness: live, ended, or unknown (design-spec.md, Liveness; implementation-spec.md, Liveness).
|
Package live derives each session's liveness: live, ended, or unknown (design-spec.md, Liveness; implementation-spec.md, Liveness). |
|
loc
Package loc resolves sesshin's locations: the config directory, the state directory, and Claude Code's settings.json (design-spec.md, Locations).
|
Package loc resolves sesshin's locations: the config directory, the state directory, and Claude Code's settings.json (design-spec.md, Locations). |
|
migrate
Package migrate holds sesshin's migration steps and the conversion of one file through them (design-spec.md, Migrations; implementation-spec.md, Migrate).
|
Package migrate holds sesshin's migration steps and the conversion of one file through them (design-spec.md, Migrations; implementation-spec.md, Migrate). |
|
model
Package model holds sesshin's file types and their validators (implementation-spec.md, Validation).
|
Package model holds sesshin's file types and their validators (implementation-spec.md, Validation). |
|
ops
Package ops holds sesshin's operations (operations.md) and their output envelope.
|
Package ops holds sesshin's operations (operations.md) and their output envelope. |
|
payload
Package payload reads a hook's JSON payload into one struct (hooks-spec.md, Reading the payload; implementation-spec.md, JSON reading).
|
Package payload reads a hook's JSON payload into one struct (hooks-spec.md, Reading the payload; implementation-spec.md, JSON reading). |
|
pick
Package pick is sesshin's pickers, built on fzf (picker-spec.md): commands for a person at a terminal.
|
Package pick is sesshin's pickers, built on fzf (picker-spec.md): commands for a person at a terminal. |
|
placement
Package placement holds what every terminal backend shares: the rule that rules a session out of placement before any backend is asked.
|
Package placement holds what every terminal backend shares: the rule that rules a session out of placement before any backend is asked. |
|
placement/backends
Package backends is the list of terminal backends this binary has, in detection order, the most specific variables first (design-spec.md, Terminal backends).
|
Package backends is the list of terminal backends this binary has, in detection order, the most specific variables first (design-spec.md, Terminal backends). |
|
placement/iterm2
Package iterm2 is the iTerm2 terminal backend (design-spec.md, The iTerm2 backend), as a placement.Backend with every optional ability but sync (Backend): it recognizes iTerm2 from a hook's environment, replaces and validates the two keys of a session's placement, and, through fixed AppleScript run by osascript, launches a window for spawn (through a launch file, Store), says which panes exist, finds a session's pane by its tty, pastes into it for send, and focuses it.
|
Package iterm2 is the iTerm2 terminal backend (design-spec.md, The iTerm2 backend), as a placement.Backend with every optional ability but sync (Backend): it recognizes iTerm2 from a hook's environment, replaces and validates the two keys of a session's placement, and, through fixed AppleScript run by osascript, launches a window for spawn (through a launch file, Store), says which panes exist, finds a session's pane by its tty, pastes into it for send, and focuses it. |
|
placement/kitty
Package kitty is the kitty terminal backend (design-spec.md, The kitty backend), as a placement.Backend with every optional ability (Backend): it recognizes kitty from a hook's environment, replaces and validates the kitty keys of a session's placement, and asks kitty for the keys only its sync writes, says which windows exist, launches one for spawn (Launch), and finds a session's window and pastes into it for send (WindowForPID, SendText), and focuses it (FocusWindow).
|
Package kitty is the kitty terminal backend (design-spec.md, The kitty backend), as a placement.Backend with every optional ability (Backend): it recognizes kitty from a hook's environment, replaces and validates the kitty keys of a session's placement, and asks kitty for the keys only its sync writes, says which windows exist, launches one for spawn (Launch), and finds a session's window and pastes into it for send (WindowForPID, SendText), and focuses it (FocusWindow). |
|
placement/placementtest
Package placementtest is a kitty backend whose calls to the terminal are functions a test supplies, for the tests of the packages that reach a backend only through placement's interfaces.
|
Package placementtest is a kitty backend whose calls to the terminal are functions a test supplies, for the tests of the packages that reach a backend only through placement's interfaces. |
|
proc
Package proc finds Claude's process from a hook or the statusline: its pid, its start time with the boot it belongs to, and whether another session started it (design-spec.md, Liveness; implementation-spec.md, Process lookup).
|
Package proc finds Claude's process from a hook or the statusline: its pid, its start time with the boot it belongs to, and whether another session started it (design-spec.md, Liveness; implementation-spec.md, Process lookup). |
|
record
Package record is Recording an event (hooks-spec.md): the one place lifecycle.json is written by an event, and the place sesshin.json is created, completed, and given its sesshin ID.
|
Package record is Recording an event (hooks-spec.md): the one place lifecycle.json is written by an event, and the place sesshin.json is created, completed, and given its sesshin ID. |
|
schematest
Package schematest compiles the specs' JSON Schemas (schemas/, generated by schemagen) for tests, and reports where a value fails one.
|
Package schematest compiles the specs' JSON Schemas (schemas/, generated by schemagen) for tests, and reports where a value fails one. |
|
settings
Package settings builds the proposed settings.json: it reads Claude Code's settings.json into the ordered tree, finds sesshin's entries in it, and proposes the tree with sesshin wired in (ProposeInstall) or out (ProposeUninstall), changing nothing else (implementation-spec.md, The settings.json proposal; hooks-spec.md, Registration).
|
Package settings builds the proposed settings.json: it reads Claude Code's settings.json into the ordered tree, finds sesshin's entries in it, and proposes the tree with sesshin wired in (ProposeInstall) or out (ProposeUninstall), changing nothing else (implementation-spec.md, The settings.json proposal; hooks-spec.md, Registration). |
|
statusline
Package statusline is the statusline's tick (hooks-spec.md, statusline, and Rendering): Run collects what steps 1β4 find (the previous statusline.json, Claude's process, git_branch, and the burn rate), renders the line (step 5), and writes statusline.json (step 6), in that order.
|
Package statusline is the statusline's tick (hooks-spec.md, statusline, and Rendering): Run collects what steps 1β4 find (the previous statusline.json, Claude's process, git_branch, and the burn rate), renders the line (step 5), and writes statusline.json (step 6), in that order. |
|
templates
Package templates reads spawn templates (design-spec.md, Templates): load one, list them, and merge a spawn input over one.
|
Package templates reads spawn templates (design-spec.md, Templates): load one, list them, and merge a spawn input over one. |
|
testhook
Package testhook is the seam for injecting a panic or a fatal error at a chosen point of a hook (implementation-spec.md, Test hooks).
|
Package testhook is the seam for injecting a panic or a fatal error at a chosen point of a hook (implementation-spec.md, Test hooks). |
|
text
Package text is defs' text (design-spec.md, File schemas): a string with no line break and no control character, the test for one, and Scrub, which makes one of any string.
|
Package text is defs' text (design-spec.md, File schemas): a string with no line break and no control character, the test for one, and Scrub, which makes one of any string. |
|
tools/schemagen
command
Command schemagen extracts every JSON Schema in the specs β each ```json block with a top-level $id β into schemas/<$id>.json, for the tests.
|
Command schemagen extracts every JSON Schema in the specs β each ```json block with a top-level $id β into schemas/<$id>.json, for the tests. |
Click to show internal directories.
Click to hide internal directories.