Where AI actually helps a content team
The interesting thing is not that a model can write a paragraph. It is that a schema tells the model what a complete document looks like, which is the part every general assistant has to guess at.
The interesting thing about AI in a content system is not that a model can write a paragraph. It is that a schema tells the model what a complete document looks like — which is the part every general-purpose assistant has to guess at, and guesses at differently on every attempt.
The schema is the best prompt you have
A model asked to "write a blog post" produces something shaped like an average of the internet. Asked to fill a `post` with a title, a two-sentence excerpt, a body in portable text and a reference to an author who already exists, it produces something an editor can accept, reject or edit — because the shape of the answer was never the model's decision to make.
That is also where the boundary belongs. Generation goes into the draft row and never the published one. A suggestion is attached to a field and never silently applied. Anything that ships has a person's name on it, and the record says so.
The useful question is not whether a model can write it. It is whether it can write it into your model.
Where it earns its place today
- Drafting an excerpt from a body that already exists and is already good.
- Translating into a locale the schema already has a field for.
- Tagging a document against the categories the team actually uses, and no others.
- Summarising a diff for the person who has to approve it.
All four are the same trick: the model is filling a field whose shape, options and constraints are already written down. Everything outside that is a chat window next to a CMS, which is useful and is a different product.
*[_type == "post"][0]{ title, excerpt, "bodyBlocks": count(body), "author": author->name, "categories": categories[]->title }
Reading a document back in the shape it was authored in is how a suggestion is checked, and the same projection is what a diff shows a reviewer. Neither needs a model to be implemented; both are what make one safe to point at content that matters.
Related posts
Your content model is the product decision
Every content system fails the same way: a field that grew a second meaning, and a template that reads it both ways. The model is the one thing you will still be living with in three years.
A content lake is not a CMS
A CMS owns your pages. A lake owns your content and has no opinion about your pages, which sounds like a small distinction until the second frontend arrives.
Draft, publish, and the two-row trick
Achar stores a draft as a second document whose id begins `drafts.` rather than a flag on one row. It looks like duplication, and it is the reason a headline can be rewritten for a week without touching what the site serves.
