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.
Claude Code
$ npx -y skills add claude-world/director-mode-lite --skill hooks-check --agent claude-code
Codex
$ npx skills add claude-world/director-mode-lite --skill hooks-check -a codex -y
Cursor
$ npx skills add claude-world/director-mode-lite --skill hooks-check -a cursor -y
Gemini CLI
$ npx skills add claude-world/director-mode-lite --skill hooks-check -a gemini-cli -y
GitHub Copilot
$ npx skills add claude-world/director-mode-lite --skill hooks-check -a github-copilot -y
OpenCode
$ npx skills add claude-world/director-mode-lite --skill hooks-check -a opencode -y
Windsurf
$ npx skills add claude-world/director-mode-lite --skill hooks-check -a windsurf -y
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 **33 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` | | Model | `PreModelSwitch`, `PostModelSwitch` | | Environment | `ConfigChange`, `CwdChanged`, `DirectoryAdded`, `FileChanged`, `InstructionsLoaded`, `WorktreeCreate`, `WorktreeRemove`, `TeammateIdle` |
That is all 33 events. See the official hooks docs for each event's payload.
shell-form path variable is quoted (`"$CLAUDE_PROJECT_DIR"/...`), or the hook uses exec form (`args`)
or a regex); warn when it sits on an event without matcher support (`UserPromptSubmit`, `Stop`, `PostToolBatch`, `TeammateIdle`, `TaskCreated`, `TaskCompleted`, `WorktreeCreate`, `WorktreeRemove`, `MessageDisplay`, `CwdChanged`), where it is silently ignored
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`, or `defer` (`-p` only). The legacy top-level `{"decision": "approve" | "block"}` is still accepted.
`{"ok": false, "reason": "..."}`.
`{"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…
Generate custom agent from template. Use when creating a new subagent from scratch, or scaffolding an agent file with correct…
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
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.