PocketBot (pb) is a tmux-backed launcher for Claude, Codex, Cursor, and other long-running terminal workflows.
- A commandline app that keeps sessions alive in the background (using tmux)
- Lets you detach and reattach quickly (
Ctrl+Dto detach from a session) - Supports multiple Claude/Codex/Cursor instances per machine
Prerequisites:
go(to build/installpb)tmux(required at runtime)fasder(optional, enableszdirectory jump)
go install github.com/zakandrewking/pocketbot/cmd/pb@latestc: attach Claude (create if none, picker if multiple)x: attach Codex (create if none, picker if multiple)u: attach Cursor (create if none, picker if multiple)z: directory jump usingfasdersearch + Entern: create new instance, then choosec,x, oruk: kill one instance, then choosec,x, oru(picker appears if needed)d: back or quit UI (sessions keep running)Esc: go back/cancel in picker-style flowsCtrl+C: kill all sessions and quit
pbTypical loop:
- Press
c,x, oruto jump into a coding session. - Press
Ctrl+Dto detach back topb. - Press
nto spin up another instance for a parallel task. - Press
kto clean up a specific instance.
Create ~/.config/pocketbot/config.yaml:
claude:
command: "claude --continue --permission-mode acceptEdits"
key: "c"
enabled: true
codex:
command: "codex resume --last"
key: "x"
enabled: true
cursor:
command: "agent resume"
key: "u"
enabled: true
sessions:
- name: "dev-server"
command: "npm run dev"
key: "v"
- name: "logs"
command: "tail -f logs/app.log"
key: "l"Reserved keys in the default UI: c, x, u, z, n, k, d, Esc.
See config.example.yaml for more examples.
go run cmd/pb/main.go
go test ./...
go install ./cmd/pbApache License 2.0