command-development

Create Claude Code slash commands with frontmatter, arguments, and bash execution.

2|Updated Feb 14, 2026
One-click install
npx skills add https://github.com/Gamaroff/agent-skills --skill command-development-gamaroff
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: command-development
Source: https://github.com/Gamaroff/agent-skills/tree/main/skills/command-development
Command: npx skills add https://github.com/Gamaroff/agent-skills --skill command-development-gamaroff

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Writing Claude Code slash commands requires knowing the Markdown file format, YAML frontmatter fields, dynamic argument syntax, and plugin-specific conventions, which are easy to get wrong without structured guidance. ## Core Features & Use Cases - Command Format Guidance: Covers Markdown command structure, YAML frontmatter fields (description, allowed-tools, model, argument-hint, disable-model-invocation), and file locations for project, personal, and plugin commands. - Dynamic Features: Explains $ARGUMENTS and positional arguments, @ file references, inline bash execution, and AskUserQuestion-based interactive commands. - Plugin Integration: Documents ${CLAUDE_PLUGIN_ROOT} usage, plugin command discovery, and coordination with plugin agents, skills, and hooks. - Use Case: When you ask to create a /review-pr command that accepts a PR number, runs git checks, and restricts tools to Bash(git:*), this Skill provides the exact frontmatter and prompt structure to produce a working command. ## Quick Start Ask the agent to create a slash command that reviews a pull request by number with restricted git tool access.

Frequently Asked Questions about command-development

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a slash command in Claude Code?▼

Create a Markdown file in .claude/commands/ for project commands or ~/.claude/commands/ for personal commands. The file content becomes Claude's instructions when invoked, and optional YAML frontmatter configures description, tools, and model.

How to use arguments in Claude Code slash commands?▼

Use $ARGUMENTS to capture all arguments as one string, or $1, $2, $3 for positional arguments. Document expected arguments with the argument-hint frontmatter field so users see them in autocomplete.

What frontmatter fields does a slash command support?▼

Slash commands support description, allowed-tools, model, argument-hint, and disable-model-invocation. All fields are optional, and commands work without any frontmatter using the first line as the description.

Can slash commands run bash commands or read files?▼

Yes, commands execute bash inline with backtick syntax to gather context like git status, and reference files with @path syntax to include their contents. Bash execution requires the appropriate allowed-tools entry such as Bash(git:*).

Why is my slash command not appearing in Claude Code?▼

Check that the file is in the correct commands directory, has a .md extension, and contains valid Markdown. Restart Claude Code after adding the file so it can be discovered.

When should I use AskUserQuestion instead of command arguments?▼

Use AskUserQuestion for multiple-choice decisions needing explanation, multi-select scenarios, or preference gathering. Use plain arguments for simple known values like file paths, numbers, and names that should stay scriptable.