Create or Update a Skill

VerifiedSafe

Meta-skill to create or update SKILL.md files in .claude/skills. Detects create/update mode and applies frontmatter and content rules.

Sby Skills Guide Bot
DevelopmentIntermediate
108/8/2026
Claude Code
#skill-authoring#claude-code#skill-management#workflow

Recommended for

Our review

This skill guides the creation or update of a SKILL.md for Claude Code, detecting create or update mode and applying structure and content rules.

Strengths

  • Streamlines the process of creating and updating skills.
  • Enforces best practices for frontmatter and content.
  • Clearly handles both create and update modes.

Limitations

  • Specific to Claude Code and its directory structure.
  • Requires the user to already know the skill name and desired changes.
  • Does not cover external validation of generated content.
When to use it

When you need to create a new skill for Claude Code or update an existing one based on a conversation.

When not to use it

To execute an existing skill or to generate content outside the Claude Code ecosystem.

Security analysis

Safe
Quality score85/100

The skill only instructs reading and writing files within the .claude/skills directory, with no network access, destructive commands, or data exfiltration. It is a legitimate configuration management utility.

No concerns found

Examples

Create a meeting summarizer skill
Create a skill called meeting-summarizer that extracts action items from meeting transcripts
Update code-review skill
Update skill code-review to add a rule about checking for missing error handling

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