一键导入
day-open
Протокол открытия дня (Day Open). Собирает вчерашние коммиты, issues, заметки, календарь, бота QA, Scout, мир — формирует DayPlan и compact dashboard.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Протокол открытия дня (Day Open). Собирает вчерашние коммиты, issues, заметки, календарь, бота QA, Scout, мир — формирует DayPlan и compact dashboard.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Протокол закрытия дня (Day Close). Алиас для /run-protocol close day — симметрия с /day-open.
Peer-сессия DP.SC.154 где Kimi = писатель, Claude = напарник. Запускается простой фразой. Включает ОРЗ Opening и Closing, turn-loop, эскалации, Decision Gate (зафиксировать vs реализовать → ревью → проверить → задеплоить), отложенную финализацию и верификацию.
Протокол закрытия месяца (Month Close). Стадия 7 каскада ВДВ v9 (PD.METHOD.008). Запускается в первый Пн месяца, до Strategy Session.
Create a new Pack — guided flow through SPF: choose domain, name Pack, scaffold structure, fill roadmap.
Многотуровый диалог писателя (Claude) с напарником (Kimi) по задаче пилота (DP.SC.154). Ведёт turn-loop, обнаруживает CONSENSUS/ESCALATE, после консенсуса — Decision Gate (зафиксировать vs реализовать → ревью → проверить → задеплоить), синтезирует report.md через Agent tool.
Протокол закрытия недели (Week Close). Ретро 7 дней + carry-over в новую неделю + платформенные шаги (бэкап, dirty repos).
| name | day-open |
| description | Протокол открытия дня (Day Open). Собирает вчерашние коммиты, issues, заметки, календарь, бота QA, Scout, мир — формирует DayPlan и compact dashboard. |
| argument-hint | |
| version | 1.1.0 |
| layer | L1 |
| status | active |
| triggers | {"slash":["/day-open"],"phrases":[]} |
| routing | {"executor":"sonnet","deterministic":false} |
| agents | single |
| interaction | multi-step |
| gates_required | [] |
| gates_enforced | [] |
| gates_rationale | операционный скилл; WP Gate применим только при создании нового РП, не для операционных вызовов |
Роль: R1 Стратег. Два выхода: DayPlan (git, 80+ строк) + compact dashboard (VS Code, 20-30 строк). Порядок: сначала DayPlan → потом compact. Дата: ПЕРВОЕ действие =
date. Режим:memory/day-rhythm-config.yaml→interactive: false= одним блоком, решения → «Требует внимания». Фильтр свежести: issues, видео, заметки — за 2 дня. Urgent — всегда. Issues — только actionable: пропускать read-only репо (CLAUDE.md) и upstream без push-доступа (Base, чужие fork). Шаблоны: ниже (после алгоритма). Стиль текста: DayPlan и compact dashboard читает пилот → весь текст синтезировать в базе разговорного стиля (S0 база + S1 автор, источник DP.SC.050): русский, без машинных меток, путь к файлу и код РП не подлежащее (только после русского описания в скобках), главная мысль первой. Применяется и к встроенным блокам-выводам скриптов (Gate-метрики, светофор IWE за ночь).
Протокол открытия дня (Day Open). Собирает вчерашние коммиты, issues, заметки, календарь, бота QA, Scout, мир — формирует DayPlan и compact dashboard.
Day Open = протокол. Исполнять ТОЛЬКО пошагово через TodoWrite. Каждый шаг алгоритма ниже → отдельная задача (pending → in_progress → completed). Переход к следующему — ТОЛЬКО после отметки текущего. Шаг невозможен → blocked (не пропускать молча). Почему: без TodoWrite агент пропускает шаги из-за загрязнения контекста (SOTA.002).
Инжектится в системный промпт агента через UserPromptSubmit hook (.claude/hooks/inject-fault-profile.sh), НЕ показывается в DayPlan. DayPlan — артефакт пилота, профиль ошибок — внутренний инструмент агента.
Источник правила: peer-сессия 2026-05-30-07 + уточнение пилота 30 мая. Альтернативный путь (для cron-агента без интерактива): инжекция первой строкой в day-open-scaffold.sh промпт-инструкцию стратегу.
Загрузить: bash .claude/scripts/load-extensions.sh day-open before. Exit 0 → Read каждый файл из вывода (alphabetic) → выполнить содержимое как первые шаги. Exit 1 → пропустить. Поддерживает extensions/day-open.before.md И extensions/day-open.before.<suffix>.md.
Прочитать вчерашний DayPlan (archive/day-plans/ или current/). Взять:
Fallback: файла нет → пропустить, работать из коммитов.
Коммиты за вчера по всем $HOME/IWE/*/ репо. Сопоставить с DayPlan.
gh issue list по всем репо (включая вложенным). Фильтр 2 дня. Связь с РП по ключевым словам.
Только actionable: пропускать read-only и upstream без push-доступа.
DS-my-strategy/inbox/fleeting-notes.md → категоризация: → РП / → Backlog / → Контент / → Pack / → Обсудить / → Шум. НЕ удалять.
Carry-over заметок из вчерашнего DayPlan: проверить по git log (note-review), были ли обработаны. Если да → секция «Разбор заметок» = «все обработаны» (с ссылкой на коммит). Не переносить обработанные заметки как carry-over.
Гиперссылки на заметки (БЛОКИРУЮЩЕЕ): каждая заметка в секции «Разбор заметок» DayPlan — markdown-ссылка на её источник (inbox/fleeting-notes.md для свежих, archive/notes/Notes-Archive.md#L<line> для обработанных, inbox/captures.md для знания). Причина: после Note-Review сама заметка исчезает из fleeting-notes.md, и без ссылки суть заметки теряется через день. Формат строки таблицы: [«заголовок»](путь#L<line>) (DD мес HH:MM).
Знаниевые заметки = кандидаты (БЛОКИРУЮЩЕЕ, 2026-04-17): заметки категории «Знание доменное» без явного маркера «Экстрактору» в тексте → в DayPlan секция «Разбор заметок» таблицей Кандидаты Экстрактору с колонками «Заметка | Тип | Предполагаемый Pack | Действие». Решение «отдать / оставить» принимает пользователь в живом разборе. Note-Review в captures.md пишет ТОЛЬКО при явном маркере. Причина: captures.md = очередь Экстрактора; любое знание туда = неявное согласие на формализацию, которое Note-Review делать не уполномочен.
Приоритет входов (строгий порядок):
budget_spread.enabled: true в day-rhythm-config.yaml): для каждого РП с бюджетом ≥ threshold_h (колонка «h» в таблице WeekPlan):
days_left = оставшиеся рабочие дни пн–пт включая сегодняdaily_slot = round(budget_week / days_left, rounding)day-rhythm-config.yaml → mandatory_daily_wps — обязательные РП (проверить наличие в плане, если нет → добавить)day-rhythm-config.yaml → daily_checkpoint_wps — РП-checkpoint'ы (упомянуть в плане строкой с бюджетом ≤0.5h каждый; пилот при необходимости корректирует). Источник правила: peer-сессия 2026-05-30-07. Альтернативный сигнал: daily_checkpoint: true в frontmatter inbox/WP-N.md — учитывать наравне с config.Слот 1 = саморазвитие. Mandatory РП отсутствуют в WeekPlan → «Требует внимания».
Руководство, где остановился, черновики (DS-Tseren-Brand/content/posts/).
Если strategy_day → DayPlan НЕ создавать, план в WeekPlan. Пропустить шаг 7.
Из day-rhythm-config.yaml → pomodoro.
bash scripts/server-calendar.sh YYYY-MM-DD — секция «Календарь» для DayPlan.
Что делает скрипт:
calendar_ids (см. feedback feedback_calendar_query_day_open — никаких сокращений).visibility == "private" (не по названию).Формат в DayPlan: две таблицы (Встречи + Напоминания) по шаблону templates-dayplan.md.
Если сегодня strategy_day (из day-rhythm-config.yaml) — перед формированием WeekPlan запустить:
bash scripts/server-calendar.sh --week YYYY-MM-DD
Результат → вставить в WeekPlan секцию «Календарь недели W{N}» (шаблон templates-dayplan.md). Это позволяет при планировании сразу учитывать встречи и тех-операции.
update.sh, template-sync, MCP reindex, Scout. 🟢/🟡/🔴.
Smoke split (peer-консенсус 2026-05-30-07):
bash $IWE_SCRIPTS/day-open-smoke.sh — scheduler-pulse (локальный файл current/.scheduler-last-run, fallback Neon) + KE-count + oldest-age. Подставлять PASS/FAIL в светофор.current/.smoke-cache.json (TTL 90 мин). Включает dt-collect dry-run, projection cursor age, FPF upstream check. Day Open читает кэш, не запускает заново. Кэш устарел → подставить stale-cache: <age>, не падать.Context-budget (WP-450 Ф3): bash "$IWE_WORKSPACE/DS-my-strategy/scripts/verify-context-budget.sh" | tail -5 → записать в DayPlan строку: hot-каркас: ~N ток | M1 ≤20K: PASS/FAIL | M2 ≤12K: PASS/FAIL. FAIL не блокирует ритуал — информативно.
Scheduler failure modes (различить!):
feedback-watchdog-{сегодня}.log отсутствует И юнита нет в launchctl list) → cron не отработал. Авто-создать inbox/INCIDENT-scheduler-cron-not-fired-YYYY-MM-DD.md. ≥2 дней → TG-эскалация.Проверка обновлений: cd "$IWE_TEMPLATE" && bash update.sh --check 2>&1. Если доступно обновление → добавить в «Требует внимания»: «Доступно обновление IWE → /iwe-update».
Проверка Base-репо (FPF, SPF, ZP):
for repo in FPF SPF ZP; do
dir="$IWE_WORKSPACE/$repo"
[ -d "$dir/.git" ] && (cd "$dir" && git fetch --quiet 2>/dev/null && behind=$(git rev-list --count HEAD..origin/main 2>/dev/null || echo 0) && [ "$behind" -gt 0 ] && echo "$repo: $behind новых коммитов" || echo "$repo: актуален")
done
Если есть новые коммиты → добавить в «Требует внимания»: «[repo] обновлён upstream → cd "$IWE_WORKSPACE/[repo]" && git pull --rebase». После pull FPF/SPF → reindex: bash "$IWE_WORKSPACE/DS-MCP/knowledge-mcp/scripts/selective-reindex.sh" FPF (или SPF).
Если day-rhythm-config.yaml → video.enabled: true:
video.directories на файлы с расширениями из video.extensions-mtime 0). Старые файлы — не оповещать (архивный долг, не daily concern)video.enabled: false → пропуститьFeedback-triage report: DS-agent-workspace/scheduler/feedback-triage/YYYY-MM-DD.md. Проверить дату файла. Фильтр 2 дня. Нет файла → «нет отчёта». Дельта, urgent.
bash $IWE_SCRIPTS/ke-queue-stats.sh → возвращает (count, oldest_age_days, estimated_minutes). Подставлять в DayPlan реальный бюджет (например, apply-captures 44 reports, oldest 6d, ~3.5h оценка), НЕ литерал «1h pending».
SLA-блокер (peer-консенсус 2026-05-30-07): oldest_age_days ≥ 3 → строка в «Требует внимания» = 🔴 (не 🟡).
Auto-batch classifier (для apply-captures --auto-batch):
domain: tag. Отсутствует → auto-reject (pending-review), regex не применяется.domain: course-content | personal-notes | bot-conversation): regex проверяет отсутствие ссылок на .claude/, scripts/, extensions/, memory/feedback_*.md + объём ≤30 строк.domain: system | infrastructure | meta-skill → блок auto-accept (всегда human review).Стратегия маркетинга + draft-list. 1-3 темы.
Scout report. Не проревьюен → «Требует внимания».
day-rhythm-config.yaml → news. enabled: false → пропустить.
Ссылки на источники обязательны (URL).
Порядок источников (строгий):
news.topics[].feeds непустой → fetch каждого URL через WebFetch (не WebSearch). WebFetch не требует отдельного разрешения.Антипаттерн: писать «WebSearch недоступен» без попытки WebFetch = ошибка шага 6.
6a. News Lens (анализ через субагент). После сбора заголовков — вызвать субагент (Haiku, context isolation) с промптом:
Ты — разведчик новостей. Тебе дан список заголовков + список активных РП пользователя. Задача: написать 2-4 предложения «Что из этого важно для работы сегодня?» Отвечай только на русском. Без перечисления всех новостей — только синтез. Входные данные: НОВОСТИ: {заголовки с темами} АКТИВНЫЕ РП: {топ-5 РП по приоритету из DayPlan}
Вывод субагента → поле «Вывод:» в начале секции «Мир». Формат секции:
**Вывод:** <2-4 предложения синтеза>
**AI/LLM:** [Заголовок 1](url) · [Заголовок 2](url) · ...
**Инженерия:** [Заголовок 1](url) · ...
**Мировые события:** [Заголовок 1](url) · ...
Субагент недоступен / таймаут → пропустить «Вывод», показать только ссылки.
Собрать из шагов 1–6. Нет → не выводить.
Модель ТВС — Текущее · Важное · Срочное ([[Текущее ≠ Важное ≠ Срочное (ТВС)]]). Источник: руководство «Методы саморазвития» § 9.11, 3.3.
При сборке плана дня пометить каждый РП/блок режимом ТВС:
Загрузить: bash .claude/scripts/load-extensions.sh day-open after. Exit 0 → Read каждый файл из вывода (alphabetic) → выполнить содержимое (smoke-тесты, Scout gate, доп. проверки). Exit 1 → пропустить. Поддерживает extensions/day-open.after.md И extensions/day-open.after.<suffix>.md.
7a. Записать DayPlan в DS-my-strategy/current/DayPlan YYYY-MM-DD.md по шаблону ниже. current/ — рабочая директория для текущего WeekPlan и DayPlan; архивация в archive/day-plans/ выполняется при Day Close / Week Close. Исключение: день = strategy_day (из day-rhythm-config.yaml) → DayPlan не создаётся, план живёт в WeekPlan (см. шаг 4).
7b. Загрузить: bash .claude/scripts/load-extensions.sh day-open checks. Exit 0 → Read каждый файл из вывода (alphabetic) → выполнить верификацию. Exit 1 → пропустить. БЛОКИРУЮЩЕЕ: commit запрещён до прохождения всех checks. Поддерживает extensions/day-open.checks.md И extensions/day-open.checks.<suffix>.md.
7b1. Self-healing (один такт, WP-5 Ф2 09.07). Не верить «всё зелено» на рефлексе — реально прогнать bash scripts/day-open-checks-runner.sh "current/DayPlan YYYY-MM-DD.md" и прочитать вывод. Если есть ❌:
day-open-checks-runner.sh ЕЩЁ РАЗ.Это относится только к интерактивному /day-open (есть агент, способный чинить содержимое) — ночной cron-конвейер (day-open-pipeline.sh) не может самостоятельно чинить контент, только abort+уведомление.
7c. git commit + git push.
7d. Compact dashboard → вывести в VS Code по шаблону ниже.
Шаблоны DayPlan, compact dashboard и WeekPlan →
memory/templates-dayplan.md(единый источник для day-open и day-close). Прочитать при шаге 7 (запись DayPlan):Read memory/templates-dayplan.md