| name | snoozed-task |
| description | Добавить отложенную задачу в `tasks-snoozed.md` с датой добавления `➕ YYYY-MM-DD` и датой активации `📅 YYYY-MM-DD`. Используй, когда пользователь при добавлении задачи говорит «отложить», «snooze», «на месяц / на 3 месяца / на полгода», «вернуться попозже», «не сейчас, напомни потом», или пишет /snoozed-task. В отличие от `new-task`, задача НЕ попадает в активный `tasks.md`, а ждёт даты активации. |
snoozed-task
Добавляешь отложенную (snoozed) задачу в tasks-snoozed.md в корне vault. Это вариант new-task: задача не идёт в активный список tasks.md, а откладывается до даты активации. Когда дата наступит — задачу достаёт и предлагает перенести snoozed-review (не этот скилл).
Триггер — пользователь при добавлении задачи говорит отложить: «отложи», «snooze», «не сейчас», «вернуться через N», «напомни через месяц», «на потом на пару месяцев». Если просто «добавь задачу» без откладывания — это new-task, не этот скилл.
Даты
Каждая задача несёт две даты:
- Дата добавления —
➕ YYYY-MM-DD. По умолчанию сегодняшняя (из окружения). Если пользователь явно назвал дату добавления — используй её. Задним числом не проставляй без явного указания.
- Дата активации —
📅 YYYY-MM-DD. Вычисляется как дата добавления плюс срок откладывания.
Срок откладывания (3 градации)
| Формулировка пользователя | Срок | Активация |
|---|
| по умолчанию, «отложи», «на месяц», «1 месяц» | 1 месяц | добавление + 1 мес |
| «на 3 месяца», «на квартал», «на пару-тройку месяцев» | 3 месяца | добавление + 3 мес |
| «на полгода», «на 6 месяцев», «надолго» | 6 месяцев | добавление + 6 мес |
- По умолчанию — 1 месяц. Если срок не назван явно — бери 1 месяц.
- Если пользователь назвал произвольный срок вне градаций («на 2 месяца», «на год») — уважай его буквально, не округляй к градации.
- Прибавление месяцев календарное:
2026-01-31 + 1 мес → 2026-02-28 (последний день месяца, если такого числа нет). Год переносится корректно (2026-11-15 + 3 мес → 2027-02-15).
Разобрать вход
Формы запроса:
/snoozed-task <текст> [url]
- «добавь задачу <текст>, отложи на 3 месяца»
- «snooze: <текст>»
- Многострочный ввод: первая строка — описание, следующие — URL/заметки.
Правила парсинга:
- Выдели одну строку описания. Убери из неё слова-директивы откладывания («отложи», «snooze», «на месяц», «на полгода» и т.п.) и префиксы — это управление, а не текст задачи.
- Первая строка обычно имеет вид
Посмотреть <project-name> - <short-description>. Если пользователь дал только имя проекта и короткое описание — оформи первую строку в этом виде. Если он дал готовую формулировку в другом стиле — не ломай её насильно, но при отсутствии глагола предпочитай «Посмотреть …».
- URL и короткие заметки из тела переноси в подбуллеты.
- Wikilinks (
[[Имя]]) сохраняй как есть.
Метрики проекта (GitHub)
Если ссылка на проект ведёт на github.com/<owner>/<repo> — на момент добавления сними снимок активности: число звёзд и число коммитов. Это база отсчёта для snoozed-review: спустя срок он сравнит новые значения со старыми и увидит, был ли прогресс.
repo=<owner>/<repo>
stars=$(gh repo view "$repo" --json stargazerCount --jq '.stargazerCount')
commits=$(gh api "repos/$repo/commits?per_page=1" --include 2>/dev/null \
| grep -i '^Link:' | grep -oE 'page=[0-9]+>; rel="last"' | grep -oE '[0-9]+')
echo "⭐ $stars, коммитов $commits"
- Если у репозитория одна страница коммитов,
commits выйдет пустым — тогда число коммитов = 1 (последняя страница не выделяется в Link).
- Репозиторий недоступен (404/приватный) или
gh не сработал — метрики опусти, не выдумывай числа; в финальном ответе отметь, что снять не удалось.
- Ссылка не на GitHub — метрики не снимай.
Формат задачи
- [ ] Посмотреть <project-name> - <short-description> ➕ YYYY-MM-DD 📅 YYYY-MM-DD
- <ссылка на проект>
- На момент добавления: ⭐ <stars>, коммитов <commits>
- <контекст добавления, если есть>
- Чекбокс — всегда
- [ ].
- Порядок маркеров: сначала
➕ (добавление), потом 📅 (активация).
- Подбуллеты — табом, не пробелами.
- Вложенные подпункты (в порядке):
- Ссылка на проект — URL репозитория/трекера/заметки или
[[wikilink]]. Если пользователь не дал ссылку — подпункт опусти, не выдумывай.
- Метрики на момент добавления (только для GitHub) —
На момент добавления: ⭐ <stars>, коммитов <commits>. См. раздел «Метрики проекта». Если не GitHub или снять не удалось — подпункт опусти.
- Контекст добавления — короткая заметка «почему отложено / что посмотреть» (если есть). Если контекста нет — подпункт опусти.
Пример:
- [ ] Посмотреть <repo> - <зачем отложил> ➕ 2026-07-04 📅 2026-10-04
- https://github.com/<owner>/<repo>
- На момент добавления: ⭐ 128, коммитов 342
- Отложено до релиза v2, тогда переснять.
Файл tasks-snoozed.md
- Пиши только в
tasks-snoozed.md в корне vault. tasks.md, tasks-future.md, ideas.md не трогай.
- Если файла нет — создай с шапкой:
# Snoozed
> Отложенные задачи. Активируются в дату 📅 — тогда `snoozed-review` предложит перенести в [[tasks]]. Кладёт сюда `snoozed-task`.
- Новую задачу добавляй в конец файла (после последней задачи и её подпунктов).
- Существующие строки не переставляй и не сортируй.
Дедупликация
- Прочитай
tasks-snoozed.md.
- Найди открытые строки с похожим описанием (без учёта регистра, по ключевым словам).
- Точное/почти точное совпадение — не добавляй, покажи существующую и спроси: дописать подбуллет / обновить дату активации / добавить отдельной / ничего.
- Далёкое совпадение — добавь, но упомяни похожую одной строкой.
Защита от ошибок
- Не добавляй задачу без описания — попроси сформулировать.
- Не проставляй дату активации без даты добавления и наоборот — обе обязательны.
- Не клади отложенную задачу в
tasks.md — смысл скилла в том, что она туда НЕ попадает сейчас.
- Не делай
git commit и не запускай worklog автоматически.
- Подбуллеты — таб, не пробелы.
- Длинный URL не сокращай до
[ссылка].
Связанные скиллы
snoozed-review — достаёт созревшие отложенные задачи (📅 ≤ сегодня), проверяет GitHub-активность и предлагает перенести/удалить.
new-task — добавляет активную задачу сразу в tasks.md (без откладывания).
list-tasks — показывает активные задачи; отложенные из tasks-snoozed.md не трогает.
close-task — закрывает задачу и пишет итог в дневной лог.
Проверка перед ответом
- В
tasks-snoozed.md появилась ровно одна новая задача (плюс подбуллеты, если были).
- Есть обе даты:
➕ YYYY-MM-DD (добавление) и 📅 YYYY-MM-DD (активация), и активация = добавление + срок.
- Срок соответствует запросу; при отсутствии срока — 1 месяц.
- Первая строка в виде
Посмотреть <project> - <описание>, если применимо.
- Подбуллеты табом; порядок — ссылка, метрики (для GitHub), контекст.
- Для GitHub-ссылки снят снимок
⭐ + коммиты (или отмечено, что снять не удалось).
- В
tasks.md ничего не добавлено.
В финальном ответе одной строкой: какая задача отложена и до какой даты активации.