Skip to main content

Environment Variables

Prisma AIRS CLI reads no configuration from the environment. Credentials, endpoints, output defaults, and tuning all live in the selected tenant's config file, managed with airs-cli tenant. Every PANW_* variable from earlier releases, the PRISMA_AIRS_CONFIG_PATH override, and a .env file in the working directory are ignored; run airs-cli doctor to list any that are still set in your shell.

Registry location​

These two variables choose where the tenant registry lives. They never supply a configuration value.

VariableDefaultPurpose
PRISMA_AIRS_TENANTS_PATH$XDG_STATE_HOME/prisma-airs/tenants.jsonSeparate registry for a container, automation job, or shell session
XDG_STATE_HOME~/.local/stateAbsolute state directory used when no registry override is set

Use a private registry to run parallel jobs against different tenants: each job gets its own tenants.json selecting the tenant it should use.

SDK diagnostics​

The SDK reads these on every request. The CLI honors them as-is; airs-cli doctor mentions when they are on.

VariableDefaultWhat it does
PANW_AI_SEC_DEBUGoffRedacted request/response logging from the SDK; prefer airs-cli --debug, which writes a private JSONL file
PANW_AI_SEC_DEBUG_BODYoffAlso log bodies; the CLI forces it off for DLP and AgentGuard commands
PANW_AI_SEC_TIMEOUT_MS60000Per-request HTTP timeout in the SDK

Profile transfer, environment reports and redteam judge refuse to run while PANW_AI_SEC_DEBUG or --debug is on.

Ignored names​

Setting any of these does nothing. airs-cli doctor warns so stale shell profiles get cleaned up.

NameWhere the setting lives now
PANW_AI_SEC_API_KEY, PANW_AI_SEC_API_TOKEN, PANW_AI_SEC_API_ENDPOINT, PANW_AI_SEC_NUM_RETRIESairsApiKey, airsApiToken, airsApiEndpoint, airsNumRetries in the tenant file
PANW_MGMT_CLIENT_ID, PANW_MGMT_CLIENT_SECRET, PANW_MGMT_TSG_IDairs-cli tenant create <name> prompts for them; rotate with airs-cli tenant set <name> mgmtClientSecret
PANW_MGMT_ENDPOINT, PANW_MGMT_TOKEN_ENDPOINT, PANW_MGMT_DASHBOARD_ENDPOINTmgmtEndpoint, mgmtTokenEndpoint, mgmtDashboardEndpoint
PANW_DLP_ENDPOINT, PANW_RED_TEAM_*_ENDPOINT, PANW_MODEL_SEC_*_ENDPOINT, PANW_AGENT_GUARD_*_ENDPOINT, PANW_AI_GW_*_ENDPOINT, PANW_IAM_ENDPOINTthe matching base-URL keys listed in configuration options; per-product token endpoints no longer exist
PANW_RED_TEAM_CLIENT_ID, PANW_MODEL_SEC_CLIENT_ID, PANW_AI_GW_CLIENT_ID, PANW_AGENT_GUARD_CLIENT_ID and their _CLIENT_SECRET / _TSG_IDnowhere: every product authenticates with the tenant's single mgmt* credential set
PANW_AI_GW_INFERENCE_*aiGwInferenceEndpoint, aiGwInferenceApiKey, aiGwInferenceModel, aiGwEmbeddingModel
TYPESAFE_API_KEY, TYPESAFE_BASE_URL, TYPESAFE_DEFAULT_MODELtypesafeApiKey, typesafeBaseUrl, typesafeModel for redteam judge; only the standalone prisma-airs-asr-judge harness script reads these names
PANW_CLI_OUTPUT, PANW_CLI_SCAN_CONCURRENCY, PANW_CLI_DATA_DIR, SCAN_CONCURRENCY, DATA_DIRdefaultOutput, scanConcurrency, dataDir
PRISMA_AIRS_CONFIG_PATHairs-cli tenant switch <name>, or a private registry via PRISMA_AIRS_TENANTS_PATH
MEMORY_*, ACCUMULATE_TESTS, MAX_ACCUMULATED_TESTSremoved features

The per-product credential names remain an SDK feature for library users. The CLI passes every credential and endpoint to the SDK explicitly, so the SDK never falls back to them either.