Skip to content

Profiles & Permissions

Open in ChatGPT ↗
Ask ChatGPT about this page
Open in Claude ↗
Ask Claude about this page
Copied!

Agent Profiles let you customize how your Agent behaves, from its models and autonomy to the tools and permissions it can use.

Agent Profiles let you configure how your Agent behaves in different situations. Each profile defines the Agent’s autonomy, base models, and tool access. You can create multiple profiles and edit them directly in Settings > Agents > Profiles.

  • Default profile: Every user starts with a default profile, you can edit it at any time, and new profiles will copy its settings as a starting point.
  • Other profiles: Set up different profiles for different workflows (e.g., “Safe & cautious”, “YOLO mode”, etc.). Manage them in the Profiles settings menu.

Agent Profiles in Settings: define how your Agent operates.

In each Agent Profile, you can configure:

  • The name of the profile
  • Base model: The core engine for your Agent. It handles most interactions and invokes other models when needed (e.g. for code generation). This model is also used for Planning by default, though you can configure a separate planning model.
  • Agent autonomy and permissions

Agent Profiles in Settings: editing a Profile.

Agent Permissions let you define how your Agent in a specific Profile operates — control its autonomy, choose what tools or MCP servers it can access, and set when it should act independently or ask for approval.

You can control how much autonomy the Agent has when performing different types of actions under Settings > Agents > Profiles > Permissions . Agent permission types:

  • Apply code diffs
  • Read files
  • Create plans
  • Execute commands
  • Interact with running commands (via Full Terminal Use)
Fine-tuning agent control: This permissions panel lets users customize how much autonomy the Agent has when applying code diffs, reading files, creating plans, and executing commands.

Each permission has different levels of autonomy:

Autonomy levelDescription
Agent DecidesAgent will act autonomously when it’s confident, but prompt for approval when uncertain. This option balances speed with control, allowing the Agent to go ahead with common workflows while keeping you in the loop for more complex or risky steps.
Always askAgent will request explicit user approval before taking any action. Choose this for sensitive actions.
Always allowAgent will perform the action without ever requesting explicit confirmation. Use this for tasks you fully trust the Agent to handle on its own.
NeverAgent will not ever take the action (i.e. Create plans).

The Agent lets you define an allowlist of commands that run automatically without confirmation. It’s empty by default, but users often add read-only commands such as:

  • which .* - Find executable locations
  • ls(\s.*)? - List directory contents
  • grep(\s.*)? - Search file contents
  • find .* - Search for files
  • echo(\s.*)? - Print text output

You can add your own regular expressions to this list in Settings > Agents > Profiles > Command allowlist. Commands in the allowlist will always auto-execute, even if they are not read-only operations.

Command allowlist and denylists as part of an Agent Profile.

For safety, the Agent always prompts for confirmation before executing potentially risky commands. The default denylist includes several examples, such as:

  • wget(\s.*)? - Network downloads
  • curl(\s.*)? - Network requests
  • rm(\s.*)? - File deletion
  • eval(\s.*)? - Shell code execution

The denylist takes precedence over both the allowlist and Agent decides. If a command matches the denylist, user permission will always be required, regardless of other settings. You can add your own regular expressions to this list in Settings > Agents > Profiles > Command denylist.

MCP servers let you extend the Agent with custom tools and data sources using standardized, plugin-like modules.

In this settings menu, you can configure which MCP servers the Agent is allowed to call:

  • Use the MCP allowlist to give the Agent permission to call specific servers without asking.
  • Use the MCP denylist to require approval before calling certain servers, even if they’re also in the allowlist.
  • Or set the Agent to “decide” — it will act autonomously when confident, and ask for confirmation when uncertain.

Customize how the Agent interacts with MCP servers by choosing between “Agent decides,” allowlist, or denylist settings.

During an Agent interaction, you can give the Agent full autonomy for the current task. When auto-approve is on, every suggested command runs immediately until the task finishes, or you stop it with Ctrl + C.

Auto-approve all Agent actions with: CMD + SHIFT + I

A button overlay in the lower-right corner lets you enable auto-approve or end the Agent interaction.


Once you’ve configured how your agent operates, try giving it a larger task to plan and execute.

  • Planning - Break down complex tasks into structured, executable plans that the agent runs step by step.
  • Code diffs - Review, refine, and apply code changes the agent generates.
  • Interactive Code Review - Leave inline comments on agent-generated diffs and have the agent address your feedback.