Об этом проекте
Atlas — это настольное приложение с открытым исходным кодом (Apache 2.0), описываемое как «система контроля версий для ИИ-агентов». Созданное на Rust и Tauri, с использованием Bun для фронтенд-инструментов, оно предоставляет рабочее пространство, где несколько ИИ-агентов могут работать с одной кодовой базой, а их действия записываются и доступны для запросов.
Контрольные точки: Каждая сессия агента локально сохраняется в .atlas/sessions.db, включая подсказки, сообщения, вызовы инструментов и файлы, которые агент затрагивал. Когда создается коммит — даже из терминала, другого редактора или при закрытом Atlas — он связывается с сессией, которая его создала. Связи переживают перебазирования и изменения коммитов через согласование patch-id; когда сжатие делает связь действительно неоднозначной, она осиротевает, а не угадывается. Секреты удаляются до сохранения, а импорт транскриптов может заполнить существующую историю Claude Code.
Поддержка нескольких агентов: Claude Code и Codex запускаются как внешние подпроцессы через протокол Agent Client Protocol (ACP), в то время как встроенный агент Atlas работает в процессе на форке движка Codex. Любой агент из реестра ACP (например, Cursor, OpenCode или Kilo Code) может быть запущен с использованием его официального бинарника. Сессии работают параллельно во вкладках и независимы от них, поэтому переключение вкладок не прерывает выполняющийся процесс.
Общая память: Локальный семантический индекс на устройстве (локальные эмбеддинги с поиском HNSW) читается и записывается каждым агентом, поэтому планы, решения, изменения файлов, сбои и архитектурные заметки, созданные одним агентом, становятся доступны другому. Перед каждой подсказкой Atlas собирает контекст из локально разрешенных @-упоминаний (файлы, папки, символы, ветки, коммиты, заметки, навыки, документы и прошлые сессии), семантических совпадений, пакета передачи сессии и существующих знаний, таких как markdown-заметки в .atlas/knowledge/, CLAUDE.md и AGENTS.md. Эмбеддинги и поиск выполняются на машине пользователя. Навыки определяются как файлы SKILL.md, глобально или для проекта, а «пакеты» могут устанавливать коллекции навыков из GitHub через индекс skills.sh.
Рабочее пространство: Приложение включает редактор на основе CodeMirror с восстановлением состояния для каждого проекта, представление git с реальным графом коммитов, индексацией, операциями с ветками и файловыми диффами, блочный терминал с полным интерактивным режимом для таких инструментов, как vim и htop, базу знаний markdown с обратными ссылками и экспортом в HTML или отдельный серверный бинарник, интеграцию исследований с arXiv и Semantic Scholar, встроенную вкладку браузера WebKit, пространственную доску «Spaces», сохраняемую в JSON, до трех изменяемых колонок раздельного просмотра и фильтруемый журнал активности. Панель «mission control» показывает использование агентов с течением времени, разбивку потребления и временные шкалы.
Платформы и конфиденциальность: Официальные сборки предоставляются для macOS 13+ (Apple Silicon или Intel, .dmg) и Windows 10+ x64 (.msi); Linux можно собрать из той же кодовой базы Tauri, но это не протестировано. Проект подчеркивает локально-ориентированную работу: код, заметки и сессии остаются на машине, локальное использование не требует учетной записи или сети, а учетные записи являются добровольными для синхронизации организации между устройствами и коллегами. Анонимная аналитика использования включена по умолчанию и может быть отключена согласно документации по телеметрии.
Сборка из исходников требует Bun, Rust (стабильный через rustup) и инструменты сборки платформы (Xcode Command Line Tools на macOS, MSVC build tools на Windows или пакеты GTK/WebKit2GTK на Linux). Разработка запускается через bun run dev:app, с производственными скриптами сборки для установщиков macOS и Windows. Работа над функциями нацелена на ветки версий, а не на main. Документация доступна на docs.tryatlas.cc, с архитектурными заметками в ARCHITECTURE.md и сообществом Discord.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.