# session-handoff-hermes-mapping ## Goal Зарегистрировать скил `session-handoff` в `hermes/mapping.yaml` в режиме `pending` с `intended: { mode: auto, category: productivity }`. Без entry'а `scripts/build-hermes.py` падает с exit 1 ("unmapped skill" — каждый скил в `skills/` обязан appear в mapping ровно один раз). После entry'а SKIPPED.md показывает session-handoff под Pending с full intended-block. ## Key files - `hermes/mapping.yaml:147-166` — pending block получил третий entry (session-handoff после using-vds-ops) - `scripts/build-hermes.py` — converter, читает mapping, пишет dist-hermes/ - `dist-hermes/SKIPPED.md` — auto-generated, отражает pending entries с intended-блоком ## Decisions log - 2026-05-24: mode = **pending** (не auto), потому что: - file-system write side-effect (`.tasks/NEXT_SESSION.md`) - bidirectional (read on start + write on end) - первое promotion требует behavioral audit на Hermes side - precedent: using-yt-tools (shells external CLI + writes cwd), using-vds-ops (touches infra) — оба сидят в pending до test-trigger task'и - 2026-05-24: intended.category = **productivity**, не software-development. Аналогично `using-tasks` / `setup-tasks` — это session-state / workflow-continuity primitive, не engineering toolchain. session-lifecycle ближе к task-state continuity (productivity) чем к build/test/ci (software-development). - 2026-05-24: intended.mode = **auto** (после audit'а). Cross-machine handoff value сохраняется на Hermes-машинах так же как на Claude-Code — skill не зависит от Claude-specific harness primitives кроме trigger-line discovery (которая в Hermes тоже работает). - 2026-05-24: comment header bumped from "pending (1 — ...)" to "pending (3 — ...)" — three pending entries теперь (using-yt-tools, using-vds-ops, session-handoff). ## Open questions - [ ] нет — promotion в `mode: auto` отдельная work-item, не часть этой таски ## Completed steps - [x] read `hermes/mapping.yaml`, identify nearest precedent (using-yt-tools / using-vds-ops pending pattern) - [x] add session-handoff entry with mode: pending + intended block + reason - [x] update comment header count "(1)" → "(3)" - [x] `python scripts\build-hermes.py` → 28 skills, 3 pending, exit 0 - [x] verify SKIPPED.md pending block contains session-handoff with intended - [x] STATUS.md → 🟢 - [ ] commit (next) ## Notes Promotion `pending → auto` запланирован через follow-up task (по аналогии с `using-yt-tools-test-trigger` smoke pass'ом). Не нужно делать в одной session с registration — clean session separation для fresh-eyes audit.