Skip to content

Add a custom host picker for orchestration#11080

Merged
advait-m merged 4 commits into
masterfrom
advait/host-picker
May 16, 2026
Merged

Add a custom host picker for orchestration#11080
advait-m merged 4 commits into
masterfrom
advait/host-picker

Conversation

@advait-m
Copy link
Copy Markdown
Member

@advait-m advait-m commented May 15, 2026

Loom: https://www.loom.com/share/af6b202a644f40acb5e8de7f7fb656f9
Fixes https://linear.app/warpdotdev/issue/QUALITY-701/need-a-way-for-users-to-specify-a-custom-host

Note: I am not matching Peter's designs entirely, but I think we should get this out and can fast-follow on UI side later. The top priority is allowing folks to configure this.

Note 2: I can follow up to confirm e2e in staging (with a non-local host) after we merge/get on dogfood too. I was testing with oz-local script locally (which took me a while to set up) but session sharing wasn't fully working e2e for me w/ local setup.

Description

Adds a host picker to the orchestration UI so a user can choose where their cloud agents run instead of being locked into the default Warp cluster. The picker appears in both the orchestrate confirmation card and the plan-card orchestration block, replacing the previous static warp value with a real selection control that surfaces the workspace's configured default, the user's most recent custom host, and a free-form custom entry.

Technical design

The picker is built as a single view that internally swaps between two modes. In list mode it wraps the standard orchestration dropdown so it visually matches the model / harness / environment pickers next to it — same height, border, padding, font, and chrome. In custom mode it swaps the dropdown for an inline text editor with a small cancel button, letting the user type a self-hosted worker slug. The editor commits on Enter or blur, reverts on Escape or cancel, and remembers the prior selection so a discarded edit goes back to whatever was selected before. Newly committed custom slugs immediately appear as a "Recent" entry in list mode and are persisted to the cloud-agent settings so they survive across cards.

Initial selection mirrors the Oz webapp's host selector: when a workspace default is configured (or the WARP_CLOUD_MODE_DEFAULT_HOST env override is set), it sits at the top with a "Default" badge and is preselected; otherwise the picker falls back to plain warp. A dev-only env var keeps local testing against a self-hosted worker convenient without touching admin settings.

A few subtleties are worth calling out. The two cards have different layering constraints — the confirmation card opens menus upward to avoid covering the input box below it, while the plan card paints menus in an overlay layer so they float above sibling pickers. The host picker exposes both knobs as small passthroughs to its inner dropdown so each call site can configure it to match the other pickers in that view; otherwise the open menu visually collides with the Environment / Base model rows beneath it. Custom mode also matches the dropdown's outer margins and centers its text within the picker box so it sits flush with the surrounding pickers instead of riding a few pixels higher. Finally, when the user clicks "Custom host…" the picker suppresses the standard "menu closed" event that would otherwise refocus the parent and tear focus off the editor we just focused — without that, the inline edit looked like a no-op.

Replaces the static "warp" host string in the orchestrate confirmation
card and the plan-card config block with a real picker that lets users
target self-hosted workers in addition to the default Warp cluster.

Co-Authored-By: Oz <oz-agent@warp.dev>
@cla-bot cla-bot Bot added the cla-signed label May 15, 2026
advait-m and others added 2 commits May 15, 2026 16:23
@advait-m advait-m marked this pull request as ready for review May 15, 2026 23:30
@oz-for-oss
Copy link
Copy Markdown
Contributor

oz-for-oss Bot commented May 15, 2026

@advait-m

I'm starting a first review of this pull request.

You can view the conversation on Warp.

I completed the review and no human review was requested for this pull request.

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

@advait-m advait-m requested a review from cephalonaut May 15, 2026 23:30
Copy link
Copy Markdown
Contributor

@oz-for-oss oz-for-oss Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overview

This PR adds a custom host picker for orchestration and wires it into both the run-agents confirmation card and the plan-card orchestration config block.

Concerns

  • Blank or whitespace-only custom-host edits currently normalize to warp, so committing an empty editor changes the selected host instead of reverting to the previous selection.

Verdict

Found: 0 critical, 1 important, 0 suggestions

Request changes

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

Comment thread app/src/ai/blocklist/inline_action/host_picker.rs Outdated
@advait-m advait-m merged commit 33f3284 into master May 16, 2026
25 checks passed
@advait-m advait-m deleted the advait/host-picker branch May 16, 2026 01:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants