changelog-observer
Track development session events in a daily markdown changelog, including file changes, test results, and key decisions.
Validate hooks configuration and scripts. Use after adding or editing hooks in settings.json, before committing hook changes, or when a hook fails to fire.
$ npx -y skills add claude-world/director-mode-lite --skill hooks-check --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/hooks-checkContext preview
The summary Claude sees to decide when to auto-load this skill.
Validate hooks configuration and scripts. Use after adding or editing hooks in settings.json, before committing hook changes, or when a hook fails to fire.
name: hooks-check description: Validate hooks configuration and scripts. Use after adding or editing hooks in settings.json, before committing hook changes, or when a hook fails to fire. user-invocable: true
Validate hooks configuration in `.claude/settings.json` and hook scripts against the official Claude Code spec.
---
Verify the `hooks` section exists and is valid.
Claude Code defines **30 hook events**. Accept any of them; flag unknown names with a typo hint (e.g. `PrePromptSubmit` -> `UserPromptSubmit`, `PostToolBatchFailure` -> `PostToolBatch`, `SubagentStarts` -> `SubagentStart`).
| Group | Events | |-------|--------| | Lifecycle | `SessionStart`, `SessionEnd`, `Setup` | | Prompt | `UserPromptSubmit`, `UserPromptExpansion` | | Tool | `PreToolUse`, `PostToolUse`, `PostToolUseFailure`, `PostToolBatch` | | Permission | `PermissionRequest`, `PermissionDenied` | | Subagent | `SubagentStart`, `SubagentStop` | | Stop | `Stop`, `StopFailure` | | Task | `TaskCreated`, `TaskCompleted` | | Compaction | `PreCompact`, `PostCompact` | | Notification | `Notification`, `MessageDisplay` | | MCP elicitation | `Elicitation`, `ElicitationResult` | | Environment | `ConfigChange`, `CwdChanged`, `FileChanged`, `InstructionsLoaded`, `WorktreeCreate`, `WorktreeRemove`, `TeammateIdle` |
That is all 30 events. See the official hooks docs for each event's payload.
Silent / exit-code-only hooks are valid — no stdout is required (exit `0` = allow/continue, exit `2` = block for `PreToolUse`).
---
When a script does emit JSON, validate it against the event contract:
`ask`. The legacy top-level `{"decision": "approve" | "block"}` is still accepted.
`{"decision": "block", "reason": "<next prompt>"}` — the key is `reason`.
---
## Hooks Validation Report ### Configuration Status: VALID / INVALID ### Configured Hooks | Event | Matcher | Script | Status | |-------|---------|--------|--------| | Stop | * | auto-loop-stop.sh | OK | ### Script Validation | Script | Exists | Executable | Output | |--------|--------|------------|--------| | auto-loop-stop.sh | OK | OK | JSON OK / silent | ### Issues Found 1. [Issue and fix]
---
Use Claude Code like a Director, not a Programmer. MIT toolkit with Auto-Loop, guided setup, 27 commands, 14 agents, and 32 skills.
Track development session events in a daily markdown changelog, including file changes, test results, and key decisions.
Validate custom agent file format and structure. Use after creating or editing an agent, before committing agent changes, or when an agent fails to load.
Generate custom agent from template. Use when creating a new subagent from scratch, or scaffolding an agent file with correct frontmatter.
List all available agents (core, expert, self-evolving). Use when the user asks what agents are available or runs /agents.
TDD-based autonomous development loop with checkpoint recovery and observability changelog