[Feat] Add bounded computer use to Linux sandboxes - #2972
Draft
roomote-roomote[bot] wants to merge 2 commits into
Draft
roomote-roomote[bot] wants to merge 2 commits into
roomote-roomote[bot] wants to merge 2 commits into
Conversation
Contributor
| return { forward: true }; | ||
| } | ||
|
|
||
| const state = await readState(); |
Contributor
There was a problem hiding this comment.
This is a time-of-check/time-of-use gap rather than a handoff guard. A person can send input after readState() returns agent but before the proxy writes the request to the driver, so the Cua action still reaches the shared browser while that person is driving. Route agent actions through a desktop-side reservation/serialization point (or otherwise revalidate at the injection boundary) so the advertised fail-closed handoff is enforceable.
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed
computer_useenvironment configuration with an exact HTTP(S) browser-origin allowlist.human_drivinghandoff, keeps observations available, and fail-closes mutations when a person is driving or handoff state is unavailable.Why this change was made
Cua Driver now provides a released Linux X11 and Chromium DOM surface that can complement Roomote's shared sandbox desktop. This prototype evaluates that path without conflating the separate
jev-usechooser recipe with an agent loop or adopting the draft AGPL perception artifacts.Impact
Environment owners can enable bounded browser computer use for selected origins; existing environments remain unchanged. The prototype depends on the Shared Desktop work in #2791, so this is a stacked PR targeting that feature branch.
A production-like live check ran Cua Driver 0.28.2 through the bundled proxy as the unprivileged sandbox user under Xvfb. It attached to the baked Chrome-for-Testing profile, observed DOM refs, typed and submitted a unique fixture value, verified the result semantically, and matched the fixture's independent state endpoint. Native AT-SPI remains unavailable without a desktop session bus, so this slice claims Chromium DOM support only, not general Linux application control. Browser screenshots were not applicable because the shipped change is runtime configuration and mediation rather than a rendered Roomote UI.