mirror of
https://gitverse.ru/kpa39l/project-session-close.git
synced 2026-09-29 09:15:01 +00:00
102 lines
8.0 KiB
Markdown
102 lines
8.0 KiB
Markdown
---
|
|
name: project-session-close
|
|
description: Use when closing a session on a long-running project.
|
|
version: 1.0.0
|
|
author: hermes
|
|
license: MIT
|
|
metadata:
|
|
hermes:
|
|
tags: [project, session, close, status, prd, todo, walkthrough, memory]
|
|
---
|
|
|
|
# Закрытие сессии проекта (project session close)
|
|
|
|
## When to Use
|
|
- Пользователь говорит «закрой сессию», «сохрани проект», «подведи итог», «запиши опыт», «сделай STATUS/PRD/TODO», «закрой проект» — скилл ВЫПОЛНЯЕТСЯ ВСЕГДА, файлы генерируются/обновляются в обязательном порядке (не спрашивать «нужно ли», только уточнять КАКОЙ проект).
|
|
- В конце работы над длинной задачей, которая продолжится в другой сессии.
|
|
- По умолчанию: если проект ведётся 2+ сессии и имеет каталог с файлами.
|
|
|
|
## Определение проекта (критично!)
|
|
1. Сначала определить каталог проекта из контекста сессии:
|
|
- Если в сессии явно работали с путём вида `/opt/hermes/<project>/` — это проект.
|
|
- Или пользователь назвал проект.
|
|
2. ЕСЛИ проектов несколько ИЛИ непонятно, к какому относить — ОБЯЗАТЕЛЬНО задать вопрос через `clarify` (выбор: список известных проектов из памяти/`session_search`, или «другой»).
|
|
НЕ угадывать молча.
|
|
3. Если каталога проекта ещё нет — создать `/opt/hermes/<project>/` (по правилу: всё в /opt/hermes).
|
|
|
|
## Файлы проекта (создаются в корне каталога проекта)
|
|
| Файл | Содержимое |
|
|
|---|---|
|
|
| `STATUS.md` | Текущее состояние реализации: что сделано, что в работе, что осталось, как запустить/проверить, ссылки на ключевые артефакты. ЖИВОЙ документ — обновляется при каждом закрытии сессии. |
|
|
| `PRD.md` | Требования к проекту: цель, нефункциональные требования, границы, метрики готовности. Меняется редко. |
|
|
| `TODO.md` | Все поставленные задачи: описание, статус (открыта/в работе/закрыта), **дата и имя сессии**, где закрыта. Хронологический журнал задач. |
|
|
| `WALKTHROUGH.md` | Подробный путь реализации проекта (капитанский журнал): шаги, команды, решения, ошибки и их исправления, конфиги, подводные камни — чтобы можно было повторить реализацию с нуля. |
|
|
|
|
## Порядок действий
|
|
0. **Определить проект** (см. «Определение проекта» выше). Если непонятно — `clarify` (список кандидатов из памяти + «другой»), ждать ответа, без него не писать.
|
|
1. **Определить каталог проекта.** Обычно `/opt/hermes/<project>/` (или путь из контекста). Если каталога нет — создать.
|
|
2. **Собрать контекст сессии:**
|
|
- Что сделано за эту сессию (артефакты, команды, решения).
|
|
- Какие задачи закрыты/открыты.
|
|
- Какие уроки/ошибки/подводные камни всплыли.
|
|
- `session_search` по имени проекта, если нужно восстановить прошлые сессии.
|
|
3. **Прочитать существующие файлы** (если есть): STATUS.md, PRD.md, TODO.md, WALKTHROUGH.md — не перезаписывать вслепую, а дополнять.
|
|
4. **Обновить/создать файлы** по таблице выше. Имя сессии брать из заголовка сессии или `@session:profile/<id>`.
|
|
5. **TODO.md**: для каждой закрытой задачи — строка с датой и `@session:`-ссылкой.
|
|
6. **WALKTHROUGH.md**: хронология — дата, что делали, какие команды/файлы, что не работало и как починили. Пишем как инструкцию для повторения.
|
|
7. **Основную память не трогать** — ссылку на проект в память НЕ добавлять (вся информация проекта живёт в файлах `/opt/hermes/<project>/`; память экономится).
|
|
8. **Не удалять** никакие пользовательские файлы (правило пользователя).
|
|
|
|
## Форматы файлов
|
|
|
|
### STATUS.md — шаблон
|
|
```markdown
|
|
# <Проект> — Статус
|
|
|
|
Обновлено: <дата> (сессия <@session:...>)
|
|
|
|
## Текущее состояние
|
|
<2-5 строк: что работает, что нет>
|
|
|
|
## Сделано
|
|
- <что завершено, с датами>
|
|
|
|
## В работе / Следующие шаги
|
|
- [ ] <задача>
|
|
|
|
## Как запустить / проверить
|
|
<команды>
|
|
|
|
## Ключевые артефакты
|
|
<пути к файлам>
|
|
|
|
## Открытые вопросы
|
|
<что требует решения пользователя>
|
|
```
|
|
|
|
### PRD.md — требования
|
|
Цель, пользователи, функциональные требования (списком), нефункциональные (производительность, безопасность), границы (что НЕ делаем), критерии готовности.
|
|
|
|
### TODO.md — журнал задач
|
|
```markdown
|
|
# TODO — <Проект>
|
|
|
|
Формат: | дата | задача | статус | закрыта в |
|
|
|---|---|---|---|
|
|
| 2026-09-05 | Описание задачи | ✅ закрыта | @session:default/... |
|
|
| 2026-09-06 | Новая задача | 🔵 открыта | |
|
|
```
|
|
|
|
### WALKTHROUGH.md — капитанский журнал
|
|
Хронологический журнал по датам. Включить: точные команды, пути файлов, какие модели/API/инструменты использовались, что сломалось и как чинили, решения «почему так». Цель — воспроизводимость.
|
|
|
|
## Питфолы
|
|
- Не перезаписывать существующие файлы целиком без чтения — дополнять.
|
|
- Память: НЕ добавлять ссылку на проект в основную память — информация проекта только в файлах `/opt/hermes/<project>/` (экономия лимита памяти 2200 символов).
|
|
- TODO.md хранит ИСТОРИЮ: закрытые задачи не удалять, помечать статусом.
|
|
- Если сессия прервана внезапно (нет финального «закрой») — файлы можно обновить в следующей сессии, восстановив контекст через session_search.
|
|
|
|
## Проверка
|
|
- Все 4 файла существуют и содержат актуальную информацию.
|
|
- TODO.md содержит все закрытые задачи с датой и ссылкой на сессию.
|
|
- Если проект был неочевиден — задан вопрос через clarify и запись сделана только после ответа. |