Conversation
Keep QM as the team room and Grok Bot as a consenting owner's computer, bridged by a versioned HTTP protocol instead of GUI scraping. Co-authored-by: Cursor <cursoragent@cursor.com>
Ship the flag-gated HTTP data plane so a room can dispatch to Sara on a personal Grok computer and project labeled results, without making Grok Bot multiplayer. Co-authored-by: Cursor <cursoragent@cursor.com>
The walkthrough video belongs on the PR as playable media, not as tracked source. Co-authored-by: Cursor <cursoragent@cursor.com>
Keep the existing adrs/ directory tracked; only the local Grok Bridge note stays untracked. Co-authored-by: Cursor <cursoragent@cursor.com>
…e service facade Keep GrokBridge as the deep interface so HTTP and wiring still call createGrokBridge. Co-authored-by: Cursor <cursoragent@cursor.com>
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.
Summary
grok_bridge, default off → 404) so a named QM agent like Sara can run on a consenting owner's personal Grok Bot computer and post labeled results back into the originating room. Grok Bot stays per-user; QM stays the multiplayer surface.qm-grok-bridge/v1over HTTP: pair → owner consent → inbound webhook URL+key → dispatch a job envelope → Bot POSTs seq events to a job-scoped callback. Callback tokens are hashed at rest; queued jobs reject a guessable bearer; guests cannot pair or dispatch.Walkthrough
grok-bridge.mp4
Monday
#pipeline-review: Maya asks Sara. Sara runs on Divyansh's Grok Bot and the watch list comes back labeled Sara · via Divyansh's Grok Bot.How it works
grok_bridgeon the org.POST /v1/grok-bridge/pairings→ ownerPOST .../decide→POST .../inboundwith the Grok Bot webhook routine URL + key.POST /v1/grok-bridge/jobsPOSTsqm-grok-bridge/v1to that webhook. A 200 means the run started, not finished./v1/grok-bridge/jobs/:id/eventswith the job bearer. QM projectsagent · via {owner}'s Grok Botinto the session.CUA is installer-only (find/create
QM · Sara, paste the reply skill). It must never click Always allow. After pairing, jobs do not go through GUI scraping.Test plan
node --experimental-test-module-mocks --test test/grok-bridge.test.ts test/grok-bridge-routes.test.ts(Node ≥24)npm run lintandnpm run typecheckgrok_bridgeon a real QM, pair Sara to a consenting owner, dispatch from a shared session, confirm the labeled transcript line/v1/grok-bridge/*route, including the public events callback