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
- 01Gather name and intended behavior
- 02Read repository skill guidelines
- 03Create the required skill structure
- 04Sync public skills to Claude
- 05Validate with pnpm skills:check
Use cases
- 01Start a private repository skill
- 02Prepare a skill for public sharing
- 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-skillAfter installing, type/create-skillin Claude Code to confirm it loaded.
Details
From the project READMECreate 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:
- Skill name: What should the skill be called? (lowercase, digits, hyphens only, e.g.,
gh-create-pr,prepare-release) - Description: What should this skill do? Include specific trigger contexts (e.g., "Use when user asks to create PRs")
- Is this a public skill?: Should it be synced to
.claude/skills/for shared use? (default: no, private only) - 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:
- Add the skill name to
.agents/skills/public-skills.txt(one per line, no inline comments) - 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
| Type | Location | Sync | Requires |
|---|---|---|---|
| Private | .agents/skills/ | No | Just create the folder |
| Public | Both | Yes | Add 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:checkbefore completing - Public skills require both adding to
public-skills.txtAND runningpnpm 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.