Skip to main content
Configuration commands let you change how Claude Code behaves without editing files manually. Most open an interactive panel; a few accept a direct argument for quick changes from the prompt.

/config

Interactive settings panel

/model

Switch the active AI model

/memory

Edit project memory (CLAUDE.md)

/plan

Enter plan mode

/theme

Change UI colour theme

/vim

Toggle Vim keybindings

/effort

Set reasoning effort level

/doctor

Diagnose installation issues

/status

Show full runtime status

/permissions

Manage tool permission rules

/config

Opens an interactive full-screen panel for browsing and editing all Claude Code settings. Changes are written to your user settings.json or the project-level settings.json depending on which scope you select. Aliases: settings
Arguments: none
Non-interactive: no

What you can configure

  • Default model and thinking/effort level
  • Output style (streaming, compact, verbose)
  • Colour theme and UI preferences
  • Sandbox restrictions (filesystem read/write and network)
  • Tool permission rules (always-allow, always-deny, always-ask)
  • Privacy settings
  • Editor integration preferences

Example

Opens the settings panel. Use arrow keys to navigate sections, Enter to edit a value, and Esc to close.
You can also edit ~/.claude/settings.json (user-level) or .claude/settings.json (project-level) directly in your editor. Changes take effect on the next command.

/model

Switches the AI model used for the current session. Changes take effect immediately for the next message. Arguments: [model name or shorthand]
Non-interactive: no (opens an interactive picker when no argument is given)

Usage

Without an argument, opens an interactive model selector:
With an argument, switches immediately:
Common shorthands:

Persistence

The selected model is not persisted across sessions by default. To set a permanent default, use /config or add "model" to your settings.json:

/memory

Opens the CLAUDE.md memory file editor. Claude Code reads CLAUDE.md files at session start and injects their contents into the system prompt, giving the model persistent project-specific context. Arguments: none
Non-interactive: no

Memory file hierarchy

Claude Code looks for CLAUDE.md files at multiple levels:
Running /memory opens an interactive file selector showing all discovered memory files. Select one to open it in your $EDITOR ($VISUAL takes precedence).

What to put in CLAUDE.md

/init can generate an initial CLAUDE.md for your project by analysing the codebase. Run it at the root of any new project to get started quickly.

/plan

Enters plan mode for the current session, or views the current plan if one has already been created. Arguments: [open | <description>]
Non-interactive: no

Plan mode overview

In plan mode, Claude Code switches to a read-only permission context. The model can explore files, run read-only commands, and draft a plan — but cannot write files or execute destructive commands without explicit user approval. Use plan mode when:
  • A task is complex enough to warrant designing an approach before touching code.
  • You want to review a proposed set of changes before they are made.
  • You are in a sensitive codebase and want a gate before any writes.

Usage

Enter plan mode interactively:
Open a specific plan by description:

Exiting plan mode

Type /plan again to toggle back to normal mode, or approve the proposed changes when prompted. The session’s permission mode is restored to its previous value.

/theme

Opens the theme picker. Claude Code ships with several built-in colour themes for the terminal UI. Arguments: none
Non-interactive: no

Available themes

Select a theme with arrow keys and press Enter to apply. Changes take effect immediately and are saved to your settings.

/vim

Toggles between Vim mode and Normal mode for the REPL input line. In Vim mode, the input respects standard Vim motion commands (h, j, k, l, w, b, 0, $, i, a, Esc, etc.). Arguments: none
Non-interactive: no
Toggle it off again with another /vim call. The setting is persisted to your user configuration.

/effort

Sets the reasoning effort level for the model. Higher effort levels increase thinking depth and token usage; lower levels are faster and cheaper. Arguments: [low | medium | high | max | auto]
Non-interactive: no (opens picker if no argument)

Examples

Effort levels only apply to models that support extended thinking (Claude 3.7+ Sonnet/Opus). For other models the setting is silently ignored.

/doctor

Runs a diagnostic check of your Claude Code installation, configuration, and environment. Reports any issues with missing dependencies, misconfigured settings, API connectivity, or outdated binaries. Arguments: none
Non-interactive: no
Disabled by: DISABLE_DOCTOR_COMMAND=1 environment variable

What it checks

  • Claude Code binary version and installation path
  • Node.js / Bun runtime version
  • API key validity and connectivity
  • settings.json schema validity (user and project levels)
  • MCP server connection status
  • Required shell utilities (git, rg, etc.)
  • Terminal capability detection

Example output


/status

Displays a comprehensive status summary for the current session: version, model, account, API connectivity, active tools, and permission mode. Arguments: none
Immediate: yes (shown without waiting for a new turn)

/permissions

Opens the permission management panel for reviewing and editing tool allow/deny rules. These rules control which tools Claude Code can use without prompting for approval. Aliases: allowed-tools
Arguments: none

Permission rule types

Rules can be scoped to specific tools, file paths, or shell command prefixes. Examples from settings.json:

/hooks

Shows the currently configured hooks — shell commands or scripts that Claude Code runs before or after specific tool events. Arguments: none
Immediate: yes
Hooks are defined in settings.json under the hooks key. The /hooks command provides a read-only view; edit the file directly to add or change hooks.

/init

Analyses the current repository and creates (or improves) a CLAUDE.md memory file. Prompts you for which components to set up — memory file, skills, and hooks. Arguments: none
Claude Code reads README.md, existing config files, and the project structure to generate focused, non-generic guidance. The result is written to CLAUDE.md in the project root.
Run /init when starting work on an unfamiliar codebase. The generated CLAUDE.md gives future Claude Code sessions the context they need to be productive immediately.