| name | commandbox-config-settings |
| description | Use this skill for CommandBox global configuration: config set/show/clear commands, server defaults, ForgeBox API tokens, endpoint settings, proxy configuration, module settings, env var overrides (box_config_*), setting sync across machines, task runner settings, tab completion style, preferred browser, artifacts directory, and nativeShell configuration. |
CommandBox Config Settings
Overview
CommandBox has a global configuration file at ~/.CommandBox/CommandBox.json. Manage it with config set, config show, and config clear commands.
config show
Core Config Commands
config set settingName=value
config show settingName
config show
config clear settingName
config set modules.myModule.mySetting=foo
config show modules.myModule.mySetting
config clear modules.myModule.mySetting
config set myArray[1]=firstItem
config show myArray[1]
config set setting1=a setting2=b setting3=c
config set myArray="['a','b','c']"
config set myStruct="{ 'key': 'value' }"
config set myArray="['d']" --append
config show 'jq:{name:name, modules:modules}'
config show 'jq:keys(modules)'
config show "jq:key_contains(modules,'commandbox')"
Server Defaults
Set default server start settings applied when not overridden by a specific server.json:
config set server.defaults.openBrowser=false
config set server.defaults.profile=production
config set server.defaults.jvm.heapSize=1024
config set server.defaults.jvm.heapSize=2G
config set server.defaults.web.rewrites.enable=true
config set server.defaults.web.directoryBrowsing=false
config set server.defaults.web.http.port=8080
config set server.defaults.trayEnable=false
config show server.defaults
ForgeBox API Token & Endpoints
config set endpoints.forgebox.APIToken=your-secret-api-token
forgebox login
forgebox endpoint register myCompany https://forge.mycompany.com/api/v1
config set endpoints.forgebox-myCompany.APIToken=company-token
config set endpoints.forgebox-myCompany.APIURL=https://forge.mycompany.com/api/v1
forgebox endpoint list
config show endpoints
Module Settings
Override defaults for any installed module:
config set modules.myModule.verbose=true
config set modules.myModule.apiUrl=https://api.example.com
config set modules.myModule.timeout=30
config show modules.myModule
config clear modules.myModule.verbose
Proxy Configuration
For environments behind a corporate HTTP proxy:
config set proxy.server=proxy.example.com
config set proxy.port=8080
config set proxy.user=myuser
config set proxy.password=mypassword
config show proxy
Misc Settings
config set nativeShell=/bin/zsh
config set nativeShell=/bin/bash
config set artifactsDirectory=/fast-ssd/commandbox-artifacts
config set preferredBrowser=chrome
config set colorInDumbTerminal=true
config set autoUpdateCheck=false
config set tagPrefix=''
config set tagVersion=false
config set tabCompleteInline=true
Env Var Overrides
Any config setting can be overridden with OS environment variables without modifying CommandBox.json. Useful for CI/CD pipelines.
Convention: prefix with box_config_ and use underscores for nested keys.
export box_config_colorInDumbTerminal=true
export box_config_endpoints_forgebox_APIToken=my-token-here
box_config_endpoints.forgebox.APIToken=my-token-here
export box_config_proxy='{"server":"proxy.corp.com","port":8080}'
export box_config_modules_myModule_verbose=true
export box_config_modules='{"commandbox-bullet-train":{"showGitBranch":true}}'
Env var overrides do not persist to CommandBox.json and are lost when the shell exits. They override any explicitly set values.
Java System Property Overrides (CLI JVM)
box -Dbox_config_colorInDumbTerminal=true
jvm.args=-Dbox_config_endpoints_forgebox_APIToken=my-token
Setting Sync
Sync your config settings across machines using your preferred source control or cloud sync:
config show --json > my-commandbox-settings.json
recipe my-commandbox-settings.boxr
Task Runner Settings
config set taskRunner.taskFile=task
config set taskRunner.target=run
Complete Config Reference
| Setting | Type | Description |
|---|
server.defaults | struct | Global server.json defaults |
endpoints.forgebox.APIToken | string | ForgeBox API token |
endpoints.forgebox.APIURL | string | Custom ForgeBox API URL |
modules.<name>.* | struct | Per-module settings |
proxy.server | string | HTTP proxy hostname |
proxy.port | number | HTTP proxy port |
proxy.user | string | Proxy username |
proxy.password | string | Proxy password |
nativeShell | string | Shell for OS commands (default: /bin/sh) |
artifactsDirectory | string | Package cache location |
preferredBrowser | string | Default browser for openURL() |
colorInDumbTerminal | boolean | ANSI colors in CI/non-TTY |
autoUpdateCheck | boolean | Check for CommandBox updates on start |
tagVersion | boolean | Auto-tag Git repo on bump |
tagPrefix | string | Tag prefix for bump (default: v) |
tabCompleteInline | boolean | Inline tab completion style |
developerMode | boolean | Reload shell before each command (dev only) |