Skip to content

Default SDKs/MCP/dashboard to https://cast.agentrelay.com#205

Merged
willwashburn merged 3 commits into
mainfrom
chore/default-url-cast-agentrelay
Jun 21, 2026
Merged

Default SDKs/MCP/dashboard to https://cast.agentrelay.com#205
willwashburn merged 3 commits into
mainfrom
chore/default-url-cast-agentrelay

Conversation

@willwashburn

@willwashburn willwashburn commented Jun 20, 2026

Copy link
Copy Markdown
Member

Summary

Point every client default at the new hosted gateway cast.agentrelay.com, replacing the legacy gateway.relaycast.dev / api.relaycast.dev defaults, and remove the now-decommissioned legacy engines from the remaining probe paths.

Client defaults (259b88d)

  • SDKs (TypeScript, Python, Rust, Swift): default baseUrl + tests
  • MCP: registration default, smithery config, mcp-server.json, doc strings
  • openclaw: RELAY_BASE_URL default (was api.relaycast.dev)
  • observer-dashboard: cast.agentrelay.com becomes the first engine candidate
  • Docs/READMEs updated

Remaining legacy references (64ea8d8)

  • workflows/sdk-setup-client-80-100.ts: the 80-100 gate asserted setup.ts still contained gateway.relaycast.dev — which now breaks since the default moved; updated the gate + doc string
  • openapi.yaml: hosted server URLs → cast.agentrelay.com
  • AGENTS.md: hosted gateway reference
  • .github/workflows/deploy.yml: MCP smoke-test + Smithery publish endpoint
  • site/index.html: curl examples

Decommission legacy prod engines (d8e1830)

The legacy gateway.relaycast.dev / api.relaycast.dev engines are being turned off, so probing them for production observers is dead weight (a guaranteed failed round-trip before reaching cast.agentrelay.com).

  • observer-dashboard: production + default observer hosts now resolve to [cast.agentrelay.com] only. The generic candidate-probing logic stays (still used by per-environment hosts) and its tests now exercise it via surviving preview hosts.
  • e2e.ts: drop the dead api.relaycast.dev → observer.relaycast.dev mapping; update usage example.
  • origin.test.ts: cosmetic sample URL.

Intentionally untouched

Preview/staging hosts (prNN-*, staging-*) and their explicit-override SDK tests stay on relaycast.dev — moving that zone (incl. wrangler deploy targets + DNS) is a separate, coordinated infra change.

Verification

  • Full e2e suite passes against https://cast.agentrelay.com (107/107).
  • observer-dashboard + engine unit suites pass after the fallback removal.

🤖 Generated with Claude Code

Point every client default at the new hosted gateway (cast.agentrelay.com),
replacing the legacy gateway.relaycast.dev / api.relaycast.dev defaults across
all SDKs, the MCP server, the openclaw setup, and the docs.

- SDKs (TypeScript, Python, Rust, Swift): default baseUrl + tests
- MCP: registration default, smithery config, mcp-server.json, doc strings
- openclaw: RELAY_BASE_URL default (was api.relaycast.dev)
- observer-dashboard: cast.agentrelay.com is now the first engine candidate
  for the hosted observer; gateway.relaycast.dev / api.relaycast.dev remain as
  fallbacks so un-migrated workspaces keep working
- Docs/READMEs updated to the new default

Explicit baseUrl overrides (incl. prNN-gateway preview hosts and self-hosted
engines) are unchanged. Verified end-to-end: the full e2e suite passes against
https://cast.agentrelay.com (107/107).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@gemini-code-assist

Copy link
Copy Markdown

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@coderabbitai

coderabbitai Bot commented Jun 20, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

