Modes

Modes are specialized personas that tailor Bob's behavior for your specific tasks. Each mode offers different capabilities and access levels to help you accomplish particular goals more efficiently.

Why use different modes?

  • Task specialization: Get precisely the type of assistance you need for your current task
  • Safety controls: Prevent unintended file modifications when focusing on planning or learning
  • Focused interactions: Receive responses optimized for your current activity
  • Workflow optimization: Transition seamlessly between planning, implementing, debugging, and learning

Switching between modes

You have 4 options to switch modes:

  • Dropdown menu: Click the selector to the left of the chat input

  • Slash command: Type /plan, /ask, /code, /advanced, or /orchestrator at the beginning of your message. This will switch to that mode and clear the input field.

  • Toggle command/Keyboard shortcut: Use the keyboard shortcut below, applicable to your operating system. Each press cycles through the available modes in sequence, wrapping back to the first mode after reaching the end.

    Operating SystemShortcut
    macOS⌘ + .
    WindowsCtrl + .
    LinuxCtrl + .
  • Accept suggestions: Click on mode switch suggestions that Bob offers when appropriate

Built-in modes

By default, the following modes are available with Bob:

Code mode

AspectDetails
Name💻 Code
Role definitionYou are Bob, a highly skilled software engineer with extensive knowledge in many programming languages, frameworks, design patterns, and best practices.
Short descriptionWrite, modify, and refactor code.
Tool accessread, edit, command
Use caseGeneral purpose coding tasks, optimized for cost efficiency.

Ask mode

AspectDetails
Name❓ Ask
Role definitionYou are Bob, a knowledgeable technical assistant focused on answering questions and providing information about software development, technology, and related topics.
Short descriptionGet answers and explanations.
Tool accessread, browser, mcp
Use caseConversational questions and information about your code.

Plan mode

AspectDetails
Name📝 Plan
Role definitionYou are Bob, an experienced technical leader who is inquisitive and an excellent planner. Your goal is to gather information and get context to create a detailed plan for accomplishing the user's task, which the user will review and approve before they switch into another mode to implement the solution.
Short descriptionPlan and design before implementation.
Tool accessread, edit - markdown only, browser, mcp
Use caseHigh-level planning and technical leadership. Big picture thinking!

Advanced mode

AspectDetails
Name🛠️ Advanced
Role definitionYou are Bob, a highly skilled software engineer with extensive knowledge in many programming languages, frameworks, design patterns, and best practices.
Short descriptionAdvanced version of Code mode, with more tools.
Tool accessAll tool groups: read, edit, command, mcp
Use caseAdvanced coding tasks, requiring access to MCP tools. Power users!
Special featuresNo tool restrictions—full flexibility for all coding tasks

Orchestrator mode

AspectDetails
Name🔀 Orchestrator
Role definitionYou are IBM Bob, a strategic workflow orchestrator who coordinates complex tasks by delegating them to appropriate specialized modes. You have a comprehensive understanding of each mode's capabilities and limitations, allowing you to effectively break down complex problems into discrete tasks that can be solved by different specialists.
Short descriptionCoordinate tasks across multiple modes
Tool accessNone
Use caseComplex projects requiring coordination across different specialties, multi-domain workflows, and task management
Special featuresAutomatically switches between modes based on task requirements, manages subtasks, coordinates work across different expertise areas

Comparing the built-in modes

The following table compares the built-in modes to help you choose the right one for your specific task:

ModePrimary PurposeWhen to UseKey CapabilitiesTool Access
💻 CodeWriting and modifying codeWhen implementing features, fixing bugs, or making code improvementsEfficient code generation, refactoring, and debuggingread, edit, command
❓ AskGetting information and explanationsWhen you need to understand concepts or analyze existing code without making changesDetailed explanations, code analysis, and technical recommendationsread, browser, mcp
📝 PlanPlanning and designingBefore implementation, when you need to think through architecture or create a technical planSystem design, breaking down complex problems, creating specificationsread, edit (markdown only), browser, mcp
🛠️ AdvancedComplex development tasksWhen you need full access to all tools for sophisticated development workflowsAll capabilities of other modes combined with no restrictionsAll tool groups
🔀 OrchestratorMulti-step project coordinationWhen you have complex projects with multiple moving parts that require different specialtiesTask breakdown, mode coordination, workflow management across domainsNone

Mode selection guidelines

  • Start with Plan mode for new projects or complex features to plan before implementation.
  • Use Code mode for most day-to-day development tasks.
  • Switch to Ask mode when you need explanations without modifying files.
  • Use Advanced mode when you need unrestricted access to all tools for complex workflows.
  • Use Orchestrator mode for complex, multi-step projects that require coordination across different specialties and domains.

Customizing modes

Tailor Bob's behavior by customizing existing modes or creating new specialized assistants. Define tool access, file permissions, and behavior instructions to enforce team standards or create purpose-specific assistants.

For setup instructions, see Custom modes.

How is this topic?