schema-spec

Document data schemas with headers, fields, types, and evolution rules.

19|3|Updated Feb 28, 2026
One-click install
npx skills add https://github.com/qa-aman/claude-skills --skill schema-spec
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: schema-spec
Source: https://github.com/qa-aman/claude-skills/tree/main/skills/by-role/data-engineer/schema-spec
Command: npx skills add https://github.com/qa-aman/claude-skills --skill schema-spec

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Data teams often struggle with undocumented schema elements, inconsistent field definitions, and uncontrolled schema changes that ripple through downstream analytics and data products. This Skill provides a repeatable blueprint to document headers, data types, nullability, keys, and evolution rules to establish a clear data contract between producers and consumers.

Core Features & Use Cases

  • Structured schema headers: Define a standardized header section (Schema, Domain, Owner, Type, Storage, Created, Version) for every schema artifact.
  • Field documentation: Describe each field with precise types, nullability, default values, and business meaning; include enums and constraints.
  • Keys, indexes, and constraints: Capture primary/foreign keys, unique constraints, and indexes to enable correct query planning and data integrity.
  • Evolution and governance: State evolution policies for adding/removing columns, renaming fields, and deprecations to minimize breaking changes.

Quick Start

Write a new schema spec by specifying the header details and detailing each field's type, nullability, and purpose.

Frequently Asked Questions about schema-spec

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
What is a data contract and how does it prevent breaking schema changes?

A data contract documents schema headers, field types, nullability, and constraints to establish clear boundaries between data producers and consumers. It prevents breaking changes by enforcing evolution rules for adding, removing, or deprecating fields safely.

How do I document a data dictionary for relational tables and API payloads?

You document a data dictionary by defining standardized schema headers like Domain, Owner, and Version, then detailing each field's data type, nullability, default values, and business meaning to ensure consistent API payload and table definitions.

What's the best way to manage schema evolution for backward compatibility?

The best way to manage schema evolution is specifying explicit evolution policies for adding, removing, renaming, and deprecating fields. This minimizes downstream ripple effects by ensuring backward-compatible schema changes across data platforms.

Does this approach work for event schemas and data dictionaries across different data platforms?

Yes, this approach applies to relational tables, event schemas, API payloads, and data dictionaries across various data platforms. It captures primary and foreign keys, unique constraints, and indexes to maintain data integrity and enable correct query planning.

Why do uncontrolled schema changes ripple through downstream analytics?

Uncontrolled schema changes ripple downstream because inconsistent field definitions and undocumented data types break consumer pipelines. Without a data contract specifying constraints and evolution rules, data products lose integrity and analytics fail.

Can I capture primary and foreign keys in a schema spec?

Yes, you can capture primary and foreign keys, unique constraints, and indexes within the schema spec. Documenting these elements enables correct query planning and ensures data integrity across relational tables and event schemas.