CLAUDE.md stops Claude from guessing. Skills and hooks stop you from re-prompting. Here's the next layer, with live examples from a real Go repo.
---
title: "Next Step: Skills & Hooks — Point, Don't Re-Prompt (After CLAUDE.md & Rules)"
published: true
description: "CLAUDE.md stops Claude from guessing. Skills and hooks stop you from re-prompting. Here's the next layer, with live examples from a real Go repo."
tags: claudeai, ai, productivity, devtools
series: "Claude Code Deep Dive"
canonical_url:
cover_image: https://dev-to-uploads.s3.us-east-2.amazonaws.com/uploads/articles/aexq82hwsjslgchivi8r.png
---
If you set up a `CLAUDE.md` and rules after the last video, you probably noticed something annoying: Claude still doesn't *do* anything with that foundation on its own. You ask for a PR summary, and you're typing out the same three paragraphs of instructions you typed last week. You push code, CI fails on a lint error, and you're back in the chat pasting the error and explaining — again — how your project formats Go code.
Every one of those re-explanations costs tokens. On a Claude Pro subscription, that's not an abstract problem: it's your usage window burning down on context Claude should already have. `CLAUDE.md` fixed *what Claude knows*. It didn't fix *what Claude does with it*.
That's what skills and hooks are for. Skills let you point instead of re-prompting. Hooks enforce things deterministically, outside the model entirely — no tokens spent at all.
{% youtube CkFCl7KlHLs %}
*New to this series? Start with [CLAUDE.md & Rules before Skills, Hooks or Agents](https://medium.com/stackademic/claude-md-rules-before-skills-hooks-or-agents-20c8cb72550d) — everything below builds on that foundation.*
In the previous video I set up `CLAUDE.md` and `.cursor`-style rules for [PortfolioPulse](https://github.com/Mozes721/PortfolioPulse), my Go service that snapshots Trading212 portfolio data into Redis and Airtable. The point of that layer was context: project structure, conventions, what not to touch. Claude stopped guessing.
But context is passive. It sits there until you write a prompt that activates it. The next layer is active: reusable workflows (skills) and automatic enforcement (hooks).
A skill is a folder with a `SKILL.md` file — instructions, optionally with scripts and reference files — that Claude Code loads *when it's relevant*. The key mechanic is progressive disclosure: Claude only sees each skill's name and description at first (roughly a hundred tokens), and pulls in the full instructions only when the task matches. You can host dozens of skills without bloating your context window.
There are two ways to get them.
The fastest path is installing existing skills as plugins. In the video I install from a marketplace — the same flow works for any published skill collection:
/plugin marketplace add <owner/repo> /plugin install <skill-name>@<marketplace>
Upstash — which PortfolioPulse already uses for Redis — publishes skills this way, so Claude gets vendor-ma