feat: add guarded autopilot mode for Grok - #970
Conversation
6e1dc0c to
daffcbf
Compare
f30b6ad to
ef71700
Compare
|
Thank you for this, and separately thank you for going back to confirm #940 was still broken after the release. That kind of follow-through is genuinely valuable and it did not go unnoticed. I have given this a full adversarial pass, because it is approval-behaviour code in the security shell and it deserved more than a skim. I want to be straight with you: the verdict is not-yet, but most of the reasoning is about scope rather than craft. Your reading of the trust boundary is right. The WebSocket adapter is the correct place for a value-level gate, isRemoteDeniedConfigWrite is the correct thing to mirror, settleRejectedInvoke is used correctly so the WebUI does not white-screen, and the subscribe-acp.set-mode wire name is right (I chased that as a suspected typo; it is not one). That is a better grasp of this codebase than most first contributions to it. Five things need resolving before this can land. 1. The guardrail only inspects execute-kind tool calls. 2. The classifier is not strong enough to carry a user-facing promise. 3. The remote gate closes one door of several. 4. Selector and engine can diverge silently. 5. Please split out the recoveryCapture change. None of this is wasted work. The adapter gate is sound and worth keeping; it needs the declarative paths alongside it. If you want to take another pass, I am happy to review it again, and I would start with the kind allowlist in point 1 since it is the smallest change with the largest effect. If you would rather hand it off at this point that is completely fine too, just say the word and we will pick it up from here with credit to you. One practical note: main has moved a fair way under this branch, including two changes to bridgeAllowlist.ts, so it will need a rebase before it is mergeable. |
|
Core-lane triage: removing All nine changed files are TypeScript in the Desktop tree ( Two things for the Desktop lane, neither of which is a Core call:
Leaving |
Summary
Guarded Autopilotmode for the Grok ACP backenddefaultACP mode and lets Wayland own guarded approval handling; it does not enable raw YOLO/full-auto behaviorautoGuarded, while preserving ordinary remote ACP mode changesSafety behavior
Routine Grok permission requests are auto-approved in guarded mode. Existing catastrophic shell-command checks remain explicit confirmations. This intentionally does not add Grok to
FULL_AUTO_MODE.Verification
The mode is scoped to a local desktop conversation and is not a sandbox or a replacement for workspace/egress controls.