- One provider per file:
config/providers/<provider>.conf - File name must match provider name: e.g.,
config/providers/openai.confmust containprovider "openai" { ... } - Case-insensitive matching: Provider matching is completely case-insensitive; everything is normalized to lowercase internally. We strongly recommend using lowercase everywhere in configs.
- Semicolons are required: Every statement MUST end with a semicolon
;. - Only blocks use braces: Blocks like
request,upstream, ormatchuse{}. Directives themselves do not (nginx-like style). - One directive per line: This is the recommended style for better readability and cleaner git diffs.
- Comments: Supported formats are
#,//, or/* ... */.
DSL
Conventions
Punctuation, naming rules, and basic syntax.
When writing Open Next Router DSL configurations, follow these strict conventions to ensure the parser can read your files successfully: