mirror of
https://github.com/cline/cline.git
synced 2026-09-21 13:21:23 +08:00
* fix: thread proxy/CA-aware fetch into the SDK inference path The main agent loop did not receive the host's proxy/CA-aware fetch, so on JetBrains and the CLI inference over a corporate proxy or to a self-signed/private-CA endpoint failed with "unable to get local issuer certificate". This regressed at the SDK cutover: the pre-SDK CLI (2.18.0) constructed provider clients with a proxy-aware fetch directly, while the SDK agent loop fell back to bare global fetch (CLINE-2353). Two layers: - App (cline-session-factory.ts): always build CoreSessionConfig. providerConfig and carry the proxy-aware fetch from @/shared/net, not just for Bedrock. In VSCode this fetch is global fetch, so behavior is unchanged there; in the standalone (JetBrains) build it is undici with EnvHttpProxyAgent. - SDK (handler-factory.ts): forward providerConfig.fetch into createGateway both as the top-level fallback fetch and per provider, so the gateway's provider clients use it. Passing undefined is a no-op (registry resolves config?.fetch ?? defaults?.fetch ?? fallbackFetch), so other SDK consumers are unaffected. The SDK change covers every host that supplies a fetch; the app change covers VSCode and JetBrains. The CLI builds its session config through a separate path (apps/cli) that does not yet wire a proxy-aware fetch, so CLINE-2353 on the CLI surface is addressed in a follow-up. Adds a handler-factory unit test asserting the host fetch is forwarded to createGateway at both the top level and per provider. * fix: deterministically install proxy dispatcher in standalone core The proxy/CA-aware undici dispatcher is installed as a side effect of loading @/shared/net (it calls setGlobalDispatcher with EnvHttpProxyAgent in the standalone build). The standalone entry cline-core.ts did not import that module, so the dispatcher was only installed incidentally when some other transitively-imported module happened to pull it in. A future change to the import graph could silently drop proxy/CA support on JetBrains. Import @/shared/net for its side effect, first, so the install is deterministic and runs before any network use (CLINE-2353). Standalone-only hardening; VSCode uses global fetch and is unaffected.