The Grammar of Coding Agents
The Grammar of Coding Agents
OpenAI Codex, Claude Code, OpenCode, Cursor, and GitHub Copilot
Snapshot verified: June 19, 2026<br>Scope: Interactive command languages, context sigils, skills, subagents, planning, review, insights, and differences between terminal, desktop, IDE, and cloud harnesses.
This is a living reference. Command availability can vary by version, operating system, plan, experimental flags, and connected extensions. In every harness, typing / in the active composer is the best final check for what is available in that exact installation.
Executive summary
The five product families increasingly share the same building blocks - slash commands, reusable skills, project instructions, MCP, custom agents, shell execution, and context management - but they expose them through different command languages.
Codex has the clearest use of $: $skill-name explicitly invokes a skill, while $app-slug attaches an app/connector. @ is primarily workspace/file context, though recent Codex releases are moving toward a unified mentions menu. Codex has /goal, but parallel subagents are requested in natural language rather than through /fleet.
Claude Code has the broadest built-in command catalog and the richest collection of packaged workflows. Skills are invoked as /skill-name, not with $. Its stand-out commands include /insights, /batch, /code-review, /loop, /ultraplan, and /workflows.
OpenCode has a smaller built-in slash-command surface but a very flexible customization model. @ can reference both files and agents; custom commands support $ARGUMENTS, $1, $2, shell-output injection, file references, agent selection, and forced subtask execution.
Cursor combines an IDE, terminal CLI, and Cloud Agents around one rules, skills, MCP, and subagent system. Skills and custom subagents use /name; @ attaches files, folders, docs, terminals, prior chats, diffs, browser state, and manual rules. Cursor CLI uses /shell rather than a documented ! shortcut, and & prompt hands a local CLI task to a Cloud Agent.
GitHub Copilot must be split by harness. Copilot CLI and the Copilot app use a modern agent runtime with /fleet, /chronicle, /research, skills, plugins, and custom agents. VS Code Chat uses a different interaction model centered on /explain, /fix, #file, and @workspace. GitHub.com Chat has another, smaller set of conversation commands and @ attachments.
How to read the comparison
Four layers of a coding-agent request<br>A request moves from human intent through command grammar and a harness into local, cloud, or parallel execution.
One request, four layers
1 · Intent
What should<br>happen?<br>The goal is portable.
2 · Grammar
How this tool<br>expresses it<br>The vocabulary changes.
3 · Harness
Terminal / CLI
IDE / editor
Desktop / web<br>Where it runs<br>Different surfaces expose<br>different controls.
4 · Execution
Local, cloud,<br>or parallel<br>The work finally<br>happens.
The comparison is mainly about layers 2 and 3: the same intent is translated into different command languages and surfaces.
Four layers of a coding-agent request<br>A vertical mobile diagram showing intent, command grammar, harness, and execution.
ONE REQUEST · FOUR LAYERS
1 · INTENT
What should happen?<br>The goal is portable.
2 · GRAMMAR
How this tool<br>expresses it<br>The vocabulary changes.
3 · HARNESS
Terminal / CLI<br>IDE / editor<br>Desktop / web<br>Where it runs<br>Different surfaces<br>expose different controls.
4 · EXECUTION
Local, cloud,<br>or parallel<br>The work finally happens.
This report compares the grammar and harness layers.
A four-layer model showing human intent, command grammar, product harness, and local, cloud, or parallel execution.<br>The closest equivalents are:
Intent<br>Codex<br>Claude Code<br>OpenCode<br>Cursor<br>GitHub Copilot CLI
Persistent objective<br>/goal<br>Natural language, plan/workflow; no direct equivalent<br>Natural language; no direct equivalent<br>Plan/checkpoints; no persistent /goal object<br>Plan/autopilot; no direct /goal equivalent
Plan before editing<br>/plan<br>/plan or /ultraplan<br>Switch to Plan agent<br>Plan mode: Shift+Tab, /plan, or --mode=plan<br>/plan; Shift+Tab can select plan mode
Parallel subagents<br>Ask explicitly: “spawn agents in parallel”<br>/batch, subagents, agent teams, workflows<br>@subagent, automatic delegation, or subtask: true<br>Automatic or /subagent-name; ask for parallel work; /best-of-n uses worktrees<br>/fleet
Inspect agent workers<br>/agent<br>/agents, /tasks, claude agents<br>Child-session navigation<br>Agent UI; background output under ~/.cursor/subagents/; Cloud Agents dashboard<br>/tasks, /agents, /subagents
Session insights<br>/usage, /status; no /insights equivalent<br>/insights, /usage, /team-onboarding<br>No built-in equivalent<br>/context; team analytics, but no personal /insights equivalent<br>/chronicle, /usage
Code review<br>/review, /diff<br>/code-review, /review, /security-review, /simplify<br>Plan/review agent or custom command<br>CLI Ctrl+R; Agent /review or /review-bugbot; Bugbot PR review<br>/review, /security-review, /diff, /pr
Explicit...