The editor exists for the fix an agent got 90% right. It is CodeMirror 6 with a Tokyo Night theme, and it is deliberately not trying to be an IDE — there is no language server, no autocomplete, and no refactoring.
⌘B toggles the sidebar; the activity bar switches it to the Explorer.
The tree loads lazily — directories are read when you expand them, not up front — so opening a large repository is instant. It carries indent guides, rotating chevrons, full-width rows with ellipsis and a tooltip for long names, and git decorations.
A filesystem watcher keeps the tree current, debounced so a build writing hundreds of files doesn't thrash it.
⌘P opens the file picker. It is backed by git ls-files, so it shows tracked files and respects your .gitignore for free.
The editor sits to the right of the terminal column and auto-hides when nothing is open. ⌘J toggles it; the divider carries a collapse arrow that animates with the panel.
Tabs carry a file icon and an accent underline when active. A dot marks unsaved changes. ⌘S saves; ⌘W closes the tab when the editor has focus.
Each tab gets its own CodeMirror view — one view per tab, rather than one view swapping documents.
Fold refuses to open two kinds of file:
| Limit | Behaviour |
|---|---|
| Larger than 2 MB | Not opened — a notice explains why |
| Binary content | Not opened — a notice explains why |
Both are deliberate. An editor that hangs on a 300 MB log file is worse than one that declines.
Languages come from @codemirror/language-data and load on demand by file extension. The theme is a custom Tokyo Night HighlightStyle that shares its palette with the terminal and the rest of the chrome, so one colour means one thing across the whole app.
Ctrl+` toggles focus between the editor and the terminal — the fastest way back to an agent after a quick edit.