mcpField
C
create-skill

create-skill

github.com/cherryhqAgent workflows53.2k100 installsUpdated today
Repository

About create-skill

A repository workflow skill for creating a new skill under `.agents/skills/`. It guides intent gathering, structure, optional public syncing, and validation with the repository's commands.

Key features

  1. 01Gather name and intended behavior
  2. 02Read repository skill guidelines
  3. 03Create the required skill structure
  4. 04Sync public skills to Claude
  5. 05Validate with pnpm skills:check

Use cases

  1. 01Start a private repository skill
  2. 02Prepare a skill for public sharing
  3. 03Check a new skill against repository rules

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/cherryhq/cherry-studio --skill create-skill

After installing, type/create-skillin Claude Code to confirm it loaded.

Details

From the project README

Create Skill

Create a new skill in .agents/skills/<skill-name>/ following the workflow defined in .agents/skills/README.md.

Workflow

Step 1: Gather Intent

Before creating anything, ask the user:

  1. Skill name: What should the skill be called? (lowercase, digits, hyphens only, e.g., gh-create-pr, prepare-release)
  2. Description: What should this skill do? Include specific trigger contexts (e.g., "Use when user asks to create PRs")
  3. Is this a public skill?: Should it be synced to .claude/skills/ for shared use? (default: no, private only)
  4. Test cases (optional): Does the user want to set up evals for this skill?

If the user provides partial info (e.g., just a name), proceed with reasonable defaults and ask to confirm.

Step 2: Read Guidelines

Always read .agents/skills/README.md before creating a new skill to ensure compliance with the current workflow.

Step 3: Create Skill Structure

Create the following directory structure:

.agents/skills/<skill-name>/
└── SKILL.md

SKILL.md template:

---
name: <skill-name>
description: <description>
---

# <Skill Name>

[Instructions for the skill]

Frontmatter fields:

  • name: Skill identifier (lowercase, digits, hyphens)
  • description: When to trigger (what the skill does + specific contexts)
Step 4: Sync (if public)

If the user wants a public skill, before validation:

  1. Add the skill name to .agents/skills/public-skills.txt (one per line, no inline comments)
  2. Run sync:
    pnpm skills:sync
    

This creates a symlink at .claude/skills/<skill-name>/ pointing to .agents/skills/<skill-name>/.

Note: pnpm skills:check primarily validates public skills (those in public-skills.txt) and also verifies related governance files, so you must sync first before validating.

Step 5: Validate

Run the validation command:

pnpm skills:check

If there are issues, fix them and re-run.

Step 6: Summary

Present the user with:

  • Created files
  • Validation result
  • Next steps (how to use the skill)

Naming Rules

  • Use lowercase letters, digits, and hyphens only
  • Prefer short, action-oriented names (e.g., gh-create-pr)

Public vs Private Skills

TypeLocationSyncRequires
Private.agents/skills/NoJust create the folder
PublicBothYesAdd to public-skills.txt + run pnpm skills:sync

Commands Reference

# Validate skill structure
pnpm skills:check

# Sync public skills to Claude
pnpm skills:sync

Constraints

  • Never create skills outside .agents/skills/<skill-name>/
  • Always run pnpm skills:check before completing
  • Public skills require both adding to public-skills.txt AND running pnpm skills:sync
  • If the skill-creator skill is available, you may use it for advanced skill development (evals, iterations), but this skill handles the basic creation workflow.

Comments

Markdown supported