Skip to main content
A command is a markdown file defining a user-invokable workflow. Commands are the action layer of a facet — they define what happens when the user triggers a specific task. Each command lives at commands/<name>.md and is declared in facet.json under the commands map. The normative rules — placement, descriptor shape, and the YAML front-matter contract — live at Text assets in the manifest specification.

Example

The file content is the command’s prompt — the instructions that run when the user invokes the command:
When an adapter supports slash commands (e.g., Claude Code’s custom commands), the command content defines what happens when the user invokes it.

When to use commands

Commands define what the user can trigger — a specific workflow or action. Use commands for:
  • Code review workflows
  • Deployment checklists
  • Refactoring tasks
  • Report generation
  • Test scaffolding
Use skills when you need passive knowledge the assistant should always have. Use agents when you need a persona with specific behavior.

Further reading