Десктопный агент «Союз»: безопасный, бесплатный и теперь с открытым исходным кодом

Десктопный агент «Союз»: безопасный, бесплатный и теперь с открытым исходным кодом

На рынке AI-агентов царит гонка за универсальностью: кто даст модели больше инструментов, доступа и свободы. Мы пошли против течения. Вместо бесконтрольного расширения возможностей сделали ставку на безопасность, предсказуемость и экономию ресурсов. Так появился десктопный агент «Союз».

Сегодня мы открываем исходные коды проекта. Рассказываю, как всё начиналось, какие решения привели нас к результату и почему ограничения оказались преимуществом.

Начало: агенты повсюду

В июле 2025 года я писал статью для «Космотекста» о том, как создать своего AI-агента. К тому времени десктопные агенты уже были везде: друзья показывали голосовых помощников на базе API OpenAI и Anthropic, коллеги разрабатывали решений для автоматизации рутины.

Хакатон: отказ от гонки с Anthropic

В августе 2025 года мы с коллегой решили поучаствовать в ИИ-хакатоне Сбера. Решили не конкурировать с универсальными агентами вроде Claude Code — это казалось нереалистичным.

Вместо этого выбрали узкую, но важную задачу — агент для слепых. Не требовал UI, но нуждался в распознавании экрана и управлении мышью и клавиатурой. У меня уже был опыт автоматизации: в 2016 году я писал боты для клавиатурных тренажёров, а позже создал библиотеку на Clojure и DSL-интерпретатор для автоматизации десктопа.

Победа в отборочном, провал в финале

За неделю до хакатона собрали прототип: невидимый агент, управляющийся голосом — открывает сайты, кликает, печатает, работает с закладками. Судьи были впечатлены, и мы прошли в финал.

За день до финала Гигачат обновился: даже слово «закладка» попадало под цензуру. Мы провели ночь без сна, переключив агент на модели Anthropic и запуская его через VPN. Это замедлило работу, но спасло демонстрацию.

Новый старт: KMP и свой фреймворк

В сентябре 2025 года начали с нуля. Разрабатывали агента для мобильных приложений, открыли для себя Kotlin Multiplatform и создали собственный фреймворк для агентов.

Этот опыт лег в основу нового стека: KMP и отказ от готовых решений в пользу полного контроля.

Фокус на безопасность — и неожиданная экономия

К ноябрю 2025 стало ясно: агентов для программистов — много, а для обычных пользователей — нет. Они не понимают, что безопасно, а что нет. Мы поставили три условия:

  • Работать из коробки, без настроек.
  • Не требовать VPN, криптовалют или иностранных карт.
  • Быть безопасным по умолчанию.

Эти требования исключили использование MCP — он избыточен, небезопасен и раздувает контекст. Это критично для Гигачата и локальных моделей, которые теряют эффективность при большом объёме данных.

Наши guardrails: контроль через код

Поскольку все инструменты мы пишем сами, можем жёстко контролировать поведение агента:

  • Опасные действия — удаление файлов, отправка сообщений — требуют подтверждения.
  • Агент не может скачивать и запускать бинарные файлы.
  • Доступ ограничен папкой $HOME.
  • Файлы из компьютера отправляются только в сохранённые сообщения Telegram, исключая случайную передачу третьим лицам.

Каждый из более чем 70 инструментов проектируется с учётом безопасности.

Сравнение: наш подход vs. индустрия

Типичный универсальный агент проходит через десятки этапов, включая множественные guardrails, проверки LLM и подключение MCP. Получается машина Голдберга.

Наш агент работает проще:

  1. Промпт.
  2. Классификация.
  3. Добавление своих функций.
  4. Добавление RAG.
  5. Ответ от LLM.
  6. Вызов инструментов.
  7. Возврат результата.

Нет MCP. Нет многоуровневых проверок. Всё безопасно на уровне кода. Это даёт не только защиту, но и экономию токенов.

Релиз и развитие

В феврале 2026 года, после выхода Claude Cowork, OpenClaw и Perplexity Computer, стало ясно: нужно выходить на рынок. Мы подготовили релиз: улучшили UI, добавили онбординг, настройки, политики безопасности.

Сборка под macOS заняла целую неделю отпуска — KMP выдал ожидаемые сложности.

К марту 2026 года добавили бесплатный интернет-поиск, поддержку локальных моделей, метрики, улучшили работу с текстом и UX.

Как я использую «Союз»

Агент помогает мне в работе с текстами: исправляет опечатки, находит ссылки для подтверждения тезисов, приводит контраргументы с доказательствами. Например, он помог отредактировать эту статью.

Возможности «Союза»

  • Работа с документами: doc, pdf, xls, csv, txt, md.
  • CRUD и fuzzy-поиск по файлам.
  • Запись экрана и скриншоты.
  • Интеграция с заметками, календарём, почтой.
  • Автоматический логин (с подтверждением кода).
  • Суммаризация и поиск в чатах.
  • Отправка и чтение сообщений.
  • Управление через Telegram.
  • Передача файлов между компьютером и Telegram (в сохранённые сообщения).
  • Поиск в интернете и глубокий ресерч.
  • Работа с браузером: вкладки, закладки, история.
  • Анализ таблиц, построение диаграмм.
  • Создание презентаций (пока в зачаточной форме).
  • Запоминание команд пользователя.
  • Поддержка локальных моделей.

Итог: меньше — значит надёжнее

Другие агенты обещают магию и универсальность. Мы выбрали иной путь: «агент не делает лишнего».

Фокус на ограничениях дал безопасность, экономию токенов и простую архитектуру. Не через бесконечные проверки, а через контроль на уровне кода.

Пока доступна версия для macOS. В планах — Windows и Linux. Скачать можно на souz.app или с GitHub.

Читать оригинал