Command line: verify that the current process actually uses the proxy
Whether a terminal tool uses a proxy depends on the shell environment, the command itself, and the runtime implementation. A system browser being connected does not prove that command-line requests use the same exit route. During troubleshooting, check proxy variables in the current terminal session and confirm that the tool supports the relevant proxy protocol. If the command is launched by a task manager, script scheduler, or another user environment, also check whether that environment inherits the settings.
HTTPS_PROXY=http://127.0.0.1:PORT
HTTP_PROXY=http://127.0.0.1:PORT
NO_PROXY=localhost,127.0.0.1
The example above only shows the variable structure; PORT should be replaced with the port actually exposed by the local client. Do not place subscription URLs, access keys, or account credentials in public scripts, code repositories, or build logs.
IDE extensions: check whether the editor and terminal use different paths
Developer tools such as Cursor and Copilot may include a main interface, extension host, integrated terminal, and background update process. These processes do not necessarily share the browser proxy. If the web account works but IDE login fails or completions keep waiting, check the IDE's own network settings first, then the system proxy and client mode. Do not keep reinstalling the extension to hide a real path mismatch.
Project-level proxy settings may override global settings. An editor configuration with a fixed proxy address in a team repository may fail on another device. A better approach is to keep local settings on the device and have the repository record only options related to the project itself.
CI: identify where the job runs first
CI jobs typically run in remote execution environments. Connecting a local computer to 75VPN does not automatically change the exit route of a remote job. When an AI API is required, first confirm that the execution environment is in a region allowed by the service policy, then have that environment's network administrator configure a compliant exit route. Do not copy local subscription details into public workflows or print authentication information in build output.
Automation should also distinguish retryable from non-retryable errors. A dropped connection can be retried when the application permits it, while authentication, request-format, and permission errors require configuration changes. Unlimited retries do not solve the problem and may trigger server-side restrictions.