Credential storage
On developer workstations, credentials and offline leases are stored securely in the user’s home directory:- Path:
~/.raigal/credentials.json - Permissions:
0600(read and write permissions restricted strictly to the file owner) - File structure:
Setting RAIGAL_TOKEN and RAIGAL_API_URL
In continuous integration pipelines, Docker containers, or deployment scripts, configure authentication using environment variables:
RAIGAL_TOKEN: your organization’s API token (rgl_live_...). This overrides local credentials stored in~/.raigal/credentials.json.RAIGAL_ORG_ID: organization ID (org_...), required if your repository owner account belongs to multiple Raigal organizations.RAIGAL_API_URL: custom backend control plane URL (defaults tohttps://app.raigal.dev).
- GitHub Actions
- Terminal (macOS/Linux)
- Windows PowerShell
Metric scrubbing and data handling
Before telemetry or PR summaries are transmitted to Raigal Cloud:- In-process execution: AST parsing, linting, complexity analysis, and pattern rules execute 100% locally in your machine or CI runner. Source code files are never uploaded to Raigal Cloud.
- Secret redaction (
maskSecrets): High-entropy strings, API keys, database connection strings, bearer tokens, and private keys are scrubbed automatically and replaced with[REDACTED_SECRET]placeholders. - Pull request diff previews: During pull request CI evaluations, an in-memory secret-masked git patch diff preview (capped at 20 KB) is transmitted to display line changes in the PR dashboard. Full files are never transmitted.
- Autonomous repairs (
raigal agent): Local repair sessions execute in isolated git worktrees and communicate directly with the customer’s configured local LLM provider (Claude Code, Cursor, or OpenCode).
GitHub Actions OIDC authentication
To run in GitHub Actions without static repository secrets:- Add
permissions: id-token: writeto your workflow job. - The GitHub runner mints a short-lived OIDC token cryptographically signed by GitHub.
- Raigal passes this token in the
X-GitHub-OIDCheader to/v1/runs. - Raigal Cloud verifies the token signature against
https://token.actions.githubusercontent.comand confirms that the repository owner is registered to your organization.
Offline tolerance and air-gapped environments
Raigal does not contact the network on every scan:- Offline-tolerant SaaS (72-hour lease): When you authenticate with
raigal loginor configureRAIGAL_TOKEN, Raigal Cloud issues a signed Ed25519 lease token. The CLI verifies this signature offline using a public key bundled inside the binary. Scans execute without network access for up to 72 hours. - True air-gapped environments (banking, defense, sovereign VPCs):
- Self-hosted Raigal Cloud: Deploy the official Raigal Cloud container in your private VPC with zero public internet egress.
- Static offline license key: Statically signed JWT valid for 1 to 3 years, verified locally against the public key with no outbound network calls.