Ручная запись
Я планирую тренировки в Obsidian. Там же пишу подходы, технику, боль и самочувствие. Это контекст, которого нет у часов.
Часы знали, что я сделал. Заметки знали, что я планировал. Я собрал место, где эти два мира наконец встретились.
01
Я AI-энтузиаст, поэтому тема здоровья постоянно казалась идеальным полигоном. Данных много, решения повторяются, история важна. Значит, агент должен быть полезен.
На практике мои эксперименты жили отдельно друг от друга. Я выгружал сон и параллельно отмечал настроение, чтобы найти корреляции. Вручную записывал тренировки в Obsidian. Складывал анализы в папку. Каждый подход работал пару недель, затем превращался в ещё одну заброшенную таблицу.
Проблема была не в нехватке данных. У меня не было места, где план, факт и контекст встречались бы друг с другом.
Год назад я много бегал, потом выпал из режима. Когда решил вернуться, мне уже не хотелось просто снова наматывать километры. Я хотел восстановить форму осознанно и одновременно не бросать большую силовую цель по подтягиваниям.
За пять дней беговая часть моих прогулок выросла примерно с 1,2 до 3,2 км. Средний пульс поднялся со 129 до 152. Это не вывод и не диагноз. Менялись темп, погода, накопленная нагрузка и восстановление. Но именно поэтому одной красивой линии в приложении недостаточно.
Мне была нужна система, которая видит обе линии. Возвращение к бегу и программу подтягиваний. Она должна знать план, фактически выполненную нагрузку и моё описание тренировки, а потом помочь не запланировать следующую неделю вслепую.
02
Сейчас моя система держится на четырёх слоях. Каждый отвечает только за свою часть работы.
Я планирую тренировки в Obsidian. Там же пишу подходы, технику, боль и самочувствие. Это контекст, которого нет у часов.
Часы почти всегда на мне. Во время занятий я включаю режим тренировки, поэтому остаются длительность, дистанция, энергия и пульс.
Раз в неделю или две я выгружаю Apple Health. Парсер вытаскивает нужные тренировки и дополняет существующие заметки.
Агент читает Markdown, сравнивает план с фактом, собирает недельную сводку и помогает подготовить следующее решение.
Apple Watch не заменяют дневник. Дневник не заменяет измерения. Агент не заменяет врача. Система полезна именно потому, что эти границы не размыты.
Я начал складывать в тот же контур все исследования, которые у меня есть. Бумажный анализ можно отсканировать. Агент переносит дату, лабораторию, показатель, единицу и референс. Текстовое заключение УЗИ, ЭКГ или рентгена становится частью хронологии.
Сырые снимки и медицинские выводы остаются специалисту. Моя система умеет найти старый результат, показать изменение совместимых показателей и собрать вопросы к врачу. Она не должна диагностировать по изображению или советовать лечение.
03
Для старта не нужен мой vault и не нужен Hermes. Достаточно Obsidian и любого агента, который умеет работать с файлами. Если Obsidian у вас ещё нет, создайте новый vault. Если уже есть, добавьте в него один раздел.
Папки, шаблон тренировки и ручная фиксация.
Properties, Bases, план против факта и первый дашборд.
Apple Health, защита от дублей и постоянный агент.
Health/
├── Dashboard.md
├── Workouts.base
├── Schema.md
├── Workouts/
├── Plans/
├── Labs/
├── Metrics/
└── _templates/ Не пытайтесь сразу собрать все возможные метрики. Начните с вопросов, на которые система должна отвечать: выполнил ли я план, как меняется объём, где появилась боль, что скорректировать на следующей неделе.
YAML-свойства дают структуру агенту и Obsidian Bases. Обычный текст остаётся удобным человеку.
---
type: workout
workout_type: кардио
workout_date: 2026-07-15
workout_time: "13:36"
duration_min: 61
status: выполнено
data_source: apple_health
source_record_id: "..."
distance_km: 5.29
avg_hr: 129
max_hr: 173
rpe:
pain_level: 0
---
## План
- Лёгкий бег 2 км внутри прогулки.
## Факт
- Бег 2,05 км. Без боли.
## После
- Нагрузку пока не повышать. План и факт должны быть разными сущностями. Если тренировка уже была запланирована, импорт обновляет её, а не создаёт второй файл. Ручные разделы не перезаписываются.
Для первой версии достаточно Properties, Bases и Templates. Bases строит таблицы поверх обычных Markdown-файлов. Данные не запираются в отдельной базе.
Community plugins можно добавить позже. Obsidian предупреждает, что такие плагины выполняют сторонний код с правами приложения. Для медицинских данных разумнее начать с встроенных функций и минимального числа расширений.
Структура, шаблоны, Base и тот же промпт, который опубликован ниже.
04
Важное ограничение: у Apple нет готовой кнопки «синхронизировать Health в Obsidian». Встроенная функция создаёт полный XML-экспорт. Это хороший способ загрузить историю, но не постоянный поток.
Запускайте Workout на Apple Watch. Набор сохранённых показателей зависит от типа занятия, но обычно в запись попадают длительность, энергия, пульс и дистанция.
На iPhone откройте Health, профиль и функцию Export All Health Data. Apple описывает этот экспорт как XML. Официальная инструкция Apple.
Исходный ZIP и GPX не должны попадать в Obsidian или Git. Маршруты содержат точные координаты. Агенту нужны нормализованные сводки, а не весь сырой архив.
Сначала сопоставляйте тренировки по идентификатору, затем по дате, типу и времени. Повторный импорт должен обновить запись, а не создать дубль.
Я использую первый путь с собственным потоковым парсером. Он объединяет соседние сегменты ходьбы и бега, хранит исходные идентификаторы и не трогает мои ручные заметки. Для бесплатного гайда этого достаточно. Строить iOS-приложение ради первой версии не нужно.
Принцип остаётся тем же: нужен способ забрать собственные данные. Oura и WHOOP дают ручной экспорт и официальные API. Garmin позволяет выгружать активности и полный архив. Я не проверял эти контуры лично, поэтому не буду изображать пошаговую инструкцию.
Трекер вообще не обязателен для планов и ручного журнала. Но без носимого устройства не получится бесшовно собирать непрерывную биометрию. Чем длиннее качественная история, тем полезнее агент.
05
В систему можно добавить старые бумажные анализы и заключения. Я сканирую их, агент распознаёт текст и создаёт карточку. В ней есть дата, тип исследования, значения, единицы, референсы и официальный текст заключения.
Вопрос врачу: нужен ли повторный контроль и при каких условиях?
Система может напомнить, что показатель пора перепроверить, и собрать его историю. Она не должна диагностировать по рентгену, сырой ЭКГ или снимку УЗИ. Для таких документов агент переносит текст заключения специалиста.
06
Новый формат гайда должен читаться дважды. Первый раз вами, чтобы понимать принципы. Второй раз агентом, чтобы собрать файлы и не потерять ограничения по дороге.
Промпт ниже сначала ищет существующий vault, показывает план изменений и только затем создаёт структуру. Он умеет работать с пустой папкой или встроить Health в вашу систему.
# Промпт для агента
Скопируйте весь текст ниже в ChatGPT, Codex, Cursor или другой агент, который умеет работать с локальными файлами.
---
Ты помогаешь мне собрать и поддерживать личную систему здоровья в Obsidian. Это система наблюдения, планирования и хронологии, а не медицинский прибор.
Главный принцип: устройство измеряет, Obsidian хранит контекст, агент связывает план с фактом. Не ставь диагнозы, не назначай лечение и не выдавай корреляцию за причину.
## Сначала определи режим работы
1. Найди Obsidian vault в текущей рабочей папке. Признак vault: папка `.obsidian`.
2. Если vault не найден, спроси у меня путь или предложи создать новый.
3. Если раздел здоровья уже существует, сначала изучи его структуру. Не создавай параллельные папки и поля без необходимости.
4. До изменений покажи короткий план: какие файлы создашь или обновишь.
5. Не перезаписывай существующие заметки, шаблоны и настройки без моего подтверждения.
## Минимальная структура
Если аналогов нет, создай:
```text
Health/
├── Dashboard.md
├── Workouts.base
├── Schema.md
├── Workouts/
├── Plans/
├── Labs/
├── Metrics/
└── _templates/
├── Workout.md
├── Training Plan.md
└── Lab Result.md
```
Используй только обычные Markdown-файлы, плоские YAML-свойства и встроенный Obsidian Bases. Не делай community plugins обязательными.
## Каноническая запись тренировки
Одна физическая сессия равна одному файлу. Для новой тренировки используй плоскую схему:
```yaml
---
type: workout
workout_type:
workout_date:
workout_time:
duration_min:
status: запланировано
data_source: manual
source_record_id:
distance_km:
active_kcal:
avg_hr:
max_hr:
rpe:
pain_level:
program:
planned_reps:
actual_reps:
---
```
Правила:
- `workout_type`: `кардио`, `силовая` или `смешанная`;
- `status`: `запланировано`, `выполнено`, `скорректировано` или `пропущено`;
- пустое значение не превращай в ноль;
- сохраняй единицы в названии поля;
- план хранит намерение, запись тренировки хранит факт;
- ручные заметки о подходах, технике, боли и самочувствии не перезаписывай импортом;
- если в один день были две разнесённые сессии, создай два файла;
- если файл программы на эту дату уже существует, обнови его, а не создавай дубль.
## Импорт Apple Health
Когда я передам ZIP из функции Apple Health «Экспортировать все медданные»:
1. Обрабатывай архив вне vault. Не копируй исходный ZIP, `export.xml` и GPX в Obsidian или Git.
2. Сначала спроси период импорта и какие типы данных нужны.
3. Для тренировок извлекай только дату и время, тип, длительность, дистанцию, активную энергию, средний и максимальный пульс, источник и уникальный идентификатор.
4. Сохраняй `source_record_id` или список исходных идентификаторов. Повторный импорт не должен создавать дубли.
5. Сначала ищи совпадение по идентификатору, затем по дате, совместимому типу и ближайшему времени.
6. Не складывай шаги Apple Watch и iPhone без дедупликации.
7. Не сохраняй точные координаты маршрутов. Достаточно отметить, что маршрут был в исходном экспорте.
8. После импорта сообщи: период, сколько сессий найдено, сколько обновлено, сколько создано и какие совпадения были неоднозначными.
9. Проверь несколько случайных записей по исходному приложению до массового изменения vault.
Встроенный экспорт Apple Health является ручным XML-экспортом, а не постоянной синхронизацией. Не обещай автоматизацию, которой нет.
## Анализы и медицинские документы
Когда я передаю PDF или скан:
1. Сохрани оригинал в приватной папке, которую я укажу. Не публикуй его и не добавляй в Git.
2. Распознай текстовое заключение и таблицу показателей.
3. Сохрани дату исследования, тип документа, лабораторию или клинику, показатель, значение, единицу и референсный диапазон.
4. Значения с разными единицами не объединяй в один ряд без явного преобразования.
5. Для УЗИ, ЭКГ и рентгена переноси текст официального заключения. Не диагностируй по сырому снимку.
6. Отделяй факты документа от гипотез и вопросов к врачу.
7. Если значение выходит за указанный лабораторией референс, отметь это как факт и предложи обсудить с врачом. Не назначай лечение.
## Планирование
Перед новой программой спроси:
- цель и срок;
- текущий уровень;
- доступное оборудование;
- дни и длительность тренировок;
- последние фактические нагрузки;
- ограничения, боль и рекомендации специалиста.
После каждой недели сравни план с фактом:
- выполнены ли тренировки;
- объём и интенсивность;
- субъективную сложность `rpe`;
- боль и пропуски;
- что оставить, уменьшить или обсудить со специалистом.
Не увеличивай нагрузку автоматически только потому, что одна тренировка прошла легко. Сначала следуй правилам конкретной программы.
## Dashboard
Собери представления:
- сегодняшняя тренировка;
- история;
- кардио;
- силовые;
- план против факта;
- пропущенные и скорректированные сессии;
- записи, где не заполнены самочувствие или `rpe`.
Dashboard должен отвечать на вопросы, а не показывать все доступные метрики.
## Завершение первого запуска
В конце:
1. Перечисли созданные и изменённые файлы.
2. Покажи одну тестовую тренировку и объясни, как удалить её после проверки.
3. Дай мне три короткие команды естественным языком:
- как запланировать тренировку;
- как зафиксировать факт;
- как провести недельный пересмотр.
4. Отдельно перечисли ограничения и приватные файлы, которые не должны попасть в Git.
Источник методики: https://alexeymuzyka.com/articles/digital-health
07
До этого места у вас уже есть работающая система. Но взаимодействовать с ней приходится вручную: открыть vault, запустить агента, передать файл, попросить обновить записи.
У себя я сделал следующий шаг через Hermes Agent от Nous Research. Это конкретная открытая агентная платформа, а не имя, которое я придумал помощнику.
В Telegram у меня живёт отдельный профиль здоровья. Он полностью знает правила этой папки. Я отправляю ему результат анализа, планируемую тренировку или короткий отчёт после подходов. Агент разбирает файл, обновляет Markdown, ведёт хронологию и напоминает о перепроверках.
Hermes поддерживает отдельные профили, Telegram gateway, память и расписания. Поэтому health-vault перестаёт быть архивом, к которому я иногда возвращаюсь. Он становится рабочей системой с постоянным входом.
08
Apple Watch и раньше записывали мои тренировки. Obsidian и раньше хранил планы. Анализы и раньше лежали в папке. По отдельности это были архивы.
Ценность появилась, когда всё собралось в одну петлю: план, тренировка, объективный факт, субъективное состояние, недельный пересмотр и следующий план.
Не нужно оцифровывать всю жизнь за вечер. Создайте одну запись, проведите одну тренировку и дайте агенту правильно обновить один файл. Хорошая система начинается не с количества данных. Она начинается с вопроса, который вы хотите решить.
Выберите промпт для своего агента или скачайте пустой Obsidian vault.