Askit build hook
Skill product-on-purpose/agent-skills-toolkit/skills/askit-build-hook
Creates and improves event-driven hooks (Advanced tier) for a plugin to the Advanced Skill Library Standard. Use when you need to add a hook, enforce a guard on a tool or session event, inject context, or document a hook's event, scope, and failure behavior.From its SKILL.md
npx -y skills add product-on-purpose/agent-skills-toolkit --skill askit-build-hookAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
- runs commandsInstructs the agent to run 1 command, including `node scripts/evaluate.mjs . --json`.
SKILL.md
3.2 KB, 677 tokens by cl100k_base, as published. Nobody here has run it
askit-build-hook
Purpose
Author a plugin's hooks: event-driven enforcement or context injection (Standard sec 3.5). Hooks are an Advanced-tier capability. Two modes: create scaffolds a hook and its registration; improve raises an existing hook toward the bar (documentation, idempotency, actionable block messages). The hook SKILL is portable; what it authors is primarily a Claude capability (31 events) with a smaller Codex event set. Authoring depth is in references/authoring-hooks.md. Follows the shared builder contract (../../docs/reference/builder-pattern.md).
When to use
When the user asks to add, scaffold, author, or improve a hook (a PreToolUse / PostToolUse / Stop / SessionStart guard, a context injector, or any event-driven automation) for a plugin.
create mode
- Brief interview: the event (for example PreToolUse), the trigger or matcher, the hook type (
command/http/mcp_tool/prompt/agent), the scope (what it guards or injects), and the failure behavior (fail-safe block vs warn). Skip the interview if these are in context. - Author the hook and its registration. A plugin registers hooks in
hooks/hooks.jsonusing${CLAUDE_PLUGIN_ROOT}; copytemplates/hooks.jsonif none exists. Document the event, trigger, scope, and failure behavior (Standard sec 3.5 MUST). - For a blocking hook (for example a PreToolUse deny), write an ACTIONABLE message that states what was blocked and how to proceed. Make the hook idempotent where the event can repeat.
- Register the hook in
library.jsoncomponents.hooksas{ name, version, tier, status }. - Targets: Claude supports 31 events. Codex supports a smaller set (PreToolUse, PostToolUse, Pre/PostCompact, SessionStart, SubagentStart/Stop, UserPromptSubmit, Stop, PermissionRequest). Verify current Codex plugin-hook ingestion at build time (a known caveat) and scope
agent-targetsaccordingly. - Assess with
node scripts/evaluate.mjs . --json. Hook documentation and idempotency are graded at the Advanced tier; the deterministic hook check lands with Gold self-hosting (Phase 5).
improve mode
- Run
node scripts/evaluate.mjs . --jsonand read the report. - Fix what it flags. For hooks specifically, confirm the event / trigger / scope / failure are documented (sec 3.5), the block message is actionable, and the hook is idempotent.
- Re-run to confirm.
Scope
Hooks are Advanced-tier and the most agent-specific component: Claude's event set is the richest, Codex covers a subset, and the wider ecosystem does not support hooks. A hook MUST document its event, trigger, scope, and failure behavior, and a blocking hook MUST emit an actionable message (Standard sec 3.5). Least privilege applies (sec 9): a hook's command runs with the narrowest scope needed.
What ships with it: 10 files
42.5 KB alongside SKILL.md, 4 of them executable
examples/
- anti-wrong-exit-code.md5.3 KB
- anti-wrong-exit-code.mjsruns1.4 KB
- golden-1-generated-file-guard.md4.7 KB
- golden-1-generated-file-guard.mjsruns3.0 KB
- golden-2-trailing-whitespace-formatter.md5.7 KB
- golden-2-trailing-whitespace-formatter.mjsruns2.5 KB
- golden-3-stop-uncommitted-notifier.md4.7 KB
- golden-3-stop-uncommitted-notifier.mjsruns1.9 KB
references/
- authoring-hooks.md12.6 KB
- README.md633 B