# 08 Frontmatter Timing

> §1.8. Skill frontmatter hook registers AFTER first invoke. SessionStart + once:true does not fire. Self-block during own load is impossible.

- Skill: `kazukinagata/08-frontmatter-timing` (Agent Skill)
- Install (CLI): `npx skillmds@latest add kazukinagata/08-frontmatter-timing`
- Raw SKILL.md: https://api.skillmd.com/api/skills/kazukinagata/08-frontmatter-timing/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: kazukinagata (https://skillmd.com/u/kazukinagata)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/kazukinagata/08-frontmatter-timing

---


# 08-frontmatter-timing

§1.8 — skill frontmatter `SessionStart + once:true` は不発、`PreToolUse` は invoke 後の bash で発火。

## step 1: alive-check と log 確認

```bash
proj="${CLAUDE_PROJECT_DIR:-$PWD}"
ver="${VERIFIER_VERSION_DIR:-v-unknown}"
sid="${CLAUDE_SESSION_ID:-no-sid}"
out_dir="$proj/findings/$ver/$sid"
mkdir -p "$out_dir"
printf '[08-BODY %s] tag=alive-check\n' "$(date -Iseconds)" | tee -a "$out_dir/probe.log"
echo
echo "=== probe.log (SessionStart canary entries should be absent) ==="
grep -E "08-FM-SESSIONSTART|08-FM-PreToolUse" "$out_dir/probe.log" 2>&1 || echo "(no 08-FM lines)"
echo
echo "=== hooks.log (plugin-level session-start should be present) ==="
grep -c "tag=session-start" "$out_dir/hooks.log" 2>&1 || echo "0"
```

完了して exit、`./scripts/assert.sh 08`。

