openzoo 0.38.0 → 0.38.1

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/hosts.js +19 -0
  2. package/package.json +1 -1
package/lib/hosts.js CHANGED
@@ -137,6 +137,25 @@ export function blockBackend(hosts = BACKEND_HOSTS) {
137
137
  }
138
138
  }
139
139
  if (!pairs.length) return { already: true };
140
+
141
+ // GROK BOT SHARES CURSOR'S BACKEND — REFUSE RATHER THAN BREAK IT.
142
+ // MEASURED 2026-08-16: api2.cursor.sh pinned to 127.0.0.1 by this function
143
+ // took out Grok Bot (bundle com.anysphere.sand, Anysphere's app on Cursor
144
+ // infrastructure) completely — "Reconnecting to your computer...",
145
+ // edge/handler-failed: [unavailable] on every call, and profile writes
146
+ // failing. The user uninstalled and reinstalled the app twice chasing it,
147
+ // because nothing in the app can reveal an OS-level DNS blackhole.
148
+ // This block predates Grok Bot existing, so it never knew to warn.
149
+ if (!process.env.OPENZOO_FORCE_BLOCK && fs.existsSync('/Applications/Grok Bot.app')) {
150
+ console.log('');
151
+ console.log('REFUSING to block the editor backend: Grok Bot is installed.');
152
+ console.log(' Grok Bot runs on the SAME host this would blackhole (api2.cursor.sh),');
153
+ console.log(' so blocking it breaks Grok Bot entirely — it will report');
154
+ console.log(' "Reconnecting to your computer" and edge/handler-failed forever,');
155
+ console.log(' and reinstalling the app cannot fix an /etc/hosts entry.');
156
+ console.log(' Re-run without --block-backend, or set OPENZOO_FORCE_BLOCK=1 to override.');
157
+ return { ok: false, blocked: false, refused: 'grok-bot-installed' };
158
+ }
140
159
  const entries = pairs.join('\\n');
141
160
  console.log('');
142
161
  console.log('blocking the editor\'s backend so it cannot re-sync over your model list.');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openzoo",
3
- "version": "0.38.0",
3
+ "version": "0.38.1",
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",