microsoft/creating-skills
Use when you need to create a new custom skill for a profile - guides through gathering requirements, creating directory structure, writing SKILL.md, and optionally adding bundled scripts
npx skills add https://github.com/microsoft/FluidFramework --skill creating-skills
<required>
*CRITICAL* Add the following steps to your Todo list using TodoWrite:
</required>
This skill guides you through creating custom skills that persist across sessions. Skills are stored in profile directories and can include markdown instructions, checklists, and optional bundled scripts.
Every skill must start with a required checklist block:
<required>
*CRITICAL* Add the following steps to your Todo list using TodoWrite:
1. <step 1>
2. <step 2>
...
</required>
This is the *most important* part of a skill.
Each step may have guidelines underneath. For example:
1. Create a directory.
Use `mkdir foo/bar`
2. Make a file.
...
Skills may be bundled with scripts. Scripts are simple code cli tools that do various things deterministically.
Any scripts you write should be entirely self contained. Ask the user which
language they prefer.
The scripts should be callable from the Bash tool.
The script should be stored in the same place as the skill. Add a section to the
SKILL.md on how to use the script. If the script is required to be called, add
that instruction to the <required> block.
Document which tools are necessary for the skill.
The SKILL should explicitly encourage writing code. The agent should be told to write code to call a tool any time the agent needs to call any tools more than once. The agent should write code instead of calling tools itself.
Steps that reference tools and APIs should inline them in the step by step process.
<good-example>
<system-reminder> Auth credentials can be found at /home/foobar/authentication/auth.txt
</good-example>
<bad-example>
Tools: Slack, Gmail API
</bad-example>
<good-example>
Read https://raw.githubusercontent.com/tilework-tech/nori-skillsets/96012bcfcd9482b248debed7b9a7fc7c345f76e1/src/cli/features/claude-code/profiles/config/amol/skills/finishing-a-development-branch/SKILL.md
</good-example>
<good-example>
Read https://raw.githubusercontent.com/tilework-tech/nori-skillsets/96012bcfcd9482b248debed7b9a7fc7c345f76e1/src/cli/features/claude-code/profiles/config/amol/skills/webapp-testing/SKILL.md
</good-example>
Take microsoft/creating-skills from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.