Commands Comparison
Commands are user-invokable shortcuts (like slash commands). Only some providers support them, and frontmatter fields differ substantially.
Format and Install Method
Section titled “Format and Install Method”How each provider stores and installs commands.
| Provider | Format | Install Method | Symlink |
|---|---|---|---|
| Claude Code | Markdown | Symlink | Yes |
| Gemini CLI | Markdown | Symlink | Yes |
| Windsurf | Markdown | Symlink | Yes |
| Codex | Markdown | Symlink | Yes |
| Copilot CLI | Markdown | Symlink | Yes |
| Cline | Markdown | Symlink | Yes |
| Roo Code | Markdown | Symlink | Yes |
| OpenCode | Markdown | Symlink | Yes |
| Factory Droid | Markdown | Symlink | Yes |
| Pi | Markdown | Symlink | Yes |
Discovery Paths
Section titled “Discovery Paths”Where each provider looks for commands files. Paths with ~/ are relative to the user’s home directory; others are relative to the project root.
| Provider | Discovery Paths | Global Install Path |
|---|---|---|
| Claude Code | .claude/commands | ~/.claude/commands |
| Gemini CLI | .gemini/commands | ~/.gemini/commands |
| Windsurf | .windsurf/workflows, ~/.codeium/windsurf/global_workflows | ~/.codeium/windsurf/global_workflows |
| Codex | .codex/commands | ~/.codex |
| Copilot CLI | .copilot/commands | ~/.copilot/commands |
| Cline | .clinerules/workflows, ~/Documents/Cline/Workflows | ~/Documents/Cline/Workflows |
| Roo Code | .roo/commands, ~/.roo/commands | ~/.roo/commands |
| OpenCode | .opencode/commands | ~/.config/opencode/commands |
| Factory Droid | .factory/commands | ~/.factory/commands |
| Pi | .pi/prompts | ~/.pi/agent/prompts |
Frontmatter Fields
Section titled “Frontmatter Fields”Which frontmatter fields each provider recognizes in commands files. A checkmark means the provider parses and uses that field during conversion.
| Field | Claude Code | Gemini CLI | Windsurf | Codex | Copilot CLI | Cline | Roo Code | OpenCode | Factory Droid | Pi |
|---|---|---|---|---|---|---|---|---|---|---|
agent | ✓ | — | — | — | ✓ | — | — | ✓ | — | — |
allowed-tools | ✓ | — | — | — | — | — | — | — | — | — |
argument-hint | ✓ | — | — | ✓ | ✓ | — | — | — | — | — |
context | ✓ | — | — | — | — | — | — | — | — | — |
description | ✓ | ✓ | — | ✓ | ✓ | — | — | ✓ | — | — |
disable-model-invocation | ✓ | — | — | — | — | — | — | — | — | — |
effort | ✓ | — | — | — | — | — | — | — | — | — |
model | ✓ | — | — | — | ✓ | — | — | ✓ | — | — |
name | ✓ | ✓ | — | — | ✓ | — | — | — | — | — |
prompt | — | ✓ | — | — | — | — | — | — | — | — |
subtask | — | — | — | — | — | — | — | ✓ | — | — |
tools | — | — | — | — | ✓ | — | — | — | — | — |
user-invocable | ✓ | — | — | — | — | — | — | — | — | — |
Not supported by: Cursor, Zed, Kiro, Amp, Crush.
See Also
Section titled “See Also”Generated from syllago 0.10.3 on 2026-04-27.