Skip to content

--proxy flag and proxy: config #40

Closed

Description

@dataGriff

Why

Only HTTP_PROXY/HTTPS_PROXY/NO_PROXY are honoured, through http.ProxyFromEnvironment (internal/runner/runner.go:787-792). Corporate networks, Burp/mitmproxy debugging and per-project proxies all want an explicit setting that beats the environment, and a way to switch it off for one run.

What

  • --proxy <url> (http, https, socks5) beats the environment; --no-proxy ignores both for one run.
  • apic.yaml proxy: http://proxy.internal:3128 and noProxy: [localhost, .internal].
  • Proxy-Authorization from a userinfo in the URL is masked in output like Authorization (internal/runner/redact.go already lists it).
  • apic curl maps to --proxy; describe shows the proxy in effect; env --json reports proxy.

Where

internal/runner/runner.go, internal/project/project.go, internal/cli/root.go, internal/curlexport/curl.go.

Docs

docs/cli.md (global flags, config), docs/faq.md.

Tests

An httptest proxy that records CONNECT/absolute-URI requests; precedence flag > config > env; --no-proxy.

Activity

  1. dataGriff commented on Sep 21, 2026

    @dataGriff
    OwnerAuthor

    Shipped in #106 (merged as 8351e8b): --proxy (http, https, socks5 or a bare host:port) and --no-proxy on every command including apic test, proxy: and noProxy: in apic.yaml, the environment variables read by request scheme with a malformed one refused rather than bypassed, and the proxy in effect reported with its userinfo masked by describe, run -v, run --json, env --json and apic curl.


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions