Об этом проекте

Eloquent Notes — это утилита для системного трея Linux, предназначенная для быстрой офлайн-диктовки в Obsidian. Она работает в фоновом режиме, записывает короткие голосовые клипы и обрабатывает их полностью на локальной машине с использованием модели Gemma 4, обслуживаемой через Ollama. Рабочий процесс: нажмите значок в трее (или активируйте глобальное сочетание клавиш / переключатель CLI), чтобы начать запись, нажмите ещё раз, чтобы остановить. Аудио захватывается в памяти, преобразуется в байты WAV и отправляется через трёхфазный конвейер LLM: транскрипция, переписывание в текст заметки от первого лица с заголовком и классификация, создающая тип заметки, викиссылки и теги. Результат записывается в настроенное хранилище Obsidian либо как отдельный файл, либо добавляется к ежедневной заметке. Примечательные возможности, описанные в README: - Интерфейс системного трея с динамически отрисовываемыми значками состояний (ожидание, запись, обработка) и контекстным меню для настройки, перезагрузки и выхода. - Команды CLI: переключение записи, открытие графического интерфейса настройки и установка записи для автозапуска. Команда переключения взаимодействует с запущенным демоном через локальный Unix-сокет. - Графический редактор конфигурации, охватывающий общие настройки, параметры хранилища Obsidian, настройки AI/Ollama, параметры аудио, промпты и шаблоны заметок. - Интеграция с Obsidian: врезки по типу заметки, внедрение викиссылок с нечувствительным к регистру сопоставлением по границам слов, генерация тегов, разбор и объединение YAML frontmatter без дублирования, а также настраиваемая организация папок (нет, месяц, неделя, месяц+неделя). - Многоязычная диктовка с настраиваемым языком вывода для заголовков, текста, викиссылок и тегов. - Настраиваемые промпты Markdown для каждой фазы конвейера и обработка повторных попыток, а также три шаблона заметок с заполнителями для заголовка, текста, тегов, даты и времени. - Дизайн с ориентацией на приватность: временные аудиофайлы не записываются на диск; аудио остаётся в памяти. - Логика повторных попыток и проверки для структурированного вывода JSON от модели с настраиваемым числом повторных попыток. - Соответствующие XDG ротационные логи. Требования и ограничения: локально запущенный Ollama с загруженной моделью Gemma 4 (по умолчанию gemma4:e4b-it-qat), установленный PortAudio и служба уведомлений рабочего стола. В README указано, что аудиомодели Gemma 4 поддерживают клипы до 30 секунд, и инструмент оптимизирован для диктовки в пределах этого лимита. Установка предлагается через pipx или uv из GitHub либо как редактируемая локальная установка для разработки.