Telegram-Git-Obsidian

Недавно я обмолвился тут, что соединил свой Obsidian со своим же Git'ом. С того момента, когда я вернулся к плотному использованию вулканического стеклышка, для синхронизации между устройствами сначала использовал какой-то плагин, который я спустя некоторое время после установки удалил - во-первых, почти не пользовался им. Да и, во-вторых, тоже - как-то синхронизация с телефоном оказалась мне без надобности. А еще нужно руками синхронизировать между устройствами все настройки, а еще тащить все, что есть в базе Обсидиана, на телефон... в общем, минусы для меня перевесили необходимость синхронизации. Да и сам Obsidian с телефона в конечном итоге удалил.

В целом, так бы и жил себе. Но вспомнилась мне одна фича Capacities, которым, как вы помните, я одно время пользовался. А именно, возможность добавлять заметки через тг-бота. Я прикинул, что, в принципе, мне полная синхронизация с телефоном-то и не нужна. А вот в одностороннем порядке отправлять какие-то идеи, которые будут укладываться в папку Inbox - вполне себе годная идея. Написать бота с вездепроникающим ныне вайб-кодингом - задача нехитрая. Но, ясное дело, с локальным Obsidian такое не провернешь. С другой стороны, Git для этих целей подходит идеально: 1. Есть основная рабочая станция с Obsidian - мой ноут. Тут происходит основная работа с базой знаний. 2. На основной рабочей станции прикручен плагин Git для Obsidian. 3. Плагин настроен на синхронизацию с репозиторием - при запуске, при создании и редактировании нового документа (с задержкой в пару минут), и по таймеру - каждые 30 минут. В общем, Git прикрутить труда не составило. Даже процесс описывать не буду - все стандартно и по инструкциям, коих в сети куча кучная.

Дальше второй шаг - написать бота. В принципе, механика работы бота в данном случае простейшая: 1. В бота скармливается ключ доступа к моей Git-репе (git у меня крутится на gogs). 2. Каждое сообщение, которое бот получает на вход - форматируется нужным образом и пушится в репу. 3. Все. Руками такого малыша я бы написал на Python за пару дней (с учетом того, что я не кодер и собственноручно писал ботов в прошлый раз более года назад). Но зачем, когда есть активная подписка Codex? Он это сделал за несколько минут. И на Go - потому что я поставил задачу написать максимально компактный и минимально охочий до ресурсов код. Хотя, для такого сервиса и python работал бы быстро.

В результате я получил то, что и хотел: когда возникает в голове какая-то идея, нужно максимально быстро ее записать. Ибо она исчезнет так же быстро, как и появилась. Я открываю бота и набрасываю туда то, что в голову пришло. Потом, когда уже добрался до компьютера, открываю Obsidian - и моя идея уже лежит в папке Inbox - ждет доработки.

Ну не красота ли?! Красота 🙂 Бот работает в однопользовательском режиме, всякие ключи доступа не шифруются и хранятся в энвах. Разумеется, бот принимает сообщения только от меня. В планах - упаковать чувствительную информацию в systemd credentials. И, в принципе, при необходимости переделать код для многопользовательского сценария - если это будет кому-то нужно.

#ai #obsidian #itbetween