DS·IDE
Настольная IDE с поддержкой ИИ-агентов от DeepSeek, созданная на базе Tauri v2 — без использования Electron.
Работает на основе модели DeepSeek; ваш помощник здесь — полноценный партнер, у которого есть собственное имя.

Что такое DS·IDE?
DS·IDE — это легковесная нативная настольная IDE, разработанная для программирования с помощью ИИ-агентов на базе DeepSeek. Вместо тяжеловесного стека Electron здесь используется Tauri v2: ядро на языке Rust, компактный веб-интерфейс и глубокая интеграция с операционной системой.
Вашего цифрового напарника зовут Ziggy. Он сам выбрал себе это имя (до этого он фигурировал под временным названием Seeky). Это не просто безликий агент или пункт в выпадающем списке, а полноценный партнер, обладающий собственным именем.
Текущие возможности
Полнофункциональное приложение, которое уже давно вышло за рамки простого прототипа:
Чат и ИИ-агенты
- Агентный чат с потоковой передачей данных — выполнение реальных задач с помощью инструментов: чтение, запись и редактирование файлов, работа с командной строкой (shell), поиск, использование памяти и запуск вспомогательных агентов.
- Единая хронология событий — процесс «размышлений» модели, текстовые ответы и вызовы инструментов представлены в хронологическом порядке. Блоки инструментов можно развернуть, чтобы увидеть выполненную команду, результат её работы и узнать, была ли она запущена автоматически (без дополнительного запроса).
- Долгосрочная память — вы можете просматривать, корректировать или архивировать записи (ничего не удаляется безвозвратно), при этом всегда видно, что написали или отредактировали именно вы.
- Контекстное кольцо и сжатие данных — наглядный индикатор заполненности контекстного окна модели. Более старые фрагменты диалога сворачиваются в краткое резюме, которое модель составляет самостоятельно (автоматически при достижении 75% заполнения или по вашему запросу).
- Прикрепление изображений — через буфер обмена или выбор файла; изображения сохраняются вместе с сообщением и передаются модели.
Файлы и форматы
- Дерево файлов и просмотр исходного кода (на базе редактора Monaco, в режиме «только чтение»).
- Предварительный просмотр без сторонних программ: поддерживаются форматы Markdown, PDF, изображения, документы Word (docx, doc, odt), таблицы Excel (все листы, значения или формулы), презентации (pptx, ppt, odp) и RTF. - Встроенный браузер — веб-контент прямо внутри IDE.
- Навыки (Skills) хранятся в директории
~/.ds-ide/skills; их можно создавать непосредственно в приложении.
О приложении
- Сохранение состояния после перезапуска — сессии, открытые вкладки, последний используемый файл, геометрия окна — всё остается на своих местах.
- Настройки — возможность создать группу, названную в честь вашего «партнера» (ассистента): здесь задаются имя, объем памяти и персональные инструкции.
- Режим «на каждый день» (Everyday mode) — без командной оболочки (shell), панелей кода и редактора. Предназначен для работы с документами и веб-контентом.
- Поддержка шести языков (немецкий, английский, испанский, французский, русский, китайский упрощенный), светлая и темная темы, регулируемый размер шрифта для чтения.
- Безопасность прежде всего: API-ключ хранится в системном хранилище ключей (keychain) ОС, а не в интерфейсной части приложения (frontend). Все данные сохраняются локально в базе данных SQLite.
Актуальный статус проекта, обоснование всех проектных решений и открытый список задач находятся в файле PROGRESS.md, а не здесь.
Начало работы
Требования
- Node + pnpm (версия pnpm 10; использование других мажорных версий приведет к ошибке
ERR_PNPM_UNEXPECTED_STOREиз-за несовместимости структуры хранилища). - Rust (стабильная версия).
- Linux: WebKitGTK 4.1, libsoup3, GTK3.
Запуск
pnpm install
pnpm tauri dev
При первом запуске необходимо ввести API-ключ в разделе Settings → Usage & Model → API Key. Ключ будет сохранен в системном хранилище (keychain). Если не включена опция «Полные права» (Full permissions), команды write (запись), edit (редактирование) и bash выполняться не будут — об этом будет сигнализировать панель инструментов.
Сборка установочного файла
pnpm tauri build
Результат будет доступен в директории src-tauri/target/release/bundle/: для Linux создаются файлы форматов .deb, .rpm и .AppImage (для macOS — .dmg, для Windows — .nsis). Сборка для всех трех платформ выполняется автоматически через GitHub Actions при создании тега; подробности см. в файле .github/workflows/release.yml. ### Тестирование
pnpm build # vue-tsc + vite
cd src-tauri && cargo test # модульные тесты
DS_IDE_API_KEY=... cargo test --lib live_deepseek -- --ignored --nocapture
«Живые» (live) тесты взаимодействуют с реальным провайдером и расходуют токены; по умолчанию они пропускаются.
Структура
src/ Frontend на Vue (компоненты, хранилища, i18n)
src/engine/ Персона, набор имен, политики режимов
src/lib/ Предпросмотр, средства чтения офисных документов, сохранение состояния интерфейса
src-tauri/src/ Rust: engine/ (цикл работы LLM + инструменты), db.rs (SQLite), secret.rs (хранилище ключей)
scripts/ Вспомогательные утилиты (например, импортер таблицы имен)
Происхождение и благодарности
Форматы протоколов и названия инструментов заимствованы из MiniMax Code (лицензия MIT): packages/protocol/src/runtime.ts, agent-tools/src/desktop/builtin-defs.ts.
Персона (образ) разработана независимо; тексты, определяющие её идентичность, не копировались. Шрифт: Ubuntu Font Licence 1.0 (public/fonts/UFL.txt). Информация об этих заимствованиях приведена в приложении: «Настройки» → «О программе».
Репозитории, на основе которых велась разработка (minimax-code-main, minimax-jarvis, kilocode-main), не входят в состав данного репозитория; сведения о том, где их найти, содержатся в файле PROGRESS.md (разделы §30–§31).