Agent Skills: TypeBox

TypeBox patterns for runtime schema validation and JSON Schema generation. Use when mentioning TypeBox, Standard Schema, or schema-based validation.

UncategorizedID: EpicenterHQ/epicenter/typebox

Repository

EpicenterHQLicense: NOASSERTION
4,678359

Install this agent skill to your local

pnpm dlx add-skill https://github.com/EpicenterHQ/epicenter/tree/HEAD/.agents/skills/typebox

Skill Files

Browse the full folder contents for typebox.

Download Skill

Loading file tree…

.agents/skills/typebox/SKILL.md

Skill Metadata

Name
typebox
Description
TypeBox patterns for runtime schema validation and JSON Schema generation. Use when mentioning TypeBox, Standard Schema, or schema-based validation.

TypeBox

Package Names

Use typebox, not @sinclair/typebox. The @sinclair/typebox package is deprecated.

// Correct
import { Type } from 'typebox';
import { Compile } from 'typebox/compile';
import { Value } from 'typebox/value';

// Wrong - deprecated
import { Type } from '@sinclair/typebox';

When to Use What

| Need | Use | | --------------------------- | ------------------------------------ | | Define schemas | typebox with Type.* | | One-off validation | Value.Check() from typebox/value | | High-performance validation | Compile() from typebox/compile |

TypeBox schemas are portable JSON Schema-shaped data. If a TypeBox boundary needs validation, validate the TypeBox schema directly:

import { Type } from 'typebox';
import { Compile } from 'typebox/compile';
import { Value } from 'typebox/value';

const schema = Type.Object({ name: Type.String(), age: Type.Number() });

Value.Check(schema, value); // boolean

const validator = Compile(schema);
validator.Check(value); // boolean
validator.Parse(value); // throws or returns typed value

Standard Schema Boundary

TypeBox does not implement Standard Schema. Do not write TypeBox code that expects schema['~standard']. If a boundary accepts Standard Schema, prefer Arktype or another schema library that implements it natively. If a boundary owns TypeBox schemas, keep the boundary TypeBox-native and use JSON Schema as the portable representation.

Repo Policy

Use TypeBox for portable schema objects: workspace tables, kv, fields, actions, MCP inputs, manifests, and other surfaces that need JSON Schema shape, metadata, Static<>, or schema inspection. Use Arktype for local runtime validation, request parsing, env/config parsing, persisted UI state, transforms, and branded domain values.

References