DEV Community

Cover image for I deleted my app's admin panel. The AI agent runs the backend now.
FavCRM
FavCRM

Posted on

I deleted my app's admin panel. The AI agent runs the backend now.

Hot take after a month building with agents: the admin panel — the CRUD screens we all build and all hate — might be the most over-engineered thing in your app.

I had the usual stack: customer table, bookings table, forms to create/edit/cancel, a dashboard nobody opened. Weeks of work for screens that exist so a human can poke the database.

Then I wired an AI agent to the same data and watched it do, in a sentence, what my UI did in twelve clicks: "move Tuesday's 3pm to Thursday and tell the client." No form. No modal. No "are you sure?" I'd spent an afternoon styling.

So I deleted the admin panel. The agent is the UI now.

Here's the part the demos skip: the agent deciding "move the booking" is the easy 10%. The hard 90% is everything that has to be true for it to safely act

  • the booking has to persist (not live in a chat context that evaporates),
  • two agents can't double-book the same slot (real constraints, not vibes),
  • it now has the keys to message every customer you have (that should scare you),
  • one hallucinated loop and it's WhatsApp-blasted 400 people — and there's no undo on a sent message.

I kept "just adding a quick backend." Three weekends later the backend was the project and the agent was a thin wrapper.

The real lesson: moving the UI to an agent doesn't delete the work — it moves it down a layer. You trade hand-built screens for a backend that's safe for something non-deterministic to drive: persisted records, clash detection, typed permissions, approval-gated side-effects, audit logs.

I ended up not building most of that myself — I used FavCRM's MCP server, because it treats those guarantees as the product (tools annotated read-only/destructive, sends approval-gated, every action logged). Not a pitch — just the first one I found that didn't treat the backend as an afterthought. The point holds whatever you use:

# the agent, from inside Claude/Cursor — no admin panel involved
move_booking(id: "bk_123", to: "2026-06-12T15:00")   # typed, validated, clash-checked
send_message(to: customer, body: draft)               # ← pauses for my approval
Enter fullscreen mode Exit fullscreen mode

The "are you sure?" dialog I deleted from the UI didn't vanish. It moved into the tool contract, where it belongs.

I don't think this is a CRM thing. Every app with a CRUD admin panel is about to have this conversation: keep building screens for humans to poke the database, or build a backend an agent can drive and let the interface be language.

So, genuinely asking: have you deleted any admin UI yet, or are you still building the forms? And if you've let an agent write to real data — what did you put in place before you trusted it to hit "send"?

Top comments (0)