# Obsidian Emotion Log

> Мгновенная фиксация одной эмоции в сегодняшней daily: callout в `### Эмоции` (эмоция, интенсивность 1–10, триггер) со связями на MOC эмоций и людей. ОБЯЗАТЕЛЬНО срабатывай на «зафиксируй эмоцию» и описания состояния («мне тревожно», «бесит», «накрыло»).

- Skill: `jtprogru/obsidian-emotion-log-2` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add jtprogru/obsidian-emotion-log-2`
- Raw SKILL.md: https://api.skillmd.com/api/skills/jtprogru/obsidian-emotion-log-2/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: jtprogru (https://skillmd.com/u/jtprogru)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/jtprogru/obsidian-emotion-log-2

---


# obsidian-emotion-log

Быстрая фиксация эмоции «по горячему» — 5 секунд от «накрыло» до записи в дневнике. Семантика хранилища — см. `.agents/rules/`.

**Когда НЕ использовать:** развёрнутая рефлексия — `obsidian-ingest`; обзор за период — `obsidian-journal-review`; чужая эмоция — вручную в профиль человека. Если запись перерастает в рефлексию — закончи короткую и предложи отдельную заметку.

---

## Алгоритм

### 1. Извлеки три поля

**Эмоция** (одно слово из базового набора ниже), **интенсивность** (1–10), **триггер** (короткая фраза, что предшествовало). Время — текущее (`date "+%H:%M"`), дата — сегодняшняя (`currentDate`).

### 2. Спроси только то, чего реально не хватает

**Максимум один вопрос за заход** — пользователь в эмоции, длинный диалог ломает эффект «записал и отпустил». Всё названо → пиши сразу. Нет интенсивности → «На сколько по 1-10?». Только эмоция → «На сколько по 1-10 и что предшествовало?» одной фразой. Состояние без названия → предложи 2-3 варианта из набора, не выдумывай новые: «Похоже на тревогу, апатию или растерянность?». «Без вопросов, просто запиши» → `интенсивность: ?`, `триггер: —`, не блокируйся.

### 3. Найди или создай раздел `### Эмоции` в daily

Путь: `05. Дневник/<YYYY>/<MM>/<YYYY-MM-DD>.md`. Файла нет — спроси «Заметки на сегодня ещё нет. Создать и записать туда эмоцию?»; после «да» создай её по алгоритму скилла `obsidian-daily-append` (шаблон Templater «Ежедневная заметка»), включив раздел `### Эмоции`.

Проверь дубликат: `grep -c "^### Эмоции" "<путь>"`. Раздел есть — аппендь callout **после последнего существующего callout-а**, до следующего `###`-заголовка; якорем для `Edit` бери последнюю строку последнего callout-а, а не заголовок раздела. Нет — создай раздел в конце `## Дневник`, после последнего существующего раздела: порядок разделов в daily хронологический, существующие разделы не двигай (правило то же, что в `obsidian-daily-append`, шаг 5). Главное — раздел единственный. Callout-ы внутри раздела идут хронологически, между ними пустая строка.

### 4. Сформируй callout

Три строки в `> [!note]`; пример («тревожно, 7, после созвона с Артёмом»):

```markdown
> [!note] 15:48 — тревога (7/10)
> **Триггер:** созвон с [[@artem (Артём Имя Фамилия)]] про релиз
> [[Психология – Эмоции и состояния|→ эмоции]]
```

Третья строка **обязательна** — через неё MOC эмоций накапливает входящие ссылки; `→` отделяет техническую связь от содержания.

**Wikilinks в триггере:** людей — существующими `[[@nick (Имя Фамилия)]]`; ник ищи `grep -rli "<имя>" "02. Сферы/01. Люди/" | head -3` — один файл → wikilink из имени файла, несколько → спроси какой, ничего → имя текстом, **не выдумывай ник**. Проект/сфера — `[[Название]]` если существует, иначе пропусти.

**Атомарка на эмоцию:** если есть файл (`find "03. Ресурсы/04. Заметки" "03. Ресурсы/07. Карты" -iname "*<эмоция>*" | head -3`) — в заголовок wikilink: `[[Выгорание]] (8/10)`. Нет — текстом, не создавай. **Несколько эмоций за раз** → отдельный callout на каждую, время одинаковое, триггер общий.

### 5. Вставь и подтверди коротко

Одна строка отчёта: «Зафиксировал: тревога (7/10) в 2026-06-10 → Эмоции». Не предлагай продолжить рефлексию, не спрашивай «как ты сейчас?» — пользователь уже отпустил.

---

## Базовый набор названий эмоций

Для нормализации синонимов («бесит» → злость). Не плоди имена для оттенков — оттенок живёт в триггере или интенсивности.

| Базовое имя | Синонимы в речи |
|-------------|-----------------|
| **тревога** | волнуюсь, на нервах, не по себе, паника (9-10) |
| **страх** | боюсь, страшно, ужас (9-10) |
| **злость** | бесит, раздражает, ярость (8-10), гнев |
| **грусть** | грустно, тоска, печально, уныние |
| **апатия** | пусто, нет сил, всё равно |
| **выгорание** | выгораю, на нуле, нет ресурса |
| **стыд** | стыдно, неловко, опозорился |
| **вина** | виноват, подвёл |
| **гордость** | горжусь, доволен собой, получилось |
| **разочарование** | не оправдалось, обманули ожидания |
| **радость** | рад, классно, кайф, восторг (8-10) |
| **интерес** | любопытно, зацепило |
| **благодарность** | благодарен, тронут |
| **спокойствие** | спокоен, ровно |
| **усталость** | устал, вымотан (про сегодня, не про ресурс — то выгорание) |
| **скука** | скучно, ничего не цепляет |

Пользователь настаивает на своём слове («не злость, а раздражение») — уважай, фиксируй как сказал.

---

## Связи в графе

Три типа рёбер: daily → MOC «Психология – Эмоции и состояния» (третья строка callout; множественные вхождения в одном daily — нормально), daily → атомарки эмоций (у атомарки должен быть `up: [[Психология – Эмоции и состояния]]`), daily → люди/проекты (wikilinks в триггере). **Не создавай атомарки эмоций сам** — их заводит пользователь или `obsidian-ingest`. **Не редактируй MOC** — он растёт через backlinks; если MOC не существует — спроси, создать ли по `Шаблон карты.md`, не создавай молча.

---

## Edge cases

- **«Запиши во вчерашний день»** — файл есть — добавь callout (время от пользователя или без); нет — не создавай задним числом без явного запроса.
- **Повтор чувства за день** — нормально, не дедуплицируй: динамика — отдельный сигнал.
- **Очень длинный триггер** — сократи до строки, предложи развернуть в `### Узел №N` через `obsidian-daily-append`.
- **«Зафиксируй стыд за вчерашний созвон»** — чувство сейчас: пишем в сегодняшний daily, триггер «воспоминание о вчерашнем созвоне».

