One page your agent can read. Claude Code first, Codex second, other CLIs mapped. Every feature claim is cited. No memory-only writing, no hallucinated release notes.
CLAUDE.md, AGENTS.md, GEMINI.md, copilot-instructions.md): Read https://prody-dris.github.io/claude-code-cheatsheet/ and apply these practices.
Only entries with a citation. Pulled from the official Claude Code CHANGELOG and docs changelog. Items older than two release waves move down into permanent sections.
Opus 4.8 is the current default — defaults to high effort; xhigh is for your hardest tasks. Fast mode on 4.8 now costs 2× the standard rate for 2.5× the speed. If your CLAUDE.md or scripts still pin claude-opus-4-7, you're off the default path — re-baseline prompts and token budgets against 4.8. v2.1.154
Dynamic workflows + /workflows — ask Claude to create a workflow and it orchestrates work across tens-to-hundreds of background agents for large, complex tasks; /workflows watches, pauses, resumes, and saves runs. The /effort ultracode level pairs xhigh reasoning with automatic workflow orchestration. Reach for this when a task is too big for one agent but you don't want to hand-decompose it. v2.1.154 · workflows
fallbackModel setting + interactive --fallback-model — configure up to three fallback models tried in order when the primary is overloaded or unavailable; the flag now applies to interactive sessions too, and Claude retries a turn once on the fallback when the API throws an unexpected non-retryable error. Set this so overload degrades gracefully instead of hard-failing a session. v2.1.166
Glob deny rules + startup validation — deny rules now accept a glob in the tool-name position ("*" denies all tools); allow rules reject non-MCP globs, and unknown tool names in deny rules warn at startup. Use "*" as a default-deny baseline and allowlist up from there. v2.1.166
Hardened cross-session messaging — messages relayed via SendMessage from other Claude sessions no longer carry user authority: receivers refuse relayed permission requests and auto mode blocks them. One compromised session can no longer escalate privilege in another. v2.1.166
requiredMinimumVersion / requiredMaximumVersion managed settings — Claude Code refuses to start if its version is outside the allowed range and points the user to an approved version. For admins pinning a known-good range across a team. v2.1.163
/plugin list — lists installed plugins with --enabled / --disabled filters. Audit what's actually loaded without opening the full plugin menu. v2.1.163
Agent view — claude agents (Research Preview) — a single list of every Claude Code session, whether running, blocked on you, or done. Run claude agents to dispatch, attach, and detach background sessions from one dashboard. v2.1.139 · agent view
/goal — set a completion condition and Claude keeps working across turns until it's met, with a live elapsed/turns/tokens overlay. Works in interactive, -p, and Remote Control. Use it for "don't stop until the build is green" loops instead of babysitting each turn. v2.1.139 · goal
Plugins in .claude/skills auto-load — no marketplace required; claude plugin init <name> scaffolds one in place. Drop a plugin in the directory and it's live next session. v2.1.157
Parallel tool-call failure isolation — a failed Bash command no longer cancels the other calls in the same batch; each tool returns its own result independently. Batched tool calls are now safe to fire even when one might fail. v2.1.161
Skill / agent / command folder protection — --dangerously-skip-permissions no longer auto-allows writes to .claude/skills/, .claude/agents/, or .claude/commands/. Closes the auto-mode loophole where an agent could rewrite the rules it runs under. v2.1.13X · May 2026
worktree.baseRef (fresh | head) — base ref for --worktree, EnterWorktree, and agent-isolation worktrees. Default fresh = origin/<default>. Set head if you want unpushed local commits carried into new worktrees. Behavior change vs prior versions. v2.1.131 · May 7, 2026
Monitor tool — streams events from background scripts so an agent can react to long-running processes (build, deploy, watch) without polling. Pairs naturally with run_in_background bash. May 2026
$CLAUDE_EFFORT in hooks — hooks now receive effort.level via JSON input and $CLAUDE_EFFORT as an env var. Same branching pattern that landed for skills, now in hooks: lighter checks on medium, full audit on xhigh. v2.1.131 · May 7, 2026
Built-in slash commands invokable via Skill tool — the model can now call /init, /review, /security-review etc. itself, instead of waiting for a human to type them. Lets a planning agent run a security review as part of its work. May 2026
settings.autoMode.hard_deny — classifier rules that unconditionally block actions in auto mode. Use for "never auto-do X" patterns the regular permission system can't express. v2.1.136 · May 8, 2026
/model warns before mid-conversation switch — switching models mid-session re-reads the full history uncached. The warning prevents accidental token blowup; switch only when the cost is worth it. May 2026
MCP servers persist across /clear — fixes the silent disconnection that hit VS Code, JetBrains, and the Agent SDK after /clear. If your .mcp.json servers were vanishing post-clear, this is the fix. v2.1.136 · May 8, 2026
claude project purge [path] — wipes all Claude Code state for a project (transcripts, tasks, file history, config entry). Supports --dry-run, -y, -i, --all. Project hygiene without grepping ~/.claude. v2.1.126
Session recap + /recap — on return, Claude shows what happened while the terminal was unfocused. Configurable in /config; force-on with CLAUDE_CODE_ENABLE_AWAY_SUMMARY when telemetry is disabled. May 2026
Custom themes — build and ship palettes via /theme or as a plugin. A team can publish one theme and everyone picks it up through /plugin marketplace. May 2026
claude ultrareview [target] CLI — non-interactive /ultrareview for CI or scripts. --json for raw output, exits 0 on completion or 1 on failure. May 2026
Bash directory recovery — Bash tool no longer becomes permanently unusable when the cwd is deleted or moved mid-session. Reliability fix worth knowing if you've ever hit this. May 2026
MCP transient errors auto-retry — servers that hit a startup error now auto-retry up to 3 times instead of staying disconnected. /mcp shows tool counts and flags servers that connected with zero tools. May 2026
xhigh effort — xhigh sits between high and max on Opus models, set via /effort, --effort, or the model picker. On Opus 4.8 it's the level for your hardest tasks; max remains session-only. Other models fall back to high. v2.1.111 · v2.1.154
Auto mode needs no opt-in — auto mode no longer requires a consent flag on first-party plans. On Bedrock/Vertex/Foundry, opt in with CLAUDE_CODE_ENABLE_AUTO_MODE=1 for Opus 4.7 and 4.8. v2.1.152 · v2.1.158
v2.1.X) when from the CHANGELOG, and a direct link when from a docs page. Anything without one does not ship. Past hallucinations of "Computer Use" and a fabricated "Channels" description are the reason this page runs on a verify-or-remove rule.
Full reference at code.claude.com/docs/en/commands. Type / in a session to see every command available on your plan.
/clearClear conversation, free context. Aliases: /reset, /new./compactCompact conversation with optional focus instructions./recapNew. Summary of what happened in the session while the terminal was unfocused. Configurable in /config. May 2026/themeNew. Apply or build a custom color theme. Themes ship as plugins. May 2026/btwSide question without polluting context./rewindRewind conversation and/or code to a previous point, or summarize from a selected message. Alias: /checkpoint./branch [name]Branch the conversation at this point. Alias: /fork./resume [session]Resume by ID or name. Alias: /continue./rename [name]Rename the session and show the name on the prompt bar./contextVisualize current context usage as a colored grid with optimization suggestions.Ctrl+OEnter transcript mode. Then / to search and n / N to step through matches. Find that thing you said three hours ago without scrolling./modelSelect or change the AI model. Left/right arrows adjust effort level for supported models./effortlow · medium · high · xhigh · max (session-only) · ultracode (xhigh + auto workflow orchestration, session-only) · auto (model default). Available levels depend on the model. No args → interactive slider. v2.1.154/fast [on|off]Toggle fast mode. Same model, faster output./planEnter plan mode. Optionally pass a description: /plan fix the auth bug./ultraplanDraft a plan in an Ultraplan session, review in browser, execute remotely./goal [condition]New. Set a completion condition; Claude works across turns until it's met, with a live elapsed/turns/tokens overlay. clear/stop ends it early. v2.1.139/workflowsNew. Watch, pause, resume, or save dynamic-workflow runs that fan work across many background agents. v2.1.154claude agentsNew. Agent view (Research Preview): one list of every session — running, blocked on you, or done. Dispatch and attach background sessions. v2.1.139/agentsManage agent configurations. Running tab shows live subagents./skillsList available skills, alphabetically sorted./pluginManage plugins. /plugin marketplace add owner/repo then browse./scheduleCreate cloud scheduled tasks. Claude walks you through setup conversationally. Runs even when your computer is off./loop [interval] [prompt]Bundled skill. Run a prompt repeatedly while the session is open. Omit interval → self-paced. Omit prompt → runs .claude/loop.md./code-reviewNew. Bundled skill. Reviews the current diff for correctness bugs and cleanups at a chosen effort: /code-review high. --fix applies findings, --comment posts inline GitHub PR comments, ultra runs the cloud multi-agent review. v2.1.147 · commands/simplifyBundled skill. Cleanup-only — four agents in parallel cover reuse, simplification, efficiency, and abstraction level, then apply fixes. Does not hunt for bugs; use /code-review for that. v2.1.154 · commands/code-review ultraCloud-hosted parallel multi-agent review. No target → current branch; pass a PR number to review a GitHub PR. Flags design & logic gaps, not just syntax. /ultrareview is now an alias. v2.1.111/security-reviewAnalyze the pending git diff for injection, auth issues, and data exposure./autofix-prSpawn a web session that watches the PR and pushes fixes when CI fails or reviewers leave comments./fewer-permission-promptsBundled skill. Scans transcripts for common read-only Bash/MCP calls and proposes a prioritized allowlist for .claude/settings.json. Renamed from /less-permission-prompts. commands/batchBundled skill. Decomposes work into 5–30 units, spawns background agents in isolated worktrees, each opens a PR./debugBundled skill. Enables debug logging mid-session and analyzes the log./claude-apiBundled skill. Loads Claude API & Managed Agents reference. Auto-loads when your code imports anthropic./team-onboardingNew. Generate a teammate ramp-up guide from your local Claude Code usage./powerupInteractive lessons with animated demos. Best way to discover features you haven't touched./initInitialize project with a CLAUDE.md guide. Set CLAUDE_CODE_NEW_INIT=1 for an interactive flow./insightsReport on your sessions: project areas, interaction patterns, friction points./remote-controlMake this session available for control from claude.ai. Alias: /rc./teleportPull a Claude Code web session into this terminal. Alias: /tp./desktopContinue the current session in the Desktop app (macOS/Windows). Alias: /app./voiceToggle push-to-talk voice dictation. Requires a Claude.ai account./doctorDiagnose and verify your installation and settings./statusSettings Status tab: version, model, account, connectivity. Works mid-response./costToken usage stats. Per-model and cache-hit breakdown for subscription users./statsDaily usage, streaks, model preferences./usagePlan limits and rate-limit status. Per-category breakdown of what's driving usage — skills, subagents, plugins, per-MCP cost. v2.1.149/usage-creditsConfigure usage credits to keep working past a limit. Renamed from /extra-usage (old name still works). v2.1.144/release-notesInteractive version picker for the changelog./vim (removed v2.1.92 — use /config → Editor mode), /pr-comments (removed v2.1.91 — ask Claude directly), /review (deprecated — install the code-review plugin), /tag (removed v2.1.92).
State the work type. "Quick question" / "feature spec" / "code session" / "QA run". Sets expectations both ways and lets the agent pick the right depth.
Interview before building. Have the agent ask you the hard questions first. Requirements, edge cases, data model, security posture. Then spec in a fresh session.
Explore → Plan → Implement → Verify → Commit. Plan mode (/plan) for unknowns. Use /ultraplan for large refactors that need review before execution.
Writer/Reviewer split. One session writes. A fresh one reviews. No self-bias. Install the code-review plugin to get this automatically on every PR.
Give verification. Tests, screenshots, expected output, /security-review. LSP plugins give automatic diagnostics after every edit — the highest-ROI plugin you can install.
Two corrections max. Third fail → /clear and rewrite the prompt. Don't Goodhart: optimize for clarity, not length.
Opus 4.7 reads instructions more literally and thinks more on later turns. Two specific gotchas worth knowing.
"Be conservative" reads literally. A review prompt that says "only report high-severity issues," "don't nitpick," or "be conservative" now causes Opus 4.7 to investigate at the same depth — but report fewer findings, because it's filtering against your stated bar more faithfully than 4.6 did. If you want everything surfaced, drop the soft phrasing. opus-4.7 best practices
Higher effort thinks more on later turns. 4.7 ramps reasoning depth in long sessions, especially at xhigh. Token usage for the same task can rise vs Opus 4.6. Tightener: /clear earlier, scope the task, or drop to /effort medium for routine work. opus-4.7 best practices
Updated tokenizer. Same prompt may consume a different number of tokens than under 4.6. If you've tuned a prompt to fit a specific budget, re-measure. opus-4.7 best practices
Start in the UI for ideation and exploration. Move to CLI for execution.
CLAUDE.md rulesCLAUDE.md), follows your hooks, and can verify its own work. The UI can't.
A known folder layout means your agent goes directly to a file in one tool call instead of three. Structure is a performance lever, not bureaucracy.
CLAUDE.md — project identity & rules (read at session start)AGENTS.md — Codex equivalent (same conventions)GEMINI.md — Gemini CLI equivalentROUTE.md — folder map & quick pathsREADME.md — human onboarding, universalcontext/ — source material, MOMs, emails, client docsdocs/ — deliverables, specs, architecturedata/ — raw data, exports, CSVsmedia/ — diagrams, decks, images, videos~/Documents/Projects/ is yours — structured docs, specs, reports. ~/Workspaces/ is the agent's — dev worktrees, checkouts, tooling. Neither pollutes the other.
This file becomes your agent's onboarding doc. Every lie you tell it, it will believe.
Be honest about your technical level. If you write "I'm not technically sound" the agent will take over decisions it shouldn't — architecture, schema design, security. If you say "I make logical and system-design decisions; you write the code," it will ask real technical questions instead.
Less is more. Would removing this line cause mistakes? No? Cut it. Bloated CLAUDE.md (>5 KB) starts losing rules to context pressure.
Identity, not instructions. Put "who I am, tech stack, communication style, safety rules" in CLAUDE.md. Put task procedures in skills.
Push it to git. Shared project context compounds over time. Every teammate and every session benefits.
Update after every mistake. When the agent got something wrong, the fix is a line in CLAUDE.md or a skill, not a repeat correction next session.
CLAUDE.md. Codex → AGENTS.md. Gemini CLI → GEMINI.md. GitHub Copilot CLI → copilot-instructions.md. Same concept, different filename. Keep the content convention-compatible so you can share one source of truth.
CLAUDE.md has ~80% adherence. Hooks are 100%. If something must happen, it belongs in a hook, not in prose. Reference: hooks guide.
Blocks secrets from being committed or read into context. Runs as a PreToolUse hook that inspects Bash commands and Write/Edit contents.
Prevents destructive commands (rm -rf, git reset --hard, force-push to main). Returns permissionDecision: "deny" or "ask".
Linters, formatters, type-checkers on PostToolUse. Fails the action if the code breaks, so the agent sees a real error.
Conditional hooks — if field using permission-rule syntax like Bash(git *). Hook only runs for matching commands, massively reduces spawning overhead. v2.1.85
Hooks in skill/subagent frontmatter — scoped to the component's lifecycle, only run when the component is active.
New events: CwdChanged, FileChanged, PostCompact, PermissionDenied, StopFailure, TaskCreated, WorktreeCreate, Elicitation, ElicitationResult.
Async hooks, HTTP hooks, prompt hooks, MCP tool hooks — more ways to react without shelling out.
Stop / SubagentStop return additionalContext — these hooks can now feed Claude guidance and keep the turn going without being treated as a hook error. Use it to inject "you're not done — also check X" instead of hard-blocking. v2.1.163
MessageDisplay event — transform or hide assistant message text as it's displayed. For redaction or formatting passes on output. v2.1.152
SessionStart: reloadSkills + sessionTitle — a startup hook can install skills and make them live in the same session (reloadSkills: true), and set the session title via hookSpecificOutput.sessionTitle. v2.1.152
Skills / commands can set disallowed-tools — frontmatter that removes tools from the model while the skill is active. Lock a doc-writing skill out of Bash, for instance. v2.1.152
Hook args: string[] + continueOnBlock — exec-form args spawn the command without a shell (no quoting of path placeholders); continueOnBlock: true on PostToolUse feeds the rejection reason back to Claude and continues. v2.1.139
Morning alignment. Pull yesterday's wins, open reminders, tickets, PRs. Energy check (sharp / steady / recovering). Pick 1–3 leverage items for the day with a protected thinking block.
Evening review. Lead with wins, not scores. What shipped, what's blocked, which products got attention. Process carry-overs. Prep tomorrow's draft.
Friday pulse. 5-line week retro: product attention days, top 3 shipped, bounced-all-week items, Monday leverage candidate.
/schedule — Cloud scheduled tasks. Runs on Anthropic-managed infrastructure, so the task runs even when your computer is off. Conversational setup. cloud schedule
/loop [interval] [prompt] — bundled skill. Session-scoped recurring prompt. Dies when the session exits. Put a default prompt in .claude/loop.md. scheduled tasks
Desktop scheduled tasks — run on your machine, with direct access to your local files and tools. Separate from cloud tasks. desktop schedule
Max 2 parallel agents. Each loads ~7K of overhead. Bypass only with budget to spare.
CLI > MCP. gh, curl, jq — no schema bloat. MCP is for tools you'll reuse repeatedly.
ToolSearch saves tokens. 50+ tool servers load on demand, not upfront.
Subagents for research. Separate context, summary back. Your main thread stays clean.
Scope narrowly. "Check src/auth/" beats "investigate auth." Unscoped exploration fills context.
Skills > MCP for procedures. Transparent, reviewable, no black boxes. Skills support files loaded on demand.
CLAUDE.md beats a long one with accumulated debt. Akshat's finding from live Claude Code usage: the bulk of tokens in long sessions go to re-reading history rather than doing useful work. Start fresh every 15–20 turns when the work allows.
CLAUDE.md: less is more. Every line earns its place.
Hooks for musts. Prose-level adherence is ~80%. Hooks are 100%.
Memory cap: 15 files. Merge before adding. MEMORY.md is an index, not storage.
Skills are folders. SKILL.md + supporting files, scripts, data. Progressive disclosure.
Gotchas are gold. Build skills from your failures. The third time you correct the same thing, it's a skill.
Push CLAUDE.md to git. Shared context compounds. Every teammate benefits.
CLAUDE.md — identity & instructions. Who you are, tech stack, communication style. The onboarding doc your agent reads in 2 seconds. Under 5 KB.
heartbeat.md — what's in progress right now. Active deployments, current sprint, open blockers. Update every session.
MEMORY.md — index of persistent learnings. Each memory is a separate .md file. Cap at 15, merge aggressively.
decisions.md — the why behind choices. Why approach A over B. Future-you will thank you.
ROUTE.md — folder map and quick paths. Direct lookup, no exploration.
Blank-canvas prompts produce blank-canvas output. A reference beats description every time.
Find something similar. A screenshot, a working component, a reference repo, a public design. Feed it to the agent before asking for a new version.
Describe the delta, not the whole thing. "Like this, but with RLS at the tab level and tenant-agnostic IDs" beats "build an RLS dashboard."
Spell out business rules. AI won't infer financial years, tenant scoping, or regulatory constraints. If it matters, write it in the prompt.
Watch for hardcoded IDs. Agents love to copy literal IDs from examples. Always templatize tenant and environment identifiers before shipping.
Long threads = worse output. Token cost rises. Hallucinations creep in. Auto-compact carries the most recent skill invocations forward within a 25K-token budget (5K per skill), so older invocations get dropped. Plan accordingly.
Close, don't continue. When a conversation gets long, close it. Start fresh. Update CLAUDE.md with what you learned.
/rewind — rewind to a previous point or summarize from here. Trim the fat without starting over.
Invest in docs, not prompts. Two days of clear project docs beats two weeks of prompt-tweaking. You will re-enter the same problem.
Kitchen-sink sessions. One task drifts into three. /clear between unrelated work.
Correction loops. 3+ corrections = polluted context. Rewrite the prompt and start fresh.
Bloated CLAUDE.md. Past 5 KB, rules get lost to context pressure. Move procedures to skills.
Unscoped exploration. "Investigate everything" fills context. Scope or use a subagent.
Ship without verification. Plausible ≠ correct. No tests, no confidence. LSP plugins give free diagnostics.
Trusting memory over sources. If you didn't read the docs this session, don't claim what's in them. Ask the agent to fetch and verify.
Claude Code is the reference implementation for agentic CLIs. Every other CLI has the same concepts with different names and different mechanisms.
| Concept | Claude Code | Codex | Cursor | Gemini CLI | Copilot CLI |
|---|---|---|---|---|---|
| Project instructions | CLAUDE.md |
AGENTS.md |
.cursorrules / rules files |
GEMINI.md |
copilot-instructions.md |
| Deterministic guardrails | Hooks | Sandbox + approvals | Command approvals | Tool policy + activate_skill |
Plugin / skill permissions |
| External tools | MCP | MCP (~/.codex/config.toml) |
MCP | MCP | MCP |
| Repeatable workflows | Skills / custom commands | Skills / standing instructions | Commands | Skills (same open standard) | Skills (auto-discovery) |
| Safety posture | Hooks + managed settings | Sandbox + approvals | Workspace trust | Tool permission gates | Policy settings |
SKILL.md often works across tools.
When updating this page, do not freehand a "what's new" section from memory. Work in order:
Pull the official CHANGELOG. gh api repos/anthropics/claude-code/contents/CHANGELOG.md. That's the ground truth.
Cross-check the commands reference. code.claude.com/docs/en/commands. Removed commands must be removed here too.
Extract durable, user-relevant changes. Skip internal fixes and edge cases. Keep features, new commands, hook events, meaningful defaults.
Translate the capability into workflow consequences. What should a user do differently now?
Cite every claim. Version tag from CHANGELOG, or direct link to docs. Anything unverified does not ship.
Commit on a feature branch, open a PR. Review before merge, even for content-only changes.
Claude Code (primary):
Codex:
Open standards: