Hook vs Skill
An automatic rule the harness enforces, versus knowledge the model chooses to use
Hook
A command wired to a lifecycle event that fires automatically, without the model choosing to invoke it. Enforced deterministically by the harness, the model has no say in whether it runs.
Skill
Instructions the model reaches for by matching a description to the task at hand. The model decides whether it's relevant. It's judgment, not an automatic rule enforced from outside.
Which one do you actually need
Use a hook for anything that must happen every time, no exceptions and no room for the model to talk itself out of it, blocking a dangerous command, requiring a lock before a write. Use a skill for anything that benefits from judgment about when it applies, a deploy process the model should recognize as relevant, not one it's forced into regardless of context. Hooks are rules, skills are knowledge.