boxlang-configurationlisted
Install: claude install-skill ortus-boxlang/skills
# BoxLang Configuration
## Overview
BoxLang's runtime is configured through `boxlang.json`. The file is auto-created in
the BoxLang home directory on first startup. All settings can be overridden via
environment variables or Java system properties without modifying the file.
When configuration questions involve app-specific behavior in `Application.bx`
(`this.name`, lifecycle callbacks, per-app schedulers/watchers, nested app
isolation), pair this with the
[`application-descriptor`](../application-descriptor/SKILL.md) skill.
---
## Config File Locations
| Runtime | Default Location |
|---------|----------------|
| OS / CLI / MiniServer | `~/.boxlang/config/boxlang.json` |
| AWS Lambda | `{lambdaRoot}/boxlang.json` |
| Google Cloud Functions | `{gcfRoot}/boxlang.json` |
| CommandBox | `~/.commandbox/servers/{home}/WEB-INF/boxlang/config/boxlang.json` |
Override the home directory at startup:
```bash
boxlang --home /path/to/custom-home
```
---
## Environment Variable Overrides
Any setting can be overridden via environment variable or JVM property using the
`BOXLANG_` prefix (snake_case) or `boxlang.` prefix (dot-notation):
```bash
# Enable debug mode
BOXLANG_DEBUGMODE=true
# Set log level for runtime logger
boxlang.logging.loggers.runtime.level=TRACE
# Set as JVM argument
java -Dboxlang.debugMode=true -jar boxlang.jar
```
JSON values are supported for complex overrides:
```bash
BOXLANG_DATASOURCES='{"mainDB":{"driver":"postgresql","host":"db.example.com"}}'
```