Skip to content
cccskills
FreePublished on GitHub

month-close

Протокол закрытия месяца (Month Close). Стадия 7 каскада ВДВ v9 (PD.METHOD.008). Запускается в первый Пн месяца, до Strategy Session.

The English summary is being prepared. Showing the original description.

Run score Not tested

See how to install

Files included (1)

  • SKILL.md23.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Month Close (протокол закрытия месяца)

Роль: R1 Стратег (выполнение), R23 Верификатор (Haiku, чеклист). Бюджет: 30-45 мин. Триггер: первый Пн месяца, перед Strategy Session первой недели. Принцип: Month Close = агрегация 4-5 Week Close'ов + переосмысление фазы/калибра. Не повторяет Week Close, опирается на его выходы. Позиция в ВДВ v9: стадия 7 «Закрытие месяца». Вход = Report W{N} предыдущего месяца + Strategy.md. Выход = Strategy.md § Результаты месяца (R1-RN) + archive/MonthClose YYYY-MM.md. SKILL.md = L1 платформенный файл. Пользователь не редактирует напрямую — только через extensions/.

When to use

Протокол закрытия месяца (Month Close). Стадия 7 каскада ВДВ v9 (PD.METHOD.008). Запускается в первый Пн месяца, до Strategy Session.

БЛОКИРУЮЩЕЕ: пошаговое исполнение

Month Close = протокол. Исполнять ТОЛЬКО пошагово через TodoWrite. Шаг 0 — ПЕРВОЕ действие: создать список задач прямо сейчас (до любых других действий). Каждый шаг алгоритма → отдельная задача (pending → in_progress → completed). Переход к следующему — ТОЛЬКО после отметки текущего. Шаг невозможен → blocked (не пропускать молча).

Предусловия (проверить ДО запуска)

  1. Сегодня первый Пн месяца? Если нет — СТОП, предложить запустить в правильный день. Исключение: пропущенный Month Close за прошлый месяц (запускать до середины месяца с явным указанием периода).
  2. Week Close предыдущей недели выполнен? Report W{N-1} существует в current/ или archive/. Если нет — СТОП, сначала /week-close.
  3. Month Close прошлого месяца архивирован? archive/MonthClose YYYY-MM.md существует (для месяцев после MVP). Если нет (первый прогон мая 2026) — пропустить проверку.

Algorithm

0. Extensions (before)

Загрузить: bash .claude/scripts/load-extensions.sh month-close before. Exit 0 → Read каждый файл из вывода (alphabetic) → выполнить как первые шаги. Exit 1 → пропустить. Поддерживает extensions/month-close.before.md И extensions/month-close.before.<suffix>.md.

0а. Session-guard: привязка к РП-1 (S-68 — каждый коммит обязан нести реальный РП)

Month Close сам по себе не рабочий продукт, но session-open-gate.sh (S-68) не делает для него исключения — коммит шага ниже (git commit -m "month-close: close YYYY-MM") без привязки к --wp будет отклонён. Если сессия уже привязана к другому РП, вторая привязка не нужна:

HARNESS_ID="${CLAUDE_CODE_SESSION_ID:-}"
SESSION_DIR="${IWE_ROOT:-$HOME/IWE}/.iwe-runtime/sessions"
AGENT="${IWE_AGENT:-claude-code}"
ALREADY_BOUND=0
if [ -n "$HARNESS_ID" ]; then
  while IFS= read -r sem; do
    [ -z "$sem" ] && continue
    grep -qE '^wp: .+' "$sem" 2>/dev/null && { ALREADY_BOUND=1; break; }
  done < <(grep -lxF "harness_session_id: $HARNESS_ID" "$SESSION_DIR/${AGENT}"-*.open 2>/dev/null)
fi
[ "$ALREADY_BOUND" = 1 ] || bash "${IWE_SCRIPTS:-$HOME/IWE/scripts}/session-guard.sh" open --housekeeping month-close --agent "$AGENT" 2>&1 || true

session-open-gate.sh принимает housekeeping: month-close как легитимную привязку — это закрытый список из 4 операционных протоколов, не произвольная причина (S-68 запрещает именно произвольные --housekeeping-обходы, не эти четыре). Отказ открытия (коллизия с параллельной сессией) не блокирует протокол.

1. Сбор данных (агент)

1a. Период. Определить границы месяца: YYYY-MM-01 .. YYYY-MM-{last} (фактически — последний Week Close предыдущего месяца).

1b. Коммиты за месяц.

