Skip to main content
Free & open source (MIT) · macOS & Linux
Sidecar 1.14.0 is here3,084 commits since December 2025

Full development context.
In one terminal.

Sidecar brings together everything you need to build across all your projects in a single terminal. Monitor live agent sessions, inspect git diffs, track durable tasks, take notes, and manage your day without losing your place.

$brew install marcus/tap/sidecar
Linux and everything else:curl · binary · from source →
almost zero setup —
Just cd into your project & type sidecar
no configs or daemons — it auto-detects your repo, agents & tasks.
instant startup · native performance · 100% offline & private
sidecar
◱ Sidecar
sidecar [main]
Workspaces⇅ Remote+
sidecar(3)
feat/auth-pkce4m
claudetd-847b0c · working
 
wheel bounds22m
codextd-bcfe53 · working
 
focus geometry1h
claudetd-0818ef · needs you
 
backend(1)
api-v212m
codextd-19cc02 · working
 
book [remote](1)
frontend18m
opencoderemote · working
 
td(1)
notes api3h
cursorPR #212 · ready
 
TERMINAL · claude (Working)feat/auth-pkcetd-847b0cLIVE
 
> 
 
Every agent you have running, across every repo and remote host, in one unified terminal.
compatibility

Works in the terminal you already use

Sidecar brings rich multi-pane workspaces, agent orchestration, and task management directly into your favorite terminal emulator on macOS, Linux, and Windows.

Ghostty logo
Ghostty
macOS · Linux
iTerm2 logo
iTerm2
macOS
Kitty logo
Kitty
macOS · Linux
Alacritty logo
Alacritty
macOS · Linux · Windows
WezTerm logo
WezTerm
macOS · Linux · Windows
Warp logo
Warp
macOS · Linux
GNOME Terminal logo
GNOME Terminal
Linux
Windows Terminal logo
Windows Terminal
Windows · WSL

A complete development loop in one screen

1. See

Sessions brings every agent across every project into one view — tracking live progress, session duration, and notifying you the moment an agent is ready.

2. Steer

Jump directly into any agent’s shell with instant keystroke response, full searchable scrollback, and persistent session recovery.

3. Review

Inspect changes alongside the conversation — files, diffs, git history, and tasks open automatically in synchronized adjacent panes.

4. Merge

Each feature develops in an isolated git worktree. Stage, commit, push, create PRs, and clean up branches with single keystrokes.

sessions

Every repo, every agent, one screen

Sessions gives you unified mission control for your entire workspace fleet. It gathers agent shells, git worktrees, and project status across all your repositories in one place, sorted by recent activity so you always know what is running, what is complete, and what needs your attention.

Fleet overview as a list or kanban board — Working, Blocked, Done, Idle, Paused
Live output preview for any agent shell with zero latency
One key opens the full project workspace with tabs, files, and state preserved
Broadcast one message to every live agent at once, with a receipt for each
Lightweight background monitoring that keeps you informed in real time
sidecar
◱ Sidecar
sidecar [main]
Workspaces⇅ Remote+
sidecar(3)
feat/auth-pkce4m
claudetd-847b0c · working
 
wheel bounds22m
codextd-bcfe53 · working
 
focus geometry1h
claudetd-0818ef · needs you
 
backend(1)
api-v212m
codextd-19cc02 · working
 
book [remote](1)
frontend18m
opencoderemote · working
 
td(1)
notes api3h
cursorPR #212 · ready
 
TERMINAL · claude (Working)feat/auth-pkcetd-847b0cLIVE
 
> 
 
shell

Durable agent shells with persistent session state

Sidecar provides resilient, interactive terminal sessions that maintain state across restarts. Type commands directly, search scrollback history, copy output, and arrange multi-pane splits freely. Close your terminal anytime — all agent tasks and sessions keep running in the background and restore exactly where you left them.

sidecar
◱ Sidecar
sidecar [main]
Workspaces⇅ Manual+
 
Shells (2)+
claude · preview tabs4m
Shell 21h
 
Worktrees (3)+
sidecar2h
main
preview-tabs4m
feat/preview-tabs
marketing-site9m
claudepreview tabsDiff
sidecar-preview-tabsfeat/preview-tabs*❯
 
Reading internal/overview/preview_tabs.go
Edited internal/overview/preview.go
 
Here’s the tab strip — take a look at the fallback:
 
sidecar openinternal/overview/preview_tabs.go:88
opened in a new pane →
 
 
preview_tabs.go×
 
86}
87
88func(m Model) tabsFor(l Leaf) []Tab {
89ifl.Issue != "" {
90returnissueTabs
91}
92returndocTabs
93}
Direct interactive access to every agent shell inside the TUI
Fast scrollback buffer with search, text selection, and clipboard support
Durable session persistence that survives terminal restarts
Dynamic shell naming reflecting the agent’s live task in real time
sidecar open

Live context projected directly to your screen

Keep conversation and code connected side-by-side. Agents can programmatically project files, diffs, and tasks into adjacent panes at exact line numbers, giving you immediate visual clarity while the agent continues building.

$ sidecar open internal/tty/tty.go:212

A file, revealed at a line.

$ sidecar open td-847b0c

A td issue, with its acceptance criteria.

$ sidecar open --diff HEAD~1

A diff — working tree, a commit, or a range.

worktrees

Parallel feature development with isolated git worktrees

Develop multiple features simultaneously with complete isolation. Press 'n' to branch a dedicated git worktree, link a task, start your preferred agent with full context, and track GitHub PR and CI status across branches.

Instant worktree creation, branch switching, and lifecycle management
Live GitHub PR status, review feedback, and CI check indicators
Streamlined merge workflow: stage, commit, push, and create PRs in one place
Automatic workspace state isolation keeping repositories clean
sidecar
◱ Sidecar
sidecar [main]
Workspaces⇅ Manual+
 
Worktrees (4)+
sidecar2h
main · main
preview-tabs4m
feat/preview-tabs · PR #291 ✓
focus-geometry1h
fix/focus-geometry · needs you
marketing-site9m
preview-tabsfeat/preview-tabs
 
PR#291Overview: agent icons on kanban cards
Checks✓ build✓ test✓ lint
Tasktd-847b0creviewable
Ahead6 commits· clean tree
sidecar
◱ Sidecar
sidecar [main]
Gitmarketing-site
 
STAGED (2)
Asrc/components/Tui/index.js
Msrc/pages/index.js
 
UNSTAGED (1)
Msrc/css/custom.css
 
────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Recent Commits (1933)no upstream
7fcd6abfeat: route Notes plugin through td/pkg/notes
ad9893flayout: drop the blank row between header and panes
7d308fbtheme: unify theme system around Sidecar Modern
d664d68fix: open notes db with modernc and take td’s write lock
0e29c1eMerge pull request #286 from marcus/pre-launch-polish
f0cbd92build: integrate golangci-lint into pre-commit
d73cba6fix: resolve staticcheck, ineffassign, and errcheck debt
67bccb4fix: refresh worktree status when starting a shell
Commit7fcd6ab9
 
󰀄Marcus Vorwaller·9 mins ago
 
feat: route Notes plugin through td/pkg/notes (td-1b4683)
 
Sidecar no longer speaks SQL or takes db.lock on issues.db. The notes
store is a thin adapter over td’s public API.
────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Files (5)+155-649
 
+ func (s *Store) List(ctx context.Context) ([]notes.Note, error) {
+ return s.client.Notes(ctx, s.project)
+ }
- db, err := sql.Open("sqlite", path)
- if err != nil {
- return nil, fmt.Errorf("open notes db: %w", err)
- }
git

Deep git inspection and inline review

Inspect everything your agents and team changed with rich syntax-highlighted diffs, commit trees, and hunk staging. Stage changes, author commit messages, and explore history right alongside your running sessions.

One-key staging, hunk inspection, and streamlined commit authoring
Side-by-side and unified diff views with full-screen expansion
Interactive commit history with per-commit diffs and file statistics
Live auto-refresh whenever agents write changes to disk
sidecar
◱ Sidecar
sidecar [main]
Tasksbeta
 
LISTS
Today5
This week12
Sidecar launch8
House3
Someday41
 
VIEWS
Board
Journal
Today5 open · 1 done+ Add
 
