17 lines
666 B
TypeScript
17 lines
666 B
TypeScript
|
|
import { z } from 'zod';
|
||
|
|
|
||
|
|
const Env = z.object({
|
||
|
|
DATABASE_URL: z.string(),
|
||
|
|
REDIS_URL: z.string().default('redis://localhost:6379'),
|
||
|
|
ANTHROPIC_API_KEY: z.string().optional(),
|
||
|
|
RUNNER_HOST: z.string().default('localhost'),
|
||
|
|
RUNNER_PORT_RANGE_START: z.coerce.number().default(4100),
|
||
|
|
RUNNER_PORT_RANGE_END: z.coerce.number().default(4999),
|
||
|
|
CONTROL_PLANE_URL: z.string().default('http://host.docker.internal:4000'),
|
||
|
|
CONTROL_PLANE_PUBLIC_URL: z.string().default('http://localhost:4000'),
|
||
|
|
MODEL_GENERATE: z.string().default('claude-opus-4-7'),
|
||
|
|
MODEL_FIX: z.string().default('claude-haiku-4-5-20251001'),
|
||
|
|
});
|
||
|
|
|
||
|
|
export const config = Env.parse(process.env);
|