Keep your long Claude chats on track
Claude gets slower and forgetful when a chat gets too long. session-pilot warns you early, tidies things up in one click, and shows how much of your usage limit is left.
Get started in 2 minutesSee itWhat it does for you
You keep working as usual. session-pilot watches in the background and speaks up only when it matters.
What you'll see
A small strip above the box where you type. It looks like this (example).
Compact appears once the chat is 60% full. ≡ opens details, ✕ hides the strip.
How to add it
You need Claude Code (the terminal app or the Code tab in the Claude desktop app). Pick whichever way feels easier. No programming needed.
Watch: installing session-pilot in under 2 minutes
claude./plugin and press Enter
A plugin menu opens. Choose Marketplaces, then Add marketplace, and paste this:
Thinkelution/session-pilot/pilot-settings.claude plugin marketplace add Thinkelution/session-pilotclaude plugin install session-pilot@thinkelutionclaude plugin install session-pilot-ui@thinkelution/session-pilot:setup. It asks first, keeps any status line you already have, and can be undone. Not sure it worked? Type /session-pilot:doctor.For an older chat, try these in order:
- Quit Claude completely and reopen it, open the old chat, and send a message. The chat usually restarts and picks up what you installed.
- Still nothing? Start a new chat in the same folder and paste a short summary of where you were. Session-pilot also saves a handoff summary at 75% full, and offers it at the start of the next chat in that folder.
- Not sure it's on? Type
/session-pilot:doctor. It tells you what is running and how to fix what isn't.
Useful if you build with Claude Code
Developers hit the limits of a single chat first: big refactors, long debugging sessions, many files, many tool calls. This is where session-pilot earns its keep.
/session-pilot:history for how big your recent sessions grew.~/.claude/session-pilot/policy.json. Zero dependencies, fails open, MIT licensed.Also a working example for plugin authors
- A plugin with hooks (
SessionStart,UserPromptSubmit,PostToolUse,PreCompact,Stop), slash commands and a skill. - A marketplace that ships two plugins from one repo, one of them a UI mod with a prompt-box band, buttons, a pane and remembered preferences.
- Guided, reversible setup that edits user settings only with consent and a backup.
- Try a local copy with
claude --plugin-dir /path/to/session-pilot; the source is on GitHub.
Questions
Is it free? Does it use my usage?
It is free and open source. The alerts and strip use almost nothing. The only thing that uses a little of your plan is the ✨ Optimize prompt button, which asks a small, fast model to rewrite your draft (a few hundred words at most), and only when you press it.
Will it change my messages or compact without asking?
No. Optimize prompt puts a suggestion in the box for you to review, with Undo. Compact is a button you press. In the desktop app, the button fills in the compact command and you press Enter to confirm, because the app does not let add-ons start it directly yet. In the Terminal, one click does it.
It works in new chats but not in my old ones
That is expected. A chat loads its add-ons when it starts, so chats opened before you installed session-pilot do not have it. Quit and reopen Claude, then send a message in the old chat. If it still shows nothing, start a new chat in the same folder (the handoff summary helps you carry on).
Why does the Compact button not show?
It appears when the chat is 60% full, so it stays out of the way while you have plenty of room.
Where does it work?
Claude Code in the Terminal and the desktop app's Code tab (strip, buttons, limits, alerts). In the VS Code extension, cloud sessions and Cowork/chat, the text alerts work but the strip does not appear. Cowork is untested so far.
Can I see how many limit resets I have left?
Claude only reports how much you have used and when each limit resets, so that is what the strip shows.
How do I turn it off or quiet it?
Type /session-pilot:snooze 1h to pause alerts, /session-pilot:mode quiet for fewer alerts, or /pilot-settings to hide the strip. To remove it fully, run claude plugin uninstall session-pilot@thinkelution.
Something is not working
Type /session-pilot:doctor. It checks everything and tells you how to fix what it finds.
Is it safe?
The core plugin only reads the conversation file on your computer to measure its size and shows messages; it never changes your prompts or sends your chats anywhere. The strip add-on runs inside Claude Code with your permissions, which is why it is optional. The code is open on GitHub for anyone to read.
For the curious
All commands
| Type this | It does this |
|---|---|
/session-pilot:status | Plain summary of how the chat is doing and the next step |
/session-pilot:setup | Adds a status line to the Terminal (undo reverses it) |
/session-pilot:mode | Quiet, balanced or proactive |
/session-pilot:snooze | Pause alerts for 30m, 1h or 4h |
/session-pilot:handoff | Save a summary for the next chat now |
/session-pilot:history | Recent chats and how big they got |
/session-pilot:doctor | Checks the install and suggests fixes |
/pilot, /pilot-settings | Details panel, and your strip preferences |
Alert styles
| Style | Speaks up at | Good for |
|---|---|---|
| Quiet | 80% and 90% full | Short chats, minimal noise |
| Balanced (default) | 60%, 75%, 88% | Most people |
| Proactive | 50%, 65%, 80% | Long, heavy sessions |
The small print
Built for Claude Code. The core plugin needs Node 18+ and the strip needs Claude Code 2.1.287+. Alerts can only advise: they cannot rewrite your messages. Open source under the MIT license.