Create or update a skill

VerifiedSafe

Guide for creating or updating Claude Code skills, with frontmatter and content rules.

Sby Skills Guide Bot
DevelopmentIntermediate
207/31/2026
Claude Code
#skill-authoring#claude-code#skill-creation#frontmatter

Recommended for

Our review

Creates or updates a Claude Code skill (SKILL.md) from the current conversation, with frontmatter and content rules.

Strengths

  • Automates the repetitive setup of frontmatter and file structure.
  • Enforces best practices like keeping skills under 500 lines.
  • Handles both creation and updates without touching unrelated rules.

Limitations

  • Only works for Claude Code's skill format, not other platforms.
  • Requires a precise skill name and may need manual review.
  • Does not generate the actual skill content, just the file structure.
When to use it

When you need to add a new reusable instruction set or modify an existing SKILL.md file in a Claude Code project.

When not to use it

When the change is a small one-off instruction not worth persisting as a skill.

Security analysis

Safe
Quality score85/100

The skill only creates directories and writes files within the .claude/skills/ path, using mkdir and file write. No network access, shell execution, or destructive operations are involved.

No concerns found

Examples

Create a commit style skill
Create skill 'git-commit-style' with conventions for commit messages.
Update a deployment checklist
Update skill 'deploy-checklist' to add a step about rolling back on failure.
Create a design system skill
Create skill 'design-system' for the design tokens and component patterns, scoped to the design system package.

Create or update a skill based on the current conversation.

The first word of $ARGUMENTS is the skill name (kebab-case). The rest is an optional note about what to add or change.


Step 1 — Detect mode

Check whether .claude/skills/$0/SKILL.md already exists.

  • Existsupdate mode: read the current file, then go to Step 3.
  • Does not existcreate mode: go to Step 2.

Step 2 — Determine frontmatter (create only)

Decide the correct frontmatter based on what the skill does:

description — one sentence: what the skill does + when Claude should auto-load it. Put the key trigger phrase first (budget is 1,536 chars).

paths — set only if the skill is scoped to specific files. Use glob patterns:

  • Design system / theme work → @soroush.tech/design-system/**
  • All TypeScript → **/*.ts,**/*.tsx
  • Omit for project-wide knowledge

argument-hint — short label shown in autocomplete, e.g. [filename] or [component-name].

disable-model-invocation: true — add only if this is a manual workflow with side effects (deploy, commit, send). Reference knowledge should NOT have this.

user-invocable: false — add only if users should never call it directly (pure background context).


Step 3 — Write content

Rules for skill content:

  • Reference skills (conventions, patterns, style guides): state the rule + one ✗/✓ code pair. No prose explaining why — the example shows it.
  • Task skills (step-by-step actions): numbered steps, imperative verbs, no explanation.
  • Keep SKILL.md under 500 lines.
  • Every line is a recurring token cost — cut anything that doesn't change Claude's behavior.
  • End with: If $ARGUMENTS names a file, read it and apply the rules. Otherwise apply to the code being discussed. (for reference skills only).

Update mode: add the new rule or change to the appropriate section. Do not touch unrelated rules. Remove any rule made obsolete by the change.


Step 4 — Write the file

For create: run mkdir -p .claude/skills/$0 then write .claude/skills/$0/SKILL.md.

For update: write the updated .claude/skills/$0/SKILL.md.

Confirm what was created or changed. If a new paths scope was set, mention which files will trigger it.

Related skills