ClaudeDeck

All your Claude Code sessions in one Mac window.

See at a glance which session is working, which one needs permission and which one is waiting for you. Allow a prompt from the notification, put sessions side by side, and pick up where you left off after a restart.

Download for macOS Free and open source. macOS 15 or later.

A look inside

ClaudeDeck with the sidebar, two sessions side by side and the Files panel
Every session in one window. The sidebar pulls whatever needs you to the top. On the left, a session waits for permission to run a command, with Allow and Deny right in its header. Next to it, a second session keeps running, and the right panel switches between the project's live files and its changes.
Editor tabs in the toolbar with a TypeScript file open
Tabs and a built-in editor. Files, diffs and Automations open as tabs next to your sessions. Syntax colors, find and replace, ⌘S, and Add to Claude for @path#L10-20.
Changes panel with staged and unstaged files next to a diff tab with Stage Hunk buttons
Changes. Stage, unstage and discard by file or hunk, then commit, push and pull. Claude can write the commit message, and answer questions about any line of a diff.
Automations tab with a weekday schedule and run history
Automations. Prompts that start a Claude session every hour, day, weekday or week, or when you click Run Now. Each run is in the history, with its session.
A linked pull request's popover with a failing check, requested changes and the latest comments
GitHub issues and pull requests. Link one to a session to see its state, reviews and CI, send it to Claude, and get notified when it changes. Uses your own gh.
Needs Attention with a permission prompt, a question and a finished session
Needs Attention. A permission prompt with the exact command, a question Claude is asking, and a finished turn with its last message. The same prompts arrive as notifications.
Files panel with git status marks
Files panel. Live file tree with git marks: M for modified, ? for new. Select a file for its history and diffs, or drag it into Claude as @path. ⌘P opens any file by name.
Desktop widget with session counts and the sessions that need attention
Desktop widget. What's waiting, running and done, right on your desktop. Click a session to jump to it.

How it knows what each session is doing

No screen reading and no terminal scraping. ClaudeDeck listens to the hooks Claude Code already provides.

  1. You run your own claude

    Each session is your installed Claude Code CLI in a real terminal, with your settings, CLAUDE.md, MCP servers and skills.

  2. A small hook reports the state

    On first launch ClaudeDeck adds one hook to ~/.claude/settings.json, after making a backup. It only acts in ClaudeDeck's own terminals.

  3. You get told when it's your turn

    Permission prompts, questions and finished turns show up in the sidebar, as notifications, on the Dock badge and in the menu bar.

What's inside

Everything you need to keep many sessions moving without switching between terminal windows.

Live status for every session
Running, needs permission, asking a question or your turn, for every session.
Allow or deny from anywhere
Answer permission prompts from the notification, the sidebar or the pane header.
Needs Attention at the top
Sessions waiting for you are listed first, with the project and what they're asking.
Side-by-side panes
Drag up to four sessions next to each other. Closing a pane keeps the session running.
Picks up after a restart
Open sessions come back with claude --resume and carry on where they were. Optional: /compact for oversized contexts.
Parallel worktree sessions
Run sessions in the same project, each in its own git worktree, so they never edit the same files.
Files panel with git history
Live file tree, change marks and per-file diffs, Quick Open and Find in Files. Drag a file into Claude to add it as @path.
Tabs and a built-in editor
Open files, diffs and Automations as tabs. A light editor with syntax colors that adds @path#L10-20 to Claude.
Changes, staged by hunk
Stage, discard, commit, push and pull without leaving the window. Claude writes the commit message.
GitHub issues and pull requests
Link one to a session to see its state, reviews and CI, and hear about new reviews, failed checks and merges.
Automations
Scheduled prompts, hourly to weekly, with Run Now and a history of every run. They run while the app is open.
Restart a session in place
⌥⌘R quits claude and resumes the same conversation, so new MCP servers and settings take effect.
Pencil (pen.dev)
Sessions ClaudeDeck starts can use Pencil's design tools, and .pen files open in Pencil.
Plain terminals too
A shell in the project folder, with an optional startup command like yarn start.
Widget and menu bar
A desktop widget and menu bar counters for what's waiting, running and done.
Projects, groups and iCloud
Pin projects, color-code groups, and optionally sync the list across your Macs.

What it is, and what it isn't

ClaudeDeck is a window around the Claude Code you already use.

ClaudeDeck isClaudeDeck is not
A session manager for your installed claude CLIA chat app or API client that replaces Claude Code
A dashboard driven by Claude Code's official hooksA tool that reads your screen or logs keystrokes
A local Mac app; nothing leaves your computerA cloud service, an account or telemetry
A shortcut that presses the key you would pressAn automation that approves permissions on its own

Billing, usage limits and sign-in stay with Claude Code.

Install

  1. Download the DMG

    Get the latest ClaudeDeck-<version>.dmg from GitHub Releases.

  2. Drag it to Applications

    The app is signed and notarized by Apple, so it opens without a Gatekeeper warning.

  3. Add your projects

    Pick a project folder and start a Claude session. ClaudeDeck sets up its hook on first launch.

  • Requires macOS 15 or later and Claude Code installed.
  • Optional: the GitHub CLI for GitHub links, and Pencil for its design tools.
  • Available in English and Turkish.
  • Prefer to build it yourself? The README explains how.