Skip to content

Commit 24ced06

Browse files
committed
fix(docs): migrate all endpoints to unified surf.cascade.fyi domain
Replace legacy individual service URLs (twitter.surf.cascade.fyi, web.surf.cascade.fyi, inference.surf.cascade.fyi) with the unified surf.cascade.fyi/api/v1/ endpoints across CLI help text, README, SKILL.md, CLAUDE.md, and OpenClaw plugin docs.
1 parent 3da17ca commit 24ced06

9 files changed

Lines changed: 26 additions & 18 deletions

File tree

.claude/CLAUDE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ All commands run from the repo root. Always `pnpm build` first.
110110
### CLI smoke test
111111
```bash
112112
# Direct HTTP request (single process, no concurrency concerns)
113-
node packages/x402-proxy/dist/bin/cli.js https://twitter.surf.cascade.fyi/users/cascade_fyi --network solana
113+
node packages/x402-proxy/dist/bin/cli.js -X POST -d '{"ref":"CoinbaseDev"}' https://surf.cascade.fyi/api/v1/twitter/user --network solana
114114

115115
# Wallet info
116116
node packages/x402-proxy/dist/bin/cli.js wallet info

packages/x402-proxy/CHANGELOG.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [0.9.4] - 2026-03-27
11+
12+
### Fixed
13+
- All example URLs migrated from legacy individual service subdomains (`twitter.surf.cascade.fyi`, `web.surf.cascade.fyi`, `inference.surf.cascade.fyi`) to unified `surf.cascade.fyi/api/v1/` endpoints across CLI help text, README, SKILL.md, and OpenClaw plugin docs
14+
1015
## [0.9.3] - 2026-03-26
1116

1217
### Fixed
@@ -295,7 +300,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
295300
- `appendHistory` / `readHistory` / `calcSpend` - JSONL transaction history
296301
- Re-exports from `@x402/fetch`, `@x402/svm`, `@x402/evm`
297302

298-
[Unreleased]: https://github.com/cascade-protocol/x402-proxy/compare/v0.9.3...HEAD
303+
[Unreleased]: https://github.com/cascade-protocol/x402-proxy/compare/v0.9.4...HEAD
304+
[0.9.4]: https://github.com/cascade-protocol/x402-proxy/compare/v0.9.3...v0.9.4
299305
[0.9.3]: https://github.com/cascade-protocol/x402-proxy/compare/v0.9.2...v0.9.3
300306
[0.9.2]: https://github.com/cascade-protocol/x402-proxy/compare/v0.9.1...v0.9.2
301307
[0.9.1]: https://github.com/cascade-protocol/x402-proxy/compare/v0.9.0...v0.9.1

packages/x402-proxy/README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
## Quick Start
66

77
```bash
8-
npx x402-proxy https://twitter.surf.cascade.fyi/users/cascade_fyi
8+
npx x402-proxy -X POST -d '{"ref":"CoinbaseDev"}' https://surf.cascade.fyi/api/v1/twitter/user
99
```
1010

1111
That's it. The endpoint returns 402, x402-proxy pays and streams the response.
@@ -52,14 +52,14 @@ openclaw mcp set surf '{"command":"npx","args":["-y","x402-proxy","mcp","https:/
5252
Works like curl. Response body streams to stdout, payment info goes to stderr.
5353

5454
```bash
55-
# GET request
56-
$ npx x402-proxy https://twitter.surf.cascade.fyi/users/cascade_fyi
55+
# POST request
56+
$ npx x402-proxy -X POST -d '{"ref":"CoinbaseDev"}' https://surf.cascade.fyi/api/v1/twitter/user
5757

5858
# POST with body and headers (curl-style short flags: -X, -H, -d)
5959
$ npx x402-proxy -X POST \
6060
-H "Content-Type: application/json" \
6161
-d '{"url":"https://x402.org"}' \
62-
https://web.surf.cascade.fyi/v1/crawl
62+
https://surf.cascade.fyi/api/v1/web/crawl
6363

6464
# Force a specific network
6565
$ npx x402-proxy --network base https://api.example.com/data
@@ -71,7 +71,7 @@ $ npx x402-proxy --verbose https://api.example.com/data
7171
$ npx x402-proxy --protocol mpp \
7272
-X POST -H "Content-Type: application/json" \
7373
-d '{"model":"minimax/minimax-m2.5","stream":true,"messages":[{"role":"user","content":"Hello"}]}' \
74-
https://inference.surf.cascade.fyi/v1/chat/completions
74+
https://surf.cascade.fyi/api/v1/inference/completions
7575

7676
# Pipe-safe
7777
$ npx x402-proxy https://api.example.com/data | jq '.results'

packages/x402-proxy/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "x402-proxy",
3-
"version": "0.9.3",
3+
"version": "0.9.4",
44
"description": "curl for x402 paid APIs. Auto-pays any endpoint on Base, Solana, and Tempo. Also works as an OpenClaw plugin.",
55
"type": "module",
66
"sideEffects": false,

packages/x402-proxy/skills/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ description: Use x402-proxy CLI for consuming and debugging x402 and MPP paid AP
1010
## Quick start
1111

1212
```bash
13-
npx x402-proxy https://twitter.surf.cascade.fyi/users/cascade_fyi
13+
npx x402-proxy -X POST -d '{"ref":"CoinbaseDev"}' https://surf.cascade.fyi/api/v1/twitter/user
1414
```
1515

