Use shadow mode in Rovo Dev CLI

Rovo Dev will show temp folder details when started in shadow mode

Shadow mode in Rovo Dev CLI lets you test code changes in an isolated environment before applying them to your working directory.

Rovo Dev creates a temporary copy of your workspace and runs all operations there, giving you the chance to review changes before applying them to your codebase.

Start Rovo Dev CLI in shadow mode

Command line flag

Enable shadow mode for a single session:

# Interactive mode with shadow mode acli rovodev run --shadow # Non-interactive mode with shadow mode acli rovodev run --shadow "Refactor the authentication module" # Server mode with shadow mode acli rovodev serve 3000 --shadow

Configuration file

Enable shadow mode permanently in your configuration file (default location ~/.rovodev/config.yml):

agent: experimental: enableShadowMode: true

Shadow mode cannot start when MCP servers are already running.

Using shadow mode

When shadow mode is active, Rovo Dev runs all file modifications, bash commands, and other operations run in the temporary environment.

At the end of each interaction, Rovo Dev will show you a diff with the proposed changes and ask for your approval to apply them to your working directory.

For example:

Running in shadow mode in /tmp/tmp123abc... Proposed changes (Shadow Mode): ```diff +++ src/auth.py @@ -10,6 +10,8 @@ def authenticate_user(username, password): + # Add input validation + if not username or not password: + raise ValueError("Username and password are required") return verify_credentials(username, password) Would you like to apply these changes? ([yes]/no) > yes Great! I've applied the changes. What would you like to do next?

Temporary files are automatically cleaned up when the session ends.

How shadow mode works

Git repositories

  • Creates a new git worktree in a temporary directory.

  • Applies any uncommitted changes from your working directory to the temporary workspace.

  • Runs all operations in the temporary workspace.

  • Manages changes using git patches for precise control.

  • Git must be available in your PATH.

Non-git repositories

  • Creates a direct file system copy of your workspace (limited to 1,000 files).

  • Operations run in the copied environment.

  • Tracks modified files to manage changes.

Still need help?

The Atlassian Community is here for you.