Skip to content

Preserve native CU toolsets and explicit bootstrap model selections - #16591

Open
warp-agent-staging[bot] wants to merge 3 commits into
masterfrom
factory/cu-model-toolsets
Open

warp-agent-staging[bot] wants to merge 3 commits into
masterfrom
factory/cu-model-toolsets

Conversation

@warp-agent-staging

@warp-agent-staging warp-agent-staging Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

Description

Carry declared native computer-use toolsets explicitly through endpoint parameters, modal edits, storage and proto transport. Resolve CU selections through the existing model-preferences accessor, matching base-model behavior: an unavailable pane override falls back to the profile, then the CU default; explicit Auto remains distinct from inheritance.

This is the Warp transport portion of REMOTE-3606. Shared design and independent selection controls: https://github.com/warpdotdev/warp-server/pull/20458. Custom-model configuration/runtime: https://github.com/warpdotdev/warp-server/pull/20486 (upper layer of server stack #20487). Additive transport dependency: warpdotdev/warp-proto-apis#405. Deploy the server before enabling custom CU controls; this PR adds no desktop configuration editor.

Linked Issue

  • The linked issue is labeled ready-to-spec or ready-to-implement. — Tracking uses Linear and the approved spec, not these GitHub labels.
  • Where appropriate, screenshots or a short video of the implementation are included below (especially for user-visible or UI changes). — Shared Factory web proof is attached; it does not prove desktop execution.

Testing

After merging current master and updating the protocol pin to 1766ae05d1a6, targeted nextest runs passed: 93 AI API-key tests and 91 Warp custom-endpoint/model/modal/computer-use tests. cargo clippy -p ai -p warp --all-targets --tests -- -D warnings and final ./script/format passed. The full workspace and real gateway/desktop action-execution path were not run.

An additional standalone TUI test/Clippy attempt could not compile: untouched upstream warpui headless/winit platform::Delegate implementations lack get_cursor_shape (E0046). The PR's TUI changes only initialize the new endpoint field in existing fixtures; TUI validation is not claimed as passing.

CI is checked separately on the current revision; passing targeted local validation is not full workspace or desktop execution proof.

  • I have manually tested my changes locally with ./script/run — Not run: the requester explicitly deferred real gateway/native action-execution and interruption/no-replay proof.

Screenshots / Videos

The Alpha Factory CU model defaults and Triage agent recording shows the server PR's web controls on Linux with mocked APIs. No gateway route was tested. The first recording and first two screenshots are an obsolete baseline/wrong-route investigation, not candidate verification. Only the Alpha Factory recording and subsequent screenshots demonstrate this candidate's controls.

Requester-deferred verification

  • Authenticated UI proof: “Explicitly defer these authenticated visual proof criteria” — endpoint schema/toolset filtering, privileged/external read-only restrictions, restore inheritance and scoped completions remain unverified.
  • Real gateway/native execution proof: “Explicitly defer real gateway/action-execution proof” — real OS actions between native turns and interruption/failure/no-replay behavior remain unverified.

These decisions close only the two verification gates for handoff. They do not make those checks passed, establish a verified LiteLLM/OpenRouter route, waive required CI, approve the code, or authorize merging. The attached Linux/MSW recording remains partial web-control proof.

Computer-use video recordings (2)

Inspecting Factory Agent defaults and per-agent configuration for the Computer use model field in the mocked Factory web app.
Factory computer-use model controls: Inspecting Factory Agent defaults and per-agent configuration for the Computer use model field in the mocked Factory web app.

Opens Computer use model choices in Alpha Factory agent defaults, saves a custom default, then inspects and saves Auto on the Triage agent and checks Claude Code harness visibility.
Alpha Factory CU model defaults and Triage agent: Opens Computer use model choices in Alpha Factory agent defaults, saves a custom default, then inspects and saves Auto on the Triage agent and checks Claude Code harness visibility.

Computer-use screenshots (7)

Baseline Factory Settings > Agent defaults (Harness Warp, Default model Auto, Host Warp hosted, Runner unselected, Secrets, MCPs)
Baseline Factory Settings > Agent defaults (Harness Warp, Default model Auto, Host Warp hosted, Runner unselected, Secrets, MCPs)

New Agent form (Warp harness) shows Harness/Model/Host/Runner but no Computer use model field
New Agent form (Warp harness) shows Harness/Model/Host/Runner but no Computer use model field

Alpha Factory (/factory/alpha) CU model list: Auto, Claude Sonnet 4.5, Team CU model · Team gateway, disabled "Unavailable CU model — Disabled by team policy"
Alpha Factory (/factory/alpha) CU model list: Auto, Claude Sonnet 4.5, Team CU model · Team gateway, disabled "Unavailable CU model — Disabled by team policy"

Saved custom CU default "Team CU model · Team gateway · ANTHROPIC_CO..." after navigating away and back in Alpha Factory agent defaults
Saved custom CU default "Team CU model · Team gateway · ANTHROPIC_CO..." after navigating away and back in Alpha Factory agent defaults

Triage agent (/factory/alpha/agents/agent-triage) CU choices: Use Factory default (...), Auto, Claude Sonnet 4.5, Team CU model, disabled Unavailable row
Triage agent (/factory/alpha/agents/agent-triage) CU choices: Use Factory default (...), Auto, Claude Sonnet 4.5, Team CU model, disabled Unavailable row

Triage agent after save showing explicit Computer use model "Auto"
Triage agent after save showing explicit Computer use model "Auto"

Triage agent with Harness temporarily set to Claude Code: Auth, Model "From environment", no Computer use model field
Triage agent with Harness temporarily set to Claude Code: Auth, Model "From environment", no Computer use model field

_Plans_: - _[Factory CU model pickers and schema-constrained gateway toolsets (REMOTE-3606)](https://staging.warp.dev/drive/notebook/0WBCniYWjzkas7FbLiLRyb)_ - _[Split REMOTE-3606 server changes into two native stack layers](https://staging.warp.dev/drive/notebook/qMSmxEgD8mdtwk8CPEuWyQ)_

Agent Mode

  • Warp Agent Mode - This PR was created via Warp's AI Agent Mode

CHANGELOG-IMPROVEMENT: Preserve native computer-use toolset configuration through custom endpoint edits and requests.

@warp-agent-staging

Copy link
Copy Markdown
Contributor Author

This PR was generated with Warp.

Comment @warp-staging-factory on this PR to send it follow-up work.

View run View conversation View on Slack

@warp-agent-staging warp-agent-staging Bot added the factory:eng-factory-slim Label associated to the "eng-factory-slim" factory label Oct 21, 2026
@cla-bot cla-bot Bot added the cla-signed label Oct 21, 2026
@warp-agent-staging
warp-agent-staging Bot requested a review from bnavetta October 21, 2026 16:39
@warp-agent-staging
warp-agent-staging Bot marked this pull request as ready for review October 21, 2026 17:00
Comment thread app/src/ai/custom_endpoints_tests.rs
Comment thread app/src/ai/blocklist/controller.rs
Comment thread app/src/ai/custom_endpoints.rs Outdated
Comment thread app/src/ai/llms.rs Outdated
Comment thread crates/ai/src/api_keys.rs Outdated
@warp-agent-staging
warp-agent-staging Bot requested a review from bnavetta October 21, 2026 18:34
…olsets

# Conflicts:
#	Cargo.lock
#	Cargo.toml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla-signed factory:eng-factory-slim Label associated to the "eng-factory-slim" factory

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant