Claude Code skills are easy to write. The hard part nobody documents: how does the skill know where your app's files live on someone else's machine?

I hit this building a skill for my Mac screenshot app. The skill needs to read the latest capture. On my machine that folder is one path. On yours it's wherever you set it in preferences. Hardcode it and the skill breaks for everyone but me.

Here is the pattern that fixed it, in three parts.

What a skill is, in one paragraph

A skill is a small markdown file in ~/.claude/skills/. It tells Claude how to handle a class of requests. When your prompt matches, Claude reads the instructions and follows them, so you stop re-explaining the rules every session. Mine is a single SKILL.md, about 80 lines. You can read the whole thing in a minute: bickov/slimsnap-skill.