mirror of
https://github.com/warpdotdev/warp.git
synced 2026-05-06 15:22:21 +08:00
## Description <!-- Please remember to add your design buddy onto the PR for review, if it contains any UI changes! --> This PR introduces a new `HarnessAvailabilityModel`, following server-side changes to expose the list of available harnesses for use with Oz in the `availableHarnesses` section of the `User` GraphQL query. We model this new model (ha) after the existing models (ha) model, which stores the list of available LLMs (`LLMPreferences`) that we get from the server. We also update the cloud mode UI, management view filter, and CLI so that we check this model to determine the list of harnesses to display (rather than hardcoding them), as well as to show enabled/disabled state when triggering something from cloud mode. ## Screenshots / Videos <!-- Attach screenshots or a short video demonstrating the change, where appropriate. Remove this section if it is not relevant to your PR. --> Example of disabled state for harnesses in cloud mode: <img width="878" height="419" alt="image" src="https://github.com/user-attachments/assets/a2b62e18-2a65-42aa-8b5b-c45b58d22855" /> No harnesses available state: https://www.loom.com/share/65d9ed8f52be4a5ba4b1e320fdddff0b ## Testing <!-- How did you test this change? What automated tests did you add? If you didn't add any new tests, what's your justification for not adding any? --> Tested locally, ensuring that: - Disabled harnesses show up correctly - Non-feature-flag-enabled harnesses don't show up - Different UI surfaces all reflect the list from the server ## Agent Mode - [x] Warp Agent Mode - This PR was created via Warp's AI Agent Mode