claude-code-expertiselisted
Install: claude install-skill hsb3/dotfiles-agents
# Claude Code Expertise
Claude Code is extensible through a small set of **distinct surfaces**, each with its own
contract, file location, and trigger model. The hardest part of extending it is usually not
authoring — it is picking the *right* surface for a need. This skill is the **map**: which
surface, which contract, what's idiomatic. It complements the official skill-authoring and
plugin-authoring builders (they scaffold and validate a chosen surface); it does not restate
their job — reach for a builder once this map has told you which surface you're building.
Claude Code moves quickly. Treat contracts below as accurate to the `verified` date; when a
field is rejected or a path is ignored, check the current official docs before assuming a bug.
## Surface-selection decision table
Start here. Match the need to the surface, then open the matching reference for the contract.
| You want to… | Surface | Why this one, not the others |
|---|---|---|
| Give the model reusable know-how / a procedure it pulls in **on demand** when a task matches | **Skill** | Model-invoked by description match; loads only when relevant. Not a command (no user keystroke) and not an agent (same context, no separate tool budget). |
| Run **deterministic code** automatically at a lifecycle moment (before/after a tool, on session start, on stop) | **Hook** | Only surface that executes on an event without the model choosing to. A skill can't fire on an event; a command needs a user to type it. |
| Of