Raw capture โ€” raw/collaborator.md


url: https://github.com/collaborator-ai/collab-public date_fetched: 2026-07-05 backfilled: true


Collaborator is a place to build with agents.

Collaborator is an end-to-end environment for agentic development. Terminals, context files, and running code โ€” all arranged on an infinite canvas in one place. No context switching, no tab hunting. Just your agents and your work, side by side.

The app is early-stage and in active development, with native desktop targets for macOS, Windows, and Linux. On Windows, terminal sessions can target both PowerShell and WSL2 distros.

Download the latest release for macOS, Windows, or Linux.

macOS and Linux also support command-line install:

curl -fsSL https://raw.githubusercontent.com/collaborator-ai/collab-public/main/install.sh | bashWindows: use the .exe installer from the releases page.

Collaborator is a native desktop app built with:

All data is stored locally on disk.

Collaborator is a single-window application for macOS, Windows, and Linux. It operates primarily on local files with no accounts required. Anonymous, non-identifying usage analytics are collected via PostHog.

The window is divided into two regions:

All application state is stored as JSON files in ~/.collaborator/.

The navigator sidebar displays a file tree rooted at the active workspace folder. Users can maintain multiple workspaces and switch between them.

A dropdown at the top of the navigator shows the active workspace name. It provides:

Each workspace gets its own independent file tree. The canvas and viewer are shared across workspaces.

The file tree shows all files and folders in the active workspace. It supports:

Selecting a file in the tree opens it in the viewer. Dragging a file from the tree onto the canvas creates a tile.

The canvas is an infinite pan-and-zoom surface that fills the main area. It uses a dot grid background for spatial orientation.

Action Input
Pan Scroll wheel, or Space+drag, or middle-click+drag
Zoom in Cmd+= or Ctrl+scroll up
Zoom out Cmd+- or Ctrl+scroll down
Reset zoom Cmd+0

Tiles are live views, not standalone containers.

Tiles are the content units on the canvas. Each tile has:

Tiles are created by:

Tiles can be closed via their title bar. Holding Shift while scrolling passes scroll events through tiles to the canvas.

An interactive terminal session. Created by double-clicking empty canvas space. The terminal's working directory is set to the active workspace path.

Terminals are the primary interface for running AI agents. Each terminal tile manages its own independent session.

A rich markdown editor. Created by dragging a .md file from the navigator onto the canvas. Supports inline editing with live rendering.

A syntax-highlighted code editor. Created by dragging any non-markdown, non-image file from the navigator onto the canvas. Supports inline editing with language detection.

A read-only image display. Created by dragging an image file (.png, .jpg, .jpeg, .gif, .svg, .webp) from the navigator onto the canvas.

The viewer displays the content of the currently selected file in the navigator. It occupies the main area alongside the canvas.

File type Display
Markdown ( .md,.mdx,.markdown,.txt) Rich text editor with frontmatter support, cover images, and wiki-style links
Code (all other text files) Syntax-highlighted editor with line numbers
Image ( .png,.jpg,.jpeg,.gif,.svg,.webp) Image display with metadata

Markdown and code files support inline editing in the viewer. The viewer watches for external file changes on disk and reloads automatically.

Pressing Escape closes the viewer (when not actively editing).

All state is stored locally in ~/.collaborator/.

{
  "version": 1,
  "tiles": [
    {
      "id": "tile-<timestamp>-<index>",
      "type": "term | note | code | image",
      "x": 0,
      "y": 0,
      "width": 440,
      "height": 540,
      "filePath": "/absolute/path/to/file",
      "zIndex": 1
    }
  ],
  "viewport": {
    "panX": 0,
    "panY": 0,
    "zoom": 1.0
  }
}

Canvas state is saved 500ms after each change (debounced) and immediately when tiles are created or closed.

{
  "workspaces": ["/path/to/workspace1", "/path/to/workspace2"],
  "active_workspace": 0,
  "window_state": {
    "x": 0,
    "y": 0,
    "width": 1440,
    "height": 900,
    "isMaximized": false
  },
  "ui": {}
}

Install:

Platform notes:

Once the prerequisites are installed, clone the repo and install dependencies:

git clone https://github.com/collaborator-ai/collab-public.git
cd collab-public/collab-electron
bun install

bun run devThis starts the Electron app with hot reload via electron-vite.

bun test``bun run buildโ €