- name
- create-skill
- description
- Create a new skill in the current repository. Use when the user wants to create/add a new skill, or mentions creating a skill from scratch. This skill follows the workflow defined in .agents/skills/README.md and helps scaffold, validate, and sync new skills.
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:
- 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: primarily validates public skills (those in ) and also verifies related governance files, so you must sync first before validating.