agentleFS
jtprogrujtprogru/bear-skills/skills/obsidian-daily-append/SKILL.md

obsidian-daily-append

Skill1 starsChanged 3 months agoMITView on GitHub

Добавляет запись в сегодняшнюю daily-заметку (мысль, событие, встреча, TODO, узел): определяет тип, вставляет в нужный раздел, создаёт файл при отсутствии. ОБЯЗАТЕЛЬНО срабатывай на «добавь в сегодняшнюю/daily», «запиши в дневник», «зафиксируй в today».

The file

Files
SKILL.md
<!-- СГЕНЕРИРОВАНО bin/mirror.js. Не редактировать: правки затрёт следующая генерация. Источник правды — domains/<домен>/. -->

obsidian-daily-append

Добавляет данные в ежедневную заметку текущего дня. Структура заметки нетривиальная — нельзя просто аппендить в конец файла, нужно роутить по разделам и сохранять стиль. Семантика хранилища, тегов и frontmatter — см. правила домена obsidian.

Когда НЕ использовать: полноценная атомарная заметка — obsidian-ingest; ревью недели/месяца — obsidian-journal-review; запись про прошедший/будущий день — вручную; разбор большой заметки — obsidian-ingest / obsidian-split-note.


Алгоритм

1. Путь и существование файла

Путь: 05. Дневник/YYYY/MM/YYYY-MM-DD.md, дата — сегодняшняя (currentDate в системном контексте). Не пиши в прошедшие/будущие дни без явного запроса.

Если файл существует → шаг 2. Если нет → спроси: «Заметки на сегодня (YYYY-MM-DD.md) ещё нет. Создать её по шаблону и добавить туда данные?» После «да» — создай по разделу «Создание новой заметки» ниже, затем шаг 2.

2. Определи тип данных

ТипПризнакиЦелевой раздел
Быстрая мысль / наблюдениеКороткая идея, инсайт без глубокого разбора, эмоция### Мысли вслух
Событие / факт дня«Принял таблетку», «встретил X», «получил письмо»### Мысли вслух (по умолчанию) или отдельный блок, если крупное
Встреча / созвонУчастник, формат (1:1, синк, демо)### Встреча с [[@nick (Имя)]] или ### 1:1 с …
Ссылка на новую атомарную заметку«Оформил мысль», «вынес в заметку», даёт wikilink### Заметка дня
Разбор / узел / инсайт«Разобрал узел», глубокая саморефлексия### Узел №N — <тема> (N — следующий по счёту)
TODO / решение«Не забыть», «надо сделать», «решил, что…»callout > [!todo] под подходящим разделом или в ### Открытые узлы — что дальше

3. Уточняющие вопросы — только при реальной неясности

Задавай уточняющий вопрос только когда тип записи или место вставки реально неясны; если всё ясно — вставляй молча. Если запрос можно разнести по 2+ типам — один вопрос с вариантами лучше неправильной вставки. Максимум два вопроса; короткие и конкретные, не «расскажи поподробнее».

Что имеет смысл спросить, когда чего-то не хватает: связь (проект/MOC/человек wikilink-ом), контекст мысли; для встречи — с кем именно и итог одной строкой; для атомарной — wikilink и краткая аннотация «почему важна сегодня»; для узла — главный сдвиг рамки и связанные заметки; для TODO — срок и к какому проекту/узлу относится. Если что-то уже дано в запросе — не переспрашивай.

4. Сформируй фрагмент

Стиль — по content-style.md: русский, личный тон, без «вы», wikilinks на людей/проекты/MOC, имена людей [[@nick (Имя Фамилия)]], callout-ы > [!todo] / > [!info] / > [!warning] где уместно.

Шаблоны фрагментов:

Мысль / событие:

<1–3 предложения от первого лица или безлично, с wikilinks где уместно>

Встреча:

#### Встреча с [[@nick (Имя)]]

<1–3 предложения: контекст, итог, связанные темы через wikilinks>

Ссылка на атомарную:

Оформил мысль: [[Название атомарной заметки]] — <краткая аннотация, почему важна сегодня>.

Узел разбора:

#### Узел №N — <короткая тема>

Заметка: [[Название атомарной заметки]] (если есть)

<2–4 предложения: главный сдвиг рамки, ключевая находка, связь с другими узлами>

TODO (контекст опционален — однострочный TODO это норма):

> [!todo] **<срок>** — <конкретное действие>.

5. Вставь в нужный раздел

Дневник читается сверху вниз как календарь: что записано раньше — выше. Новая запись всегда идёт ниже существующих и никогда не вклинивается между ними.