1616
First run auto-creates a wallet. No setup needed.

packages/x402-proxy/skills/references/openclaw-plugin.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ Add the plugin config to your `openclaw.json` (or via `openclaw config edit`):
4747
"providers": {
4848
"surf-inference": {
4949
"baseUrl": "/x402/v1",
50-
"upstreamUrl": "https://inference.surf.cascade.fyi",
50+
"upstreamUrl": "https://surf.cascade.fyi/api/v1/inference",
5151
"models": [
5252
{ "id": "anthropic/claude-opus-4.6", "name": "Claude Opus 4.6", "maxTokens": 200000, "reasoning": true, "input": ["text", "image"], "cost": { "input": 0.015, "output": 0.075, "cacheRead": 0.0015, "cacheWrite": 0.01875 }, "contextWindow": 200000 },
5353
{ "id": "anthropic/claude-sonnet-4.6", "name": "Claude Sonnet 4.6", "maxTokens": 200000, "reasoning": true, "input": ["text", "image"], "cost": { "input": 0.003, "output": 0.015, "cacheRead": 0.0003, "cacheWrite": 0.00375 }, "contextWindow": 200000 },
@@ -79,7 +79,7 @@ Add the plugin config to your `openclaw.json` (or via `openclaw config edit`):
7979
| Field | Description |
8080
|-------|-------------|
8181
| `providers.<name>.baseUrl` | Route path registered in OpenClaw (e.g., `/x402/v1`) |
82-
| `providers.<name>.upstreamUrl` | Actual upstream endpoint (e.g., `https://inference.surf.cascade.fyi`) |
82+
| `providers.<name>.upstreamUrl` | Actual upstream endpoint (e.g., `https://surf.cascade.fyi/api/v1/inference`) |
8383
| `providers.<name>.models[]` | Model catalog array |
8484
| `keypairPath` | Optional path to solana-keygen JSON file (overrides wallet resolution) |
8585
| `rpcUrl` | Solana RPC URL (defaults to mainnet public endpoints with failover) |
@@ -118,11 +118,11 @@ openclaw models # verify models appear
118118

119119
## Fetching latest models
120120

121-
The model list on `inference.surf.cascade.fyi` changes over time. Fetch the current catalog:
121+
The model list on `surf.cascade.fyi` changes over time. Fetch the current catalog:
122122

123123
```bash
124124
npx x402-proxy --protocol mpp --network solana \
125-
https://inference.surf.cascade.fyi/v1/models
125+
https://surf.cascade.fyi/api/v1/inference/models
126126
```
127127

128128
Then update the `models` array in your plugin config accordingly.

packages/x402-proxy/src/commands/fetch.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,8 @@ export const fetchCommand = buildCommand<FetchFlags, [url?: string], CommandCont
4343
fullDescription: `Make a paid HTTP request. Payment is automatic when the server returns 402.
4444
4545
Examples:
46-
$ x402-proxy https://twitter.surf.cascade.fyi/users/cascade_fyi
47-
$ x402-proxy -X POST -d '{"url":"https://x402.org"}' https://web.surf.cascade.fyi/v1/crawl
46+
$ x402-proxy -X POST -d '{"ref":"CoinbaseDev"}' https://surf.cascade.fyi/api/v1/twitter/user
47+
$ x402-proxy -X POST -d '{"url":"https://x402.org"}' https://surf.cascade.fyi/api/v1/web/crawl
4848
$ x402-proxy https://api.example.com/data | jq '.results'`,
4949
},
5050
parameters: {
@@ -153,7 +153,9 @@ Examples:
153153
console.log();
154154
console.log(
155155
pc.dim(" try: ") +
156-
pc.cyan("$ npx x402-proxy https://twitter.surf.cascade.fyi/users/cascade_fyi"),
156+
pc.cyan(
157+
`$ npx x402-proxy -X POST -d '{"ref":"CoinbaseDev"}' https://surf.cascade.fyi/api/v1/twitter/user`,
158+
),
157159
);
158160
console.log();
159161
console.log(pc.dim(" https://github.com/cascade-protocol/x402-proxy"));

packages/x402-proxy/src/commands/mcp-add.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ export const mcpAddCommand = buildCommand<McpAddFlags, [name: string, url: strin
251251

252252
prompts.log.step("Try your first request:");
253253
prompts.log.message(
254-
` ${pc.cyan("$ npx x402-proxy https://twitter.surf.cascade.fyi/users/cascade_fyi")}`,
254+
` ${pc.cyan(`$ npx x402-proxy -X POST -d '{"ref":"CoinbaseDev"}' https://surf.cascade.fyi/api/v1/twitter/user`)}`,
255255
);
256256
prompts.log.message(
257257
` ${pc.dim("Run")} ${pc.cyan("npx x402-proxy")} ${pc.dim("to see your wallet and balance")}`,

packages/x402-proxy/src/commands/setup.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ export async function runSetup(opts?: {
172172

173173
prompts.log.step("Try your first request:");
174174
prompts.log.message(
175-
` ${pc.cyan("$ npx x402-proxy https://twitter.surf.cascade.fyi/users/cascade_fyi")}`,
175+
` ${pc.cyan(`$ npx x402-proxy -X POST -d '{"ref":"CoinbaseDev"}' https://surf.cascade.fyi/api/v1/twitter/user`)}`,
176176
);
177177

178178
prompts.outro(pc.green("Setup complete!"));

0 commit comments

Comments
 (0)