Agent skill

Create Skill

by mp-web3 in mp-web3/claude-starter-kit

Walks through building a new Claude Code skill: asks what it should do, scaffolds it with an init script, writes SKILL.md and LEARNINGS.md and validates the result.

MITAuto-check: notesAgent Workflows

Install Create Skill

skills CLI
$ npx skills add mp-web3/claude-starter-kit --skill create-skill -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install mp-web3/claude-starter-kit create-skill --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/mp-web3/claude-starter-kit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/create-skill .claude/skills/create-skill && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
create-skill
GitHub stars
109
Token cost
~985 tokens
SKILL.md length
392 words
Files
4 (incl. scripts)
Skills in repo
6
Repo updated
First seen
Licence
MIT

At a glance

Walks through building a new Claude Code skill: asks what it should do, scaffolds it with an init script, writes SKILL.md and LEARNINGS.md and validates the result.

  • Works in 7 steps: Understand → Scaffold → Write SKILL.md → …
  • Creating a new slash-command skill for Claude Code
  • SKILL.md covers Process and Rules
  • Runs Python scripts from its folder; calls python3

What it does

The skill starts by reading its own LEARNINGS.md, then takes a name and description from the arguments or asks three short questions in one message: what the skill does, when it should trigger and what resources it needs. It scaffolds with init_skill.py, which creates the directory under .claude/skills by default.

SKILL.md rules are spelled out: required frontmatter with a kebab-case name of at most 64 characters and a description that tells Claude when to activate; optional allowed-tools, argument-hint, fork and disable-model-invocation fields; an imperative body that begins by reading LEARNINGS.md, uses an arguments placeholder for user input and stays under 500 lines, with longer material split into references. An empty LEARNINGS.md is started so lessons accumulate, scripts hold deterministic work, references hold on-demand docs, and validate_skill.py checks the result.

When your agent uses it

  • Creating a new slash-command skill for Claude Code
  • Scaffolding a skill folder with scripts and references
  • Writing a SKILL.md with correct frontmatter
  • Validating a freshly written skill

Example prompts

  • “Create a skill called changelog-writer that drafts release notes from merged PRs.”
  • “Add a skill for reviewing database migrations that triggers when I mention a migration file.”
  • “Scaffold a new skill with a script that checks my docs for broken links.”

Requirements

  • Python 3, for init_skill.py and validate_skill.py
  • Pre-approved tools (allowed-tools): Read, Write, Edit, Bash, Glob, Grep, AskUserQuestion

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Understand
  2. Scaffold
  3. Write SKILL.md
  4. Write LEARNINGS.md
  5. Write Supporting Files (if needed)
  6. Validate
  7. Update Index

What it can do on your machine

Read from SKILL.md and the folder at commit 546c72c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Edit
    • Bash
    • Glob
    • Grep
    • AskUserQuestion

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 2 files in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Create Skill loads about 985 tokens when it runs. Until then it costs about 59 tokens; SKILL.md has 392 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~59
When it runs · the whole SKILL.md, loaded when a task matches
~985

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Read, Write, Edit, Bash, Glob, Grep, AskUserQuestion

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from mp-web3/claude-starter-kit at commit 546c72c, republished under its MIT licence (© mp-web3). 392 words, ~985 tokens.

Download SKILL.mdSave it as .claude/skills/create-skill/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
create-skill
description
Create a new Claude Code skill. Use when the user wants to build a new slash-command skill, extend Claude with a specialized workflow, or asks to create/add a skill. Handles scaffolding, SKILL.md authoring, and validation.
allowed-tools
Read, Write, Edit, Bash, Glob, Grep, AskUserQuestion
argument-hint
[skill-name] [--description 'what it does']

/create-skill — Skill Builder

First: Read LEARNINGS.md in this skill's directory.

Arguments: $ARGUMENTS

Process

Step 1: Understand

If $ARGUMENTS provides a skill name and description, proceed. Otherwise ask:

  1. What should this skill do? (one sentence)
  2. When should it trigger? (what would the user say/do?)
  3. What resources does it need? (scripts, reference docs, templates?)

Keep questions to one message. Don't over-interview.

Step 2: Scaffold

Run the init script:

bash
python3 .claude/skills/create-skill/scripts/init_skill.py <skill-name> --path .claude/skills

This creates the directory with template files. If --path is omitted, defaults to .claude/skills in the current workspace.

Step 3: Write SKILL.md

Replace the template content. Follow these rules:

Frontmatter (required):

  • name: kebab-case, max 64 chars. Becomes the /slash-command.
  • description: Comprehensive. This is how Claude decides when to activate. Include trigger phrases, contexts, use cases.

