letee
Letee, pronounced luh-tee, is a tmux cockpit for local and remote tmux sessions and coding agents.
It adds a persistent sidebar to an existing terminal. Your sessions remain ordinary tmux sessions, with your terminal, keybindings, plugins, and workflows unchanged. Letee keeps managed sessions on a dedicated inner server named letee.inner on each local or remote host, and does not discover or change sessions on tmux's ordinary default server. By default, letee applies a server-wide tmux configuration overlay to each letee.inner server. It changes styles, mouse, clipboard, passthrough, and bell settings. Set tmux_config_overlay = false to opt out.
Why letee?
- Keep your setup. Letee builds on tmux instead of replacing it. There is no new terminal app or replacement tmux setup.
- See local and remote work together. Sessions and their agents share one sidebar.
- Find work that needs attention. Agent states, alerts, and tmux bells point to sessions that need you.
- Jump to the right pane. Select a session or go directly to an agent's exact tmux window and pane.
Requirements
You need Python 3.11 or newer, tmux and OpenSSH.
Install and launch
pip install letee
letee
Letee opens an outer tmux cockpit with the sidebar on the left and the selected session, or a startup pane, on the right. The default outer prefix is C-s. Your tmux prefix and keybindings stay the same if you have any. Use your mouse if that's what you're most comfortable with.
How it works
Letee creates or attaches to a dedicated outer tmux server. Bare letee uses the letee outer socket; -L NAME uses letee-NAME. Reopening the same name uses attach -d, moving the cockpit to the newest terminal.
Inner local and remote sessions use letee.inner, one shared server per host. Named outer cockpits on the same host share those inner sessions. The ordinary tmux default server is outside letee's scope. Sessions there stay running but are not discovered or changed.
Open or add a local tmux session
- Use your mouse and click "+ add" or use the keyboard equivalent:
- Press
C-s +, type a session name, and pressEnter. Letee searches every discovered session on the chosen host, including tracked sessions. PressingEnteron a tracked match switches to it, an untracked match tracks and opens it, and a free name creates and tracks it.
Configure agent discovery
Use the local agent discovery guide to install agent-status for Claude Code, Codex, Pi, or OpenCode. It also explains where letee reads status files and how it matches agents to tmux panes.
Open the Agents view and jump to an agent
Start an agent inside a session, then press C-s a. Select the agent with j and k and press Enter. Letee opens the agent's exact tmux pane. Agents outside tracked sessions do not appear.
When an agent needs attention, press C-s ! to open Agents and jump to the first alert. See the agent integration guide for alert states and termination behavior.
Essential controls
Everything in letee aims to support mouse clicks, use this if you're most comfortable with a mouse.
For keyboard enthusiasts, these are the default keys.
Sessions
C-s s focuses Sessions. Use j and k to move, and C-s 1 through C-s 9 to open the first nine tracked sessions.
Agents
C-s a focuses Agents. Use j and k to move, then press Enter to open the selected agent's pane.
Add session
C-s + opens the Add session screen. With one location available it opens the session search directly, otherwise pick a location first. Typing searches every discovered session on that host, including tracked sessions. Press Enter on a tracked match to switch to it, an untracked match to track and open it, or the + row to create and track a new session.
Open selection
Enter opens the selected session or agent pane.
Help
C-s ? opens the built-in help.
Quit or Detach
C-s q quits the outer letee cockpit. Inner tmux sessions keep running.
C-s d detaches the outer letee cockpit. Inner tmux sessions keep running and getting back into letee will be faster.
Looking for more?
See:
License
Licensed under the Apache License 2.0.
Release files for letee 0.2.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| letee-0.2.3.tar.gz | 3.3 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| letee-0.2.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 6.6 MB
Release files / letee-0.2.3.tar.gz
| Download URL | letee-0.2.3.tar.gz |
|---|---|
| Size | 3.3 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e19b9e510c3fa94364696296910ae96c805690af203c57a7a75f1e4a656137b7
|
|
BLAKE2b-256 checksum How to use checksums |
dbfaa0e763d866c8d5308419e1adfd356c9f4a9a2ae0f946084eeda379cfb64d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.
Transparency logRelease files / letee-0.2.3-py3-none-any.whl
| Download URL | letee-0.2.3-py3-none-any.whl |
|---|---|
| Size | 3.3 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
17831919e5e8d2d4f83542b7819d0e59923510b9e3c9a8bf1215d31994f09c2b
|
|
BLAKE2b-256 checksum How to use checksums |
c6941e529ced1876d9ffdc65e2737f2e3302f1d899449516ec560f8ce387df22
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.
Transparency log