Skip to content
Content Modeling Best Practices

Content Modeling Best PracticesSkill

Released
MIT
Repository Docs

Summary

Sanity's official CMS-agnostic skill for structured content modelling — separation of concerns, references versus embedding, content reuse and taxonomy design, with Sanity-specific notes.

Features

  • CMS-agnostic principles with Sanity-specific implementation notes
  • Content is data not pages: structure for meaning, not presentation
  • Reference versus embedded object decision guidance
  • Content reuse patterns and the reuse spectrum
  • Flat, hierarchical and faceted taxonomy design
  • Loads one reference file per decision instead of the whole set

Install This Skill

Add this skill to your favorite AI agent in a few steps.

Any AI agent

This skill is plain instructions — it works with any assistant that accepts custom instructions or system prompts.

  1. Copy the skill content with the button below.
  2. Paste it into your agent's instruction file or system prompt (for example AGENTS.md, .cursorrules, or a custom instructions field).
  3. Ask the agent to apply the skill whenever the task matches.

Skill Content

Markdown Content

Copy this content and use it with your preferred AI agent

---
name: content-modeling-best-practices
description: Structured content modeling guidance for schema design, content architecture, content reuse, references versus embedded objects, separation of concerns, and taxonomies across Sanity and other headless CMSes. Use this skill when designing or refactoring content types, deciding field shapes, debating reusable versus nested content, planning omnichannel content models, or reviewing whether a schema is too page-shaped or presentation-driven.
---

# Content Modeling Best Practices

Principles for designing structured content that's flexible, reusable, and maintainable. These concepts apply to any headless CMS but include Sanity-specific implementation notes.

## When to Apply

Reference these guidelines when:
- Starting a new project and designing the content model
- Evaluating whether content should be structured or free-form
- Deciding between references and embedded content
- Planning for multi-channel content delivery
- Refactoring existing content structures

## Core Principles

1. **Content is data, not pages** — Structure content for meaning, not presentation
2. **Single source of truth** — Avoid content duplication
3. **Future-proof** — Design for channels that don't exist yet
4. **Editor-centric** — Optimize for the people creating content

## References

Start with the reference that matches the modeling decision in front of you, instead of loading every topic at once. See `references/` for detailed guidance on specific topics:
- `references/separation-of-concerns.md` — Separating content from presentation
- `references/reference-vs-embedding.md` — When to use references vs embedded objects
- `references/content-reuse.md` — Content reuse patterns and the reuse spectrum
- `references/taxonomy-classification.md` — Flat, hierarchical, and faceted classification

Usage Instructions

Learn how to use this skill with different AI agents.

Claude Desktop

In Claude Code: /plugin install sanity-plugin@sanity-agent-toolkit.

Example Usage

Review this schema — it looks like it was modelled around our landing page. Restructure it so the same content can drive an email and a mobile app.

Description

The most expensive mistake in a headless CMS project is modelling content the way the first page looks. Six months later the same copy has to appear in an email, an app and a voice assistant, and every field is named after a slot in a hero component. This skill is Sanity's attempt to get an agent to make the durable choice at the moment the schema is being written, when it is still cheap.

It is deliberately not Sanity-specific. The principles apply to any headless CMS; Sanity implementation notes are added where relevant. Four ideas anchor it: content is data, not pages, so structure it for meaning rather than presentation; a single source of truth, so the same fact is not duplicated across documents; future-proofing for channels that do not exist yet; and editor-centricity, optimising for the people who actually create the content.

Four reference files carry the detail, and the skill tells the agent to open the one that matches the decision in front of it rather than loading all of them:

  • separation-of-concerns.md — keeping content independent of presentation
  • reference-vs-embedding.md — when a reference beats an embedded object, and when it does not
  • content-reuse.md — reuse patterns and the reuse spectrum
  • taxonomy-classification.md — flat, hierarchical and faceted classification

When to reach for it: starting a new project's content model, deciding whether something should be structured or free-form, planning multi-channel delivery, or refactoring an existing model that has drifted page-shaped. It pairs naturally with sanity-best-practices, which covers the implementation side once the model is settled — but it is genuinely useful on a Contentful, Storyblok or Payload project too.

MIT licensed, part of sanity-io/agent-toolkit.

Related Skills

Skill: Convex

by Convex

New

Convex's official top-level agent skill — routes an agent to the right convex-* skill for the task and to a served capability catalogue that stays current without a reinstall.

Official Shopify skill for theme development in Liquid — teaches an agent the modern theme architecture of sections, blocks and snippets, and validates generated templates and schemas.

1 views

Shopify's official skill for writing Admin GraphQL queries and mutations — it searches the live API docs and validates every operation against the schema before handing you code.

1 views

Planning skill that interrogates your use case before any code is written, then recommends the right Twilio Conversations stack — ConversationRelay, Memory, Intelligence, Orchestrator, TaskRouter — and the implementation skills to follow.

1 views
Browse all skills →