Skip to content

claude-command-name-format

Command Name section should be 'plugin-name:command-name'

Formerly known as command-name-format. The legacy name still works in configs, --rule/--skip-rule, suppression comments, and baselines.

Severity warning (disabled)
Autofix -
Since v0.1.0
Category Claude Code

Why

The Name section in a command file tells users and tools the command's fully qualified identifier. It must follow the plugin-name:command-name format so the runtime can route invocations correctly.

Examples

Bad (in plugin my-plugin, file deploy.md):

## Name

deploy

Good:

## Name

my-plugin:deploy

How to fix

Update the Name section to include the plugin name prefix followed by a colon and the command name: plugin-name:command-name.

Codex plugins

This is a Claude-format convention. A directory claimed only by OpenAI Codex — a .codex-plugin/plugin.json, or a local-source listing in a Codex catalog, with no .claude-plugin marker or Claude marketplace listing — is exempt: Claude never loads it, so the plugin:command Name-section format does not apply to its commands/. A dual-manifest directory keeps this check, and the ecosystem-neutral content and security rules read every plugin's files regardless of provenance.

Configuration

rules:
  claude-command-name-format:
    enabled: false  # true | false | auto
    severity: warning

Run skillsaw explain claude-command-name-format to see this documentation and the rule's effective configuration in your terminal.