lobe-chat
1/* eslint-disable sort-keys-fix/sort-keys-fix , typescript-sort-keys/interface */
2import { createEnv } from '@t3-oss/env-nextjs';
3import { z } from 'zod';
4
5export const getLangfuseConfig = () => {
6return createEnv({
7runtimeEnv: {
8ENABLE_LANGFUSE: process.env.ENABLE_LANGFUSE === '1',
9LANGFUSE_SECRET_KEY: process.env.LANGFUSE_SECRET_KEY || '',
10LANGFUSE_PUBLIC_KEY: process.env.LANGFUSE_PUBLIC_KEY || '',
11LANGFUSE_HOST: process.env.LANGFUSE_HOST || 'https://cloud.langfuse.com',
12},
13
14server: {
15ENABLE_LANGFUSE: z.boolean(),
16LANGFUSE_SECRET_KEY: z.string().optional(),
17LANGFUSE_PUBLIC_KEY: z.string().optional(),
18LANGFUSE_HOST: z.string().url(),
19},
20});
21};
22
23export const langfuseEnv = getLangfuseConfig();
24