openzoo 0.38.4 → 0.38.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/lib/grokbot.js +9 -2
  2. package/package.json +1 -1
package/lib/grokbot.js CHANGED
@@ -166,7 +166,7 @@ export async function setupGrokBot(argv = []) {
166
166
  // nothing — and silence looked identical to success. Every arriving method
167
167
  // is printed so "did it connect at all" is answerable at a glance.
168
168
  startCursorBackend({ port, log: (m) => console.error(` backend: ${m}`) });
169
- console.error('openzoo: BYOK probe — impersonating api2.cursor.sh on :' + port);
169
+ console.error('openzoo: BYOK probe — impersonating api2/api3/api4/repo42.cursor.sh on :' + port);
170
170
  console.error(' scoped to this launch only (no /etc/hosts, no sudo)');
171
171
  console.error(' WATCH: if StreamChat starts arriving at the proxy, inference moved.');
172
172
  console.error(' If only a BYOK settings pane appears, it is xAI-key-only and buys nothing.');
@@ -180,9 +180,16 @@ export async function setupGrokBot(argv = []) {
180
180
  } catch { /* not running is fine */ }
181
181
  // give it a moment to actually exit before relaunching
182
182
  await new Promise((r) => setTimeout(r, 2500));
183
+ // MAP EVERY CURSOR HOST, NOT JUST api2.
184
+ // MEASURED: mapping api2 alone applied cleanly (verified in the running
185
+ // process args) and still produced ZERO requests, because Grok Bot's own
186
+ // surface is api3 — the bundle carries `https://api3.cursor.sh/tev1/v1`.
187
+ // The self-signed cert already covers all four names, so map them all.
188
+ const hosts = ['api2.cursor.sh', 'api3.cursor.sh', 'api4.cursor.sh', 'repo42.cursor.sh'];
189
+ const rules = hosts.map((h) => `MAP ${h} 127.0.0.1:${port}`).join(',');
183
190
  spawn('open', ['-n', '-a', APP, '--args',
184
191
  '--ignore-certificate-errors',
185
- `--host-resolver-rules=MAP api2.cursor.sh 127.0.0.1:${port}`,
192
+ `--host-resolver-rules=${rules}`,
186
193
  ], { stdio: 'ignore', detached: true }).unref();
187
194
  // keep this process alive so the backend keeps answering
188
195
  console.error('openzoo: leave this running while Grok Bot is open. ctrl-c stops the');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openzoo",
3
- "version": "0.38.4",
3
+ "version": "0.38.5",
4
4
  "description": "Local x402-paying proxy + MCP server for openzoo.fun — point any OpenAI-compatible harness (Cursor, Claude Code, aider, SDKs) at localhost and it pays per call from a local burner wallet. Solana and Base rails live; Robinhood experimental.",
5
5
  "license": "MIT",
6
6
  "type": "module",