All occurrences of the old hosted engine domains (https://gateway.relaycast.dev and https://api.relaycast.dev) are replaced with https://cast.agentrelay.com as the new default across all SDK runtimes (TypeScript, Python, Rust, Swift), the MCP server, openclaw, the observer dashboard, documentation, and test suites. The observer dashboard additionally expands its candidate list to prepend the new domain as the primary resolution target.

Changes

Hosted Engine Domain Migration

Layer / File(s) Summary
SDK runtime default URL constants
packages/sdk-typescript/src/client.ts, packages/sdk-typescript/src/relay.ts, packages/sdk-typescript/src/setup.ts, packages/sdk-typescript/src/setup-types.ts, packages/sdk-typescript/src/ws.ts, packages/sdk-python/src/relay_sdk/client.py, packages/sdk-python/src/relay_sdk/ws.py, packages/sdk-rust/src/client.rs, packages/sdk-rust/src/relay.rs, packages/sdk-rust/src/ws.rs, packages/sdk-rust/src/credentials.rs, packages/sdk-swift/Sources/Relaycast/...
Default base URL constants and fallback values in all SDK HTTP and WebSocket clients updated from gateway.relaycast.dev to cast.agentrelay.com.
Observer dashboard relay server candidate ordering
packages/observer-dashboard/src/lib/relay-server.ts, packages/observer-dashboard/src/lib/relay-server.test.ts
resolveRelayServerCandidatesFromHost for observer.relaycast.dev now returns cast.agentrelay.com as the first candidate, with gateway.relaycast.dev and api.relaycast.dev as ordered fallbacks. The test asserts the new first-candidate value.
MCP server and openclaw runtime defaults
packages/mcp/mcp-server.json, packages/mcp/smithery-config-schema.json, packages/mcp/src/smithery.ts, packages/mcp/src/tools/programmability.ts, packages/mcp/src/tools/registration.ts, packages/openclaw/src/setup.ts, packages/openclaw/skill/SKILL.md
DEFAULT_BASE_URL constants, smithery config schema defaults, MCP server env var, and openclaw .env generation defaults all updated to cast.agentrelay.com.
Documentation and README updates
README.md, docs/sdk-setup-client.md, docs/sdk-setup-client-acceptance.md, packages/sdk-typescript/README.md, packages/sdk-python/README.md, packages/sdk-rust/README.md, packages/sdk-swift/README.md
All hosted engine URL references in documentation, architecture diagrams, curl examples, and API reference sections updated to cast.agentrelay.com.
Test suite URL assertion updates
packages/sdk-typescript/src/__tests__/*, packages/sdk-python/tests/*
Expected request URL strings in all test assertions updated from gateway.relaycast.dev to cast.agentrelay.com across all tested endpoints (HTTP, WebSocket, channels, messages, deliveries, programmability, setup, relay, workspace, strict-identity).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • AgentWorkforce/relaycast#151: Previously retargeted the same SDK default base URL code paths (TypeScript HttpClient, workspace defaults) from an older gateway domain to a newer one — direct predecessor to this migration.
  • AgentWorkforce/relaycast#199: Introduced workspace.fleetNodes.get/set/inherit in relay.ts and workspace.test.ts, which are among the test files whose URL assertions are updated in this PR.

Suggested labels

codex

🐇 Hop, hop, the gateway's gone,
A new domain to carry on!
cast.agentrelay.com shines bright,
Every URL set just right.
The rabbit stamps each URL true —
From old to new, the whole crew flew! 🌟

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 15.38% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely summarizes the main change: updating default SDK/MCP/dashboard URLs to the new hosted gateway domain.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description check ✅ Passed The PR description clearly relates to the changeset, detailing the migration from legacy gateway URLs to cast.agentrelay.com across all SDKs, tools, and documentation.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/default-url-cast-agentrelay

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 and usage tips.

@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: 259b88dfe4

ℹ️ 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 README.md
## API Reference

Base URL: `https://gateway.relaycast.dev/v1` (the hosted engine). Self-hosters use their own engine
Base URL: `https://cast.agentrelay.com/v1` (the hosted engine). Self-hosters use their own engine

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Update OpenAPI servers to the new hosted origin

Root AGENTS.md requires README.md and openapi.yaml to be updated together when API behavior changes. This line moves the documented hosted API to cast.agentrelay.com, but openapi.yaml still advertises https://gateway.relaycast.dev/v1 in servers[0] (and its root-level A2A server entries), so consumers/generated clients that rely on the schema keep using the old production origin while the SDKs and README use the new one. Please update the OpenAPI server URLs in the same change.

Useful? React with 👍 / 👎.

willwashburn and others added 2 commits June 20, 2026 23:38
Follow-up to the client-default change: update the remaining
gateway.relaycast.dev / api.relaycast.dev references that were out of the
original scope.

- workflows/sdk-setup-client-80-100.ts: the 80-100 gate asserted setup.ts
  still contained gateway.relaycast.dev, which now breaks since setup.ts
  defaults to cast.agentrelay.com; update the gate + the doc string
- openapi.yaml: hosted server URLs -> cast.agentrelay.com
- AGENTS.md: hosted gateway reference -> cast.agentrelay.com
- .github/workflows/deploy.yml: MCP smoke-test + Smithery publish endpoint
- site/index.html: curl examples

Preview/staging hosts, observer-dashboard fallbacks, and explicit-override
tests are intentionally left on the legacy domains.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The legacy gateway.relaycast.dev / api.relaycast.dev engines are being turned
off, so probing them for production observers is now dead weight (a guaranteed
failed round-trip before reaching cast.agentrelay.com).

- observer-dashboard: production + default observer hosts now resolve to
  [cast.agentrelay.com] only. Per-environment preview/staging hosts keep their
  -gateway/-api fallback (unrelated: a per-env gateway may not exist), so the
  generic candidate-probing logic stays and its tests now exercise it via the
  surviving preview hosts.
- e2e.ts: drop the dead api.relaycast.dev -> observer.relaycast.dev mapping
  (identical to the default) and update the usage example.
- origin.test.ts: cosmetic sample URL -> cast.agentrelay.com.

Preview/staging hosts (prNN-*, staging-*) are intentionally untouched — moving
those off relaycast.dev is a separate, coordinated deploy/DNS change.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@willwashburn willwashburn merged commit 837bb6d into main Jun 21, 2026
5 checks passed
@willwashburn willwashburn deleted the chore/default-url-cast-agentrelay branch June 21, 2026 03:59
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