Skip to content

[Feature]: Allow opting out of explicit Take control in the collaborative browser #17057

Description

@0bkevin

Request

Add a persistent option to opt out of the explicit Take control / Release control interaction mode for the collaborative browser. When enabled, an authorized person should be able to click, scroll, type, paste, or use touch in an agent-opened browser tab without first pressing Take control. The first intended interaction should reach the page rather than merely dismiss a gate.

The request comes from someone using T3 Code with other people/devices: interacting with the visible browser should not require declaring control each time. Keep the existing explicit mode available.

Current behavior and scope

Source review at 04ad17425a80484bf323a7d5076bd477a9499119 (upstream main, 2026-10-08):

  • Web/desktop streamed previews expose Take control and Release control. ServerBrowserSurface.tsx drops pointer and other input unless controller === "you".
  • Mobile exposes the same buttons in PreviewStreamWebView.tsx.
  • The shared stream client refuses ordinary input unless this viewer already owns control.
  • Server-side SessionControl.human requires explicit ownership; changing owners invalidates queued agent actions.
  • Human-opened tabs already auto-grant control to the first authorized viewer in ServerBrowser.ts when agentId === null and the tab is unclaimed. This is useful existing behavior, but it does not cover agent-opened tabs or provide a configurable opt-out.
  • The browser settings schema has no preference for automatic versus explicit control handoff.

Running environment reported 0.0.46-nightly.20261008.2801. These findings are from source inspection, not a manual client reproduction.

Expected behavior

  • A discoverable preference enables interaction without the Take control step, including on agent-opened tabs.
  • Human input takes priority over conflicting agent actions through the existing control mechanism, with a predictable way to return control to the agent. Avoid leaving the agent permanently blocked after ordinary interaction.
  • Preserve read-only permissions and prevent an automatic claim from silently stealing another human viewer's active control.
  • Apply consistent behavior to web, desktop, and mobile, including remote/tunnel connections and reconnects.
  • Keep the change small; cover the control transition and first-input delivery with focused tests, and document the user-facing option.

Related work checked

No matching issue or open PR for this opt-out was found in searches for Take control, browser control, automatic/implicit control, and opt-out.

Prepared with GPT-6.1-Sol through the Codex harness in T3 Code.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions