AgentSkillsCN

command-creator

指导用户创建 Claude Code 斜杠命令。当用户希望为 Claude Code 创建新的斜杠命令、自定义提示词快捷方式,或自动化工作流程命令时,可使用此指南。帮助用户明确命令结构、前言部分、参数设置,以及最佳实践。

SKILL.md
--- frontmatter
name: command-creator
description: Guide for creating Claude Code slash commands. Use when the user wants to create a new slash command, custom prompt shortcut, or workflow automation command for Claude Code. Helps define command structure, frontmatter, arguments, and best practices.

Command Creator

Create effective Claude Code slash commands.

⚠️ IMPORTANT: Before creating any command, fetch the latest official guide: https://code.claude.com/docs/en/slash-commands#custom-slash-commands

If any guidance in this skill conflicts with the official documentation, follow the official guide unless the user explicitly requests otherwise.

About Slash Commands

Slash commands are Markdown files that provide reusable prompts triggered by /command-name. They transform frequently-used prompts into quick shortcuts.

Key Characteristics

  • Single .md file - Simple and self-contained
  • Triggered explicitly - User types /command-name
  • Supports arguments - $ARGUMENTS, $1, $2, etc.
  • Supports special syntax - !command for bash output, @file for file content

When to Create a Command vs Skill

Use CaseSolution
Frequently-used promptSlash Command
Multi-step workflow with resourcesSkill
Quick automation triggerSlash Command
Complex domain expertiseSkill

Command Creation Process

Step 1: Understand the Command Purpose

Gather requirements:

  1. What task does the command automate?
  2. What arguments does it need?
  3. What tools should it have access to?
  4. Should it be project-specific or global?

Step 2: Determine Location

ScopeLocation
Project (team-shared).claude/commands/
Personal (all projects)~/.claude/commands/

Use subdirectories for namespacing: .claude/commands/frontend/component.md becomes /frontend/component

Step 3: Write the Command

File Structure:

markdown
---
description: Brief description shown in /help
argument-hint: <arg1> [optional-arg]
allowed-tools: Tool1, Tool2(pattern:*)
model: claude-3-5-haiku-20241022
---

Your prompt content here.

Use $ARGUMENTS for all arguments.
Use $1, $2 for positional arguments.

Frontmatter Fields (all optional):

FieldPurpose
descriptionShown in /help output
argument-hintPlaceholder shown during autocomplete
allowed-toolsTools the command can use without prompting
modelOverride default model for this command

See references/format.md for detailed syntax.

Step 4: Test and Iterate

  1. Run the command with various inputs
  2. Verify tool permissions work as expected
  3. Check edge cases and error handling
  4. Refine the prompt based on results

Best Practices

Keep commands focused - One command, one purpose. Combine with other commands for complex workflows.

Use clear descriptions - Help users understand what the command does from /help.

Specify minimal permissions - Only request tools the command actually needs.

Handle missing arguments - Provide sensible defaults or clear error messages.

Prefer imperative voice - "Analyze the code" not "This command analyzes the code".