Atlas is a native macOS editor built for the work around the code — research, planning, knowledge, and the agent threads that turn them into commits. Built so teams of humans and agents can move fast together.
installation.mdx — add Go install section and env-var notequickstart.mdx — Go tab across all 5 example blocksapi-reference.mdx — Client constructor + ChatCompletionsCreateerrors.mdx — errors.Is / AsCompressError across 4 blocksshared-context.mdx — Put / Get(full) / Stats / lifecyclecd sdk/golang && go test ./... (unit, no proxy)headroom proxy --port 8788 --no-rate-limit then full e2eGEMINI_API_KEY=... go run ./examples/e2e (real round-trip)Chat with agents, run terminals, read code, browse docs, and capture plans — without leaving the room. Atlas keeps the loop tight.
memory.ts to use streams.Claude Code, Codex, and your custom agents — all first-class. Stream responses, watch tool calls, and intervene mid-flight.
Branches, merges, deploys — rendered inline. Click any commit to walk diffs without leaving your chat.
atlas_wrap() for memory + traces.Client, Session, Tool.Capture ideas as notes on an infinite canvas. Drag them into chat to give agents fresh context.
Atlas is a desktop application. Compact, AMOLED, fast. Every detail is tuned for ten-hour days at the keyboard.
See exactly which files, symbols, and tests an edit will touch — before the agent commits a single line.
Split panes, tabs, search across history. Agents share the same shell — no context smuggling.
Rank every file by symbol density. Find the hot spots, refactor with intent, and watch the heat fade.
Every agent action, every tool call, every commit — timestamped, searchable, replayable.
Read docs, copy snippets, save to Knowledge — without losing your place. Atlas indexes what you save.
Per-thread token, call, and dollar counters live in the status bar. No surprise bills, ever.
A custom lane-assignment graph renders every branch, merge, and deploy as you actually committed it — not as a flat list. Click any node to see the diff inline, without leaving your thread.
git log --graph can't.
@branch in any thread to give the agent that branch's context.
Token-refresh is opportunistic, not scheduled. The frontend never sees the refresh token; it lives only in the keychain proxy.
tauri-plugin-stronghold.auth.refresh.failed event.Atlas treats your project's knowledge base as a first-class surface. Notes live as plain markdown in .atlas/knowledge/ next to your code — one source of truth, read by you and by every agent thread in the project.
CLAUDE.md & AGENTS.md — no migration. Atlas reads what's already there.
Pull files, folders, branches, knowledge notes, commits, and entire threads into your prompts. Atlas resolves the references locally and hands the agent exactly the context it asked for — nothing more.
@src/auth.ts#L40-80 sends a slice, not the whole file.
@branch, @commit, @knowledge/auth-flow. Same syntax.
@thread:plan-acp-driver gives the agent a teammate's prior reasoning.
CodeMirror 6 with first-class support for JS, TS, Python, Rust, Go, Java, C++, JSON, YAML, Markdown, SQL, CSS, HTML, XML. Files are real files — ⌘S writes to disk.
Drop notes onto a spatial board. Link them with edges. Pin the ones the agent should treat as context. Everything persists as plain JSON in .atlas/canvas.json — so your thinking versions with your code.
Three things to land before we can register Codex.
atlas-agentsWhat every ACP adapter must implement:
fn spawn(&self) -> Result<Stream>
How do we surface streaming bytes from a long-running adapter to the chat panel without coupling to Claude's JSONL shape?
Cersei's REPL session lifecycle; Claude Code subprocess hand-off.
cargo test --workspace — approve?acp-driver.rs — 3 files changed, +47 -12, all tests pass.src/features/chat/lib/acp-api.ts (148 lines).knowledge/threads/acp.md.acp/codex-adapter from main.Every meaningful agent event — permission prompts, completed streams, tool calls, knowledge saves, branch operations — surfaces in a unified inbox. Approve, dismiss, jump back to the thread.
⌘⇧I from anywhere. Click a row to land in the source thread.
Every meaningful event — chat sends, tool calls, file edits, git ops, terminal commands, knowledge writes — flows through a 500-event ring buffer in memory plus an append-only pinned log on disk. Searchable, filterable, JSON-expandable per row.
~/.atlas/log/pinned.jsonl.
jq from your terminal.
| Time | Source | Kind | Summary |
|---|---|---|---|
| 37s ago | agent | stream-done | Refactored acp-driver — 3 files changed, +47 -12, all tests pass. |
|
{ "source": "agent", "kind": "stream-done", "sessionId": "a2b9727-634b-4129", "exitCode": 0, "durationMs": 18404 } |
|||
| 1m ago | canvas | note-add | New note: "ACP driver plan" |
| 2m ago | editor | file-save | app.rs · 24 lines changed |
| 2m ago | chat | send-agent | "Wire the codex adapter into the chat panel." |
| 4m ago | git | branch | Created branch acp/codex-adapter from main. |
Atlas speaks the Agent Client Protocol (ACP). Today it ships with Claude Code; Codex, OpenCode, and Kilo Code follow on the same shell. Swap mid-thread. Bring your own keys. No lock-in.
Read the ACP docsA real problem: companies and teams don't have shared knowledge bases that humans and agents can both consume. Atlas is heading there. The single-player tools shipping today are the substrate for the multiplayer ones below.
Sign in to sync across machines. Invite teammates. Local-first stays local; only what you publish reaches the network.
The same markdown files, mirrored across the team. Humans read them in Atlas; agents consume them as system prompt. One source of truth, both audiences.
Save any agent thread to the team knowledge base. Teammates pick up exactly where the agent left off, with full reasoning history attached.
Incremental versioning for CLAUDE.md, AGENTS.md, and every knowledge note. Diff agent context the same way you diff code. Roll back when an instruction regresses behaviour.
Import knowledge from Jira and Confluence. Map tickets to threads, sync designs to notes. Stop copy-pasting context into prompts.
Open a ticket, post the prompt, gather team votes on the agent's plan, then approve the run. Plan and execution, no Notion ↔ Linear ↔ Slack pinball.
Aggregate knowledge and system traces across the team into shared reference indices. Every agent inherits the team's best context automatically.
Free during the alpha. Bring your own keys. Apple Silicon binary, no Electron, no telemetry, no account.