for repo in $(ls ${IWE_WORKSPACE:-$HOME/IWE}/); do
  if [ -d ${IWE_WORKSPACE:-$HOME/IWE}/$repo/.git ]; then
    count=$(git -C ${IWE_WORKSPACE:-$HOME/IWE}/$repo log --since="$MONTH_START" --until="$MONTH_END" --oneline --no-merges 2>/dev/null | wc -l)
    [ "$count" -gt 0 ] && echo "$repo: $count"
  fi
done

1c. Week Report'ы месяца. Собрать current/Report W{N}.md за 4-5 недель → список закрытых/перенесённых РП, мультипликаторы, ТОС недель.

1d. Drift месячный. bash ${IWE_SCRIPTS:-$HOME/IWE/scripts}/iwe-drift.sh → выявить пары, где lag вырос за месяц.

1e. Decision log. Канонический файл: ${IWE_GOVERNANCE_REPO:-DS-strategy}/decisions/decision-log-YYYY-MM.md (WP-109 Ф7, один файл на месяц). Перед чтением выполнить совместимую миграцию: если канонического файла нет, но существует ${IWE_GOVERNANCE_REPO:-DS-strategy}/exocortex/decisions/decision-log-YYYY-MM.md, создать decisions/ и переместить старый файл; если существуют оба, не объединять и не перезаписывать молча, сообщить пилоту о расхождении и читать канонический. Если файла нет или в нём нет записей месяца, зафиксировать «решения за месяц не зарегистрированы» и продолжить; отсутствие файла на пустом месяце не является ошибкой Month Close.

1f. Метрики файлов memory (WP-217 Ф10.2).

bash ${IWE_SCRIPTS:-$HOME/IWE/scripts}/memory-health.sh
bash ${IWE_SCRIPTS:-$HOME/IWE/scripts}/memory-bleed.sh

HOT-лимит превышен → понизить horizon в frontmatter нужных файлов ДО дальнейших шагов. Кандидаты на понижение из bleed-отчёта → зафиксировать в MonthClose YYYY-MM.md § T-чеклист T23.

1g. Стабильные входы (PD.METHOD.008 стадия 7 входы 5+6). Прочитать ${IWE_GOVERNANCE_REPO:-DS-strategy}/docs/Dissatisfactions.md (список НЭП) + ${IWE_GOVERNANCE_REPO:-DS-strategy}/docs/Projects.md (список проектов P1-P6). Без них ревизия проектов (Шаг 4) и промоция новых R (Шаг 9) не имеют контекста.

2. Мультипликатор месяца

Агрегация недельных мультипликаторов, НЕ среднее дневных.

  1. WakaTime месяца — сумма физического времени за все дни месяца
  2. Бюджет закрыт за месяц — сумма Бюджет закрыт из всех Week Report'ов месяца
  3. Мультипликатор месяца = Бюджет закрыт / WakaTime. Формат: N.Nx
  4. Динамика — сравнить с прошлым месяцем (рост / падение / стабильно)

3. Ретроспектива метрик (человек + агент)

3a. Фаза стратегической позиции (PD.FORM.078).

Текущая декларация в Strategy.md § Состояние месяца: [Development / Chaos / Ceiling / Pivot]. Проверить по 5 сигналам PD.FORM.078:

  • Оправдались ли сигналы перехода, зафиксированные в начале месяца?
  • Фаза стабильна, сдвинулась, или требует пересмотра?
  • Решение: оставить / сдвинуть → записать в MonthClose YYYY-MM.md.

3b. Калибр личности (PD.CHR.007).

Текущий калибр в Strategy.md (например: 3, целевой 4 к концу 2026). Вопросы:

  • Появились ли за месяц события/результаты, сигнализирующие рост?
  • Разрыв по трём направлениям (горизонт / bus factor / публичность) — какой сократился?
  • Пересчёт: оставить / поднять на 0.5 / потребовать дополнительных действий.

4. Ревизия проектов P1-P6 (человек)

По docs/Projects.md, для каждого активного проекта:

  • Какие R-результаты месяца двигали P?
  • P застыл (0 часов за месяц) → сигнал: актуален ли P? Не пора ли декомпозировать или закрыть?
  • Баланс часов по P — есть ли крен, соответствующий стратегии?

Вывод: 1-2 абзаца в MonthClose YYYY-MM.md § Ревизия проектов.

5. R-вопросник месяца (человек)

Открыть memory/r-questionnaire.md → раздел «Month Close — 6 доп. вопросов» → ответить последовательно (M1-M6).

