Claude Code Plugins

Community-maintained marketplace

Feedback

Create and use Claude Code slash commands - quick prompts, bash execution, file references

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name slash-commands
description Create and use Claude Code slash commands - quick prompts, bash execution, file references
allowed-tools Read, Write, Bash
user-invocable false

Slash Commands Reference

Create and use user-triggered prompts with /command-name syntax.

When to Use

  • "How do I create a slash command?"
  • "What slash commands are available?"
  • "Add bash to my command"
  • "Use file references in commands"
  • "Slash commands vs skills"

Built-in Commands

Command Purpose
/clear Clear conversation history
/compact Compact conversation with focus
/config Open settings interface
/cost Show token usage
/agents Manage sub-agents
/mcp Manage MCP servers
/memory Edit CLAUDE.md files
/model Select AI model
/review Request code review
/resume Resume session
/help Get usage help

Creating Commands

Project Commands

mkdir -p .claude/commands
cat > .claude/commands/optimize.md << 'EOF'
---
description: Analyze code for performance issues
---

Review this code for:
- Performance bottlenecks
- Memory leaks
- Caching opportunities
EOF

Personal Commands

mkdir -p ~/.claude/commands
cat > ~/.claude/commands/review.md << 'EOF'
---
description: Security-focused code review
---

Check for vulnerabilities:
- Input validation
- SQL injection
- XSS risks
EOF

Command File Format

---
description: Brief description for /help
allowed-tools: [Bash, Read, Write]  # Optional
argument-hint: "[file] [type]"       # Optional
---

Your markdown instructions here.
Use $1, $2 for arguments or $ARGUMENTS for all.

Bash Execution

Run bash before loading prompt with ! prefix:

---
allowed-tools: Bash(git:*), Bash(grep:*)
description: Git commit helper
---

Current status: !`git status`
Staged changes: !`git diff --staged`
Recent commits: !`git log --oneline -5`

Based on these changes, suggest a commit message.

Rules:

  • Must declare allowed-tools: Bash(...) in frontmatter
  • Use backticks: !`command`
  • Output is included in Claude's context

File References

Include files with @ prefix:

Review against @.claude/STYLE_GUIDE.md

Compare:
- @src/old.js
- @src/new.js

Refactor files matching @src/**/*.util.ts

Arguments

---
argument-hint: "[pr-number] [priority]"
---

Review PR #$1 with priority: $2

# Or use all arguments:
Fix issue #$ARGUMENTS

Usage:

/review-pr 456 high
# $1 = "456", $2 = "high"

Namespacing

Organize with subdirectories:

.claude/commands/
├── frontend/
│   └── component.md    → /component (project:frontend)
└── backend/
    └── endpoint.md     → /endpoint (project:backend)

MCP Slash Commands

MCP servers expose prompts as commands:

/mcp__github__list_prs
/mcp__github__pr_review 456
/mcp__jira__create_issue "Bug" high

Slash Commands vs Skills

Aspect Slash Commands Skills
Invocation Explicit: /command Auto-discovered
Files Single .md file Directory with SKILL.md
Use Case Quick prompts Complex workflows

Use slash commands for: Frequently typed prompts, simple templates Use skills for: Complex workflows, multiple files, auto-discovery

Example: Complete Git Commit Command

---
description: Generate semantic commit message
allowed-tools: Bash(git:*), Read
argument-hint: "[type]"
---

# Semantic Commit Generator

Staged files: !`git diff --name-only --cached`

Diff preview:
!`git diff --cached | head -100`

Generate a conventional commit message.
Type: $1 (feat/fix/docs/style/refactor/perf/test/chore)

Format: `<type>(<scope>): <subject>`

Usage: /commit feat