Cate — это настольная среда разработки (IDE), построенная на бесконечном холсте. Вместо того чтобы громоздить окна и вкладки, вы можете свободно размещать редакторы, терминалы, браузеры, документы и AI-агенты в произвольном пространстве. Их можно оставлять плавающими, пристыковывать во вкладки и разделённые панели или открепить в отдельные окна операционной системы — и Cate восстановит всю раскладку при следующем открытии папки.
Быстрый старт: откройте папку — она станет рабочим пространством. Нажмите правой кнопкой, чтобы добавить панели, Cmd+K — для командной палитры, перетащите панели на панель дока, чтобы собрать вкладки и разделения. Никаких конфигурационных файлов.
Установка
Скачайте готовый релиз. Для повседневной работы сборка из исходников не рекомендуется.
| Платформа | Форматы | Ссылка |
|---|---|---|
macOS |
DMG, ZIP ( |
|
Windows |
NSIS-установщик, ZIP ( |
|
Linux |
AppImage, DEB, |
Что внутри
-
Холст и раскладка: бесконечное масштабирование и панорамирование, пристыковка во вкладки и разделения по четырём зонам, открепляемые окна, сохранённые раскладки и восстановление многопроектных сессий.
-
Редакторы и терминалы: редакторы Monaco с подсветкой синтаксиса, мультикурсором, сравнением файлов и предпросмотром Markdown; нативные терминалы xterm.js через
node-pty; панели для просмотра PDF, DOCX и изображений. -
Git: файловое дерево с поддержкой git и живым отслеживанием изменений, а также боковая панель управления исходным кодом для стейджинга, веток, воркдеревьев, истории и встроенных диффов. Полнотекстовый поиск.
-
AI-агенты: встроенный агент для написания кода (Pi) с тредами чатов и памятью модели на уровне чата. Подключение к Anthropic, OpenAI Codex, GitHub Copilot, Gemini, OpenRouter, Groq, Mistral, DeepSeek и другим — через OAuth или API-ключ.
-
Навигация: поиск по всему холсту — файлам, прокрутке терминала и заголовкам панелей; командная палитра; клавиатурная навигация между панелями.
Горячие клавиши
Ниже приведены сочетания для macOS; на Windows/Linux вместо Cmd используйте Ctrl.
| Панели и файлы | Вид и навигация | ||
|---|---|---|---|
Новый терминал |
|
Командная палитра |
|
Новый редактор |
|
Поиск везде |
|
Новый браузер |
|
Показать/скрыть боковую панель |
|
Новый агент |
|
Показать/скрыть файловый менеджер |
|
Новый холст |
|
Показать/скрыть миникарту |
|
Новый файл |
|
Следующая / предыдущая панель |
|
Сохранить файл |
|
Перемещение между панелями |
|
Закрыть панель |
|
Удалить активную панель |
|
| Холст | |
|---|---|
Увеличить / уменьшить |
|
Сбросить масштаб |
|
Масштаб по содержимому / выделению |
|
Автоматическая раскладка холста |
|
Панорамирование холста |
|
Переключение инструментов выбора / руки |
|
Отменить / повторить |
|
Любое сочетание клавиш можно переназначить в настройках.
Сборка из исходников
Для участников разработки. В остальных случаях используйте готовый релиз.
Требования:
-
Bun: менеджер пакетов и запускатель скриптов.
-
Node.js версии 20 или 22 LTS (см.
.nvmrc) — должен быть доступен в PATH. Сборочные скрипты работают под ним; сопутствующий демон поставляется с собственным Node 22. -
Только Linux: для macOS и Windows
node-ptyпоставляется в виде готовых бинарников, а на Linux компилируется из исходников. Установите Python 3 и C++-тулчейн:-
Debian/Ubuntu:
sudo apt install build-essential python3 -
Fedora/RHEL:
sudo dnf install @development-tools gcc-c++ make python3 -
Arch:
sudo pacman -S base-devel python
-
После свежего клонирования одна команда настраивает всё (устанавливает зависимости и собирает локальный сопутствующий демон):
git clone https://github.com/0-AI-UG/cate.git
cd cate
bun run setup
Затем:
bun run dev # dev-сервер с горячей перезагрузкой
bun run typecheck
bun run test # модульные тесты (vitest)
bun run test:e2e # интеграционные тесты Playwright
bun run build # сборка для продакшена
bun run package # упаковка для дистрибуции (:mac, :win, :linux)
Упакованные бинарники окажутся в release/. Сопутствующий демон пересобирается командой bun run companion:tarball — запускайте её после любых изменений в src/companion/.
Архитектура
src/
├── agent/ # Встроенный агент Pi: менеджер процессов, авторизация, маркетплейс, UI панели
├── main/ # Главный процесс Electron: IPC, рабочие пространства, окна, обновятор, безопасность
├── preload/ # Изолированный IPC-мост (context-isolated)
├── renderer/ # React 18 приложение: холст, докинг, панели, боковая панель, хранилища, хуки
└── shared/ # IPC-каналы и общие типы
Весь IPC в Cate проходит через изолированный мост в preload-скрипте. Доступ к файловой системе ограничен зарегистрированными корнями рабочих пространств, в браузерных панелях отключена интеграция с Node, а терминалы не могут запускать процессы за пределами разрешённых директорий.
Стек: Electron 41, React 18, Zustand 5, Monaco 0.52, xterm.js 5.5 + node-pty 1.0, Tailwind 3.4, electron-vite, electron-builder, electron-updater, Sentry. Для PDF и DOCX используются pdf.js и mammoth, для git — simple-git, для отслеживания файлов — chokidar. Среда выполнения агента — @earendil-works/pi.
Участие в разработке
См. CONTRIBUTING.md. История изменений по релизам — в CHANGELOG.