macOS · open source · no sign-in
Clinch
A local-only fork of Warp that brings your CLI agents back when you reopen it.
Quit with Claude Code or Codex running in your tabs, reopen, and each tab returns with its agent resumed (claude --resume / codex resume) — not a dead shell. No sign-in, no account, never phones home.
$ # tab restored
$ claude --resume
Resuming conversation... ■
Your agents survive a restart
Clinch remembers which Claude Code or Codex session each tab was running. Quit and reopen, and every tab comes back with its agent resumed — not a fresh, empty shell. The only functional addition over Warp is agent-session resume; everything else is Warp with the login and cloud surfaces stripped out.
How Clinch differs from Warp
| Clinch | Warp | |
|---|---|---|
| Agent-session resume | Reopens each tab and re-launches the Claude Code / Codex agent it was running | Restores the shell; the agent is gone |
| Sign-in | None — fully local, never contacts Warp's servers | Account required |
| Warp AI, Drive, teams, session sharing | Removed (can't run without Warp's backend) | Included |
| Platform | macOS only | macOS / Linux / Windows |
| Bring your own CLI agent (Claude Code, Codex) | Yes | Yes |
Install
- 1
Verify the download (recommended)
Each release ships a Clinch.app.zip.sha256 to confirm the bytes match.
shasum -a 256 -c Clinch.app.zip.sha256 - 2
Unzip and move Clinch.app to /Applications
- 3
Clear the macOS quarantine flag once, then open it
Clinch is open source but not notarized, so macOS quarantines downloaded copies.
xattr -dr com.apple.quarantine /Applications/Clinch.app
Enable agent-session resume
git clone https://github.com/elliot-ylambda/clinch-terminal.git
cd clinch-terminal && ./tools/agent-resume/install.sh
# then restart your shell (or: source ~/.zshrc)Is this safe?
Fair question — you should be skeptical of any app that asks you to clear macOS quarantine. The honest picture:
It's open source. Every line is in the public repo under AGPL-3.0. The most trustworthy way to run Clinch is to build it yourself.
Verify what you downloaded. Each release publishes a SHA-256; shasum -a 256 -c Clinch.app.zip.sha256 confirms the bytes are exactly what's published.
Why the xattr step?. Apple's notarization requires a paid Developer account this project doesn't have. The app is code-signed — just not notarized — so Gatekeeper quarantines the download; the command clears that flag.
install.sh is auditable. The optional agent-resume installer only adds SessionStart hooks via a non-destructive jq merge and sources its replay functions from ~/.zshrc.
Privacy & telemetry
Clinch sends no telemetry and makes zero calls to Warp's backend. This isn't a pinky-promise — it's how the build is compiled, and every claim is verifiable.
No telemetry or analytics. The build sets telemetry_config, crash_reporting_config, and autoupdate_config to None. No analytics write-keys or DSNs are baked in, and crash reporting (Sentry) isn't compiled into the binary at all.
No backend, no sign-in. Built with the skip_login feature: there's no login screen, and every authenticated request to Warp's servers hard-fails by design. It cannot phone home even if something tried.
Verified at runtime. While running, the warp-oss process holds zero outbound network connections. Check it yourself, or block *.warp.dev with a firewall rule and Clinch keeps working.
lsof -nP -i -a -p "$(pgrep -x warp-oss | paste -sd, -)" | grep ESTABLISHED
# no output = no connectionsWhat this does not cover (honestly)
Your CLI agents talk to their own providers. Claude Code reaches Anthropic, Codex reaches OpenAI, MCP servers reach wherever you point them. That traffic is theirs, not Clinch's — the terminal only hosts them.
One image-only exception. A code path can fetch some static theme assets from Warp's asset server, with bundled fallbacks. It's a download, never a send, and runtime monitoring shows it inactive.
Audit it or watch the wire — don't take our word for it.