Using Pipeleek with Proxies
Pipeleek supports routing all HTTP/HTTPS traffic through a proxy server. This is useful for:
- Traffic interception: Analyze API calls with tools like Burp Suite or mitmproxy
- Internal network access: Connect to internal GitLab/Gitea/... instances through SOCKS5 proxies
Proxy Configuration
Pipeleek uses standard proxy environment variables for proxy configuration: HTTP_PROXY, HTTPS_PROXY, and NO_PROXY.
SOCKS5 can be used as well.
Using the --proxy Flag
Alternatively, use the --proxy flag to set any proxy from the command line without relying on HTTP_PROXY. It accepts both HTTP and SOCKS5 URLs and takes precedence over the environment variable:
Ignoring Proxy Configuration
In some environments, HTTP_PROXY may be set system-wide but you don't want Pipeleek to use it. Use the --ignore-proxy flag to bypass proxy detection:
TLS Certificate Verification
By default, Pipeleek skips TLS certificate verification so that self-hosted instances with self-signed certificates work out of the box. Use --tls-verification to enforce certificate validation:
HTTP Timeout
Use --http-timeout to set a per-request timeout. This is useful when scanning slow or unreliable targets:
Accepts any Go duration string: 30s, 2m, 90s, etc. The default is no timeout.
Note:
--http-timeoutapplies to all Pipeleek-managed HTTP clients. For GitHub API SDK calls, Pipeleek's shared transport is still used, so transport-level timeouts (for example response-header timeout) apply. GitHub artifact downloads (which use Resty directly) are fully affected.
Platform Scope
All proxy and TLS flags share a single HTTP transport injected into every platform client:
| Flag | Default | Applies to |
|---|---|---|
--tls-verification | false | All platforms |
--ignore-proxy | false | All platforms |
--proxy <url> | (none) | All platforms |
--http-timeout <duration> | (no timeout) | All platforms (GitHub SDK calls get transport-level timeout behavior; artifact downloads are fully affected) |
Note: The GitHub SDK uses a dedicated rate-limit transport (
go-github-ratelimit) that cannot be replaced. TLS and proxy settings still apply to GitHub via the shared transport layer.