- Fix the flaky login testCodex · ~/src/shop · main · 2h ago · ● open› the retry in auth.spec still races, look at the token refresh
- Login page redesignCursor (IDE) · ~/src/web · login-v2 · 5 days ago› use the new button styles on the sign-in form
- Session login tokensClaude Code · ~/src/api · auth · 4 hours ago · ● open› rotate the refresh token on every use
Sample sessions. Click a result, or just watch. In Spotlight, type ses and press ⇥ to search seshlite.
Every AI session you've had. One keystroke away.
Claude Code, Codex, Cursor, Copilot, Qwen, Kimi, DeepSeek, Mistral and six more. ↩ takes you to the session's open tab, the app it lives in, or a fresh terminal tab in its folder.
The download lands here soon. Bookmark this page: ⌘ D
100% localmacOS 13+Apple silicon and IntelNo account
One harness or ten, sessions sprawl.
- Each agent has its own /resume list, and none of them shows the others'.
- The session you want is already running in some tab, in some window, on some Space.
- Resuming means remembering which agent, which folder, which id, then typing it.
Return takes you to the right place
seshlite checks in this order, so a session you already have open never gets resumed twice.
- tty match
Its tab, if it's still open
The window comes forward and the right tab is selected, on any Space. Sessions inside tmux or Zellij get their pane selected too.
- app link
The app it lives in
Started in Claude Desktop, the Codex app, Cursor or VS Code? It goes back there and the app brings that session up.
- cd + resume
A new tab, resumed
In the terminal whose window is frontmost,
cd'd into the session's folder, running the agent's own resume command.
Zero UI. It's a Spotlight result.
No window to keep open, no app to switch to, nothing new to learn. The search you already use now knows your sessions. Raycast or Alfred instead of Spotlight? Same sessions, same keystroke: the setup window adds them in one click.
Search everything
Title, folder, branch, agent, and the first and last thing you said. Type rate limit and every session where you worked on it comes up, whichever agent it was in.
Every terminal
Terminal, iTerm2, Ghostty, WezTerm, kitty, Warp, Alacritty, cmux, Hyper, Tabby, Rio. New tabs go to whichever one is in front.
Never twice
If the session is live, seshlite jumps to it instead of starting a second copy. Even when it's in a tmux or Zellij pane on another Space.
Desktop apps too
Sessions that live in Claude Desktop, the Codex app, Cursor, VS Code, the Copilot app, Antigravity, Goose Desktop or the OpenClaw Control UI reopen there.
Yours alone
Never connects to the internet. No account, no telemetry. One switch keeps your prompts out of Spotlight entirely.
Always current
A tiny background job refreshes the index every minute. New session, new title, closed tab: Spotlight knows.
What you already use
It reads each agent's own history on your Mac. Nothing to configure, nothing to install in the agents.
Agents
- Claude Codeclaude --resume
- Codexcodex resume
- Cursoragent --resume
- GitHub Copilotcopilot --resume
- OpenCodeopencode -s
- Gemini CLIgemini --resume
- Antigravityagy --conversation
- Pipi --session
- Qwen Codeqwen --resume
- Kimi Codekimi --session
- DeepSeek Harnessdsh headless
- ZCode (Z.ai)zcode --resume
- MiniMax Codemcode --session
- Mistral Vibevibe --resume
- Hermes Agenthermes --resume
- Goosegoose session --resume
- OpenHandsopenhands --resume
- OpenClawopenclaw tui --session
- Crushcrush --session
Terminals
- Terminaltabs
- iTerm2tabs
- Ghosttytabs
- WezTermtabs
- kittytabs
- Warptabs
- Alacrittywindows
- cmuxworkspaces
- Hypertabs
- Tabbytabs
- Riotabs
- tmux, inside any of thempanes
- Zellij, inside any of themtabs, panes
Desktop apps
- Claude DesktopClaude Code
- Codex appCodex
- Cursoragent chats
- VS CodeClaude, Copilot
- GitHub Copilot appCopilot
- Antigravityconversations
- Goose Desktopgoose://resume
- OpenClaw Control UI/chat/<agent>/<id>
seshlite for Mac
Version 0.1.0 · macOS 13 or later · Apple silicon and Intel
DownloadThe download lands here soon. Bookmark this page: ⌘ D
Signed and notarized100% localNo account
Drag seshlite to Applications and open it once. Then ⌘ Space, ses, ⇥, a few words, ↩.
Raycast and Alfred users: the setup window has Add to Raycast and Add to Alfred. The Alfred workflow is also here: seshlite.alfredworkflow (keyword ses).
Before you press Return
How do I resume a Claude Code session on macOS?
Press ⌘ Space, type ses, press ⇥, then part of the session's title, its project, or a word you used, and press ↩. If it's still open in a terminal tab, seshlite jumps to it; if it lives in Claude Desktop, it opens there; otherwise it runs claude --resume in a new tab in the right folder.
How do I find old Codex, Cursor or Copilot sessions?
The same search. seshlite indexes Claude Code, Codex, Cursor, GitHub Copilot, OpenCode, Gemini CLI, Antigravity, Pi, Qwen Code, Kimi Code, DeepSeek Harness, ZCode, MiniMax Code, Mistral Vibe, Hermes Agent, Goose, OpenHands, OpenClaw and Crush together, so one query covers every agent you use.
Does it work with tmux or Zellij?
Yes. A session running in a tmux or Zellij pane gets its window or tab and its pane selected, and the terminal tab showing that client comes to the front. When the front terminal has a Zellij session attached, new sessions open as a Zellij tab in it.
I use Raycast or Alfred, not Spotlight.
Then use them. The setup window's Add to Raycast copies a small extension into place and runs one command in a terminal tab (it needs Node); after that, a Search Sessions command lists the same sessions with the same actions. Add to Alfred imports a workflow with the keyword ses. Both read from the seshlite app, so there's one index and one set of rules about where a session reopens. Neither is in a store: no account, nothing to update separately.
Does it change anything in my agents?
No. It only reads their history files and runs their own resume commands. Your sessions, settings and logins are untouched.
What ends up in Spotlight?
Each session's title, folder, branch, agent and date, plus its first and last prompt so you can search for what you talked about. Turn prompt text off in the setup window and only titles, folders and branches are indexed. Removing seshlite removes all of it.
Why does it ask to control my terminal?
That's how a new tab gets opened and the resume command typed into it. Terminal.app also needs Accessibility, because it can't create a tab any other way. iTerm2, Ghostty, WezTerm and kitty don't.
Which terminal does it use?
The one whose window is in front, so it follows you. Pick a fixed one in the setup window if you'd rather.
What about sessions that were started in a desktop app?
They go back to that app. A session you started in Claude Desktop and later continued in the terminal opens in the terminal: it follows where you last used it.
Is it safe to install?
The app is signed with an Apple Developer ID and notarized by Apple, so macOS opens it without warnings. It never connects to the internet, and it asks only for the permissions it needs to open a terminal tab.
Back to your session.
It's already there. One keystroke.
Download for macOSThe download lands here soon. Bookmark this page: ⌘ D