Skip to content

feat(plugin): add trusted Relay rooms and Relayfile access#2

Merged
khaliqgant merged 5 commits into
feat/agent-relay-sdkfrom
feat/relay-cloud-rooms
Jul 25, 2026
Merged

feat(plugin): add trusted Relay rooms and Relayfile access#2
khaliqgant merged 5 commits into
feat/agent-relay-sdkfrom
feat/relay-cloud-rooms

Conversation

@khaliqgant

@khaliqgant khaliqgant commented Jul 24, 2026

Copy link
Copy Markdown
Member

Summary

  • add trusted multiplayer room setup to the Agent Relay Herdr plugin
  • accept room invitations before local workspace configuration and renew revocable per-device participant sessions through Agent Relay Cloud
  • expose channels, DMs and group DMs, threads, reactions, search/read state, presence, and realtime traffic directly through the Agent Relay SDK/Relaycast
  • suppress only byte-identical replays of stable realtime event identities while delivering changed or unidentifiable events
  • discover, adopt, configure, connect, resolve, mount, and write back integrations directly through Relayfile
  • keep workspace owner/admin credentials out of participant configuration, argv, logs, and persisted plugin state

V1 trust model

Every invited member is a trusted full participant for ordinary agent-level collaboration actions. Workspace owner keys, owner-only Relaycast administration, and Cloud organization administration remain owner-only.

Cloud is used only for invite, membership, and participant-device credential lifecycle. It is not a chat proxy. This change does not modify or bump Relaycast or relaycast-cloud.

Invitation token contract

The plugin accepts only opaque invitations in the generic relay_room_inv_ namespace followed by exactly 43 URL-safe characters, matching Cloud and the Agent Relay CLI. It rejects product-specific, malformed, and truncated values before invoking the accept command and redacts valid room tokens from subprocess output.

Validation

  • exact head 434ea128b168948d5fb538f32c93b317b9c4dcbe: all applicable GitHub checks passed
  • Agent Relay plugin tests: 34 passed locally and on Ubuntu, macOS, and Windows
  • repository-wide GitHub checks passed on Ubuntu, macOS, and Windows
  • cargo fmt --check
  • cargo clippy --all-targets --locked -- -D warnings
  • aggregate Rust run: 2773 passed; two unrelated parallelism-sensitive tests passed individually
  • Bun integration asset tests: 17 passed
  • plugin marketplace tests: 12 passed
  • Python tests: 86 passed
  • installed Agent Relay SDK smoke: 12 required multiplayer surfaces present
  • plugin configuration and credential redaction exercised on restart, invite-first binding, session renewal/revocation, channels, DMs/group DMs, realtime deduplication, Relayfile provider metadata, mount setup, and writeback guidance
  • no unresolved review threads

Stack

@cursor

cursor Bot commented Jul 24, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@coderabbitai

coderabbitai Bot commented Jul 24, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 08d59e1f-47e2-48af-bff2-cbb88358531d

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/relay-cloud-rooms

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e47042b7bc

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread plugins/agent-relay/dist/room-client.mjs Outdated
Comment thread plugins/agent-relay/dist/room-client.mjs Outdated
@khaliqgant

Copy link
Copy Markdown
Member Author

Cross-repo Fleet and trusted-room signoff

Reviewed as one immutable stack:

Fresh sequential cross-node reviews:

  1. Claude on sf-mini: APPROVE — no blocker or major finding.
  2. Codex on finn-mini: APPROVE — no P0, P1, or P2 finding.

Codex exact-head validation:

  • Relay focused CLI suites: 56/56 passed; current GitHub Rust, clippy, format, cross-compile, E2E, and two-node Fleet checks are green.
  • Cloud room/access/service/Relaycast/PGlite suites: 44/44 passed.
  • Herdr Relay Room suite: 22/22 passed; the PR's complete plugin matrix is 33/33 on Ubuntu, macOS, and Windows.
  • All review threads are resolved: Relay 6/6, Cloud 3/3, Herdr 2/2.

Live Fleet placement and Relay coordination were also proven:

  • Claude invocation inv_206471369178624000 dispatched to sf-mini.
  • Codex invocation inv_206477875646980096 dispatched to finn-mini.
  • Both reviewers returned their verdict over Relay and were released through Fleet.

The v1 contract uses existing Relaycast agent-token and workspace APIs. No Relaycast or relaycast-cloud source or dependency change is required.

@khaliqgant
khaliqgant merged commit 3f16de8 into feat/agent-relay-sdk Jul 25, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant