LogoSu Jiang
  • Blog
  • Knowledge Base
  • About Me
Claude Skills: Turn Prompts into Reusable AI Employee Capabilities
2025/12/30

Claude Skills: Turn Prompts into Reusable AI Employee Capabilities

A hands-on guide to creating and using Claude Skills: directory layout, SKILL.md format, trigger mechanics, best practices, plus how to let AI reflect and generate Skills and orchestrate workflows so agents can truly start replacing human work.

Claude Skills: Turn Prompts into Reusable AI Employee Capabilities

If you've ever hired someone (or onboarded a new teammate), you already know this: a role isn't a slogan. It's a replicable process—what inputs look like, what steps to take, what "good" output means, and when to stop and ask a human.

Skills are doing the same thing—except the "employee capability" is abstracted into AI capability. Instead of re-teaching the model every time, you write the rules down as files, iterate them like SOPs, reuse them, and share them.

In October 2025, Anthropic shipped Agent Skills for Claude Code. It looks almost boring—just a pile of Markdown files—but I think it represents the endgame of prompt management.

More recently, OpenAI's Codex CLI also announced compatibility with the same Skills format: drop Skills into ~/.codex/skills/ and they work. That’s a pretty strong signal that Skills are becoming a de facto standard for AI coding tools.

I'll follow this sequence:

  1. Get Skills working (fast).
  2. Explain why Skills beat prompt libraries/templates.
  3. Show how to let AI reflect and turn workflows into Skills, then orchestrate them into an Agent that can actually take over workflows.

Get Started: Skills in 10 minutes

What is a Skill?

Simply put, a Skill is a "work manual" you write for AI.

The old way is: in every chat, you remind the model how you want it to behave. With Skills, you write those instructions as files; the agent loads and follows them automatically.

Each Skill is a folder, and it must contain a SKILL.md. That file defines:

  • What the Skill does
  • When it should trigger
  • The concrete behavioral rules to follow

Where do Skills live?

Skills can live in two places:

Skills Locations

Global Skills (personal)

~/.claude/skills/

• Usable in every project

• Lives outside any repo

Project Skills (repo)

.claude/skills/

• Only applies to this repo

• Shareable via Git

Key difference:

  • Global Skills live in ~/.claude/skills/ and work everywhere.
  • Project Skills live in .claude/skills/ inside a repo and only affect that repo (and can be committed for team reuse).

For Codex CLI users, global Skills live in ~/.codex/skills/—same idea, same format.

Create your first Skill

Let's build a real Skill step by step.

Scenario: You frequently write technical blog posts. Every time, you need to remind the model to follow a specific writing style and structure.

Step 1: Create the folder

# Create a global Skill (usable in any project)
mkdir -p ~/.claude/skills/tech-blog-writing

Step 2: Create SKILL.md

Create SKILL.md under ~/.claude/skills/tech-blog-writing/:

---
name: tech-blog-writing
description: Writes technical blog posts with specific formatting. Use when the user asks to write a blog post, article, or tutorial about technical topics.
---

# Technical Blog Writing Guidelines

## Structure

1. **Title**: concise and strong; include the core keyword
2. **Opening**: hook with a counter-intuitive point or a question; avoid boring openings like "First, let's understand..."
3. **Body**:
   - keep each paragraph under 5 sentences
   - explain a technical term the first time it appears
   - code examples must be runnable
4. **Ending**: summarize key points + suggest a next action

## Writing Style

- conversational, like chatting with a friend
- avoid connectors like "first / second / finally"
- use concrete numbers; avoid vague words like "many" or "some"

## Formatting

- use Markdown
- annotate code blocks with language
- bold key points for emphasis

Step 3: Verify the Skill is loaded

Start Claude Code and run:

What Skills are available?

Claude will list all available Skills. You should see tech-blog-writing.

Step 4: Test the Skill

Send a request that should trigger this Skill, for example:

Write a technical blog post about real-time communication with WebSocket.

Claude should match this request to the Skill's description, load tech-blog-writing, and apply the rules.

The complete SKILL.md format

SKILL.md has two parts:

SKILL.md Structure

YAML Frontmatter (metadata)


name: your-skill-name

description: trigger conditions...

← required, unique identifier

← required, decides when to activate

Markdown Body (instructions)

Title

Concrete rules

  • Rule 1
  • Rule 2

← write the concrete behavioral instructions here

← full Markdown is supported

Available metadata fields:

FieldRequiredMeaning
nameYesUnique identifier for the Skill
descriptionYesWhat the Skill does and when it should trigger
allowed-toolsNoRestrict which tools this Skill can use
modelNoPin a model, e.g. claude-sonnet-4-20250514

The description field is critical. Claude uses semantic matching to decide whether a user request should trigger a Skill. The clearer the description, the more accurate the activation.

A good example:

description: Explains code with visual diagrams and analogies. Use when explaining how code works, teaching about a codebase, or when the user asks "how does this work?"

This describes:

  1. What the Skill does (explain code using diagrams and analogies)
  2. When it triggers (explaining how code works, teaching, "how does this work?")

Multi-file Skills: progressive disclosure

For complex Skills, you can split content across multiple files. Claude loads SKILL.md first, then dynamically loads other files as needed. This is progressive disclosure.

Example structure:

~/.claude/skills/api-design/
├── SKILL.md              # required, entry point
├── reference.md          # detailed API documentation
├── examples.md           # usage examples
└── scripts/
    └── validate.py       # helper script

In SKILL.md, reference other files like this:

---
name: api-design
description: Helps design RESTful APIs following best practices.
---

# API Design Guide

## Quick Reference
[Put core rules here]

## Detailed Resources
- Full API spec: [reference.md](reference.md)
- Examples: [examples.md](examples.md)

## Validation Script
Use this script to validate your API design:
python scripts/validate.py api-spec.yaml

Benefits:

  • You don't shove everything into context at once
  • You save tokens and improve responsiveness
  • Detailed content is loaded only when needed

Hands-on example: a code review Skill

Here's a more complete example.

Scenario: You want Claude to follow a specific checklist when reviewing code.

Create ~/.claude/skills/code-review/SKILL.md:

---
name: code-review
description: Reviews code for quality, security, and best practices. Use when the user asks to review, check, or audit code.
---

# Code Review Checklist

When reviewing code, check in this order:

## 1. Security Checks 🔒

- [ ] Any hard-coded secrets or credentials?
- [ ] Is user input validated and sanitized?
- [ ] Are SQL queries parameterized?
- [ ] Any insecure dependency versions?

## 2. Performance Checks ⚡

- [ ] Any N+1 query issues?
- [ ] Are large datasets paginated?
- [ ] Any unnecessary memory allocation?
- [ ] Are async operations handled correctly?

## 3. Maintainability Checks 🧹

- [ ] Any functions too long (over 50 lines)?
- [ ] Any duplicated code worth extracting?
- [ ] Are names clear and intention-revealing?
- [ ] Is error handling sufficient?

## Output Format

Use this format for review results:

### Severity
- 🔴 Critical: must fix before shipping
- 🟡 Medium: should fix
- 🟢 Suggestion: optional improvements

### Each issue should include
1. Location (file:line)
2. What's wrong
3. Suggested fix
4. Fixed code example (if applicable)

Best practices for managing Skills

  1. Naming: use lowercase with hyphens, e.g. code-review, api-design.
  2. One Skill, one job: keep each Skill focused; avoid an "everything" Skill.
  3. Be specific in description: write clear trigger conditions to avoid false activations.
  4. Maintain regularly: treat Skills like code; iterate based on real usage.
  5. Version control: put project Skills in Git and track what changes actually helped.

Why Skills are the endgame of prompt management

Now you know how to write Skills. Let's talk about why Skills are better than prompt libraries/templates.

The pain points of traditional prompt management

Previously, people managed prompts in a few ways:

Method 1: Copy/paste Store prompts in a notes app, copy them into chats when needed.

Problems:

  • context gets lost
  • no reliable way to track which version works
  • high maintenance cost

Method 2: Prompt template libraries Use a dedicated tool to manage templates with variables.

Problems:

  • disconnected from real workflows
  • still involves manual copy/paste
  • no conditional triggering

Method 3: System prompt configuration Configure a global system prompt inside an AI tool.

Problems:

  • no version control
  • hard to share and collaborate
  • one set of rules for all scenarios

Core advantages of Skills

Skills solve all of the above:

Six Core Advantages of Skills

  1. Version control

Skills are files, naturally Git-friendly

Track changes and roll back anytime

  1. Low context usage

Only load matching Skills; don't waste tokens

Progressive disclosure for details

  1. Fast loading

Local filesystem: no network latency

Works offline

  1. Edit anytime

Edit files with any editor

Changes apply immediately in the next run

  1. Built-in storage

The filesystem is the storage layer

Fully self-hosted and controllable

  1. Iterative prompt system

Prompts become assets like code

This is an AI-native workflow

Prompts can finally be maintained like code

This is the most valuable part of Skills.

Traditional prompts are "one-off". You write a prompt, use it once, and move on. Next time, you end up rewriting something similar again.

Skills turn prompts into iterable assets. You can:

  1. Continuously improve: refine Skill rules based on real outcomes
  2. A/B test: test different Skill versions via Git branches
  3. Accumulate knowledge: good rules persist instead of disappearing when a chat ends

