The IP isn't the code — it's the skill
Step 1 — Capture the build as a skill
- In the project where the build just worked, ask Claude to summarise the end-to-end procedure it followed (the commands, the order, the decisions).
- Have it write that as a SKILL.md inside a new folder named after the task (e.g.
retell-agent-setup/SKILL.md). - Keep the SKILL.md focused: a short description (so Claude knows WHEN to use it) + the step-by-step instructions (what to do).
Step 2 — Force it GENERIC (rule 1)
- The skill should ask for the client's name, domain, and any IDs when it runs — never store
api.acme.comor a client key inside it. - Replace every client-specific literal with a placeholder the skill prompts for (CLIENT_NAME, CLIENT_DOMAIN, etc.).
- Quick test: read the SKILL.md and ask 'would this run correctly for a totally different client without edits?' If no, it's still too specific.
Step 3 — Demand STANDALONE (rule 2)
- No absolute paths to the original project (e.g.
/Users/you/clients/acme/...). Use relative paths or paths the skill resolves at runtime. - Bundle anything the skill needs inside its own folder; reference it via
${CLAUDE_SKILL_DIR}so it resolves whether the skill is installed at personal, project, or plugin level. - Move the folder to a fresh repo and run it. If it breaks, it had a hidden tie to the original project — fix that before you call it reusable.
Step 4 — Install it once, reuse it forever
- Drop the skill folder in your personal skills directory:
~/.claude/skills/<name>/— it's then available in every project on that machine. - If the skills directory didn't exist when your session started, restart Claude Code once so it gets watched (edits to an existing skill hot-reload without a restart).
- Next client who needs the same thing: run
/your-skill, answer the name/domain prompts, done — what took a day the first time now takes minutes. - Commit project-specific skills into
.claude/skills/in the repo so your whole team (and future-you) inherits them.
The meta-prompt — paste this after any build
You just finished a working build in this project. Convert the exact
process you followed into a REUSABLE Claude Code skill, following these
rules strictly:
1. SUMMARISE the end-to-end procedure you actually used (commands,
order, key decisions).
2. CREATE a skill folder named after the TASK (not this client) with a
SKILL.md inside. SKILL.md = a short description (so you know WHEN to
use it) + the step-by-step instructions.
3. MAKE IT GENERIC: find every value specific to THIS client (names,
domains, IDs, keys, URLs) and replace each with a placeholder the
skill ASKS the user for at run time. Hardcode nothing client-specific.
List the inputs it will ask for at the top.
4. MAKE IT STANDALONE: remove every path reference back to this project.
Use relative paths or ${CLAUDE_SKILL_DIR}. Bundle any files the skill
needs inside its own folder.
5. ADD a 30-second self-test: how to confirm the skill runs correctly
for a NEW client with no edits.
6. OUTPUT the full SKILL.md and the folder layout, ready to drop into
~/.claude/skills/.
Before you finish, re-read your SKILL.md and confirm: would this run for
a totally different client, in a different repo, with zero edits?
If not, fix it.Get the next drop
New AI build guides + the occasional bonus template. No spam, unsubscribe anytime.
By submitting you agree to our Privacy Policy & Terms. Unsubscribe anytime.