Adom Bridge
Public Made by Adomby adom
Adom Bridge unleashes your AI onto your full PC: full power, full safety. The AI breaks out of the container it runs in and onto your real machine, managing and running your entire laptop as you: launch apps, move files, drive any window, control KiCad, Fusion 360 or your real signed-in browser. Works with any AI, cloud or local (Claude Desktop, Claude Code, Codex), no Hydrogen required. Bridge and its bridges are an operating system for AI, with managed Node and Python runtimes, and a human-onl
Direct-API CLI call ignores the bridge's declared per-verb timeout (120 s default cuts a 1500 s verb) and then reports 'Cannot reach relay server' locally
What happened (reported by a community user on adom/solidworks-bridge#2, 2026-10-15; ab 2.1.168, Windows 11, bridge solidworks 0.10.9)
adom-bridge-cli swx_selftest '{"level":"write"}' over the direct API (no responseMode) returned after durationMs: 122097 — the CLI's 120 s default — although the bridge's refreshed bridge.json declares a per-verb budget "selftest": 1500. The verb itself takes 5-8 minutes. Two consequences:
- The run was cut off after creating its first scratch document; nothing further ran, and the bridge's ledger shows nothing after that point (the request simply vanished for the bridge).
- The CLI then reported
"status": "busy"with "Cannot reach relay server (port 8766)" — misleading, because the direct API on 24680 was up the whole time and the call was local.
Re-running with responseMode: "stream" completed normally in 440 s.
Expected
- The CLI (and the direct-API path) honour the verb's declared timeout from the bridge's
bridge.json(timeouts/per-verb budgets), the same registrytimeoutsreports for the relay path, so a long verb is not cut at 120 s by default. - When a call does exceed the client budget, the status must say that ("the client stopped waiting after 120 s; the verb may still be running — poll
<statusVerb>or re-run withresponseMode: job"), never "Cannot reach relay server" on a local direct-API call.
The bridge side is being hardened too (its _timeoutHint now leads with the responseMode advice, and an abandoned self-test will clean up its own scratch documents), but the default budget and the message belong to ab.