It's like evolving from a verbal agreement to a written contract, from improvisation to a standardized process.

When you have many Skills, your workflow flips

At some point, when you have enough Skills, AI stops being "a writing assistant" and starts taking over end-to-end workflows.

The fundamental problem of agents

AI agents have a fatal flaw: unpredictability.

Run the same prompt ten times and you may get ten different outcomes. That uncertainty makes it hard to hand over critical tasks completely.

You can let an agent assist exploration. But you don't dare to let it replace a role.

Skills solve controllability

Skills make agents controllable:

  • Auditable: each Skill is explicit rules in plain text
  • Versioned: Git tracks every change, so you know what works
  • Testable: validate outputs with fixed inputs
  • Fixable: if something breaks, edit the Skill (no need to "pray the model gets smarter")

Controllability Comparison

Raw Agent

Same prompt, different outcomes ✗

Hard to trace decisions ✗

Hard to debug failures ✗

→ Only safe as an assistant

Skill-driven Agent

Clear rules, consistent behavior ✓

Every instruction is recorded ✓

Fix by editing the Skill ✓

→ Can take over workflows

Every job becomes N Skills

Think about your daily work.

Most things you do can be decomposed into repeatable "patterns":

  • Weekly reports have a standard structure
  • Code reviews have a standard checklist
  • Customer emails have standard phrasing
  • Onboarding has a standard process

Each pattern can become a Skill.

Once your key patterns are converted into Skills, your role changes: from executor to supervisor.

From Human Loop to Agent Loop

Today's work pattern is a Human Loop:

Event happens → human notices → human decides → human executes

AI is just a tool humans call. You sit in the middle: the bottleneck and the control point.

With enough reliable Skills, the pattern flips into an Agent Loop:

Event happens → agent detects → Skill executes → human reviews (optional)

Humans shift from "operator" to "supervisor". You don't do every step yourself; you review outputs and only step in when needed.

Workflow Paradigm Shift

Human Loop (you execute)

Event

Notice

Decide

Execute

Paradigm shift ↓

Agent Loop (you supervise)

Event

Detect

Execute

Review

(optional)

Key Difference

Human Loop:

You are the bottleneck

Agent Loop:

You supervise 10× throughput

Let AI orchestrate Skills: from "using" to "scheduling"

If you treat Skills as a pile of "prompt files", you only save some copy/paste.

But if you treat them as a capability library, the game changes:

For a complex task, don't rely on the model's vibes. Let an Agent:

  • decompose the task into steps
  • trigger/load the right Skills per step
  • run validations and checklists
  • produce a final acceptance checklist

A minimal orchestration pattern:

  1. List needed Skills (when unsure, ask: What Skills are available?)
  2. Produce an execution plan (each step maps to one Skill with clear input/output)
  3. Self-check along the way (use checklist/review Skills for verification)
  4. Retrospect at the end: which steps should become new Skills, and which old Skills need improvement

If you want to go further, write a dedicated "orchestrator" Skill. It doesn't execute the task itself; it decomposes tasks, selects Skills, sequences them, and defines acceptance criteria. Later you just say "Finish X end-to-end" and it runs the workflow.

---
name: skill-orchestrator
description: Orchestrates other Skills to complete an end-to-end task. Use when the user asks to "finish end-to-end / fully automate" a task.
---

# Skill Orchestrator

- Break the task into 3–7 steps, and define input/output/acceptance for each step
- Reuse existing Skills first; if missing, draft a new Skill and mark boundaries that need human confirmation
- Keep outputs traceable: what was done, why it was done, and what the next step is

The laziest way to generate Skills: do → reflect → solidify

You don't need to sit there "planning what Skills to write". The laziest way is: finish a real task once, then ask AI to abstract your approach into reusable Skills.

Here's a reflection prompt you can use after any task:

We just completed [TASK]. Please abstract the method you just used into reusable Skills (you may split into multiple Skills), and output:
1) Each Skill's name / description (description must include trigger conditions, with 3 positive examples + 3 negative examples)
2) Directory structure (.claude/skills/... or ~/.codex/skills/...)
3) Full content of each SKILL.md (goal, applicable/not applicable, steps, decision points, risk boundaries, acceptance checklist, output format)
4) Minimal test case: how to trigger + expected output

Constraints: one Skill should do one thing; prefer reusing existing Skills; don't put one-off information into Skills.

The strongest thing about Skills isn't "beautiful writing". It's "every time you do it once, you compound a new asset."

Skills will grow fast

The App Store took 15 years to accumulate 2 million apps.

Skills could reach that scale in 2–3 years.

