askill
creating-commands

creating-commandsSafety 100Repository

Creates new Claude Code slash commands following best practices. Guides through command structure, naming, arguments, and frontmatter. Use when user wants to create a command, build a slash command, or asks about command best practices.

151 stars
3k downloads
Updated 2/8/2026

Package Files

Loading files...
SKILL.md

Creating Commands

Guides creation of Claude Code slash commands using documented best practices.

Quick Start

For a new command:

  1. Ask user for command purpose and arguments needed
  2. Generate using appropriate template
  3. Validate against checklist

For reviewing existing command:

  1. Read command file
  2. Check against anti-patterns in reference.md
  3. Report issues with fixes

Workflow: Create New Command

Progress:
- [ ] Gather requirements (purpose, arguments, scope)
- [ ] Choose template (basic, with-args, workflow)
- [ ] Generate command file
- [ ] Validate against checklist

Step 1: Gather Requirements

Ask user with AskUserQuestion:

  • What should this command do? (purpose)
  • Does it need arguments? (none, single, multiple)
  • Project or personal? (scope)

Step 2: Choose Template

TypeTemplateWhen to Use
Basictemplates/basic.mdNo arguments, simple prompt
With Argstemplates/with-args.mdSingle or multiple arguments
Workflowtemplates/workflow.mdIntegrates with skills/agents

Step 3: Generate Command

Create in appropriate location:

  • .claude/commands/ - Project commands (git-tracked)
  • ~/.claude/commands/ - Personal commands (your machine only)

Step 4: Validate

Run through checklist before finishing:

Validation Checklist:
- [ ] Name: lowercase with hyphens only
- [ ] Name: descriptive, verb-noun format preferred
- [ ] Description: explains what command does
- [ ] Arguments: documented with argument-hint if used
- [ ] Prompt: clear, actionable instructions
- [ ] Tools: allowed-tools declared if needed

Naming Rules

Format: verb-noun or action (lowercase, hyphens)

  • fix-issue
  • review-pr
  • run-tests
  • optimize

Constraints:

  • Lowercase letters, numbers, hyphens only
  • No spaces or underscores
  • Keep concise (1-3 words)

Command File Format

---
description: Brief explanation shown in help
allowed-tools:
  - Bash(bash:*)
  - WebSearch
argument-hint: "param_name"
---

Your command prompt here.
Use $ARGUMENTS for all args or $1, $2 for positional.

Argument Syntax

SyntaxUsageExample
$ARGUMENTSAll arguments as one string/cmd foo barfoo bar
$1, $2Positional arguments/cmd foo bar$1=foo, $2=bar
@fileInclude file contentsReview @src/main.ts

Frontmatter Options

FieldPurposeRequired
descriptionShown in help, enables auto-invokeRecommended
allowed-toolsTools the command can useIf using tools
argument-hintDocuments expected argsIf has args
modelSpecific model to useOptional

Example: Basic Command

---
description: Run all tests and report failures
allowed-tools:
  - Bash(npm:*)
---

Run the test suite and summarize results:

1. Execute `npm test`
2. If failures, show failing tests with context
3. Suggest fixes for common issues

See reference.md for detailed best practices and anti-patterns.

Install

Download ZIP
Requires askill CLI v1.0+

AI Quality Score

95/100Analyzed 2/13/2026

A comprehensive and well-structured guide for creating Claude Code slash commands. It includes clear workflows, validation checklists, syntax references, and best practices, making it highly actionable for an agent to generate new commands reliably.

100
95
90
90
95

Metadata

Licenseunknown
Version-
Updated2/8/2026
Publisheraiskillstore

Tags

github-actionsllmpromptingtesting