dominikmartn / harp
git clone https://github.com/dominikmartn/harp.git
v0.1.2 · today
Run many Claude Code and Codex agents side by side, in one sidebar that tells you which one needs you. An unofficial fork of Warp.
+249
stars, 24h · #57
+249
stars, 7 days · #263
+249
stars, 30 days · #1,052
249
★ total · +249% this week
12
forks · 2 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageRust
LicenseAGPL-3.0
Created2026-10-20 (today)
Last pushtoday
Watchers0
OwnerUser
Links
README excerpt
Run many Claude Code and Codex agents side by side, in one calm sidebar that tells you which one needs you. Harp is an unofficial fork of the open-source Warp terminal. It replaces the tab bar with a sidebar built for long-running coding agents and keeps the rest of Warp as it is. ## What it adds Agent states at a glance Each row shows whether its Claude Code or Codex session is working, waiting for you or done, with an unread mark until you look. A dot means background work is still running; a moon marks a tab you set aside. Cmd+R renames a tab. Groups that stay put Put tabs into named groups. With the tmux integration on, the group and the order are stored on the tmux sessions, so they survive a restart and other tmux clients see the same layout. Limit rings Two rings per provider in the footer: the 5 hour window and the weekly limit. Harp reads the numbers from a local JSON file that a tool of your choice keeps current ( format ); it never fetches them itself. Phone-friendly tmux Tabs attached to tmux follow their session: name, group, read and inactive flags. A session started elsewhere, for example from your phone over ssh, can ask for a tab with tmux set-option @warp_adopt 1 . Everything else is upstream Warp, including its AI and cloud features (agents, Warp Drive, session sharing, login). They talk to Warp's servers exactly as upstream does; Harp adds no servers of its own. Logging in through Harp is untested. ## Install **Download:** grab the latest `Harp- .dmg` from Releases and drag Harp into Applications. Harp has its own bundle id (`com.dominikmartn.Harp`), URL scheme (`harp://`) and settings folder (`~/.harp`), so it runs next to Warp without sharing anything. **Updates:** Harp checks the latest GitHub release every 10 minutes, the same way Warp checks its own server. When the release's version is newer than `version` in `app/Cargo.toml` of the running build, Harp downloads its DMG in the background, checks that it is signed by Harp's Developer ID team, and offers to restart into it. To try this on an installed build, launch it with an older version: `open --env HARP_UPDATE_PRETEND_VERSION=0.0.1 /Applications/Harp.app`. **Build from source** (macOS, Rust toolchain from `rust-toolchain.toml`): [code] `script/macos/run` signs with the first "Apple Development" identity in your keychain and falls back to an ad-hoc signature. A signed, notarizable release DMG comes from `script/release_macos` (see `--help`). ## Settings The extras are off by default. Turn them on in `~/.harp/settings.toml`; the app reloads the file when it changes. [code] | Setting | Default | Effect | |---|---|---| | `integrations.limit_rings.enabled` | `false` | Shows the limit rings in the sidebar footer. | | `integrations.limit_rings.file` | `""` | JSON file the rings read; `~` is your home folder. | | `integrations.tmux.enabled` | `false` | Tmux sync (names, groups, order, flags, adopting sessions) and agent detection inside tmux. Polls