Skip to main content
Back to Blog
·6 min read·By Emanuele Pugliese

Ema Admin Assistant: Manage Your Website by Talking to It

Listen to this article

Every managed website has the same bottleneck. The business owner wants to change something — opening hours, a new testimonial, a pricing update — and they have to either log into a CMS they barely remember how to use, or send an email to their developer and wait.

We decided to remove both options and replace them with something simpler: a conversation.

Ema Admin Assistant is an AI chatbot built into our admin portal. You type what you want to change in plain English, and it happens. No forms. No fields. No tickets. The website updates automatically within minutes.

What It Looks Like in Practice

You open the portal, navigate to Ema Admin Assistant, and type:

“Update Monday hours to 9am-6pm”

The AI reads your current content, understands what you’re asking, applies the change, and confirms:

“Updated Monday hours from 09:00-17:00 to 09:00-18:00. The website will update automatically in about 2-3 minutes.”

That’s it. You can also do things like:

  • “Add a testimonial from Sarah: Excellent service, would recommend. 5 stars”
  • “Change the phone number to 0207 123 4567”
  • “Post an announcement: Summer sale starts July 1st”
  • “Update the Launch plan price to £1,900”

The AI handles validation — it won’t let you set opening hours where the close time is before the open time, or add a testimonial with a rating of 7 out of 5. If something’s ambiguous, it asks for clarification instead of guessing.

How It Works Under the Hood

The system has three layers: the AI that understands your request, the content store that applies it safely, and the build pipeline that publishes it to your live website.

flowchart LR
    subgraph YOU["You"]
        Admin["Type a message<br/>in the portal"]
    end

    subgraph AI["AI Layer"]
        LLM["Claude AI<br/>Understands your intent"]
        Tool["Applies the change<br/>with validation"]
    end

    subgraph PUBLISH["Auto-Publish"]
        Event["Change detected"]
        Build["Website rebuilt<br/>(~2 minutes)"]
        Live["Live on your website"]
    end

    Admin --> LLM --> Tool
    Tool --> Event --> Build --> Live

    style YOU fill:#e0f2fe,stroke:#0284c7
    style AI fill:#f0f4ff,stroke:#4f46e5
    style PUBLISH fill:#e2f4e6,stroke:#27ae60

1. The AI Understands Context

Ema Admin Assistant doesn’t just pattern-match keywords. It reads all your current content — pricing plans, business hours, services, testimonials, everything — and builds a complete picture before processing your request.

When you say “add a period to the Best For section in all pricing plans,” it knows exactly which plans exist, what their current Best For text says, and updates each one individually. It references the before and after values so you can verify what changed.

2. Changes Are Safe

Every update goes through schema validation. The AI can’t write invalid data — a business-hours entry must have a valid day, opening times in HH:MM format, and close must be after open. A pricing plan must have a name, price, and category.

For updates, you only need to describe what’s changing. Say “change the Launch plan price to £1,900” and only the price field is updated. Everything else — the plan name, features, description — stays exactly as it was.

Every change is versioned. If something goes wrong, we can roll back to any previous version instantly.

3. Your Website Updates Automatically

This is the part that removes the developer from the loop entirely. When Ema Admin Assistant applies a change, it triggers an automatic pipeline:

flowchart TB
    subgraph CHANGE["Content Changed"]
        DDB["Saved to database"]
        EB["Event published"]
    end

    subgraph PIPELINE["Automatic Pipeline"]
        GH["Build triggered"]
        ASTRO["Website rebuilt<br/>with new content"]
        CDN["Deployed to CDN<br/>worldwide"]
    end

    subgraph RESULT["Result"]
        SITE["puglieseweb.com<br/>updated and live"]
        FAST["Fast everywhere<br/>(static HTML via CDN)"]
    end

    DDB --> EB --> GH --> ASTRO --> CDN --> SITE
    CDN --> FAST

    style CHANGE fill:#fff3e0,stroke:#f57c00
    style PIPELINE fill:#f0f4ff,stroke:#4f46e5
    style RESULT fill:#e2f4e6,stroke:#27ae60

The entire process takes about 2-3 minutes from the moment you type your message to the moment the change is live on your website. No developer involvement. No deployment tickets. No waiting until Monday.

Because the website is rebuilt as static HTML and served from a global CDN, it’s fast everywhere — your customers in London, Edinburgh, or anywhere else get the same instant page loads regardless of what you changed.

Two Chatbots, Two Jobs

Your website actually has two AI assistants, each with a clearly different role:

flowchart TB
    subgraph PUBLIC["Your Customers See"]
        HA["Ema Client Assistant"]
        HA_DESC["Answers questions<br/>Books appointments<br/>Captures leads"]
        HA --- HA_DESC
    end

    subgraph ADMIN["You See (Admin Portal)"]
        CC["Ema Admin Assistant"]
        CC_DESC["Updates content<br/>Changes prices<br/>Manages hours"]
        CC --- CC_DESC
    end

    WEB["Your Website<br/>puglieseweb.com"] --> PUBLIC
    PORTAL["Admin Portal<br/>portal.puglieseweb.com"] --> ADMIN

    PUBLIC -.->|"reads content"| DB[("Your Content")]
    ADMIN -.->|"writes content"| DB

    style PUBLIC fill:#dbeafe,stroke:#1e40af
    style ADMIN fill:#1e293b,stroke:#ef4444,color:#fff
    style HA fill:#dbeafe,stroke:#1e40af
    style CC fill:#334155,stroke:#ef4444,color:#fff
    style HA_DESC fill:#dbeafe,stroke:#1e40af
    style CC_DESC fill:#334155,stroke:#ef4444,color:#fff

Ema Client Assistant is the friendly, public-facing chatbot your customers interact with. It answers questions about your services, helps book appointments, and captures leads — all based on the content you manage through Ema Admin Assistant.

Ema Admin Assistant is your private admin tool. It has write access to your website content but is only available through the authenticated admin portal. Your customers never see it.

When you update content through Ema Admin Assistant, the Ema Client Assistant automatically starts using the new information in its responses. Change your Monday hours, and the next customer who asks “What time do you close on Monday?” gets the correct answer.

What You Can Manage

Ema Admin Assistant covers everything on your website that changes:

What Example
Business hours “We’re closed on bank holidays”
Services “Add dog grooming for £35”
Pricing “The Managed plan is now £129/month”
Testimonials “Add a review from James: Great haircut, 5 stars”
Contact info “New address: 42 High Street, London”
Announcements “We’re hiring — post an announcement”
FAQs “Add FAQ: Do you do home visits? Yes, within 10 miles”
Social links “Update our Instagram to @newhandle”

All changes are immediate in the database and live on the website within 2-3 minutes.

Why We Built It This Way

Most website CMSes are designed for developers and content teams who use them daily. They have dozens of form fields, complex navigation, and a learning curve that makes sense when content management is your full-time job.

Our customers are tradespeople, salon owners, and local businesses. They update their website a few times a month. Asking them to remember how to navigate a CMS is asking too much.

A conversation is the interface everyone already knows. You describe what you want. The AI does the rest. And because it validates everything before applying it, the result is actually more reliable than someone filling in form fields by hand.

The technical architecture behind it — the AI classification, the schema validation, the automatic rebuild pipeline — is complex. But the experience is simple: tell it what to change, and it changes it.

That’s the point.

Related Articles

Comments

Comments are powered by GitHub Discussions. Sign in with GitHub to leave a comment.

Basket is empty

Stay in the loop

Get architecture insights, product updates, and practical engineering tips.

PuglieseWeb LTD is registered in England and Wales. Company No. 17078772.