bitovi/ai-enablement-prompts/claude

Claude Code and agent skill by bitovi/ai-enablement-prompts

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Use this skill when the user asks to "create a skill", "add a skill", "make a new skill", "build a skill", or wants to automate a repeated workflow into a reusable prompt. Guides creating a properly structured Claude Code skill.

Install

npx vskill@latest install bitovi/ai-enablement-prompts/claude

SKILL.md

Create Skill

Help the user create a new Claude Code skill in this project.

Step 1: Clarify the Skill's Purpose

Ask the user (or infer from context):

  • What task should the skill perform?
  • Is it reference content (conventions, patterns, domain knowledge that applies inline) or task content (step-by-step actions like deploy/commit/generate)?
  • Should Claude invoke it automatically, or only the user manually?
  • Are there specific trigger phrases or situations?

Step 2: Determine Placement

Project skills live at:

.claude/skills/<skill-name>/
├── SKILL.md # Main instructions (required)
├── references/ # background knowledge, specs, checklists
├── examples/ # example inputs/outputs
└── scripts/ # helper shell scripts

Step 3: Write the SKILL.md

Use this frontmatter template:

yaml
---
name: skill-name
description: Use this skill when the user asks to "...", mentions "...", or wants to "...". Include specific trigger phrases.
---
Complete Frontmatter Reference

All fields are optional. Only description is recommended.

FieldDescription
nameDisplay name / slash command. Lowercase letters, numbers, hyphens only (max 64 chars). Defaults to directory name.
descriptionWhat the skill does and when to use it. Claude uses this to decide when to auto-load. If omitted, uses first paragraph of content.
argument-hintHint shown during autocomplete (e.g., [issue-number] or [filename] [format]).
disable-model-invocationtrue prevents Claude from auto-loading. Use for side-effect workflows (/deploy, /send). Description is removed from context.
user-invocablefalse hides from / menu. Use for background knowledge. Description stays in context so Claude can auto-invoke.
allowed-toolsTools Claude can use without asking permission when skill is active (e.g., Read, Grep, Glob).
modelModel to use when this skill is active.
contextSet to fork to run in a forked subagent context (isolated, no conversation history).
agentSubagent type when context: fork is set. Options: Explore, Plan, general-purpose, or custom from .claude/agents/. Defaults to general-purpose.
hooksHooks scoped to this skill's lifecycle.
Invocation & Context Loading Matrix
ConfigurationUser can invoke?Claude can invoke?Context behavior
(default)YesYesDescription always in context; full skill loads when invoked
disable-model-invocation: trueYesNoDescription not in context; full skill loads when user invokes
user-invocable: falseNoYesDescription always in context; full skill loads when Claude invokes
Dynamic Context Injection

The !command`` syntax runs shell commands before the skill content is sent to Claude. The output replaces the placeholder — Claude only sees the result, not the command.

markdown
-Current branch: !`git branch --show-current`
-Staged files: !`git diff --name-only --cached`
Arguments & String Substitutions
SubstitutionDescription
$ARGUMENTSAll arguments passed when invoking. If not present in content, appended as ARGUMENTS: <value>.
$ARGUMENTS[N]Access a specific argument by 0-based index (e.g., $ARGUMENTS[0]).
$NShorthand for $ARGUMENTS[N] (e.g., $0, $1, $2).
${CLAUDE_SESSION_ID}Current session ID. Useful for logging or session-specific files.
${CLAUDE_SKILL_DIR}Directory containing this SKILL.md. Use to reference bundled scripts/files regardless of cwd.

Example with positional arguments:

markdown
---
name: migrate-component
description: Migrate a component from one framework to another
argument-hint: [component] [from-framework] [to-framework]
---
Migrate the $0 component from $1 to $2.
Preserve all existing behavior and tests.

Step 4: Write Effective Instructions

The body of SKILL.md is the prompt Claude follows. Best practices:

  • State the goal clearly at the top
  • Use numbered steps for sequential workflows
  • Reference supporting files with relative markdown links: [checklist.md](checklist.md)
  • Keep it focused — one skill per domain
  • Keep SKILL.md under 500 lines. Move detailed reference material to separate files.
  • Include "ultrathink" in skill content to enable extended thinking
  • For context: fork, the skill content becomes the subagent's prompt — must include an explicit task, not just guidelines
Add Supporting Files

Supporting files keep SKILL.md focused. Reference them so Claude knows when to load each:

markdown
## Additional resources
-For complete API details, see [reference.md](reference.md)
-For usage examples, see [examples.md](examples.md)

Step 5: Create the Files

Create .claude/skills/<skill-name>/SKILL.md with:

  1. Frontmatter with name and description
  2. Clear, step-by-step instructions
  3. Any supporting files the skill references

Step 6: Register in Project Memory

If a CLAUDE.md file exists at the project root, append the new skill to reinforce discoverability. Add a bullet with the skill name and short description to the skills list:

markdown
-**skill-name**: Short description of what the skill does

If no CLAUDE.md exists, skip this step — skills are still auto-discovered from .claude/skills/.

Confirm the skill was created and explain how to test it: the user can invoke it with /<skill-name> or describe the situation that should auto-trigger it.

Troubleshooting

  • Skill not triggering: Check description includes keywords users would naturally say. Verify with "What skills are available?" or invoke directly with /skill-name.
  • Skill triggers too often: Make description more specific, or add disable-model-invocation: true.
  • Claude doesn't see all skills: Skill descriptions share a context budget (2% of context window, fallback 16K chars). Run /context to check for warnings. Override with SLASH_COMMAND_TOOL_CHAR_BUDGET env var.
  • Permission control: Use Skill(name) for exact match or Skill(name *) for prefix match in permission rules. Deny all with Skill in deny rules.

Security

  • Security scanPassed, 95 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
112
Repository forks
61
7-day trend score
24

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/bitovi/ai-enablement-prompts/claude/badge)](https://verified-skill.com/skills/bitovi/ai-enablement-prompts/claude)

Something wrong with this skill or its page? Tell us.