Удалённый доступ с ядром на Rust и спокойным, компактным интерфейсом.
Windows · macOS · Linux · Android
Визуальная концепция с демонстрационными данными. Текущий интерфейс и набор функций могут отличаться.
Подключиться к домашнему компьютеру, передать папку, показать нужное место на экране или работать с несколькими машинами — без перегруженной панели управления.
Асси объединяет Rust-ядро, нативные возможности ОС и интерфейс Tauri. Проект находится на стадии early preview: базовые сценарии реализованы, а поддержка функций различается между платформами. Это ещё не полный аналог RustDesk и не готовый промышленный релиз.
| Что умеет Асси | |
|---|---|
| Экран и управление | Трансляция экрана, выбор монитора, мышь, клавиатура, масштабирование и полноэкранный режим. Desktop-видео: программный H.264 с JPEG fallback. |
| Совместная работа | Пометки, видимые обоим участникам, чат и явная передача текста через буфер обмена. |
| Файлы | Очередь файлов, передача папок на desktop, пауза и продолжение в текущем соединении. Получатель подтверждает приём и распаковку. |
| Несколько подключений | Главное окно и до четырёх дополнительных desktop-окон с независимыми сеансами. |
| Звук и запись | Системный звук с macOS/Windows. Локальная запись видео без звука — при поддержке WebView. |
| Инструменты | Терминал macOS/Linux с отдельным разрешением. Блокировка и перезагрузка Windows/Linux с подтверждением владельца. |
| Свои устройства | Постоянный прямой доступ по секретному приглашению и автозапуск после входа в учётную запись на desktop. |
Два устройства могут общаться напрямую по TLS, если между ними доступен сетевой адрес. Например, в локальной сети или через настроенную VPN. Для других сценариев есть собственный relay, который можно развернуть самостоятельно.
Публичного сервера Асси, поиска устройств по ID и автоматического обхода NAT пока нет. Приглашение содержит данные доступа — относитесь к нему как к паролю. Обычный входящий сеанс требует подтверждения; постоянный доступ включается владельцем отдельно.
Версия 0.6 использует протокол v4. Обновите оба клиента и создайте новое приглашение.
| Платформа | Экран устройства | Управление устройством | Системный звук | Особенности |
|---|---|---|---|---|
| Windows | ✓ | ✓ | ✓ | Разрешения ОС и ограничения защищённого рабочего стола; UAC и экран входа не поддерживаются. |
| macOS 13+ | ✓ | ✓ | ✓ | Для захвата и управления нужны системные разрешения. |
| Linux | ✓ | ✓* | — | Возможности зависят от графической сессии; Wayland требует отдельной проверки. |
| Android 7+ | ✓ | — | — | MediaProjection с системным подтверждением. Без AccessibilityService, выбора папок через SAF и дополнительных окон. |
✓ означает наличие реализации, а не завершённую проверку всех устройств. * Управление Linux зависит от доступного backend и окружения. Разрешения ОС, звук, задержка и поведение при отключении требуют проверки на физических устройствах.
GitHub Actions собирает пакеты для Windows x64, Linux x64, macOS Apple Silicon и Intel, Android arm64. Проверки и сборки запускаются на push в main, pull request и вручную. Артефакты можно скачать в завершённом запуске Build в разделе Artifacts (нужен вход в GitHub).
Сборки для тестирования не имеют production-подписи или notarization; Android использует debug-подпись. Это не публикация в магазинах. Статус конкретной платформы смотрите в её job: наличие workflow само по себе не подтверждает успешную сборку.
Нужны Rust 1.94+, Node.js 22+ / npm и системные зависимости Tauri 2. Для macOS также необходим Xcode/Swift toolchain; для Android — JDK и Android SDK/NDK.
npm ci
npm run devDesktop-сборка:
npm run buildAndroid arm64 APK — после настройки JAVA_HOME, ANDROID_HOME и NDK_HOME:
npm run android:init
npm run android:buildПроверки:
npm run ui:build
npm run checkКоманды выполняются из корня репозитория. Полная инструкция: DEVELOPMENT.md.
apps/client/ Tauri-клиент и интерфейс
apps/client/android-host/ Нативный Android MediaProjection plugin
crates/assi-session/ TLS-сеансы, протокол, файлы и права доступа
crates/assi-platform/ Захват экрана и системный ввод
crates/assi-video/ Видеокодирование
crates/assi-audio/ Системный звук
crates/assi-folders/ Потоковая упаковка и приём папок
crates/assi-access/ Постоянный доступ и автозапуск
crates/assi-terminal/ Терминальные сеансы
crates/assi-core/ Модель устройств и локальное хранилище
crates/assi-relay/ Самостоятельно разворачиваемый relay
- Восстановление передачи файлов после полного разрыва связи.
- Аппаратное кодирование и адаптация качества к сети.
- Android SAF для выбора и сохранения файлов/папок.
- Системная служба до входа в учётную запись и дополнительные платформенные возможности.
- Проверки на реальных устройствах, подписанные пакеты и стабильные релизы.
- Что нового в 0.6 и известные ограничения
- Подключение двух устройств
- Инструменты сеанса
- Системный звук
- Архитектура
- Разработка и сборка
- Проверки реализации
Нашли проблему? Опишите ОС и версию приложения, шаги воспроизведения и ожидаемое поведение. Перед отправкой логов удалите приглашения, адреса устройств и другие личные данные. Не публикуйте данные доступа в issues.
Доработка и бесплатное распространение разрешены. Продажа — только с разрешения правообладателя.
Исходники опубликованы по Assi No-Sale License 1.0. Ограничение продажи распространяется и на изменённые версии; это source-available проект, а не OSI open source. Полные условия — в LICENSE. Лицензии сторонних компонентов сохраняются; Manrope распространяется по SIL Open Font License.
