claudinha
v0.3.0
Published
A terminal manager for Claude Code.
Readme
Claudinha
A desktop companion for Claude Code, with auto-tiled "Wall" view of many terminals, "ADE" view with agent status, and other helpful visibility and orchestration features (and the whole app in Portuguese pra minhas brasileiras :)
macOS, Windows, and Linux.
Why
Running several Claude Code sessions in parallel from the terminal is powerful but quickly gets noisy: juggling tmux panes, losing track of which session is waiting for input, forgetting which worktree is which. Claudinha keeps every session visible, labeled, and reachable from one window, and layers on orchestration: a live agent-status board, per-session completion policies, a bulk merge queue, a permissions manager, and more. So parallel Claude Code work stops feeling like herding cats.
Requirements
- Node.js 20+ and npm 10+
- Claude Code CLI installed and on your
PATH(npm install -g @anthropic-ai/claude-code) - git available on your
PATH - A working C/C++ toolchain (for compiling
node-pty— see Troubleshooting below) - macOS, Windows, or Linux
Install
Download the installer (recommended)
Grab the latest installer from the Releases page. Drag the app to /Applications (macOS) or run the installer (Windows/Linux), and you're done — no terminal required, and the app icon stays put when you pin it to the Dock or Start Menu.
- macOS, Apple Silicon (M-series):
Claudinha-<version>-arm64.dmg - macOS, Intel:
Claudinha-<version>.dmg - Windows:
Claudinha-Setup-<version>.exe - Linux:
Claudinha-<version>.AppImage(chmod +xand double-click)
First-launch warning: Builds are not code-signed, so on first launch the OS will warn you.
macOS: if you double-click and see "Claudinha is damaged and can't be opened" or "Apple cannot check it for malicious software," that's macOS Gatekeeper rejecting the unsigned bundle. Strip the quarantine attribute once after dragging to
/Applications:xattr -cr /Applications/Claudinha.appAfter that the app launches normally on every double-click. (
xattr -crclears extended attributes recursively — it's the standard fix for unsigned third-party apps.)Windows: click More info → Run anyway in the SmartScreen prompt. After that initial allow, double-click works normally.
Via npm (terminal-launched)
If you'd rather launch from the terminal — useful for headless setups or if you prefer staying off /Applications — Claudinha is on npm:
npm install -g claudinha
claudinhaFirst install takes a minute or two: npm pulls the Electron runtime (~150 MB) and then rebuilds the native node-pty module for your platform. claudinha on its own launches the app.
Note: this install method runs Claudinha as the underlying Electron binary from node_modules, so it doesn't support pinning Claudinha to the Dock or Start Menu — pinning would launch stock Electron, not Claudinha. Use a downloaded installer above for the pinned-and-stable experience.
Troubleshooting first-install failures
Most install failures come from the native-module rebuild (node-pty). If npm install -g claudinha errors out with node-gyp, ELIFECYCLE, or messages about C++, python, or msbuild, you need a toolchain:
- macOS:
xcode-select --install - Debian/Ubuntu:
sudo apt-get install build-essential python3 - Fedora/RHEL:
sudo dnf groupinstall "Development Tools" && sudo dnf install python3 - Windows: install the Visual Studio Build Tools with the "Desktop development with C++" workload
Then retry the install. If it still fails, open an issue with the full npm install log.
From source
See CONTRIBUTING.md for the development setup.
Usage
Getting started
- Launch Claudinha.
- Create a workspace by pointing it at a project directory (any git repo).
- Spawn a terminal in the workspace (or 8 Terminals): Claudinha creates a git worktree for each and starts a Claude Code session inside.
- The ADE view is my personal favorite, but the wall is also fun (I mostly built it because of Andrej Karpathy's tweet on March 10: https://x.com/karpathy/status/2031616709560610993?s=20).
Terminology: a workspace is a project you've opened which can contain unlimited Terminals from multiple repos; a terminal (also called a session) is a single Claude Code instance running in its own worktree under that workspace.
ADE view: agent status at a glance
The ADE view is Claudinha's default layout: it groups every session across every workspace by repository and shows where each agent is in its loop — idle, working, planning, awaiting orders, changes ready, or failed. The repo rail on the left zooms into a single project, with per-pane cards that surface the agent's last message and a Changes Ready link straight into the Turns modal. The board updates live as Claude Code hooks fire. It's the fastest way to answer "which of my sessions need me right now?" when you're running six of them in parallel. Or 20 of them.
Bulk Change: turn agent work into commits, in bulk
When a pane has work to ship, the rail card shows a Changes Ready link. Opening it brings up a per-pane Turns modal listing every Claude-Code-authored turn since the base branch — split (including at the hunk level), discard with cascade rebase, reorder, or punt unfinished work back to Claude. From the repo header, the Bulk Change modal aggregates every pane in the repo and runs your selected bulk actions (merge, push, open PR) sequentially with per-pane progress, multi-conflict handling, and PR URL surfacing. It's the difference between hand-merging six worktrees one at a time and reviewing the whole repo in one pass.
Wall view: every terminal, all at once
The Wall is an auto-tiled grid that packs every terminal in the workspace into the window. Spawn more terminals and the grid re-tiles to fit; close one and the remaining panes expand. No manual resizing, no window juggling. Each pane shows its git branch, live agent status, and a header with focus/close/move controls. Drag the resize handles if you want custom proportions; hit the toggle to flip the whole workspace into ADE.
Git worktrees per terminal
Every terminal runs in its own worktree under .worktrees/ in the project, so parallel sessions can't step on each other's working tree. Branch, checkout, commit, and merge independently. When you're done with a session, Claudinha can clean up the worktree on close.
Permissions manager
A dedicated view for reviewing and editing Claude Code's allowed-tool rules — globally, or overridden per project. Add, remove, or reset allow/deny patterns from a single pane instead of hand-editing settings files. Autocomplete draws from every rule across every project you've used, so common patterns are one keystroke away.
Completion policies
Tell Claudinha what each session should do when it finishes: notify (just tell you), auto-merge the worktree into its base branch, open a PR, or stop with no action. Policies can be set per workspace and per session, and are enforced by Claudinha's completion executor — you don't have to babysit the endgame of each agent.
Merge queue
When several sessions finish at once, the merge queue batches their completion actions so merges and PR-openings run in series with clear per-session status. If one fails, the rest still go through and the failure is surfaced with its error in the merge-or-PR-failed modal.
Paused terminals
Snapshot a terminal, close it, and restore it later — scrollback and all. Paused terminals live on disk attached to the workspace they came from, so you can pick up an in-flight session after a restart without losing history.
Session inspector
Open the inspector drawer on any terminal to see metrics, token usage, and session history. Useful for spotting runaway sessions, comparing cost across agents, and auditing what a session actually did.
CLAUDE.md editor
Inline edit project-level and repo-level CLAUDE.md files without switching to your editor — useful when you're iterating on agent instructions mid-session.
Keyboard-first navigation
Every workspace, terminal, and view is reachable via shortcuts. See Help → Keyboard Shortcuts in-app for the full cheat sheet.
Internationalized
English and Brazilian Portuguese are bundled. The UI language follows the LanguageFlagToggle in the titlebar.
Telemetry & privacy
Claudinha includes opt-in anonymous usage telemetry to help improve the product.
- Opt-in, not opt-out. On first launch, a dialog asks whether to enable telemetry. If you decline or close the dialog without choosing, no events are sent.
- Change your mind anytime in Configuration → Privacy.
- No PII. Events are identified only by a random
installation_idUUID generated locally. No file paths, prompts, outputs, git URLs, usernames, or email addresses are ever transmitted. - Full catalog of events is documented in
docs/analytics-event-catalog.md— every field, every event, with the exact schema.
Links
- Issues: https://github.com/scottdflorida/claudinha/issues
- Security: see SECURITY.md
- Contributing: see CONTRIBUTING.md
- Changelog: see CHANGELOG.md
License
MIT — see LICENSE.
Not affiliated with Anthropic
Claudinha is an independent, community tool and is not affiliated with, endorsed by, or sponsored by Anthropic. "Claude" and "Claude Code" are trademarks of Anthropic, PBC.