P1Cut v1.0 release notes@launchtoday
P1Reply to the Homebrew tap PR@launchtoday
P2Record the 90-second demo@launchtomorrow
P2Book the dentist@houseFri
P3Read the Bubble Tea v2 changelog@reading
P3Move the standing desk cable run@house
 
────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
 
HANDED TO AGENTS
[REV]td-847b0cOverview: agent icons on kanban cardsclaude
[WIP]td-bcfe53Inertial wheel boundary coveragecodex
 
Press `a` on any task to hand it over — it becomes a td issue, and
comes back to this list when the review lands.
tasks · beta

td is where agents keep their work. Tasks is where you keep yours.

Manage agent workflows and your own personal tasks in a single terminal. td provides agents with durable context across prompt compaction, structured progress logs, and verification before closing. Tasks gives you a full personal task manager with lists, tags, priorities, due dates, kanban boards, and daily journals across all your projects.

Durable agent memory with progress logs, handoffs, and verification reviews
Full personal task manager with tags, priorities, due dates, boards, and journals
Unified cross-project task visibility accessible via both TUI and CLI
Convert personal todos into tracked agent issues with a single keystroke
themes

Twenty-one handcrafted themes

Twenty-one precision-tuned palettes, each contrast-checked across every surface — tabs, diffs, key hints, kanban lanes, and file trees. Press # in the app; pick one here and the mockup follows.

sidecar
◱ Sidecar
sidecar [main]
Files[name]
 
+cmd
+docs
internal
overview
paneframe
panelayout
styles
themes.go
curated_themes.go
+website
AGENTS.md
go.mod
Makefile
themes.gointernal/styles×
 
134// SidecarModernTheme is the launch theme.
135varSidecarModernTheme= Theme{
136Name:"sidecar-modern",
137DisplayName:"Sidecar Modern",
138Colors:ColorPalette{
139Primary:"#c0982f",// gold — cursor, active tab
140Secondary:"#4a8f8f",// teal — identifiers
141Accent:"#c0982f",
142
143// Status colors
144Success:"#5b8f63",

Built for every modern coding agent

Sidecar orchestrates and monitors all your favorite CLI agents, normalizing their session formats and states into one cohesive developer timeline.

Claude Code
Anthropic’s CLI for Claude
Codex
OpenAI’s coding agent
Cursor
cursor-agent, from the Cursor team
Gemini CLI
Google’s terminal agent
Antigravity
Google DeepMind’s agentic assistant
GitHub Copilot
GitHub’s CLI pair programmer
xAI Grok
xAI’s developer CLI
Amp Code
Amp’s coding assistant
OpenCode
Terminal-first open source agent
Kiro
Amazon’s AI coding assistant
Pi
Pi agent (OpenClaw)
Warp
Warp’s terminal assistant

Full development power inside your terminal

Multi-pane windowingM · n

Tile shells, files, diffs, and tasks in flexible 2×2 grid layouts with visual repositioning.

Cross-project context@

Switch between repositories with zero friction. Active tabs, cursor position, and scrollback are remembered per project.

Worktree switcherW

Switch between worktrees instantly inside any repository with state restored automatically.

Broadcast to agentsB

One message to every live agent in a project, or every agent on the machine, with a per-target receipt for each. Behind the agent_control flag.

Notification CentreN

Corner toast stacks and slide-over notification history with actionable jumps into files and tasks.

Session durabilityrestore

Shells survive tmux crashes and reboots. Resume exact agent conversations with cold session restore.

Configuration & setup,

Visual settings for appearance, projects, workspaces, agents, remote hosts, and integrations.

Fuzzy finder & searchctrl+p

Fuzzy search filenames or grep code across the workspace, scoped to your active pane.

Inline editore

Open $EDITOR inside the split preview or make quick edits inline without leaving the workspace.

Cross-project notesNotes tab

A persistent scratchpad for every project that turns thoughts into tracked tasks and worktree specs.

Intuitive mouse & vim navigationdrag

Click to focus, scroll anywhere, drag split dividers to resize, with full vim keybinding parity.

Fast native binarygo

Compiled into a single fast executable with zero runtime dependencies and instant startup.

Set up takes less than a minute

$brew install marcus/tap/sidecar
or curl -fsSL https://raw.githubusercontent.com/marcus/sidecar/main/scripts/setup.sh | bash