CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

claude-code-hook-development

This skill should be used when the user asks to "create a hook", "add a hook", "write a hook", or mentions Claude Code hooks. Also suggest this skill when the user asks to "automatically do X" or "run X before/after Y" as these are good candidates for hooks.

80

1.14x
Quality

77%

Does it follow best practices?

Impact

93%

1.14x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./plugins/toolkit/skills/claude-code-hook-development/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

86%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A strong, highly actionable body: executable settings JSON and script templates, concrete verification and troubleshooting steps, and exemplary progressive disclosure to real reference files. The main gaps are minor — a scattered (rather than consolidated) end-to-end workflow and a couple of sections (Common Matchers, Wildcard Permissions) that restate basics or belong in a reference.

DimensionReasoningScore

Conciseness

The body is table- and code-driven with almost no conceptual padding — exit codes, events, and file locations are compressed into tables, and the bash template is minimal. It falls short of anchor 5 because "Common Matchers" spells out basics Claude already knows (Bash, Edit, Grep) and the "Wildcard Permissions" detail would fit better in a reference file. Not 3, since the padding is minor rather than a section-length problem.

4 / 5

Actionability

Fully executable throughout: a complete settings JSON structure, a copy-paste bash template with jq input parsing and a working exit-2 block pattern, exact commands (`/hooks`, `claude --debug`, `cat .claude/settings.json | jq .`), and three concrete example files (firewall, quality checks, pre-push tests) covering the common cases — matching anchor 5.

5 / 5

Workflow Clarity

"Testing Hooks Safely" is a 4-step sequence with an explicit verify step, and "Verifying Hooks Are Loaded" is a concrete checklist, but there is no single end-to-end create-hook sequence (write script → chmod +x → register in settings → restart → verify); the steps are scattered across sections and `chmod` appears only as a parenthetical. This matches anchor 4 (clear sequence, most checkpoints, minor gaps); the skill is not destructive/batch, so no cap applies.

4 / 5

Progressive Disclosure

The body is an overview with a clearly signaled "You MUST read the reference files" section pointing to four real, one-level-deep files (hook-events.md plus three examples), each annotated with what it contains. Detailed schemas and full examples are correctly kept out of SKILL.md, matching anchor 5 (well-signaled one-level-deep references, easy navigation).

5 / 5

Total

18

/

20

Passed

Description

61%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description has strong, natural trigger coverage and an explicit 'use when' clause, but it omits any explicit statement of what the skill does, leaving the 'what' implied by trigger phrases alone. Adding a capability sentence up front would raise both completeness and specificity. Voice is appropriately third-person.

Suggestions

Add an explicit capability statement at the start, e.g., "Create Claude Code hooks that run shell commands on lifecycle events to add guardrails, automations, and policy enforcement. Use when..." — this fixes the missing 'what' that caps completeness at 3.

Broaden trigger coverage with natural synonyms users would say: "guardrails", "automate", "block dangerous commands", "run something before/after a tool runs", "hook into an event".

Clarify the boundary with adjacent skills (e.g., settings/config management) so "automatically do X" requests route to this skill rather than conflicting with a configuration skill.

DimensionReasoningScore

Specificity

Phrases like "create a hook", "add a hook", "write a hook" name the domain and one core action, but the description never states what the skill actually does (e.g., creating hooks that run shell commands on events), which stays only in the body. This matches anchor 3 (domain plus 1-2 concrete actions, not comprehensive) rather than 4, since the triggers are one action phrased three ways rather than several distinct capabilities.

3 / 5

Completeness

The 'when' is explicit and rich ("This skill should be used when the user asks to..."), but the 'what' is only implied through the trigger phrases — there is no explicit capability statement. This sits between anchor 2 ('when' without 'what') and anchor 4 (both present), landing at 3 because the implied 'what' is clear but never stated.

3 / 5

Trigger Term Quality

Natural trigger phrases users would actually say are well covered: "create a hook", "add a hook", "write a hook", "automatically do X", "run X before/after Y", "mentions Claude Code hooks". It falls short of anchor 5 because common synonyms such as "guardrails", "automate", "block commands", or event-driven phrasings are missing.

4 / 5

Distinctiveness Conflict Risk

"Claude Code hooks" is a clear niche with distinct triggers, but "automatically do X" and "run X before/after Y" overlap with closely related configuration/automation skills (e.g., a settings-based hooks skill), matching anchor 4 (mostly distinct, minor overlap risk).

4 / 5

Total

14

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

relative_links

Relative link issues: 3 deeper-than-1-level

Warning

Total

14

/

16

Passed

Repository

dwmkerr/claude-toolkit

Path

plugins/toolkit/skills/claude-code-hook-development/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.