Open source · Pure Rust · Tauri 2 · Windows, macOS & Linux

The editor that ships with an agent.

Rustic pairs a fast, VS Code–style editing surface with a first-class AI agent that can read your whole workspace — with every change captured as a revertible checkpoint.

EXPLORER
acme-api▾ 1.84M · $2.17
main.rs• acme-api× auth.rs• acme-api
acme-api › src › main.rs
1use axum::{Router, routing::get};
2
3/// Boots the API and serves on $PORT.
4#[tokio::main]
5async fn main() {
6    let app = Router::new()
7        .route("/healthz", get(|| async { "ok" }))
8        .layer(auth::require_bearer());
9    axum::serve(listener, app).await.unwrap();10}
⎇ main 2↑avijitbhuin21✎ 1 unsaved Ln 9, Col 5RUSTLFRustic
0provider families
+ any compatible endpoint
0C dependencies
pure-Rust workspace
0permission modes
Chat · Edit · Auto
∞checkpoints
one per message

01 — The editor

Everything you expect from an editor. Then some.

A real IDE surface — not a chat window with a file picker bolted on.

A built-in agent with real tools

Read, edit, create and move files. Run commands in background PTYs it can poll. Fetch and search the web. Generate images and video. Every tool runs behind a Chat / Edit / Auto permission model — you decide how much rope it gets.

  • read_file
  • edit_file
  • run_command
  • grep_search
  • web_fetch
  • find_symbol
  • spawn_subagent
  • + MCP

Per-message checkpoints

Every turn snapshots the whole project into a gix shadow repo. One click reverts files and the chat to any earlier point.

Integrated terminals

ConPTY / portable-pty backed, grid and split layouts, scrollback that survives remounts. The agent sees the same terminals you do.

Monaco, multi-tab, LSP

The same editor core as VS Code, with tree-sitter highlighting and previews for Markdown, images, PDF, docx, xlsx and notebooks.

Skills, workflows, @ & /

Reusable instruction bundles and saved playbooks, installable from GitHub. Mention files and live terminals with @; invoke skills inline with /.

Keys never touch the webview

API keys live in the OS keychain. The frontend only ever sees a sentinel; the Rust backend resolves the real secret.

A browser the agent can drive

Embedded Chromium with DevTools access: click, type, fill forms, read the console, inspect network requests, take screenshots, run Lighthouse. It verifies its own UI work instead of guessing.

Long sessions that stay on track

Pin a goal and the agent keeps working toward it. Context auto-condenses before it overflows, a live capsule shows how full the window is, and cost tracking with budget ceilings stops a runaway task before your bill does.

  • goal
  • auto-condense
  • context meter
  • cost tracking
  • budget ceilings

Multi-project workspace

Open several repos at once. Global search, git status, diffs and history — all pure Rust via gix, no C toolchain required.

02 — Orchestration

One agent is good. A team is better.

Rustic treats agents as first-class citizens — its own, and everyone else's.

  1. 01

    Sub-agents that offload context

    Delegate read-only exploration, research, or a self-contained chunk. Children return a summary; the host keeps the full picture. Concurrent writes go through a 3-way merge guard so parallel edits never clobber each other.

  2. 02

    Peer agents in the same project

    Run several top-level tasks at once. Agents can see who else is live, what files they've written, and message each other to claim or yield an area.

  3. 03

    Bring your existing CLI agents

    Claude Code, Codex and Antigravity run as chats inside Rustic with hidden PTYs — same panel, same project, same terminals.

    Claude Code Codex Antigravity
  4. 04

    Memory that survives the session

    A fragmented project memory the agent reads at task start and writes back at the end — conventions, gotchas, decisions — so it stops repeating itself.

03 — Rustic Server

Your whole IDE. In your pocket.

rustic-server runs the exact same Rust core as the desktop app — headless, on a box you own — and serves Rustic to any browser. Start a task from your desk, check on it from the train, approve the fix from your phone.

Built for the phone, not shrunk onto it.

  • A real mobile layout. Below tablet width Rustic switches to a one-view-at-a-time shell with a bottom tab bar — Agent, History, Files, Editor, Terminal — plus Search, Git and the browser under More.
  • Nothing resets when you switch. Views stay mounted, so chat scroll, open editors and live terminal sessions survive every tab hop.
  • Agents keep working when you close the lid. Tasks run on the server, not your laptop. Walk away, come back on any device, and the stream picks up where it is.
  • Every tab, every device, in sync. One event hub fans out to all connected browsers — your desktop and phone see the same chat, live.

Dev servers, auto-exposed

Start npm run dev and a Cloudflare quick-tunnel opens for that port automatically — tap the link on your phone. Stop the server and the tunnel is reaped.

A real browser on the VM

Headless Chromium next to your code, so localhost:3000 and OAuth redirects just work. Streamed to you with full DevTools — and zero processes when it's closed.

Issues that fix themselves

Point a GitHub webhook at your server: new issues spawn a fixer task, comments answer its questions, and the fix lands as a local commit — never pushed without you.

Sync desktop ⇄ server

Push your whole environment — projects, chats, settings — to the server and pull it back down anywhere. Chunked, parallel, resumable transfers.

Locked down by default

Password login with HMAC-signed sessions and per-IP rate limiting. Path guards block system dirs and credentials. One Power button logs every device out.

One container, batteries in

Rust binary, web UI, git, node/npx and uv/uvx for MCP, plus Go, Rust, Bun and TypeScript toolchains. Caddy handles HTTPS. Git in the terminal is pre-authed to GitHub.

deploy
$ git clone https://github.com/avijitbhuin21/Rustic && cd Rustic
$ cp .env.example .env   # set RUSTIC_AUTH_PASSWORD + RUSTIC_DOMAIN
$ docker compose up -d --build
 ✔ Container rustic-server  Started
 ✔ Container caddy          Started  https://rustic.example.com

One click on Railway gives you a box with a persistent volume, a public HTTPS domain and a freshly generated login password. Or self-host on any Linux VM with Docker, or behind Tailscale. Bring your own keys — they stay on your server.

04 — Pricing

There isn't one.

Rustic is free to download and the source is on GitHub. Bring your own API keys — Anthropic, OpenAI, Google, OpenRouter, or a local OpenAI-compatible server. No accounts. No middleman.

05 — Download

Ship your next thing with a co-pilot in the cockpit.

Installers for every platform on the GitHub Releases page. Auto-updates ship with the app.

Builds are currently unsigned — Windows SmartScreen and macOS Gatekeeper will ask you to confirm on first launch.