Claude Code glossary
Slash command
A slash command is what you type to invoke a skill directly, like /skill-name.
Also called: slash commands, custom command, /skill-name, claude commands
A slash command is what you type to invoke a skill directly: /skill-name.
Custom commands have been merged into skills. A file at .claude/commands/deploy.md and a skill at .claude/skills/deploy/SKILL.md both create /deploy and function identically. Existing .claude/commands/ files continue to operate and support the same frontmatter.
However, skills are now recommended. They provide a dedicated directory for supporting files, offer invocation-control frontmatter, and enable automatic loading. If a skill and a command share the same name, the skill takes precedence.
The command name is derived from the file's location, not its frontmatter name field. A directory under ~/.claude/skills/ or .claude/skills/ results in a command named / followed by the directory name (e.g., .claude/skills/deploy-staging/ becomes /deploy-staging). Skills within a plugin's skills/ subdirectory are namespaced by the plugin name (e.g., my-plugin/skills/review/ becomes /my-plugin:review). Nested .claude/skills/ directories that clash with other skill names are disambiguated by their path (e.g., apps/web/.claude/skills/deploy/ becomes /apps/web:deploy).
Claude Code can execute the first invoked skill, followed by up to five additional stacked skills. Built-in commands such as /help and /compact are distinct from user-defined skills. Some built-in commands, like /init, /review, and /security-review, are also accessible via the Skill Creator tool, which helps build and manage other agent-skill definitions, often written in skill-md format. User-invocable commands can be managed using disable-model-invocation settings.