All Articles

The Person Who Writes the Best Skills Wins

A few weeks ago, I was setting up a skill for Claude Code to help me with code reviews. Not a prompt, not a template. A skill. And somewhere in the middle of writing it, I realized I wasn't writing instructions for a machine. I was writing down how I think. That felt different.

Prompts vs Skills: The Gap Is Bigger Than You Think

Most people still think about AI in terms of prompting. You type something, the model responds. You get better at phrasing things, you get better results. That's the game for a lot of people right now. But there's a layer above that. Skills.

A prompt is a one-time instruction. You ask, it answers. A skill is a reusable, opinionated context that tells the model not just what to do, but how to think, what to prioritize, and what to avoid. It encodes judgment, not just steps.

When I wrote my code review skill, I didn't write "review this code." I wrote pages of guidance: what I care about in a PR, what I always flag, what I let slide in early-stage work, how I like feedback phrased. I was writing a character sheet for myself. And then the model used it, and it felt weirdly close to me.

Commands vs Skills: They Are Not the Same Thing

This is something I got confused about early on, and I think most people do too.

Commands are instructions. When you type /commit in Claude Code, it runs a command that formats a commit message for you. It is task-shaped. It knows what to do in that one specific situation. Done.

Skills are different. A skill is a frame for how to think. When my code review skill kicks in, it does not just know the steps. It knows what I care about. It knows I always check for missing error handling. It knows I do not nitpick style in early drafts. It knows when to be direct and when to ask a clarifying question first.

Commands tell the AI what to do. Skills tell the AI how to be.

Think of a command as a recipe. You follow it step by step and you get the expected output. A skill is more like teaching someone your style. They know your preferences, your shortcuts, the things you always adjust. They can handle situations you have never shown them before, because they understand your way of thinking. A shallow skill gives the model a recipe. A deep skill gives it judgment. The results are very different.

You Are No Longer Writing Instructions. You Are Writing a Character.

When you write a great skill, you are encoding your judgment into something repeatable. The model does not just execute tasks. It starts making decisions the way you would. Not perfectly, not always, but close enough that you feel it. And you do not have to be a developer to do this.

A writer can build a skill that captures their editorial voice. A founder can build one that matches how they respond to customer emails. A teacher can build one that reflects their way of explaining a concept. The only requirement is that you know your own craft well enough to put it into words. The people who can do that are the ones getting the most out of AI right now. As a developer, I think about it like writing a design document. You are describing intent, priorities, and taste. Not syntax.

How Skills Actually Work

In Claude Code, skills are markdown files loaded into the model's context before it responds. When you invoke a custom skill, it loads a full set of instructions into the conversation. The model reads it, understands the context, and operates within that frame. Here is a simplified example:

You are helping review pull requests for a Rails API.

Focus on: missing error handling, N+1 queries, security issues.
Skip: style nitpicks, minor naming things in early-stage work.
Tone: direct, specific. Point to the line. Suggest the fix.
If something is unclear, ask one question before assuming.

That is not a prompt. It is a set of priorities, a tone guide, and a decision rule all in one. The model is not just completing a sentence. It is operating with a point of view. The same idea applies to any AI tool that supports system prompts or custom instructions. The more specific and opinionated your skill, the more the model behaves like a version of you.

Skills, Agents, and Why Humans Still Matter

Skills make AI tools much more capable, but they do not make humans unnecessary. The role shifts from "person who does the work" to "person who checks the work is right." The model with a great skill will run confidently, but it will not always tell you when it is uncertain. It does not know what it does not know. That gap still exists today. The workflow I have settled into: write a good skill, let the model run with it, then review and correct.

Real work has context that no skill can fully capture. The requirement that came up in last week's meeting. The edge case your team found three months ago. The thing that changed and nobody updated the docs for. The human in the loop is not a limitation of the technology. It is an acknowledgment that judgment has to live somewhere.

What I Built for Myself

To make this concrete, I started collecting the skills I kept reaching for into an open source repo called Forge. These are skills I use in my own day-to-day work, built around the phases of shipping software.

/plan-product-review — challenges the problem before writing a line of code. Is this the right feature? For whom? What are we assuming?

/plan-eng-review — locks in architecture, data flow, edge cases, and test coverage before I start building.

/audit — finds bugs that survive CI: race conditions, N+1s, trust boundary issues, missing indexes.

/design-db — walks through the SQL vs NoSQL decision, produces an ER diagram, full schema, and indexes.

/probe — reads the git diff on a feature branch, finds the affected pages, and QA tests them automatically.

/ship — syncs main, runs tests, bumps the version, commits, pushes, and opens a PR.

None of these are magic. Each one just encodes how I think about that specific phase of the work. The value is not in the tool. It is in the judgment I put into writing it. If any of these are useful to you, or if you want to build your own, the repo is open: github.com/murtaza-bagwala/forge.

Why I Am Optimistic

Skills are only as good as the person who wrote them. The taste, the judgment, the specific choices inside a skill all come from someone who has done the work, made the mistakes, and figured out what matters. The skill is a distillation of that experience. It does not replace the experience that built it. When you can hand off the execution of a workflow to an AI and focus your energy on designing the skill itself, you get real reach. The person who writes the best skills is not being replaced. They are being multiplied.

Skills are becoming the new language for working with AI, and the most important thing you write from here might not be code at all. It might just be a really honest description of how you think.