fix(menubar): support installer HTTP proxies#475
Conversation
|
Thanks for this, proxy support is genuinely useful and the implementation is clean. The env var precedence and the NO_PROXY matching look right, and using a per-request dispatcher instead of setGlobalDispatcher is the right call. One thing to sort before merge: the package-lock entry for undici resolved to a private registry rather than the public npm one: Looks like npm picked that up from your company proxy during install. It would break Could you regenerate the lockfile against the public registry and recommit? Roughly: Minor and not blocking: a quick Thanks again for the contribution. |
Route installer GitHub downloads through proxy env vars so corporate networks can install the menubar app. Refs getagentseal#473
fc8de5c to
002d49c
Compare
|
Thank you for the review, @iamtoruk. I fixed the lock file and rebased onto |
Summary
Add proxy-aware downloads to the menubar installer so corporate networks can install the macOS menubar app through standard proxy environment variables.
Context
codeburn menubardownloads release metadata, the app zip, and checksum from GitHub. Company networks may block direct GitHub access and require traffic through an HTTP proxy.Closes #473
Changes
ProxyAgentwhen proxy env vars are set.HTTPS_PROXY/https_proxyfor HTTPS requests, falling back toHTTP_PROXY/http_proxy.NO_PROXY/no_proxyfor host and domain bypass.NO_PROXYbypass.Key Implementation Details
The PR uses
undici@^7.27.2rather than v8 because the project supports Node>=22.13.0and Undici v8 requires Node>=22.19.0.Testing
npm test -- run tests/menubar-installer.test.ts npx tsc --noEmitBoth commands passed locally on the clean PR branch.
npm run buildremains blocked in this environment by network failure inscripts/bundle-litellm.mjsbefore compilation.