Collaborator — это рабочее пространство для разработки с AI-агентами, где всё нужное собрано на одном бесконечном холсте. Терминалы, файлы с кодом, заметки и картинки можно расположить рядом друг с другом, перетаскивать, открывать прямо из проводника и редактировать на лету. Никаких вкладок, никаких переключений между окнами — просто ты, твои агенты и твоя работа в одном месте.
Приложение работает локально на macOS, Windows и Linux. Все данные хранятся на диске, никаких аккаунтов не требуется. На Windows можно запускать терминалы как в PowerShell, так и в WSL2-дистрибутивах.
Как это устроено: слева — навигатор с деревом файлов и переключателем рабочих пространств, справа — холст, на котором можно создавать плитки с терминалами, открывать файлы, редактировать код и markdown, смотреть картинки. Холст бесконечный, масштабируется и панорамируется, все элементы выравниваются по сетке. Плитки привязаны к реальным файлам на диске: если файл переименовали или удалили, плитка обновится или закроется автоматически.
Терминалы в Collaborator — это не просто окошки для команд. Каждый терминал живёт своей жизнью, сохраняет сессию и работает независимо от других плиток. Именно в терминалах запускаются AI-агенты, которые могут работать с файлами из рабочего пространства.
Файлы можно перетаскивать из навигатора на холст, и они откроются в виде плиток нужного типа: markdown-заметки с поддержкой вики-ссылок и обложек, код с подсветкой синтаксиса, картинки с метаданными. Всё редактируется прямо на месте, изменения сохраняются на диск, а если файл изменился извне, плитка перезагрузится сама.
Можно работать с несколькими рабочими пространствами одновременно, переключаться между ними через выпадающий список, добавлять новые папки или удалять старые. Каждое пространство получает своё дерево файлов, но холст и просмотрщик общие для всех.
Состояние холста, позиции плиток, масштаб и панорамирование сохраняются автоматически в JSON-файлы в папке ~/.collaborator/. Приложение построено на Electron, React, xterm.js для терминалов и Monaco Editor для редактирования кода.