Skip to main content
Quest supports execution environments such as Local and Worktree. This article introduces the use cases and configuration for different environments, helping you safely and efficiently isolate and execute tasks.
Quest supports parallel tasks across environments where your plan allows.

Worktree

Worktree mode uses a separate Git worktree checkout in the background so the Agent can execute tasks in an isolated environment. Your main workspace stays clean, and multiple worktrees can run in parallel.

When to Use

How to Use

Create a Worktree

  1. In the run-environment area at the top of the chat panel, click the current mode (e.g., “Local”)
  2. Choose Worktree from the dropdown
  3. In the branch dropdown next to the mode selector, choose which local branch the Agent should base the worktree on
  4. Enter a task and send it. The Agent runs the work in a separate worktree.
If your main workspace has uncommitted changes, the panel shows an Include uncommitted changes toggle. When enabled, those changes are synced into the worktree at creation time so the Agent sees your latest code.

Move to Local

When the Agent finishes work in the worktree, you can bring the results back to your main workspace to continue development: In the task list on the left, find the corresponding worktree session and click Move to local on that session. This moves the worktree’s branch state and uncommitted changes back to your main local workspace, so you can continue the work locally.
Before you move to local, your local workspace must be clean (no uncommitted changes). Commit or stash your current changes first.

Review & Commit

If you don’t need to bring the changes back locally, you can commit directly from the worktree: open the Changes panel on the right of the session to review all file changes the Agent made. Once everything looks good, create a new branch and commit the code from the panel.

Startup Script

If you need to run initialization steps automatically when a Worktree is created (such as installing dependencies or copying environment variable files), go to Settings and find Worktree configuration for local tasks to edit the startup script.

Cleanup

Automatic Cleanup

The system automatically cleans up older worktrees to free up disk space. You can configure the cleanup policy at the bottom of the management panel:
  • Maximum retained: Each workspace retains 15 worktrees by default.

Manual Cleanup

  • In the session list on the left, Delete a worktree session to remove the corresponding worktree along with it.
  • You can also manage and delete worktrees you no longer need from Settings.

Notes

  • Requires a Git repository: The project must be a Git repository for the Worktree option to appear.
  • Keep the workspace clean before handoff: When you move to local, your local workspace must have no uncommitted changes.
  • Disk usage: Each worktree is a separate file checkout. For large projects, multiple worktrees can consume significant disk space. Set a sensible maximum retained count to avoid running out of space.