a fork of the open-source warp terminal
Your terminal.
Your models.
Uncaged.
Uncaged is the open-source Warp terminal with the cloud cut out — the same agentic terminal, running entirely on your machine. Bring any model: a local runtime, an API key, or the CLI plan you already pay for. Your keys never leave your device.
❯
Running 24 tests test auth::session_refresh ... FAILED thread 'auth::session_refresh' panicked at src/auth.rs:142: assertion failed: token.is_fresh()
❯
agent qwen3-coder · local
is_fresh() reads the clock after re-acquiring the write lock — past the test's
50 ms expiry window. Pinning the timestamp first.
Patched src/auth.rs — the timestamp is pinned before the check. Re-running the test.
❯
test auth::session_refresh ... ok
❯
Everything Warp got right, kept: blocks, agent mode, code review, tools panel, workflows, keymaps, ide-grade editing, gpu-fast rendering, synced with upstream warp.
the fork
Same terminal. Minus the cloud.
removed from warp
- Account & login
- Cloud-relayed AI requests
- Telemetry & crash reporting
- Subscription, credits, caps
- Warp & Oz branding
in its place
- A local agent engine uncaged_engine runs on your machine
- The model you choose local runtime, API key, or CLI agent
- A swappable brand layer the whole identity in three files
01 · no cloud
Zero telemetry. One outbound call.
The only network request Uncaged ever makes is the one to your model endpoint. Accounts, telemetry, crash reporting, cloud sync — none of it exists in this build. The source is public, so you can verify that instead of trusting it.
- uncaged + uncaged_engine
- keys · history · config
~/.uncaged/
you chose
- Account & login
- none — the app has no concept of one
- Telemetry & analytics
- off, enforced in code
- Crash reporting
- not compiled into the build
- Cloud sync & conversation storage
- none — history stays in ~/.uncaged/
- Update checks
- none — updates are manual, from GitHub Releases
02 · any model
Every model. No middleman.
The AI inside Uncaged runs on a model you choose: a local runtime like Ollama, your own provider API key, or a CLI agent like Claude Code. Pick it once in Settings → AI Models — that's the entire setup — and switch whenever you like.
Use a local agent
Your loginDrive a CLI you've already signed in to — no API key, your own subscription.
Run a model locally
On-deviceOpen models on your own machine — fully private, no key.
Connect with an API key
API keyBring your own key from a cloud provider.
also Google · Groq · DeepSeek · Mistral · xAI · Together · any OpenAI-compatible endpoint
~/.uncaged/engine.json · keys on your disk 03 · built to fork
Engineered to be forked.
Any open-source project can be forked in theory. Uncaged is built for it in practice: no upstream services to untangle, no account system to strip out, and no Warp or Oz branding left anywhere in the product.
The entire identity lives in three files — the brand constants, two SVGs, and the provider catalog. Swap them, rebuild, and ship your own terminal on a proven engine.
-
app/name, tagline, palette — the strings and the colorssrc/ brand.rs -
app/two SVGs: the in-app mark and the app iconassets/ bundled/ svg/ brand/ -
crates/the model gallery: providers, icons, defaultsuncaged_engine/ src/ catalog.rs
That's the entire surface. Everything else just keeps working.
04 · install
Get Uncaged.
macOS, Linux and Windows — free and open source. No accounts, no license keys, nothing to activate.
macOS
$curl -fsSL https://getuncaged.dev/install.sh | bash grabbed the .dmg? clear Gatekeeper once:
$xattr -dr com.apple.quarantine /Applications/Uncaged.app macOS 10.14 or later
Linux
$curl -fsSL https://getuncaged.dev/install.sh | bash Every build is on the releases page — checksums, changelogs and older versions.
05 · questions
Questions people actually ask.
The longer version lives in the repo FAQ — and if it's not there, open an issue.
01 Do I need an account?
No. Uncaged has no accounts and no login. It runs entirely on your machine with its own local profile — connect a model and you’re working.
02 Does my data go anywhere?
Not to us — there is no "us" server-side. The only outbound traffic is to the model endpoint you configure yourself. No telemetry, no analytics, no crash reporting, no cloud sync. It’s enforced in code, and the code is public.
03 What does it cost?
Nothing, forever — Uncaged is AGPL-3.0 open source with no paid tier. You pay your model provider if you use one, or nothing at all with a local model.
04 Which platforms are supported?
macOS (Apple Silicon and Intel, .dmg), Linux x86_64 (.deb, .rpm, AppImage and .tar.gz) and Windows (x64 and ARM64 installers) — all from GitHub Releases. Homebrew, winget and arm64 Linux builds are on the way.
05 Which models can I connect?
Local runtimes (Ollama, LM Studio, llama.cpp, vLLM), hosted APIs (Anthropic, OpenAI, Google, Mistral, DeepSeek, Groq, Together, xAI, OpenRouter, or any OpenAI-compatible endpoint), and CLI agents like Claude Code, Codex CLI and Gemini CLI over ACP. One connection is all Agent Mode needs.
06 How is this different from Warp?
Warp open-sourced its terminal emulator, but the premium agent runs on Warp’s servers behind a login and subscription. Uncaged replaces that with a local agent engine, removes the account and paywall gates, and ships with telemetry off — a fully open-source Warp alternative: same terminal, same speed, none of the cloud.
07 Can I fork it and ship my own terminal?
That’s the point. Every upstream service, account profile, and Warp/Oz mark has been carved out of the product — the whole identity lives in a thin brand layer: one Rust constants file, two SVGs, and the provider catalog. Swap those, rebuild, and it’s yours. FORKING.md walks it end to end, and AGPL-3.0 keeps every fork as open as this one.
08 macOS says the app is from an unidentified developer.
Expected — Uncaged is ad-hoc signed because an independent fork has no Apple Developer ID. Clear the quarantine flag once with xattr -dr com.apple.quarantine /Applications/Uncaged.app and it opens normally from then on.
09 Can I migrate from Warp?
Yes. Uncaged is fully isolated from any Warp install — its own config directory and app identity — so nothing is shared unless you copy it over. The migration guide covers themes, keybindings and workflows.
No account. No cloud. No cage.
Thirty seconds from download to a working agent — none of them spent on a sign-up form.