(source: EnvSource)
| 257 | }); |
| 258 | |
| 259 | const readAI = (source: EnvSource) => ({ |
| 260 | AI_ENABLED: toBool(source.AI_ENABLED, "AI_ENABLED"), |
| 261 | AI_PROVIDER: source.AI_PROVIDER ?? "openai", |
| 262 | OPENAI_API_KEY: source.OPENAI_API_KEY ?? "", |
| 263 | OPENAI_BASE_URL: source.OPENAI_BASE_URL ?? "", |
| 264 | OPENAI_DEFAULT_HEADERS: source.OPENAI_DEFAULT_HEADERS ?? "", |
| 265 | ANTHROPIC_API_KEY: source.ANTHROPIC_API_KEY ?? "", |
| 266 | }); |
| 267 | |
| 268 | const readMultiTenant = (source: EnvSource) => ({ |
| 269 | ACCOUNT_DOMAIN_CLAIMING: toBool( |