Frontmatter (optional, add only when needed):

  • allowed-tools: Restrict tool access (e.g., Read, Grep, Glob, Bash)
  • argument-hint: Autocomplete hint (e.g., [filename], [--dry-run])
  • fork: true: Run as sub-agent (use for data-heavy skills that would bloat main context)
  • disable-model-invocation: true: Manual /name only, no auto-trigger

Body rules:

  • Start with "Read LEARNINGS.md" instruction
  • Use $ARGUMENTS placeholder for user input
  • Imperative form ("Run the script", not "You should run the script")
  • Keep under 500 lines. Split longer content into references/ files.
  • Reference bundled resources with relative paths + describe when to read them
  • Match freedom to fragility: exact scripts for brittle ops, text guidance for flexible tasks

Body structure (adapt as needed):

markdown
# /name -- One-Line Summary

**First:** Read `LEARNINGS.md` in this skill's directory.
**Arguments:** `$ARGUMENTS`

## Step 1: [Name]
[What to do, expected outcome]

## Step 2: [Name]
[What to do, expected outcome]

## Rules
[Constraints, gotchas, things to never do]
Show full SKILL.md (162 more words)Show less
Step 4: Write LEARNINGS.md

Start with an empty learnings file. It will accumulate as the skill runs.

markdown
# <Skill Name> - Learnings

<!-- Lessons learned from running this skill. Read at start of every invocation. -->
Step 5: Write Supporting Files (if needed)
  • scripts/ — For operations that need deterministic reliability or get rewritten repeatedly. Python preferred.
  • references/ — On-demand docs SKILL.md tells Claude when to read. For detailed workflows, schemas, examples that would bloat SKILL.md.
  • assets/ — Templates, images, boilerplate used in output (not loaded into context).

Delete any empty dirs the init script created that aren't needed.

Step 6: Validate

Check the result:

bash
python3 .claude/skills/create-skill/scripts/validate_skill.py .claude/skills/<skill-name>

Fix any issues reported.

Step 7: Update Index

Add the new skill to the CLAUDE.md Available Skills section.

Rules

  • One skill = one concern. Don't bundle unrelated workflows.
  • Description is the trigger — if it's vague, the skill won't activate when needed.
  • SKILL.md is for another Claude instance. Include what's non-obvious, skip what any model already knows.
  • No hardcoded absolute paths except ~/claude-assistant/ and ~/. Use relative paths within the skill dir.
  • Test the skill by running it once before reporting done.

© mp-web3, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (scripts) in skills/create-skill of mp-web3/claude-starter-kit.

  • SKILL.md
  • LEARNINGS.md
  • scripts/init_skill.py
  • scripts/validate_skill.py

Open the folder on GitHubat commit 546c72c

Compare with similar skills

Create Skill next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Create Skill compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Create Skill this skillmp-web3/claude-starter-kit109—~985Automated safety check: NotesMIT
Claude Code Plugin Structureanthropics/claude-plugins-official37k10 repos~3.4kAutomated safety check: PassApache-2.0
Skill Creatorluongnv89/asm953—~5.3kAutomated safety check: PassMIT
Skill ForgeAgriciDaniel/skill-forge177—~1.9kAutomated safety check: NotesMIT
Skill Forge BuildAgriciDaniel/skill-forge177—~1.3kAutomated safety check: PassMIT
Sciagent Skill Creatorjaechang-hits/SciAgent-Skills370—~2.3kAutomated safety check: PassCustom licence

Similar skills

  • Claude Code Plugin Structure

    anthropics/claude-plugins-official

    Official

    Explains the directory layout, plugin.json manifest and component organization of a Claude Code plugin, including auto-discovery and portable paths.

    37k GitHub starsUsed in 10 repos~3.4k tokens
    Agent WorkflowsAuto-check passed
  • Skill Creator

    luongnv89/asm

    Create a skill or bring an existing one up to the same standard (validate + asm eval fix loop); run evals, tune triggering.

    953 GitHub stars~5.3k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Skill Forge

    AgriciDaniel/skill-forge

    Ultimate Claude Code skill creator and architect. An agent skill from AgriciDaniel/skill-forge.

    177 GitHub stars~1.9k tokensUpdated 5 mo ago
    Agent WorkflowsAuto-check: notes
  • Skill Forge Build

    AgriciDaniel/skill-forge

    Scaffold and build Claude Code skills from plans or descriptions.

    177 GitHub stars~1.3k tokensUpdated 5 mo ago
    Agent WorkflowsAuto-check passed
  • Sciagent Skill Creator

    jaechang-hits/SciAgent-Skills

    Scaffold a new SciAgent-Skills entry. An agent skill from jaechang-hits/SciAgent-Skills.

    370 GitHub stars~2.3k tokensUpdated 8 days ago
    Agent WorkflowsAuto-check passed
  • Author skills for aster (and Claude Code): SKILL.md format, frontmatter rules, name/description validation limits, folder layout, scaffolding with aster skills init, and local testing with aster…

    111 GitHub stars~769 tokensUpdated yesterday
    Agent WorkflowsAuto-check passed

More from mp-web3/claude-starter-kit

  • Claude Project Bootstrap

    mp-web3/claude-starter-kit

    Sets up a project for Claude Code by surveying it and writing a .claude folder with a short CLAUDE.md, a CODEBASE.md overview, module docs and optional skills and hooks.

    109 GitHub stars~1.9k tokensUpdated 6 mo ago
    Auto-check: notes
  • Personal Assistant Onboarding

    mp-web3/claude-starter-kit

    Walks a new user through a five-step first session, profile, problems, goals and initial tasks, to turn the agent into a personal assistant that remembers them.

    109 GitHub stars~2.7k tokensUpdated 6 mo ago
    Auto-check: notes
  • Plan and Implement Workflow

    mp-web3/claude-starter-kit

    Runs new features, scripts and structural changes through explore, design, approval, implementation and verification phases, with a tool search and an explicit plan sign-off.

    109 GitHub stars~913 tokensUpdated 6 mo ago
    Auto-check: notes
  • Session Reflection Learnings

    mp-web3/claude-starter-kit

    Analyzes recent sessions for corrections, preferences and implicit feedback, then routes the real learnings to the right knowledge or rules file.

    109 GitHub stars~1.8k tokensUpdated 6 mo ago
    Auto-check: notes
  • Task Backlog Manager

    mp-web3/claude-starter-kit

    Keeps a personal task backlog in SQLite behind a /tasks command that adds, reviews, completes and measures tasks against a list of long-term problems.

    109 GitHub stars~1.2k tokensUpdated 6 mo ago
    Auto-check: notes

Categories

Questions about Create Skill

What does Create Skill do?

Walks through building a new Claude Code skill: asks what it should do, scaffolds it with an init script, writes SKILL.md and LEARNINGS.md and validates the result. md, then takes a name and description from the arguments or asks three short questions in one message: what the skill does, when it should trigger and what resources it needs.claude/skills by default.

When should I use Create Skill?

Create Skill fits situations like: creating a new slash-command skill for Claude Code; scaffolding a skill folder with scripts and references; writing a SKILL.md with correct frontmatter; validating a freshly written skill.

How do I install Create Skill in Claude Code?

Run `npx skills add mp-web3/claude-starter-kit --skill create-skill -a claude-code`. Or copy the skill folder (skills/create-skill in mp-web3/claude-starter-kit) into .claude/skills/create-skill in your project. Claude Code loads it when a task matches its description.

How do I install Create Skill in Codex?

Run `npx skills add mp-web3/claude-starter-kit --skill create-skill -a codex`. Or copy the skill folder (skills/create-skill in mp-web3/claude-starter-kit) into .agents/skills/create-skill in your project. Codex loads it when a task matches its description.

Can I use Create Skill in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mp-web3/claude-starter-kit --skill create-skill -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/create-skill, .gemini/skills/create-skill, .github/skills/create-skill and .opencode/skills/create-skill in your project.

What does Create Skill need to run?

Going by SKILL.md and its folder, Create Skill needs Python for the scripts in its folder and the command-line tools its instructions call (python3). Our summary lists: Python 3, for init_skill.py and validate_skill.py. Its frontmatter pre-approves these tools: Read, Write, Edit, Bash, Glob, Grep, AskUserQuestion.

Does Create Skill access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Create Skill safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Create Skill use?

Create Skill is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Create Skill use?

About 985 tokens (SKILL.md is roughly 3.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Create Skill?

Skills that share tags, products or a category with Create Skill: Claude Code Plugin Structure (anthropics/claude-plugins-official, 37k stars), Skill Creator (luongnv89/asm, 953 stars), Skill Forge (AgriciDaniel/skill-forge, 177 stars) and Skill Forge Build (AgriciDaniel/skill-forge, 177 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Create Skill?

mp-web3 (a GitHub user) maintains it in mp-web3/claude-starter-kit, which has 109 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on March 18, 2026.

Source: mp-web3/claude-starter-kit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.