Create or Update Skills

VerifiedCaution

Guides the creation or update of SKILL.md files for Claude Code, including frontmatter and content rules.

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

Recommended for

Our review

This skill creates or updates a SKILL.md file for Claude Code based on the current conversation.

Strengths

  • Automatically detects whether to create or update based on file existence.
  • Provides precise frontmatter guidelines (description, paths, argument-hint).
  • Clear content rules for reference or task skills.
  • Can scope the skill to specific files via glob patterns.

Limitations

  • Specific to Claude Code and its .claude/skills directory.
  • Does not provide full SKILL.md examples, only rules.
  • Output quality depends on the information given in the conversation.
When to use it

When you want to create or update a Claude Code skill based on a conversation.

When not to use it

When writing a standalone skill without conversation context, or for other AI assistants.

Security analysis

Caution
Quality score88/100

This skill uses filesystem operations to create or update skill files within a designated directory. While no destructive or exfiltration actions are present, the ability to write arbitrary skill content could indirectly introduce risk if arguments are untrusted. No network calls or privilege escalation are involved.

Findings
  • Skill performs file writes and directory creation, which could be exploited to inject malicious skill content if input is not sanitized.

Examples

Create a new skill
code-review-skill Create a skill that reviews pull requests for common issues.
Update an existing skill
design-tokens Add a rule for color palette usage.
Scope skill to files
testing-helpers Add a rule for jest mocks, and scope it to **/*.test.ts

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