content-modeling-best-practices
Guides agents through structured content modeling principles for headless CMSes like Sanity, covering schema design, content reuse strategies, and field…
Identity proven by GitHub's verified organisation badge (sanity-io)
- Agents
- Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode, claude.ai and API
- License
- MIT (permissive)
- Pin
- 88d6cdfpinned Oct 9, 2026
- Context cost
- about 340 tokenswhen the skill loads
- GitHub stars
- 188on sanity-io/agent-toolkit
- Scripts
- None found
What it does
“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.”
Generated summary from the skill's own text
Guides agents through structured content modeling principles for headless CMSes like Sanity, covering schema design, content reuse strategies, and field architecture decisions. Helps determine when to use references versus embedded objects, separate content from presentation, and apply taxonomies across multi-channel delivery systems.
When to use it
- Designing new content models or schemas from scratch
- Deciding between references and embedded content structures
- Refactoring existing schemas for reusability and flexibility
- Planning content for multiple channels or platforms
When not to
- Implementing database queries or content retrieval logic
- Styling or presenting content on frontend applications
- Managing CMS user permissions or access control
Install
These commands install from the publisher's repository and need no account.
skills CLI
npx skills add sanity-io/agent-toolkit --skill content-modeling-best-practicesInstalls from the repository's default branch, which may have changed since the commit we checked.
GitHub CLI 2.90 or later
gh skill install sanity-io/agent-toolkit content-modeling-best-practices@88d6cdfa7cb06c99edd5f376efa4dac21ae3f877Installs the commit we checked (88d6cdf).
Copy by hand
Download the folder at 88d6cdf and put it in .claude/skills/content-modeling-best-practices for Claude Code and in .agents/skills/content-modeling-best-practices for Codex, Cursor, Gemini CLI, GitHub Copilot and OpenCode.
Claude Code plugin
/plugin install sanity@claude-plugins-officialThe publisher's plugin in Claude's official marketplace. It may hold more than this skill, and we have not pinned it.
Copy for your agent
A prompt for any coding agent. It installs this skill from GitHub at the pinned commit, copies the files as they are, and runs nothing unless you ask.
Prompt
Install the agent skill "content-modeling-best-practices" by Sanity. Source, pinned to commit 88d6cdfa7cb06c99edd5f376efa4dac21ae3f877: https://github.com/sanity-io/agent-toolkit/tree/88d6cdfa7cb06c99edd5f376efa4dac21ae3f877/skills/content-modeling-best-practices 1. Download that folder at exactly this commit. Do not use the default branch. 2. Copy every file unchanged, keeping the folder structure, into .claude/skills/content-modeling-best-practices/ for Claude Code and .agents/skills/content-modeling-best-practices/ for Codex, Cursor, Gemini CLI, GitHub Copilot and OpenCode. Create the folders if they do not exist. 3. Do not edit the files, and do not run any script in the folder unless I ask you to. 4. When you are done, list the files you copied and where you put them. Listing and checks: https://www.agentnative.dev/skills/sanity/content-modeling-best-practices
SKILL.md at the pin
--- 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
From sanity-io/agent-toolkit at 88d6cdf, shown as plain text under its license: MIT (permissive). The license text is in LICENSE.
View SKILL.md on GitHub at 88d6cdfFiles
- SKILL.md1.9 KB · f1c4466372a5
- references/
- content-reuse.md3.0 KB · 0f4725e8c9f0
- reference-vs-embedding.md2.3 KB · 798553ba4342
- separation-of-concerns.md2.1 KB · d9edcc8cd8e5
- taxonomy-classification.md3.4 KB · 622b02e1fd26
5 files, 13 KB in total. Each file has a sha256 in the pin's manifest; the first 12 characters are shown.
Skill folder on GitHub at 88d6cdfMore from Sanity
sanity-live-cache-components
Integrates Sanity Live with Next.js Cache Components in next-sanity v13+ apps, setting up shared cached data fetching through sanityFetch, live content…
Claude Code, Codex, Cursor +4 · about 4K tokens · pinned 7 days ago
content-experimentation-best-practices
This skill provides guidance for designing and running content experiments using A/B and multivariate testing.
Claude Code, Codex, Cursor +4 · about 360 tokens · pinned 7 days ago
portable-text-conversion
Converts HTML and Markdown content into Portable Text blocks for Sanity using markdownToPortableText, htmlToBlocks, or manual construction.
Claude Code, Codex, Cursor +4 · about 510 tokens · pinned 7 days ago
portable-text-serialization
This skill enables rendering Portable Text content across multiple frameworks and output formats using the @portabletext library family.
Claude Code, Codex, Cursor +4 · about 940 tokens · pinned 7 days ago
sanity-best-practices
This skill provides best practices for Sanity headless CMS development across schema design, GROQ queries, framework integrations (Next.js, Nuxt, Astro…
Claude Code, Codex, Cursor +4 · about 1.1K tokens · pinned 7 days ago
sanity-migration
This skill plans, executes, and validates migrations from various content management systems and data sources into Sanity.
Claude Code, Codex, Cursor +4 · about 1.2K tokens · pinned 7 days ago
Related in Data and databases
data-table-manager
This skill manages n8n Data Tables through creation, import, querying, and mutation operations.
by n8nOfficial publisher
Claude Code, Codex, Cursor +3 · about 2.1K tokens · pinned 7 days ago
algolia-automation
This skill automates Algolia search and indexing operations through the Rube MCP interface.
by ComposioOfficial publisher
Claude Code, Codex, Cursor +3 · about 690 tokens · pinned 7 days ago
expo-sqlite
This skill enables SQLite database operations in Expo and React Native apps for structured data storage, offline queues, and persistent caches.
by ExpoOfficial publisher
Claude Code, Codex, Cursor +4 · about 2.6K tokens · pinned 7 days ago
prisma-8
This skill helps agents work with Prisma 8, a contract-first data layer for TypeScript projects.
by PrismaOfficial publisher
Contains scripts
Claude Code, Codex, Cursor +3 · about 3.5K tokens · pinned 7 days ago
analyzing-experiment-session-replays
This skill enables agents to analyze session recordings from experiment variants to identify behavioral differences between control and test groups.
by PostHogOfficial publisher
Claude Code, Codex, Cursor +4 · about 2.3K tokens · pinned 7 days ago
auditing-warehouse-view-health
Audits materialized views in a PostHog data warehouse to identify failed views and flag unused ones that waste compute resources.
by PostHogOfficial publisher
Claude Code, Codex, Cursor +4 · about 1.4K tokens · pinned 7 days ago