Skip to content

Configuration Reference

Every config key in the backend, auto-generated from source. Each key can be overridden via environment variable — the system checks for ENV_VAR_NODEENV first (e.g., DATABASE_URL_TEST when NODE_ENV=test), then ENV_VAR, then falls back to the default.

database

Source: config/database.ts

KeyEnvironment VariableDefault
connectionStringDATABASE_URL"x"
autoMigrateDATABASE_AUTO_MIGRATEtrue

logger

Source: config/logger.ts

KeyEnvironment VariableDefault
levelLOG_LEVELLogLevel.info
includeTimestampsLOG_INCLUDE_TIMESTAMPStrue
colorizeLOG_COLORIZEtrue

process

Source: config/process.ts

KeyEnvironment VariableDefault
namePROCESS_NAME"server"
shutdownTimeoutPROCESS_SHUTDOWN_TIMEOUT1000 * 30,

rateLimit

Source: config/rateLimit.ts

KeyEnvironment VariableDefault
enabledRATE_LIMIT_ENABLEDBun.env.NODE_ENV === "test" ? false : true,
windowMsRATE_LIMIT_WINDOW_MS60_000
unauthenticatedLimitRATE_LIMIT_UNAUTH_LIMIT20
authenticatedLimitRATE_LIMIT_AUTH_LIMIT200
keyPrefixRATE_LIMIT_KEY_PREFIX"ratelimit"
oauthRegisterLimitRATE_LIMIT_OAUTH_REGISTER_LIMIT5,
oauthRegisterWindowMsRATE_LIMIT_OAUTH_REGISTER_WINDOW_MS3_600_000,

redis

Source: config/redis.ts

KeyEnvironment VariableDefault
connectionStringREDIS_URL"redis://localhost:6379/0",

session

Source: config/session.ts

KeyEnvironment VariableDefault
ttlSESSION_TTL60 * 60 * 24
cookieNameSESSION_COOKIE_NAME"__session"
cookieHttpOnlySESSION_COOKIE_HTTP_ONLYtrue
cookieSecureSESSION_COOKIE_SECUREfalse
cookieSameSiteSESSION_COOKIE_SAME_SITECookieSameSite.Strict,

tasks

Source: config/tasks.ts

KeyEnvironment VariableDefault
enabledTASKS_ENABLEDtrue
timeoutTASK_TIMEOUT5000
taskProcessorsTASK_PROCESSORSBun.env.NODE_ENV === "test" ? 0 : 1,

cli

Source: config/server/cli.ts

KeyEnvironment VariableDefault
includeStackInErrorsCLI_INCLUDE_STACK_IN_ERRORStrue,
quietCLI_QUIETfalse

mcp

Source: config/server/mcp.ts

KeyEnvironment VariableDefault
enabledMCP_SERVER_ENABLEDfalse
routeMCP_SERVER_ROUTE"/mcp"
oauthClientTtlMCP_OAUTH_CLIENT_TTL60 * 60 * 24 * 30,
oauthCodeTtlMCP_OAUTH_CODE_TTL300

web

Source: config/server/web.ts

KeyEnvironment VariableDefault
enabledWEB_SERVER_ENABLEDtrue
applicationUrlAPPLICATION_URL`http://${host}:${port}`,
apiRouteWEB_SERVER_API_ROUTE"/api"
allowedOriginsWEB_SERVER_ALLOWED_ORIGINS"*"
allowedMethodsWEB_SERVER_ALLOWED_METHODS"HEAD, GET, POST, PUT, PATCH, DELETE, OPTIONS",
allowedHeadersWEB_SERVER_ALLOWED_HEADERS"Content-Type",
staticFilesEnabledWEB_SERVER_STATIC_ENABLEDtrue
staticFilesDirectoryWEB_SERVER_STATIC_DIRECTORY"assets",
staticFilesRouteWEB_SERVER_STATIC_ROUTE"/"
websocketMaxPayloadSizeWS_MAX_PAYLOAD_SIZE65_536,
websocketMaxMessagesPerSecondWS_MAX_MESSAGES_PER_SECOND20,
websocketMaxSubscriptionsWS_MAX_SUBSCRIPTIONS100,
includeStackInErrorsWEB_SERVER_INCLUDE_STACK_IN_ERRORS(Bun.env.NODE_ENV ?? "development"

Released under the MIT License.