Раздел есть. Найди последний непустой блок раздела — абзац, пункт списка, callout, вложенный ####-блок — и добавь фрагмент через пустую строку после него, до следующего заголовка того же или более высокого уровня. Завершающий > [!todo] не якорь конца раздела: новый фрагмент встаёт после него.

old_string для Edit бери по последней строке существующего блока, а не по заголовку раздела — вставка «сразу после заголовка» и есть та самая запись в начало.

# было                      # стало
### Мысли вслух             ### Мысли вслух

<утренний абзац>            <утренний абзац>

                            <новый фрагмент>

Раздела нет. Создай его в конце ## Дневник — после последнего существующего раздела, перед следующим ##-заголовком или в конце файла. Порядок разделов в заметке равен порядку их появления за день; фиксированного канонического порядка у daily нет. Не двигай уже существующие разделы ради «приведения к правильному виду».

Раздел единственный. Перед созданием — grep -n "^### <название>" "<путь>". Нашлось — пиши в существующий, дубль не заводи.

Хронология держится на уровне записей внутри раздела и на уровне появления разделов. Если «Заметка дня» завелась днём, а вечером пришла новая мысль, она уйдёт в «Мысли вслух» выше «Заметки дня» — это нормально: раздел это тема, а не время.

Используй Edit, не Write — никогда не перезаписывай файл целиком.

6. Покажи план до вставки

Перед Edit — короткий план (файл, тип, раздел, preview фрагмента) и подтверждение. Исключение: пользователь в текущем запросе явно сказал «без подтверждения», «делай сразу» — тогда сразу вставка; на прошлые сессии исключение не распространяется.

7. Отчитайся

Кратко: что добавлено, в какой раздел, какие связи. Если мысль глубокая и тянет на атомарку — предложи obsidian-ingest отдельно.


Создание новой заметки

Шапку руками не собирай — дёргай тот же шаблон, который Obsidian применяет при создании ежедневной заметки: _Система/1. Шаблоны/Ежедневная заметка.md (он же прописан в periodic-notes → daily.template). Навигационные wikilinks считает Templater из имени файла, поэтому расхождения между скиллом и шаблоном не возникает — правится шаблон, скилл ничего не знает о его содержимом.

mkdir -p "05. Дневник/<YYYY>/<MM>"
obsidian templater:create-from-template \
  template="_Система/1. Шаблоны/Ежедневная заметка.md" \
  file="05. Дневник/<YYYY>/<MM>/<YYYY-MM-DD>.md"

Успех — команда печатает путь созданного файла. Три правила вокруг вызова:

  • Проверь существование файла до вызова. Команда не перезаписывает и не отказывает — она молча создаёт дубль <YYYY-MM-DD> 1.md. Файл на месте → сразу шаг 2 алгоритма.
  • Свежесозданная папка не видна Obsidian с первого раза. После mkdir -p первый вызов падает с Error: Failed to create note from template; повтори его один раз, второй проходит. Два провала подряд — проблема не в папке, иди в fallback.
  • Нужен запущенный Obsidian. Не запущен, CLI молчит, Templater выключен — fallback ниже, и скажи об этом в отчёте.

После создания — продолжи с шага 2 алгоритма.

Fallback: шапка руками

Только когда CLI недоступен. Блок ниже — копия шаблона на момент написания скилла, он может разойтись с актуальным; при первой возможности пересоздай заметку через Templater.

---
tags:
- journal/daily
aliases: []
---

**< [[<вчера-YYYY-MM-DD>|Вчера]] | [[<YYYY-Www>|Неделя]] | [[<YYYY-MMM>|Месяц]] | [[<завтра-YYYY-MM-DD>|Завтра]] >**

## Дневник

> [!info] Записывай не только рабочие мысли, но и свои собственные

Расчёт wikilinks навигации:

  • Вчера: <сегодня - 1 день> в формате YYYY-MM-DD
  • Неделя: YYYY-Www, где ww — ISO-номер недели сегодняшней даты с ведущим нулём (например, 2026-W19)
  • Месяц: YYYY-MMM, где MMM — M + двузначный номер месяца (например, 2026-M05)
  • Завтра: <сегодня + 1 день> в формате YYYY-MM-DD
date -v-1d +%Y-%m-%d  # вчера (BSD/macOS)
date -v+1d +%Y-%m-%d  # завтра
date +%Y-W%V          # ISO-неделя (формат W##)
date +%Y-M%m          # месяц

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.