GitDBDocs
GitDB Desktop

Slash commands

How the / menu works on Claude Code and Codex CLI threads, the commands GitDB Desktop runs itself, and the Claude Code commands it refuses.

Type / at the very start of the message box to open the / menu. It filters as you type the command's name, and it closes once you type a space — what follows the name is the command's arguments.

What the menu offers depends on the thread's CLI.

On Claude Code threads

The list comes from the thread's running Claude Code session — the commands Claude Code itself reports, in its own order. Each row shows the command, its description, any aliases ("also …"), its argument hint, and a built-in tag for Claude Code's own commands.

Picking a command types it into the box, followed by a space, so you can add arguments and send it like a normal message. While you type the arguments, the command's argument hint is shown under the box.

If the thread has no running Claude Code session yet — for example a brand-new thread — the menu says: "The command list comes from this thread's running Claude Code session, and none is running — it appears once one is." Send a message to start the session.

On Codex CLI threads

Codex CLI has no command list the app can show. The menu offers:

  • Commands GitDB Desktop runs itself. Today that's /mcp — "Show MCP server status". The menu heads them with "Codex CLI has no command list here — these commands run in GitDB Desktop:".
  • Skills. Under Skills, the thread's enabled Codex skills. Picking one inserts a link to that skill into your message; it doesn't send anything. See Skills.

If nothing matches what you typed, the menu says: "Slash commands are a Claude Code feature — this thread runs on Codex CLI, which has no command list here."

On Codex threads, only the bare command runs in the app: /mcp on its own opens the status view, but /mcp followed by other words is sent to Codex as an ordinary message.

Commands that run in GitDB Desktop

These commands open a GitDB Desktop window instead of being sent to the CLI:

CommandCLIWhat it opens
/mcpClaude CodeThe MCP servers manager — "Opens GitDB Desktop's MCP servers manager"
/skillsClaude CodeThe Skills dialog — "List available skills"
/plugin (also /plugins, /marketplace)Claude CodeThe Plugins dialog — "Manage Claude Code plugins"
/mcpCodex CLIThe read-only MCP server status view — "Show MCP server status"

On Claude Code threads they run the same way whether you pick them from the menu or type them and press send — with or without arguments. They never reach Claude Code: Claude Code's own /mcp could turn off MCP servers, including GitDB's built-in one.

Refused commands

Some Claude Code commands change things GitDB Desktop has to keep track of, so the app refuses them. In the / menu they're listed but disabled, with the reason "Refused in GitDB Desktop — …". If you type one and send it, nothing is sent, your message stays in the box, and the app tells you so with the same reason — for example "/clear is refused in GitDB Desktop".

Command (and aliases)Why it's refused
/clear (/reset, /new)It starts a new Claude Code session in the running process, which a GitDB thread cannot follow (its continuation, handoff and rewind points all name the current session) — start a new thread instead.
/exit (/quit)It ends the Claude Code process this thread runs on — use End session instead.
/model, /effort, /fastIt changes the model settings behind the app's own model and effort controls — use the composer's pickers.
/add-dirIt adds working directories outside the workspace this thread is bound to.
/config (/settings)It changes Claude Code settings outside the app's own controls.

Use the app's own controls instead: Session settings for the model, effort and permission mode, and End session or a new thread for the other cases.

A slash command right after switching to Claude Code

When a GitDB thread switches to Claude Code, the first message Claude Code receives carries a handoff of what ran on the other CLI. A slash command in that message wouldn't run, so the app refuses it with the message that the command "can't be the first message of this Claude session". Send any plain message first (it carries the handoff), then the command.

Slash commands with images

On Claude Code threads, a message that has images attached can't start with / — Claude Code would run it as a command and the model would never see the images. Reword the message so it doesn't start with /, or send the command on its own without images.

On this page