# Config Schema Validator

> Generate Zod/JSON Schema configuration validators with defaults and error messages.

- Skill: `a5c-ai/config-schema-validator` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add a5c-ai/config-schema-validator`
- Raw SKILL.md: https://api.skillmd.com/api/skills/a5c-ai/config-schema-validator/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: a5c-ai (https://skillmd.com/u/a5c-ai)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/a5c-ai/config-schema-validator

---


# Config Schema Validator

Generate configuration schema validators.

## Generated Patterns

```typescript
import { z } from 'zod';

export const configSchema = z.object({
  server: z.object({
    host: z.string().default('localhost'),
    port: z.number().int().min(1).max(65535).default(3000),
    cors: z.object({
      origins: z.array(z.string().url()).default(['*']),
      credentials: z.boolean().default(false),
    }).default({}),
  }).default({}),
  logging: z.object({
    level: z.enum(['debug', 'info', 'warn', 'error']).default('info'),
    format: z.enum(['json', 'pretty']).default('pretty'),
  }).default({}),
}).strict();

export type Config = z.infer<typeof configSchema>;

export function validateConfig(input: unknown): Config {
  return configSchema.parse(input);
}

export function getConfigWithDefaults(partial: Partial<Config> = {}): Config {
  return configSchema.parse(partial);
}
```

## Target Processes

- configuration-management-system
- mcp-tool-implementation
- cli-application-bootstrap