Why? Because the creation barrier is extremely low:

  1. A Skill is just a Markdown file
  2. You can create it in minutes
  3. AI can generate and refine it

More importantly, AI can observe your work and generate Skills. You do a task once, let Claude observe your workflow, and it can summarize a Skill. You tweak it for a few minutes—and that workflow becomes automated.

Automation mode: three "unleashed" AI employees

If you want a few fully autonomous AI employees, you can try patterns like:

# Claude Code: skip permission checks
claude --dangerously-skip-permissions

# Codex CLI: sandboxed auto-execution
codex --sandbox workspace-write --ask-for-approval never

# Gemini CLI: YOLO mode
gemini -m gemini-3-flash-preview --yolo

These "unleashed" modes work precisely because Skills exist.

When you write the rules clearly, AI can execute by the rules. You don't have to babysit every run or worry it will do something unexpected.

Skills make automation possible.

The essence of a Skill is to write "job capabilities" into files

You can treat Skills as a prompt-management tool, but I prefer to think of them as: abstracting employee capability into AI capability.

Every Skill you write is answering four questions:

  • What is the input?
  • What should the output look like?
  • What are the intermediate steps / decision points?
  • What risks require stopping to ask a human, and how do we verify acceptance?

When those things become files, version-controlled, and reusable, you're no longer "tuning a model"—you're "writing employees."

I increasingly believe that in 2026, agents replacing human work won't be about models getting a bit smarter. It'll be about capability engineering: decompose roles into Skills, then orchestrate Skills into workflows. Models handle reasoning, tools handle actions, and Skills provide stability and controllability.

The most realistic starting point is also simple: pick one repetitive weekly task, do it once, then ask AI to reflect and solidify it into Skills. Next time, let it run. If something breaks, iterate the Skill—not "switch prompts and hope."

From that moment on, what you're accumulating is not "inspiration", but a digital employee team that keeps getting stronger.

One last reminder: if you copy public Skills from the internet, double-check whether they grant excessive permissions, leak keys, or introduce other risks.

All Posts

Author

avatar for Su Jiang
Su Jiang

Categories

  • AI探索
Claude Skills: Turn Prompts into Reusable AI Employee CapabilitiesGet Started: Skills in 10 minutesWhat is a Skill?Where do Skills live?Create your first SkillStep 1: Create the folderStep 2: Create SKILL.mdStep 3: Verify the Skill is loadedStep 4: Test the SkillThe complete SKILL.md formatTitleConcrete rulesMulti-file Skills: progressive disclosureHands-on example: a code review SkillBest practices for managing SkillsWhy Skills are the endgame of prompt managementThe pain points of traditional prompt managementCore advantages of SkillsPrompts can finally be maintained like codeWhen you have many Skills, your workflow flipsThe fundamental problem of agentsSkills solve controllabilityEvery job becomes N SkillsFrom Human Loop to Agent LoopLet AI orchestrate Skills: from "using" to "scheduling"The laziest way to generate Skills: do → reflect → solidifySkills will grow fastAutomation mode: three "unleashed" AI employeesThe essence of a Skill is to write "job capabilities" into files

More Posts

苏江:世界的本质是"套娃"
生活随记

苏江:世界的本质是"套娃"

复杂性不是为了抵抗归零,而是为了加速归零。我们是宇宙为了更快走向虚无而创造的精巧机器。

avatar for Su Jiang
Su Jiang
2025/12/10
苏江:能自己开会的AI
AI探索

苏江:能自己开会的AI

苏江:能自己开会的AI

avatar for Su Jiang
Su Jiang
2025/07/18
苏江:分享个自制的公众号排版编辑器,适合保存AI生成的Markdown格式文档
AI探索

苏江:分享个自制的公众号排版编辑器,适合保存AI生成的Markdown格式文档

苏江:分享个自制的公众号排版编辑器,适合保存AI生成的Markdown格式文档

avatar for Su Jiang
Su Jiang
2025/07/27

Need a Custom Solution?

Still stuck or want someone to handle the heavy lifting? Send me a quick message. I reply to every inquiry within 24 hours—and yes, simple advice is always free.

100% Privacy. No spam, just solutions.

Newsletter

Join the community

Subscribe to our newsletter for the latest news and updates

LogoSu Jiang

AI Developer · Writer · Investor | Exploring AI Applications

TwitterX (Twitter)Email

WeChat: iamsujiang

WeChat QR Code
Scan to add WeChat
Product
  • Features
  • Pricing
  • FAQ
Resources
  • Blog
  • Knowledge Base
Company
  • About Me
  • Contact
  • Waitlist
Legal
  • Cookie Policy
  • Privacy Policy
  • Terms of Service
© 2026 Su Jiang All Rights Reserved.