Skip to main content

Lamina vs headless CMS

A headless CMS (Contentful, Sanity, Strapi) manages content APIs for your frontend. Lamina specs product behavior in the local product graph for your coding agent. Both use headless; different layers.

Curated by Aryan Iyappan · Updated 2026-07-27

Who this comparison is for

You are in the right place if

  • You searched headless and found Lamina or a CMS.
  • You wonder if Lamina replaces your content API.
  • Your learn hub promised disambiguation between headless CMS and product behavior design.
  • Marketing uses Sanity; engineering needs booking behavior specs.

Context

Headless is overloaded. CMS vendors use it for content APIs. Lamina uses it for behavior specs without UI generation. This page is category disambiguation, not a competitive shootout. Most production apps need a content layer, an application layer, and often a behavior design layer when AI agents implement features quickly.

Common situations

Concrete cases from AI-shipping workflows. Each shows what the alternative handles and where validated graph knowledge and verification evidence help.

Marketing blog on Sanity, booking app in Next.js

Situation
Sanity delivers blog posts. Booking rules live in application code written by agents.
What Headless CMS does
CMS manages editorial content models and preview.
What Lamina adds
resolved graph knowledge for checkout holds, partner gates, cancel flows.
Takeaway
CMS for content; Lamina for interactive product rules.

Content-only marketing site

Situation
No authenticated flows, checkout, or role-specific product behavior.
What Headless CMS does
Headless CMS plus static frontend is sufficient.
What Lamina adds
Not needed until the app gains domain behavior.
Takeaway
CMS-only scope: no Lamina required.

CMS-driven product config

Situation
Cancellation policy text lives in CMS. Whether cancel is allowed given booking state is application logic.
What Headless CMS does
Stores policy copy and structured content fields.
What Lamina adds
Specs when cancel action is legal and what refund preview must show.
Takeaway
CMS holds content; Lamina holds transition rules.

Comparison

product behavior design vs headless CMS
DimensionHeadless CMSLamina
Primary jobContent storage and delivery APIProduct behavior design
Layer in stackContent / data layerTransactional product graph + agent workflow
Primary outputContent models, APIs, editorial UIValidated GraphVersion plus query projections
Writes app source?No application logicNo application logic
Behavior spec (states, flows, permissions)Content schema, not product flowsStates, flows, permissions
Durable in-repo artifactCMS content models and entriesValidated GraphVersion plus query projections
Post-build verificationContent previewsIndependent Persona Missions with runtime evidence
Repo and stack fitContent platformCLI plus portable skills in any repo and stack
Best whenMarketing content, editorial workflowsApp features with domain rules
When you don't need LaminaContent-only siteNo interactive product behavior
Compose with Lamina?Feed content to frontendSpec how app uses content in each state

Workflow

Lamina vs headless CMS: recommended workflow
StepHeadless CMSLamina
1Model content in CMS/lamina-design on app features
2Fetch content in appGraphVersion projection includes content usage rules
3Preview editorial changes/lamina-verify booking/partner flows

Worked example

Confirm cancel with refund preview. CMS may store cancellation policy text. Lamina specs the cancel flow: policy reminder, refund amount display, confirm step. Content and behavior are separate concerns in HavenStay.

HavenStay demo walkthrough

Frequently asked questions

Is Lamina a headless CMS?

No. Lamina is a product-design skill for AI coding agents, not a content API.

Can we use Contentful and Lamina together?

Yes. Common pattern: CMS for marketing content, Lamina for application behavior.

We use Strapi for product data. Do we need Lamina?

If Strapi models data but agents implement transitions incorrectly, Lamina specs behavior. CMS does not replace flow design.

Comparisons map stack layers, durable outputs, and provenance-marked legacy examples. Updated when major tools change positioning.

Install Lamina with your agent.

Copy the repository-matched prompt. Your agent installs the standalone CLI, adds every Lamina skill for your active agent, configures supported passive rules, checks the setup, and tells you when to start a fresh session with /lamina-init.

Skills work across coding agents. Passive setup currently supports Codex, Claude Code, and Cursor.

  • Cursor
  • Claude Code
  • Codex
  • Gemini
  • Pi
  • and more
Install manually on macOS/Linux4 shell commands

Run these in your project, then start a fresh agent session. On Windows, use the PowerShell installer in the copied agent prompt.

curl -fsSL https://github.com/aryaniyaps/lamina/releases/latest/download/install.sh | sh
npx skills add aryaniyaps/lamina --skill '*' -a <active-agent> -y
lamina setup --agent <codex|claude-code|cursor>
lamina doctor --json