Skip to content

Feature Proposal: Background Execution Mode (Silent Task Processing) #4595

@kuxala

Description

@kuxala

What specific problem does this solve?

Problem:
When I give Roo a task, it starts opening files, switching tabs, and making visible changes while I’m still working in VS Code. This interrupts what I’m doing and breaks my focus.

Why it matters:
It’s hard to stay productive when the tool changes what I see on the screen without warning. I want Roo to help me, not take over my editor.

Who is affected:
Anyone using Roo while actively coding — especially developers working on multiple things at once or trying to stay in deep focus.

When it happens:
Every time Roo runs a task that edits files in the project.

Impact:
Lost focus, unwanted file switches, and a less smooth developer experience.

How should this be solved?

How should this be solved?

Solution:
Add a Silent Mode to Roo so it can run tasks in the background without opening files or switching tabs.

Here’s how it should work:

  1. Roo does the work quietly in the background — no visual changes during the task.
  2. When the task is done, a small pop-up notification appears (like "Task complete. Click to review changes").
  3. I can then choose to see a summary or diff showing exactly what Roo changed.
  4. My current work and open files stay untouched the whole time.

Extra options (nice to have):

  • A setting like "silentMode": true to turn it on or off.
  • A command to quickly toggle Silent Mode on the fly.

This way, Roo helps without getting in the way.

How will we know it works? (Acceptance Criteria)

How should this be solved?

Solution:
Add a Silent Mode to Roo so it can run tasks in the background without opening files or switching tabs.

Here’s how it should work:

  1. Roo runs the task silently in the background.
  2. When it’s done, a small pop-up says “Task complete. Click to review.”
  3. I can see a diff or summary of the changes.
  4. My current files and tabs stay exactly as they were.

Optional:

  • Setting like "silentMode": true
  • Quick toggle command in the command palette

How will we know it works? (Acceptance Criteria)

  • I turn on silentMode
  • I run a task
  • Roo finishes silently without touching my tabs
  • A pop-up tells me the task is done
  • I can review all changes in one place

Estimated effort and complexity

Estimated Effort and Complexity

Size: Medium (2–4 days)

Reasoning: This feature touches Roo’s core task flow and editor interaction. It requires handling file changes without applying them in real-time, and building a review UI afterward.

Main Challenges:
Keeping the user’s editor context intact while Roo works
Buffering and staging file changes behind the scenes
Designing a reliable way to show diffs or summaries post-task

Dependencies:
Needs access to VS Code's notification and diff API
Depends on Roo's internal hooks for file writes and task completion
No new libraries required, just tighter control of task behavior and UI triggers

Technical considerations (optional but helpful)

Implementation Approach: Likely requires changes to Roo’s task runner to support deferred file operations and tracking changes in memory until approval.

Performance Implications: Minimal during normal use, but buffering large changes might increase memory usage if not managed well.

Compatibility Concerns: Should not conflict with current workflows if silentMode is off by default.

Systems Affected: Task execution engine, file system interaction layer, UI notification system.

Potential Blockers: Incomplete APIs for tracking file diffs or lack of hooks for intercepting file writes before they reach the editor.

Trade-offs and risks (optional)

Potential Negative Impacts:

  1. Higher memory usage if large files are changed and buffered
  2. Risk of stale edits if the user forgets to review queued changes

Edge Cases:

  1. Tasks that rely on real-time file interaction may behave unexpectedly in silent mode
  2. Need fallback behavior for unsupported file types or unsaved buffers

Additional context (optional)

No response

Proposal checklist

  • I've searched existing Issues and Discussions for duplicates
  • This is a specific, actionable proposal with clear problem and solution
  • I've included concrete acceptance criteria
  • I understand this needs approval before implementation begins

Interested in implementing this?

  • Yes, I'd like to help implement this feature

##########################################################################################
Newly added
##########################################################################################

Additional Design Notes for Silent Mode

How Roo should behave when files are actively being edited:

  • If the user is currently editing a file (i.e., it's focused or being modified), Roo should behave exactly as it does now — taking over the tab and entering interactive "agent mode."
  • This avoids conflict and preserves the ability to collaboratively edit in real time.
  • The user can still manually interrupt or stop Roo at any point.

When Silent Mode should activate:

  • If the file Roo is about to edit is not open in any tab, or is open but not actively focused or being edited, Roo should run in Silent Mode for that file:
    • Do not open or switch tabs
    • Do not visibly modify the editor
    • Apply changes silently in the background

Maintaining context and diagnostics:

  • Roo can still analyze open files in memory (including diagnostics) to inform decisions — Silent Mode only affects visual/editor behavior, not internal logic or awareness.
  • Roo may read from any file but should write changes only to background files unless explicitly engaged in interactive mode.

When task is finished Roo already has sound pop-up implemented and this will work just fine.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Issue - Needs InfoMissing details or unclear. Waiting on author to provide more context.enhancementNew feature or requestproposal

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions