asc commands and control cross-cutting concerns like authentication, logging, and CI reporting.
Authentication Flags
--profile
Use a named authentication profile stored in your keychain or config file.
ASC_PROFILE
See also: Authentication Guide
--strict-auth
Fail when credentials are resolved from multiple sources (e.g., both environment variables and keychain).
false
Environment variable: ASC_STRICT_AUTH (accepts true/false, 1/0, yes/no, y/n, on/off)
This flag helps catch configuration issues where credentials might be coming from unexpected sources.
Debug and Logging Flags
--debug
Enable debug logging to stderr for troubleshooting CLI behavior.
ASC_DEBUG=true
Outputs detailed information about:
- Command parsing and execution
- Authentication resolution
- API request preparation
- Response processing
--api-debug
Enable HTTP debug logging to stderr, showing full request and response details.
ASC_DEBUG=api
Outputs:
- HTTP request method, URL, headers, and body
- HTTP response status, headers, and body
- Sensitive values are automatically redacted (API keys, tokens, etc.)
- Debugging API integration issues
- Understanding rate limiting
- Inspecting response payloads
- Troubleshooting authentication failures
--retry-log
Enable retry logging to stderr to see when the CLI automatically retries failed requests.
ASC_RETRY_LOG=true
Outputs information about:
- Retry attempts and backoff delays
- Transient error conditions
- Rate limit handling
ASC_RETRY_LOG and config file settings when explicitly set.
CI and Reporting Flags
--report
Report format for CI output. Currently supports junit for JUnit XML test reports.
junit
Required: --report-file must be specified when using --report
Use this in CI pipelines to generate test reports that integrate with CI platforms like Jenkins, GitHub Actions, or GitLab CI.
--report-file
Path to write CI report file (used with --report).
--report must be specified when using --report-file
Version Flag
--version
Print version information and exit.
false
Outputs the current CLI version. Useful for:
- Verifying installation
- Troubleshooting compatibility issues
- Including version info in bug reports
Flag Behavior
Flag Placement
Global flags can appear before or after subcommands:Flag Priority
When the same setting is configured in multiple places, the CLI uses this priority order (highest to lowest):- Explicit command-line flags
- Environment variables
- Profile-specific config file settings
- Global config file settings
- Built-in defaults
Boolean Flags
Boolean global flags (--debug, --api-debug, --retry-log, --strict-auth, --version) can be used without values:
Environment Variables
All global flags have corresponding environment variables for easier configuration in CI or development environments:| Flag | Environment Variable | Values |
|---|---|---|
--profile | ASC_PROFILE | Profile name |
--strict-auth | ASC_STRICT_AUTH | true/false, 1/0, yes/no, y/n, on/off |
--debug | ASC_DEBUG | true/false |
--api-debug | ASC_DEBUG | api |
--retry-log | ASC_RETRY_LOG | true/false |
Additional Environment Variables
These environment variables don’t have corresponding flags but control global behavior:| Variable | Purpose | Example |
|---|---|---|
ASC_DEFAULT_OUTPUT | Default output format | json, table, markdown, md |
ASC_TIMEOUT | Request timeout | 90s, 2m |
ASC_TIMEOUT_SECONDS | Timeout in seconds | 120 |
ASC_UPLOAD_TIMEOUT | Upload timeout | 60s, 5m |
ASC_UPLOAD_TIMEOUT_SECONDS | Upload timeout in seconds | 300 |
ASC_APP_ID | Default app ID | App Store Connect app ID |
ASC_VENDOR_NUMBER | Vendor number for reports | Sales/finance vendor number |
ASC_BYPASS_KEYCHAIN | Ignore keychain, use config/env | true/false, 1/0 |
