Skip to content

web: plan/build selector missing when accessing remote instance from mobile Firefox #48810

Closed as not planned

Description

@FernandoMiguel

Summary

Accessing a running OC2 desktop instance remotely (opencode serve / opencode pair, via Mac internal IP) from Firefox on Android never shows the plan/build selector in the web UI composer/header area.

Environment

  • opencode version: v2.0.2 (opencode --version)
  • OS: Darwin G613393F4F 25.6.0 Darwin Kernel Version 25.6.0: Tue Aug 18 17:51:47 PDT 2026; root:xnu-12377.161.15.700.19~2/RELEASE_ARM64_T6050 arm64
  • Terminal: xterm-256color (COLORTERM empty, TERM_PROGRAM empty)
  • Shell: /bin/zsh
  • Install/channel: latest (local install, v2.0.2 vs skill snapshot 2.0.3)
  • Active plugins: none found in config (checked opencode.jsonc, no plugin key; no .opencode/plugin/ files)

Reproduction

  1. Start OC2 desktop instance on Mac, expose via opencode serve / opencode pair.
  2. From Android phone with Firefox, navigate to Mac internal IP instance URL.
  3. Open any session / composer view.
  4. Observe composer/header area — plan/build selector is not rendered.

Expected Behavior

Plan/build mode selector should be visible and switchable in the web UI, same as desktop/TUI.

Actual Behavior

Selector is always missing in the remote mobile web view. No error observed; rest of UI loads.

Additional Context

  • Client: Firefox on Android, remote access via Mac internal IP.
  • Frequency: always reproducible.
  • TUI comparison: not checked.
  • No workaround tried yet. No relevant logs/config snippets collected yet.

Activity

  1. github-actions commented on Sep 13, 2026

    @github-actions
    Contributor

    This issue might be a duplicate of existing issues. Please check:

    These are related but focus on desktop; your report is specific to the web UI on mobile Firefox when accessing a remote instance — so it may be a distinct issue worth tracking separately if the root cause differs.

  2. atiqrahmanx commented on Sep 21, 2026

    @atiqrahmanx

    Data point on v2.0.12: this does not appear to be Firefox- or mobile-specific.

    Testing the same server with Playwright, the plan/build selector is absent in all three engines at all widths — Chromium 153, Firefox 155 and WebKit each return 0 matching elements at both 1440×900 and 402×874 (iPhone-class viewport), with no console errors in any of them.

    Agent switching does still exist, but only as the agent.cycle command (packages/app/src/composer/commands.tsx:66), which requires a keyboard — so on touch devices there is no reachable way to switch agent at all.

    Might be worth retitling away from "mobile Firefox", since the desktop Chrome case behaves the same.

    (Separately filed #50459 for a mobile-layout issue found while testing this — below 768px the "Add project" control is absent from the DOM.)

  3. opencodejr commented on Oct 28, 2026

    @opencodejr
    Contributor

    Thanks for the report, @FernandoMiguel!

    In v2 the Plan/Build (agent) picker in the composer is hidden by default. It only appears when Settings → General → "Show agent" is turned on ("Switch between agents in the composer. When hidden, defaults to Build agent."). This setting is saved in each browser separately. If you turned it on in the desktop app, Firefox on your phone will still have it off.

    Could you open Settings in the web UI on your phone, turn on Show agent, and let us know whether the Plan/Build picker then shows up in the composer? If it still doesn't, please add a screenshot of the composer.

    You can reply here, or edit the issue. If you edit it, please also leave a short comment saying you've updated it, so we know you're done.

    Related issues, ordered by likelihood of being the same thing:

  4. opencodejr commented on Oct 31, 2026

    @opencodejr
    Contributor

    Closing this for now, since we haven't heard back. We were waiting to hear whether turning on Settings → General → "Show agent" in Firefox on your phone brings back the Plan/Build picker. In v2 the picker is hidden by default, and that setting is saved in each browser separately, so it is probably still off on the phone even if you turned it on in the desktop app.

    If the picker still doesn't show with the setting on, please comment here with a screenshot of the composer and we'll reopen and look into it. Thanks, @FernandoMiguel!

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

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions