CtrlK
BlogDocsLog inGet started
Tessl Logo

typebox

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

76

Quality

95%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

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

NeedUse
Define schemastypebox with Type.*
One-off validationValue.Check() from typebox/value
High-performance validationCompile() 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

  • TypeBox is a Beast
  • The Schema Wars Just Shifted
Repository
EpicenterHQ/epicenter
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.