cd /news/ai-agents/the-ai-that-checks-its-own-work · home topics ai-agents article
[ARTICLE · art-109871] src=dev.to ↗ pub= topic=ai-agents verified=true sentiment=↑ positive

The AI That Checks Its Own Work

Neleto, a content management system, has introduced a verification system that enables AI agents to check their own work before reporting completion. The system provides three layers of validation: typed structured output from its MCP server, LSP checks for template errors, and the ability to open and inspect the live rendered page. This addresses the common failure mode where AI agents write content into a black box and cannot verify the final visual result.

read6 min views6 publishedAug 25, 2026

Here's the failure mode nobody puts in the demo. You ask an AI agent to add a section to your homepage. It calls the API, writes the content, and reports back: "Done — I've added the pricing section." You take its word for it. Two days later a visitor emails to say half the page is blank, because a template reference was misspelled and the whole block silently rendered to nothing.

The agent didn't lie. It genuinely wrote the content. It just never looked at the result — because in most AI-and-CMS setups, it can't. It writes into a black box and gets back an "OK." Whether the page actually renders, whether the layout holds, whether the thing a human would see is right — none of that comes back through the API.

That gap is the whole reason we built verification into Neleto instead of leaving it to hope. An agent working on your site gets three ways to check its own work before it tells you it's done.

When a headless CMS hands an agent an API, the contract ends at "content accepted." The rendering happens somewhere else — a separate frontend, a separate build — so the system the agent talks to has no idea what the visitor eventually sees. The agent can be perfectly obedient and still ship a broken page, because the thing that renders and the thing the agent controls are two different systems.

That's fine when a human reviews every change. It stops being fine the moment you want an agent to do real work unattended — migrate forty pages, fix a batch of redirects, translate a section — because now nobody is looking at the output until it's already live. "The API said OK" is not the same as "the page is right," and the distance between those two sentences is exactly where things break.

Neleto closes that distance because content, rendering, and the agent interface are one system. So the agent can do what a careful human does: write, check, and only then say it's finished.

The first layer is the quiet one. Every tool on Neleto's native MCP server returns typed structured output, not a vague success string. When an agent creates a page or updates a component, it gets back the actual object it just wrote — the resolved fields, the IDs, the references — in a shape it can inspect.

That sounds small, but it's the difference between "the server didn't reject my request" and "here is exactly what now exists." The agent can compare what it intended against what came back and catch a mismatch immediately — a field that didn't take, a reference that resolved to the wrong thing — instead of assuming the write did what it meant.

The second layer catches the misspelled-reference class of bug before a visitor ever could. Neleto's MCP server exposes LSP checkslsp_check_page

, lsp_check_layout

, and lsp_check_component

— the same language-server validation the editor uses, available to the agent as a tool call.

The agent loads a page, layout, or component and gets back the errors and warnings in its template: an unknown helper, a reference that won't resolve, a form field that doesn't line up with the template that consumes it. This is the step that would have caught the blank pricing block. The agent runs the check, sees the diagnostic, fixes the reference, and re-checks — all before publish, all without a human noticing anything went wrong, because nothing did by the time you looked.

It's the same instinct that makes a compiler valuable: find the mistake at the point of writing, not at 2am in production. We wrote about why that mindset runs all the way down to Rust — this is the same idea, one level up, handed to the agent.

The third layer is the one that feels almost human. Neleto's settings_get

tool hands the agent the live instance's real public URLs — publicBaseUrl

, adminUrl

— so it can go and open the page it just built, the exact URL a visitor would hit, and read the rendered result back.

This is the check the other two can't do. Typed output confirms the write; LSP confirms the template compiles; but only fetching the live page confirms that the finished thing actually looks like a page. The section is there, the heading rendered, the image resolved, the layout didn't collapse. An agent with a screenshot tool can literally look at it. The loop that used to require a human — "let me just load it and see" — is now something the agent does for itself before it reports back.

None of this works without the roles you already set. Every one of these operations — read, write, check, view — runs with the agent's permissions enforced on the server, so "check its own work" never means "quietly gain more access." We went deep on how that server actually works in the MCP deep dive.

You could, in principle, bolt a verification step onto a headless stack: wire the agent to the content API, wire it separately to the rendered frontend, stand up a screenshot service, and glue the diagnostics together yourself. People do. It's a pipeline you now own and maintain forever, and every part of it can drift out of sync with the others.

Neleto's version isn't cleverer — it's just that when the content, the renderer, and the agent interface are the same system, the verification is already local. The live URL the agent checks is served by the same box that stored the content it wrote. There's no second system to keep honest, because there's no second system.

Build-in-public means saying what this doesn't do, because the honest limit is the useful part.

Self-verification answers "did it render, and is it structurally sound?" It does not answer "is it good?" An agent can confirm the pricing section exists, renders cleanly, and passes every check — and the copy can still be off-brand, the tone wrong, a number out of date, a claim that isn't true. Those are judgment calls, and judgment is still yours. What these three layers buy you is that the mechanical failures — the broken reference, the collapsed layout, the silent blank block — get caught by the machine, so your review can be about whether the page is right, not whether it works.

And the agent has to actually use the tools. The capability is there; a careless prompt can still skip the check. That's a real edge, and worth knowing before you hand an agent the keys to forty pages.

"AI-native" gets thrown around until it means nothing. For us it means something specific and testable: an agent working on your site can do the whole loop a careful person does — write it, check the template, open the live page, and only then call it done — because it's all one system and the checks are one tool call away.

That's a smaller, more honest promise than "the AI does it all." It's also the one that keeps a blank pricing section off your homepage.

Try it yourself: connect an agent to a free Neleto project at console.neleto.io, ask it to build a page, and tell it to open the live URL and check its own work. Watch it catch its own mistake before you have to — that's what the complete CMS is for.

Fast websites. Easy content. AI native.

── more in #ai-agents 4 stories · sorted by recency
── more on @neleto 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/the-ai-that-checks-i…] indexed:0 read:6min 2026-08-25 ·