The workstation
AI Labs is the real workstation surface: files, shell, git state, workspaces, chats, tools, and sessions stay together wherever you open it. Everything below is reachable from any device, and long-running work survives a closed tab.
Files
A full file browser over the real filesystem of the machine cptr runs on.
- Navigate, create files and folders as you browse, rename, move, delete.
- Drag and drop upload — drop a file onto a folder to upload it there. Uploads never overwrite an existing file (a numbered copy is created instead).
- Type-aware icons and sizes at a glance.
- Archive a selection to a downloadable zip.
- Search files by name or by contents and jump straight to the matching line.
Reading is blocked for .env files and common credential files (SSH keys, cloud credential stores) both in the UI and for the AI agent's file tools. See Security model.
Editor
Syntax-highlighted editing with tabs. Open multiple files side by side. Unsaved edits get a proper "you have unsaved changes" warning before you navigate away, and file edits preserve the original text encoding. Language detection covers the common set plus .cc, .cxx, .hh, .hxx and other C/C++ variants.
Inline previews
Open a file and AI Labs renders it in place where it can:
- Images inline.
- Documents — PDFs and office documents are readable in the browser.
- Spreadsheets —
.xlsxpreview rendered with ExcelJS. Legacy.xlsfiles show a short "convert to.xlsx" note. - Markdown, code with highlighting, and artifact cards.
Git
Stage, commit, diff, branch, and push from a visual changes view — no command line required.
| Status & diff | Per-file staged / unstaged view with syntax-highlighted diff hunks and adjustable diff settings (whitespace, context). |
| Stage / unstage / discard | Per-file or per-hunk. Git status refreshes are debounced so the list doesn't flicker while you work. |
| Commit | Write a message or generate one with a model (configurable in Admin → Git). A commit actions menu covers amend and related operations. |
| Branches | Create, checkout, rename, delete; branch search for large repos. |
| Worktrees | List and create git worktrees. |
| Stashes | List stashes; stash includes untracked files, and AI Labs warns about stashed changes when you switch branches. |
| Remotes | Pull, fetch, push. |
| GitHub | The gh CLI is available in the terminal and image; GitHub-mutating operations are gated (see Security). |
Commit authorship uses the signed-in user's git identity.
Terminal
A full shell in the browser over a real PTY.
- Run your tools, scripts, or a terminal coding agent exactly as you would locally.
- Sessions persist — close the tab and the terminal keeps running; reconnect from any device and it's still there.
- Send input to running commands — reply to prompts from long-running processes.
- Voice dictation in the terminal — dictate a command instead of typing it.
- Optional per-keystroke activity capture for audit, off by default.
In-workspace browser
Browse the web from inside a workspace tab. Three modes:
| Mode | What it is |
|---|---|
| Proxy | Pages served through AI Labs' proxy middleware (authenticated). Works on servers with no video hardware. |
| Managed Chrome | A private, AI Labs-managed Chrome profile. |
| Personal Chrome | Attach to your own running Chrome session. |
Browser sessions recover smoothly after a disconnect, catch up when video falls behind, and clean up reliably when closed. The same engine backs the agent's browser tools.
Tabs & layout
Open browsers, terminals, files, chats, and tools in separate tabs. Rearrange them, group them, or split the view. Layouts are flexible and the choice of what's visible is yours.
Workspaces
Multiple projects in one instance. Each workspace is a directory with its own chats, git state, system-prompt override, and open tabs. Switch between them without losing your place; a workspace picker appears where you need to choose one (imports, new chats). Workspace paths are normalized so the same project isn't tracked twice.
Search & quick open
| Global search modal | One place to search files, chats, and more. Not pinned to the last workspace. |
| Quick open | Jump to a file by name. |
⌘K | Also searches chat history. |
| Chat search | Find past conversations by content. |
Mobile & PWA
Built for the phone — touch-native, portrait-native, with careful keyboard handling so the on-screen keyboard never covers the chat input, dropdowns stay on screen, and tool calls don't overflow. Full PWA support means you can install it to your home screen and run it as an app. Sessions survive disconnects because on a phone, they will.