Перешёл с Mac на Windows, ужаснулся Win+V и написал свой менеджер буфера обмена на Rust (6 МБ, AI и никакого Electron)
Три года на macOS я сидел на Paste — менеджере буфера обмена, без которого просто не мог работать. Скопировал кусок кода неделю назад? Нашёл за секунду. Нужно вставить чистый текст без форматирования? Один хоткей.
Потом я перешёл на Windows (частично, чередуя с MacBook). С предвкушением нажал Win+V (10 лет не трогал винду!) и... увидел 25 элементов. Без поиска. А после перезагрузки — вообще пустое окно. Серьёзно, Microsoft?
Пошёл искать альтернативы. Попробовал Ditto — работает надёжно, но интерфейс застрял где-то в 2005 году. Взялся за CopyQ — мощнейший комбайн, но UI на уровне суровой системной утилиты для сисадминов. И ни у кого нет нормальных современных фич: встроенного AI, OCR-распознавания текста с картинок, адекватных тем оформления.
Решил: если хочешь сделать хорошо — пиши своё. Так появился Beetroot.
Что получилось (и почему это круче Win+V)
- Безлимитная история и умный поиск. Всё, что вы копируете, сохраняется навсегда и спокойно переживает перезагрузки. Поиск работает через fuzzy (понимает опечатки) и регулярные выражения (regex). Найти нужный лог или ссылку трёхнедельной давности теперь — дело пары секунд.
- Нативный OCR (текст с картинок). Скопировали скриншот, кликнули правой кнопкой → получили текст. Движок работает локально, через средства самой Windows, без отправки ваших скриншотов в интернет.Важно: Beetroot отлично распознаёт русский и украинский языки, но для этого в самой ОС должны быть установлены соответствующие языковые пакеты (Настройки → Время и язык → Язык).
- AI-трансформации. Выделяете скопированный текст — и встроенный AI может исправить грамматику, перевести, пересказать, вытащить нужные данные (например, JSON) или отформатировать как код. Есть 10 встроенных промптов + можно добавлять свои.
- Заметки к скопированному. Можно прикрепить свой комментарий (Note) к любому элементу в буфере, чтобы потом быстро его найти.
- Умный детектор контента. Beetroot сам понимает, где URL, email, код, JSON или HEX-цвет, и вешает аккуратные бейджики. Ссылки можно открывать в браузере прямо из истории.
- Batch-операции. Зажали Ctrl, прокликали нужные элементы — и можно скопировать их все разом (настроив разделитель) или пачкой удалить.
Интерфейс и UX
- Никакой мыши (Keyboard-first): быстрые вставки через Ctrl+1..9, превью по пробелу, вызов AI через Alt+T, удаление через Alt+Del.
- Мультимониторность: окно появляется ровно на том экране, где сейчас находится ваш курсор. Никаких поисков всплывашки на соседнем мониторе.
- Стиль: 9 тем оформления (включая OLED-чёрную), возможность задать кастомный акцентный цвет (hex) и эффекты прозрачности (Glass, Frosted или нативный Mica для Windows 11).
- Локализация: 26 языков, включая полностью переведённые интерфейсы на русский и украинский.
AI-трансформации на лету
Это моя любимая фича. Скопировали кривой текст или распознали скриншот с ошибками? Выделили, нажали хоткей — вставили уже чистый и грамотный текст.
Нужно вытащить JSON из простыни логов, перевести абзац, сделать саммари длинного письма или отформатировать блок как код? Всё это делается в пару кликов. В коробке уже лежат 10 готовых промптов, но вся магия в том, что вы можете писать свои собственные.
Сейчас это работает по модели BYOK (Bring Your Own Key) через OpenAI API. Данные летят напрямую с вашего компа на серверы OpenAI, без каких-либо прокладок с моей стороны. Если ключа нет — приложение вообще не лезет в сеть.
Под капотом: никакого Electron
Я терпеть не могу софт, который жрёт гигабайт оперативки ради отрисовки пары кнопок. Поэтому стек тут такой: Tauri v2 + React 19 + Rust + SQLite.
Установщик весит всего 6 МБ.
- Rust отвечает за весь бэкенд: работу с системным буфером, глобальные хоткеи, OCR и базу данных.
- React — для быстрого интерфейса.
- SQLite — для надёжного хранения истории (с автоматическими бэкапами и восстановлением базы при повреждении файла).
Что по приватности?
Я параноик, поэтому:
- Никакой телеметрии и аналитики.
- Никакого облака. Все данные лежат локально в SQLite.
- AI-трансформации работают только через ваш личный API-ключ OpenAI (BYOK). Данные улетают напрямую в OpenAI, минуя какие-либо серверы-прокладки. Если ключа нет — приложение вообще не делает ни одного сетевого запроса.
Что дальше: DeepSeek и локальные LLM (Ollama)
Я понимаю, что отправлять свой буфер обмена в облако (пусть даже напрямую) — это компромисс. Да и платить за API OpenAI хотят не все. Поэтому в ближайших релизах я делаю мощный упор на альтернативы:
- Интеграция с DeepSeek и кастомными эндпоинтами. Добавим возможность использовать API от DeepSeek и других провайдеров. Для простых задач по трансформации текста это в разы дешевле и часто ничем не уступает GPT.
- Полный офлайн через Ollama. Это киллер-фича следующих апдейтов. Вы сможете подключить Beetroot к локальным моделям (Llama 3, Qwen и т.д.), которые крутятся прямо на вашем железе. Перевод, саммаризация, рефакторинг скопированного кода — всё это будет работать полностью без интернета, абсолютно бесплатно и с нулевым риском для приватности.
Про деньги и подписки (спойлер: всё бесплатно)
Приложение было и останется полностью бесплатным. Я не собираюсь вводить никаких премиум-подписок или прятать базовые фичи за пейвол.
Единственный гипотетический сценарий, при котором в Beetroot может появиться какая-то монетизация — это если я решу прикрутить облачную синхронизацию буфера между разными устройствами. Тогда придётся как-то окупать серверную инфраструктуру. Но, будем честны, вряд ли до этого вообще дойдёт. Мой главный фокус сейчас — сделать идеальный, быстрый и безопасный локальный инструмент. Для себя самого, прежде всего. :)
Где скачать и пощупать:
- GitHub Releases: https://github.com/mnardit/beetroot-releases
- Сайт: https://max.nardit.com/beetroot
Ставится в одну команду через winget, scoop, chocolatey или просто классическим .exe с GitHub.
Буду рад вопросам, баг-репортам и конструктивному фидбеку в комментариях. Чего вам сейчас не хватает в вашем менеджере буфера обмена?