Особый статус M6 (decommission): ответ = список T-действий на перевод в dormant/archived. Агент перед вопросом запускает bash ${IWE_SCRIPTS:-$HOME/IWE/scripts}/iwe-drift.sh + читает sync-manifest.yaml § activity_checks: → предъявляет кандидатов.

Время: 20-30 мин.

6. T-чеклист месяца (агент + человек)

Открыть memory/t-checklist.md → раздел «Month Close» → выполнить T23-T25:

  • T23 Lesson Hygiene месячный. НЕ ротация дневная/недельная (это уже сделано Day/Week Close). Месячный масштаб — объединение тематических файлов, удаление пустых категорий, сверка что lessons_*.md не разрослись за лимит. Пройти MEMORY.md секция «Уроки» и тематические lessons_*.md. Лимит MEMORY.md «Уроки» ≤8 строк.
  • T24 Аудит протоколов на обходимые шаги. Пройти memory/protocol-*.md и .claude/skills/*/SKILL.md — выявить шаги, которые агент регулярно пропускает (по behaviour-report.sh) или человек обходит молча. Решение: удалить / переформулировать / оставить как есть.
  • T25 Decommission-триаж. Применить решения из Шага 7 (add-on). Здесь T25 — pointer, не дубль. См. Шаг 7 ниже.

7. Add-on: Decommission-триаж (WP-226 Ф2) — реализация T25

Шаг 5 M6 собирает кандидатов → Шаг 7 применяет решения → Шаг 6 T25 = указатель на этот шаг. Единая точка выполнения (избегать тройного прогона).

Для каждого кандидата из Шага 5 M6:

  1. Проверить: действие имеет измеримый след (entry в sync-manifest.yaml § activity_checks:)? Если нет — дополнить manifest перед решением.
  2. Фактическая частота за 3 окна: bash ${IWE_SCRIPTS:-$HOME/IWE/scripts}/iwe-drift.sh --activity → счётчик.
  3. Решение человека:
    • active → dormant: переместить в секцию «Спящие действия» соответствующего чеклиста, пометить dormant_from: YYYY-MM-DD
    • dormant → archived: перенести в ${IWE_GOVERNANCE_REPO:-DS-strategy}/archive/retired-actions.md с причиной
    • dormant → active (реактивация): вернуть в основной чеклист, пометить reactivated_from: YYYY-MM-DD, причина.
  4. Зафиксировать решения в MonthClose YYYY-MM.md § Decommission.

8. Add-on: Decision log review (WP-226 Ф2)

Обзор решений месяца из WP-109 Ф7 decision register.

  1. Открыть канонический файл, уже подготовленный в шаге 1e: ${IWE_GOVERNANCE_REPO:-DS-strategy}/decisions/decision-log-YYYY-MM.md. Если файл отсутствует или не содержит решений месяца — записать в MonthClose YYYY-MM.md § Decision log review: «Решения за месяц не зарегистрированы» и перейти к шагу 9; требование «минимум 1 инсайт» ниже применяется только когда в журнале есть решения.
  2. Для каждого решения месяца ответить:
    • Оказалось правильным / неправильным / рано судить?
    • Если неправильное: какой сигнал был пропущен? → кандидат в memory/feedback_*.md как урок.
    • Если рано судить: когда пересмотреть? → запись в trigger.
  3. Записать выводы в MonthClose YYYY-MM.md § Decision log review — минимум 1 инсайт (если совсем нечего — это само по себе сигнал, что решения не отслеживаются).

9. Обновление Strategy.md § Результаты месяца (человек)

  1. Закрытые R{N} — пометить done, краткий итог («что получилось», «что осталось»).
  2. Перенесённые R{N} — в следующий месяц (с явным обоснованием: «не удалось из-за X»).
  3. Новые R{N} следующего месяца — из черновика Strategy.md § «Черновик: {next month}» → промоция в «Фокус».
  4. Если фаза сдвинулась (шаг 3a) → обновить секцию «Состояние месяца — фаза стратегической позиции».
  5. Если калибр сдвинулся (шаг 3b) → обновить секцию «Калибр личности».

EXTENSION POINT (month-close after): bash .claude/scripts/load-extensions.sh month-close after — exit 0 → Read каждый файл из вывода (alphabetic) → выполнить. Exit 1 → пропустить. Поддерживает extensions/month-close.after.md И extensions/month-close.after.<suffix>.md.

10. Запись MonthClose YYYY-MM.md

Создать ${IWE_GOVERNANCE_REPO:-DS-strategy}/archive/MonthClose YYYY-MM.md по шаблону (секция «Шаблон отчёта» ниже). Все разделы заполнены, плейсхолдеры заменены.

11. Коммит ${IWE_GOVERNANCE_REPO:-DS-strategy}

(cd ${IWE_WORKSPACE:-$HOME/IWE}/${IWE_GOVERNANCE_REPO:-DS-strategy}
# НЕ `git add -A`: в общем клоне (multi-agent) сметает чужое pre-staged → mis-attribution
# (см. sessions/2026-06/2026-06-20-39-*). Перечисли артефакты month-close ЯВНО:
MONTH_FILES=(
  "archive/MonthClose YYYY-MM.md"
  "docs/Strategy.md"
  # + archive/retired-actions.md, decisions/decision-log-YYYY-MM.md,
  #   memory/t-checklist.md — добавь те, что фактически правил в этом month-close
)
git add "${MONTH_FILES[@]}"
git commit -m "month-close: close YYYY-MM" -- "${MONTH_FILES[@]}"
)

Push при явном триггере «заливай».

12. Верификация (Haiku R23)

Запустить sub-agent Haiku в роли R23 Верификатор (context isolation). Передать: (1) чеклист Month Close ниже, (2) MonthClose YYYY-MM.md, (3) изменения в Strategy.md. По ❌ — исправить до показа пользователю.


Шаблон отчёта MonthClose YYYY-MM.md

---
type: month-close-report
period: YYYY-MM
closed: YYYY-MM-DD
closer: R1 Стратег
verified: R23 Верификатор
---

# Month Close YYYY-MM

## Обзор
- Период: YYYY-MM-01 .. YYYY-MM-{last}
- WakaTime месяца: {h}
- Бюджет закрыт: {h}
- Мультипликатор: {N.Nx} (прошлый месяц: {N.Nx})
- Коммитов: {N}
- Закрытых РП: {N}
- Перенесённых РП: {N}

## Фаза стратегической позиции (PD.FORM.078)
- Декларация на начало месяца: {Development | Chaos | Ceiling | Pivot}
- Фактически: {подтверждено | сдвинулось в Y}
- Сигналы: {что именно наблюдали}
- Решение: {оставить Development / перейти в Y}

## Калибр (PD.CHR.007)
- Текущий: {N}
- Разрыв: {горизонт / bus factor / публичность — что двигалось}
- Пересчёт: {оставить N / поднять до N+0.5}

## Ревизия проектов
- P1 Созидатель: {h, двигалось / застыло, причина}
- P2 Экосистема+МИМ: {...}
- P3 Платформа+IWE: {...}
- P4 Бот: {...}
- P5 Личное развитие: {...}
- P6 Ближнее окружение: {...}
- Баланс: {крен в сторону X, соответствует / не соответствует стратегии}

## R-вопросник (M1-M6)
- **M1:** ...
- **M2:** ...
- **M3:** ...
- **M4:** ...
- **M5:** ...
- **M6 Decommission:** {список T-действий на dormant/archived}

## Decommission (применённые переходы)
| Действие | Было | Стало | Причина |
|----------|------|-------|---------|
| T-NN | active | dormant | 3 окна без срабатывания |
| ... | | | |

## Decision log review
- Решение X (YYYY-MM-DD): {оказалось правильным / неправильным / рано судить}
- ...
- **Инсайт:** {1+ вывод}

## Результаты R{N} месяца (копия из Strategy.md)
- R1 ...: {done | перенесено | изменено}
- R2 ...: ...

## Задел на следующий месяц
- R1' {черновик}
- R2' {черновик}
- Red line: {главная цель}

## T-чеклист (T23-T25)
- [x] T23 Lesson Hygiene: {что изменено в MEMORY.md}
- [x] T24 Аудит протоколов: {какие шаги пересмотрены}
- [x] T25 Decommission-триаж: {см. таблицу выше}

Чеклист Month Close

  • Первый Пн месяца (или явное обоснование задержки)
  • Week Close предыдущей недели выполнен
  • Коммиты за месяц собраны по всем репо
  • Мультипликатор месяца рассчитан + сравнение с прошлым
  • Фаза стратегической позиции пересмотрена (PD.FORM.078)
  • Калибр пересчитан (PD.CHR.007)
  • Ревизия проектов P1-P6 выполнена
  • R-вопросник M1-M6 пройден (ответы в MonthClose YYYY-MM.md)
  • T-чеклист T23-T25 выполнен
  • Decommission-триаж применён (таблица переходов)
  • Decision log review: минимум 1 инсайт
  • Strategy.md § Результаты месяца обновлён (R{N} закрыты, перенесены, заведены новые)
  • Strategy.md § Черновик следующего месяца промотирован в Фокус
  • Если фаза/калибр сдвинулись — обновлены соответствующие секции Strategy.md
  • archive/MonthClose YYYY-MM.md создан, все секции заполнены
  • ${IWE_GOVERNANCE_REPO:-DS-strategy} закоммичен
  • Верификация R23 пройдена (или явно пропущена)

Все ✅ → «Месяц закрыт. Готов к Strategy Session первой недели.» Иначе — указать что осталось.


Связь с другими масштабами ОРЗ

  • Не заменяет /week-close — Month Close опирается на свежий Week Report предыдущей недели. Сначала /week-close, потом /month-close.
  • Предшествует Strategy Session первой недели — её вход = только что обновлённый Strategy.md + MonthClose YYYY-MM.md. Не сливать в одну сессию: разные роли (R23 Верификатор для Close, R1 Стратег для Session) и разные артефакты.
  • Триггер вне каскада: Strategy Session первой недели месяца требует, чтобы Month Close был пройден до неё. DayPlan первого Пн содержит две строки: «Month Close YYYY-MM» (0.75h) и «Strategy Session W{N}» (1-2h).

Связь с Pack

  • PD.METHOD.008 § Каскад ВДВ v9 — канонический источник стадии 7 «Закрытие месяца»
  • PD.FORM.078 — фазы стратегической позиции (шаг 3a)
  • PD.CHR.007 — калибр личности (шаг 3b)
  • DP.SC.024 — обещание техобслуживания IWE, сценарий SC.024.4 «Месячное ТО» реализуется этим скиллом

История

  • 2026-04-24: скилл создан (WP-196 Ф12.2 + WP-226 Ф2 add-ons). Первый прогон — 4 мая 2026 на закрытие апреля.
<!-- USER-SPACE --> <!-- /USER-SPACE -->

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Регистрация косяка агента в системе учёта WP-316 L1. Без LLM — детерминированный скрипт без WP Gate.

The English summary is being prepared. Showing the original description.

TserenTserenov/FMT-exocortex-template63Updated Oct 23, 2026

Разбор extraction-reports со status pending-review — решение R15 (accept/reject/defer) ЖИВЫМ ПИЛОТОМ, запись в Pack, обновление статуса, коммит. Вызывать при Close при наличии N>0 pending-review отчётов.

The English summary is being prepared. Showing the original description.

TserenTserenov/FMT-exocortex-template63Updated Oct 23, 2026

Оценка архитектурного решения по 7 характеристикам ЭМОГССБ (v3.1 — фильтр допуска, атрибут-сценарии, совет затронутых сторон; профиль без агрегатного балла, conjunctive screening). Используй когда пользователь предлагает архитектурное решение, новый инструмент или системное изменение.

The English summary is being prepared. Showing the original description.

TserenTserenov/FMT-exocortex-template63Updated Oct 23, 2026

Classifies raw pilot request → structured JSON {task_type, class, artifact, budget_estimate, confidence, routing_tag, resolution_path, schema_version, result_type, expected_result_kind, result_kind_resolution, hypothesis_relation}. Keyword-fast (<200ms) or Haiku fallback (<60s). Does NOT create WP or call executor.

The English summary is being prepared. Showing the original description.

TserenTserenov/FMT-exocortex-template63Updated Oct 23, 2026

Audit repository documentation: detect drift between code and docs, report coverage by category. Run manually or on triggered drift critical.

The English summary is being prepared. Showing the original description.

TserenTserenov/FMT-exocortex-template63Updated Oct 23, 2026

Аудит пользовательской инсталляции IWE. Запускает scripts/iwe-audit.sh + MCP healthcheck + smoke-test ритуала через sentinel-механику (контракт dry-run-contract.md), передаёт отчёт subagent'у в роли VR.R.002 Аудитор (context isolation) → verdict ✅/⚠️/❌ по 6 компонентам (Inventory, L1 drift, {{GOVERNANCE_REPO}}, L3 customizations, MCP, ритуал). Используй после restore из бэкапа, после update.sh, или при еженедельной сверке.

The English summary is being prepared. Showing the original description.

TserenTserenov/FMT-exocortex-template63Updated Oct 23, 2026

See all skills by TserenTserenov

Report a problem with this skill