Skip to content
Development
Skill

/checkpoint

Управляемый чекпоинт состояния в файлы посреди работы — вместо авто-сжатия («рулетки»). Перезаписывает Current State, синхронизирует статусы, ротирует завершённое в архив, прогоняет cold-start self-test. Триггеры — "/checkpoint", "чекпоинт", "зафиксируй состояние", "разгрузи

From plugin
vibe-dev
529 skills24 agents7 hooks

Claude Code

$ npx -y skills add andrewcigan/vibe-dev-plugin --skill checkpoint --agent claude-code

SKILL.md

checkpoint.SKILL.md
name: checkpoint
description: Управляемый чекпоинт состояния в файлы посреди работы — вместо авто-сжатия («рулетки»). Перезаписывает Current State, синхронизирует статусы, ротирует завершённое в архив, прогоняет cold-start self-test. Триггеры — "/checkpoint", "чекпоинт", "зафиксируй состояние", "разгрузи контекст", "сохрани прогресс".
when_to_use: На естественной границе (конец фичи / конец волны / перед долгим субагентом / когда контекст потяжелел) ДО того как движок сам решит сжать контекст. НЕ закрывает сессию (для этого /end-session) — фиксирует состояние в файлы и позволяет продолжить работу с разгруженным контекстом.

/checkpoint

Управляемое сжатие вместо рулетки. Курс владельца (c8): авто-сжатие контекста — **крайняя мера у самого лимита**, не рабочий инструмент. Anthropic/Manus подтверждают: держи горячий контекст малым, состояние — в файлах под своим управлением, тогда порог сжатия почти не достигается.

`/checkpoint` — это «сохранить игру» на естественной границе: всё важное уезжает в файлы, после чего контекст можно смело сжимать или начинать сессию заново без потери нити.

> **Чем отличается от `/end-session`:** checkpoint НЕ закрывает сессию и НЕ включает closing-mode. Ты продолжаешь работать сразу после него. `/end-session` — это «на сегодня всё» (финальный коммит + restart-helper + выход).

Порядок (сначала руками — в файлы, потом скрипт)

Шаг 1: Перезапиши Current State в SESSION.md (c6 overwrite, НЕ append)

Блок `## Current State` — это снимок «здесь и сейчас», его перезаписывают целиком, не копят:

  • **Last Updated** — дата-время этой сессии (не шаблон `YYYY-MM-DD`).
  • **Active Feature** — реальная фича из feature_list.json (или «нет активной» на границе волны; шаблон `[feat-XXX …]` не оставлять).
  • **What's Next** — конкретный следующий шаг (не «[Следующее действие]»).

История/завершённое сюда НЕ дублируется (это раздувает горячий контекст — L4-F1). Завершённое уходит в архив (Шаг 4).

Шаг 2: Синхронизируй feature_list.json — статусы + evidence

  • Проставь фактические `state` фичам этой сессии.
  • Для `passing`/`done` — впиши `evidence` (что и как проверено). Без evidence фича не архивируется (c10).
  • **Бизнес-правку требования** (изменили описание/скоуп/инвариант по ходу) фиксируй ТОЛЬКО писателем истории плагина — он запишет откуда/когда/факт замены в провенанс-лог (иначе git pre-commit заблокирует коммит, L3-F4). Скрипт лежит в плагине, не в проекте; формат события — в начале скрипта:

`printf '%s' '<событие JSON>' | bash "${CLAUDE_PLUGIN_ROOT}/scripts/record-change.sh" --project "$(pwd)"`

Шаг 3: Дозапиши журнал/решения

Значимые решения сессии → `docs/decisions/` или `SESSION.md` → Decisions Made. Грабли → `error-journal.md`.

Шаг 4: Запусти скрипт (ротация + cold-start gate)

bash "${CLAUDE_PLUGIN_ROOT}/scripts/checkpoint.sh"

(берёт `pwd` как проект). Скрипт:

  • чинит провенанс, если голова отстала от лога после обрыва (`record-change --recover`); стабы архива сверяет с телом в архиве и не переписывает, записи без головы истории и стабы без тела в архиве не трогает — «без головы истории N» и «стабов без тела в архиве N» в выводе не ошибка, а счёт записей, которые сверять не с чем (тело в архиве проверит сторож коммитов);
  • ротирует завершённое (done/superseded/rejected с evidence) в `feature_list.archive.json` по ссылке — горячий контекст худеет;
  • **COLD-START GATE (block):** если SESSION.md шаблонный/не обновлён или провенанс некогерентен → `/checkpoint` НЕ завершается, скрипт перечисляет незафиксированное. Допиши в файлы и повтори.

Шаг 5: Cold-start self-test (сверь по ФАЙЛАМ, не по памяти)

Скрипт напечатает 5 вопросов. Ответь на каждый **из файлов репозитория**, не из контекста: 1. Что за продукт? 2. Активная фича + verification? 3. Последние 3 решения? 4. Что дальше? 5. Что не делать?

**Если хоть один ответ живёт только в контексте — допиши его в файл ДО разгрузки.** Это и есть механизация правила 4 «план только через файлы»: чат между сессиями не передаётся, свежая сессия увидит ровно то, что в файлах.

Шаг 6: Коммит (опционально, но желательно)

Зафиксированное состояние стоит закоммитить — тогда чекпоинт переживёт что угодно. Если правил провенанс — коммить как обычно (git pre-commit проверит когерентность).

Финальное сообщение пользователю

Коротко: что зафиксировано, что дальше, приглашение продолжить. Пример:

Чекпоинт сделан. Состояние в файлах: SESSION.md обновлён, feat-042 → passing (evidence записан),
2 завершённые фичи ушли в архив. Cold-start self-test — все 5 вопросов восстановимы из репозитория.

Контекст можно разгружать. Продолжаю со следующего шага: <next>. Или скажи /end-session, если на сегодня всё.

Когда применять

  • Конец фичи или волны (естественная граница).
  • Перед запуском тяжёлого субагента (освободить главный контекст).
  • Контекст потяжелел / получил нудж «сделай /checkpoint» (L4-F5) — ДО авто-порога сжатия.

Когда НЕ применять

  • Закрываешь сессию совсем → `/end-session` (он включает checkpoint-логику + выход).
  • Середина фичи без verify → сначала доведи до проверяемой точки.

Anti-patterns

  • ❌ Дописывать завершённые фичи телом в SESSION.md/CLAUDE.md (раздувает горячий контекст — L4-F1 warn). Завершённое → архив по ссылке.
  • ❌ Проходить cold-start self-test «по памяти» — вопрос в том, есть ли ответ В ФАЙЛАХ.
  • ❌ Править бизнес-поле требования мимо `record-change.sh` (потеря провенанса → git pre-commit block).
  • ❌ Полагаться на PreCompact-слепок как на память — он страховка (insurance-tier, L4-F3), не основной носитель.

Связано

  • `scripts/checkpoint.sh` — механическая часть + cold-start gate.
  • `rules/context-tiers.md` — трёхуровневая модель контекста (L4-F1).
  • `skills/end-session/SKILL.md` — полное закрытие сессии (checkpoint + выход).
  • `v8-provenance-and-context.md` §5 — дизайн анти-сжатия.
Read more
@andrewcigan
Ships withvibe-dev

🌐 English: this file · Русский: README.ru.md A harness-first plugin that turns a business idea into a shipped product — for founders who build with Codex and Claude Code.

529 skills24 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
5
Star history of andrewcigan/vibe-dev-plugin on GitHub, a chart by star-history.com

Other skills on vibe-dev.

architecture

architecture

V0 архитектура с TOC bottleneck-анализом. Запускает architect (Fable 5.1). ≤10 компонентов, Mermaid диаграмма, invariants как…

audit

audit

7-tuple оценка здоровья проекта (Instructions / State / Verification / Scope / Lifecycle / Learning / Cost-Safety) через ВНЕШНЕГО…

choose-stack

choose-stack

Выбор стека под bottleneck архитектуры. Запускает stack-advisor (Fable 5.1). Использует 2026 tech-updates (opendataloader-pdf,…

critique

critique

FULL этап 5 — автономный critique long-list идей. Запускает idea-critic (Sonnet), который отсеивает hard-filters и оставляет…

design-handoff

design-handoff

Бриф для Claude Design (claude.ai/design) по формуле C.R.O.P. Плагин не рисует UI сам — готовит handoff. Запускает…

detail-architecture

detail-architecture

Детальная архитектура после выбора стека. Запускает architect + reordering-agent. API контракты, data models, обработка ошибок,…

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills13d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react4d252k
@facebook@facebookInstall Skill

Questions about checkpoint.

Which coding agents can use checkpoint?
checkpoint installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.