Skip to main content

Configuration model

Dhal is config-first. Most behavior is controlled through dhal.json.

Top-level structure:

{
"mode": "monitor",
"trustProxy": false,
"runtime": {},
"identity": {},
"ip": {},
"rateLimit": {},
"rules": {},
"routes": {},
"policy": {},
"observability": {},
"response": {}
}

Load and validate

npx dhal test-config
npx dhal schema dhal.schema.json

Migrate

npx dhal migrate dhal.json dhal.migrated.json

Explain

npx dhal explain-config

Use presets

npx dhal presets apply starter --output dhal.starter.json

Presets are overlays. They do not hide behavior: inspect the generated config before applying it.