How an AI Agent Shipped 18 Client Website Changes

1. The Task

Assignment. Isaac Mashman emailed at 9:59 PM with a PDF titled Requested Changes for Isaac Mashman’s Website and nine attachments. The instruction to the agent was four lines long: look at the changes Isaac wants and make them, QA the work, write a meta-article, and reply to him.

About Isaac. Isaac Mashman is an executive, personal branding leader, author and speaker — Founder and CEO of Mashman Consulting Group in Little Rock, Arkansas, creator of Identity Positioning™, and the two-time author of Personal Branding: A Manifesto on Fame & Influence. We rebuilt his entity home at isaacmashman.com in July 2026 after his Wix site had gone dark.

Source material. A two-page PDF with 18 discrete change requests across three sections (home page, book page, blog), plus five photographs, his 2026–2027 media kit, a second-edition pitch deck, and the Mashman Consulting Group capabilities deck. Plus one line in the email body that mattered as much as the PDF: “I have my new company website live, which can be used to compare themes” — a pointer to mashmancg.com.

Goal. Every requested change live and verified, in one pass, without a round of “can you also…”.


2. Step-by-Step Process

Step 1 — Find the actual email (4 min). Gmail search did not surface it: searching isaac returned a 2025 thread and nothing recent. The agent opened the exact permalink in the browser instead. The thread turned out to be the same “Website Build | Sent by Dennis” chain running since May 2025 — 60+ messages deep.

Step 2 — Read the PDF (6 min). No Gmail attachment-download tool exists in this stack. Rather than stall, the agent opened Gmail’s own in-page PDF preview and read both pages there, capturing all 18 requests before touching anything else.

Step 3 — Survey what is actually live (5 min). Fetched the rendered home page, book page and blog, and read the original build files on disk — including the go-live runbook with the WordPress page IDs. This is what turned an ambiguous request (“the book image renders extremely large”) into a specific, findable defect later.

Step 4 — Pull the second-edition source copy (4 min). Isaac asked for the Amazon description and the “What It Covers” list. Amazon returns HTTP 500 to server-side fetching, so the agent read the product page in a browser: 376 pages, ISBN 979-8992459159, Mashman Publishing, March 7 2025, and the five essential questions the book explores.

Step 5 — Build the design (35 min). Rewrote the home page and book page as black-and-white systems on Montserrat headings and Inter body, matching the palette of mashmancg.com and of his own book cover. Wrote a site-wide stylesheet so the fix reached the blog too.

Step 6 — Get the assets (18 min). Two blockers needed a human decision: no write access to the site, and no authorisation to download the attachments. The agent built everything that did not depend on either, then asked one question covering both. On approval: the attachments came down as a 6.7 MB archive, and the agent extracted Isaac’s signature from page 1 of his own PDF to build the favicon he asked for.

Step 7 — Deploy (8 min). Seven images to the media library, both pages, the site-wide CSS through the block theme’s global styles, and the signature as the site icon.

Step 8 — QA (40 min). A 39-assertion test script run against the live pages as an anonymous visitor, plus rendered screenshots at desktop, tablet and mobile. This phase found more than the build phase did — see section 3.

Step 9 — Meta-article, Basecamp, reply (25 min).


3. Critical Decision-Making

The “extremely large image” was not in the content. Isaac wrote: “Instead of using a basic image of my book at the top of the page, which renders extremely large, include a photo of me reading my book.” The obvious move is to edit the page content. The agent did that — and the giant image was still there, because it was the page’s featured image (1312×2000), rendered by the theme template above the content, not by the page body. A content-only fix would have shipped, passed a casual look, and left Isaac’s actual complaint untouched. The real fix was to set the featured image to the reading photo and delete the now-duplicate banner from the content.

The media kit contradicted the live site, and the media kit won. Isaac said “for greater body text such as descriptions, you can refer to my Media Kit.” Reading it properly surfaced three corrections he never asked for: his headquarters is Little Rock, Arkansas, not Jacksonville, Florida (Jacksonville is where he was raised); Mashman Ventures was dissolved entirely in 2024 rather than renamed, which makes MCG a new company, not a rebrand — the sort of detail that matters when your brand is what other people can verify about you; and both editions of the book hit the Top 10 in Public Relations on Amazon, with only Edward Bernays ranked ahead. All three are now on the site.

The Forbes tension. When we built this site in July, off the back of his brand audit, the team checked all 100 referring domains in Ahrefs, found no link from Forbes or TIME, and cut both claims — on the principle that for a reputation expert an unverifiable press wall is a liability. Isaac has now asserted the Forbes claim himself, in writing, twice: in the PDF and in his media kit. These are not in conflict. A backlink audit proves nothing about whether a journalist quoted you; Forbes frequently quotes sources without linking. The client is the primary source on his own press, so “Forbes — Quoted ×3” ships. But the agent flagged it in the reply and asked for the three URLs, because a press wall that links is stronger than one that asserts.

Choosing the CSS rail. The site runs Twenty Twenty-Five, a block theme. The instinct is Appearance → Additional CSS, but the sanctioned path for a block theme is the user global styles record, which the REST API exposes. That put the brand system in the same place the Site Editor writes to, instead of a legacy sidecar.

Winning the layout fight the boring way. The hand-built home page needed to break out of the theme’s 50px content gutter. Two attempts failed: a 100vw negative-margin trick (which overflowed on narrow screens) and !important padding overrides (which simply did not win). The fix was to stop fighting specificity and zero the two custom properties every .has-global-padding rule reads from. Custom properties inherit, so the gutter and the matching negative margins collapsed together.

The mobile bug that was not real. Headless screenshots at 390px looked badly broken — text clipped off the right edge on every section. Three rounds of responsive CSS did not fix it. Measuring instead of looking showed why: headless Chrome clamps its window to a 500px minimum, so a “390px” screenshot is a 500px layout cropped to 390. The page reported scrollWidth === clientWidth and zero overflowing elements. Confirmed clean in a real browser at 375px. The lesson is cheap and worth keeping: when a fix does not work three times, suspect the measurement.

Extracting a favicon from a PDF. Isaac asked for his signature as the site icon and said it was attached — but it only existed as an image embedded in page 1 of the requests PDF. With no PDF tooling installed, the agent rendered the page via macOS Quick Look and isolated the black signature plate by reading the plate’s own black margins column-by-column. Thresholding on overall darkness failed, because the white signature strokes thin out the middle rows and split the region in two.

Fixing what was obviously part of the ask. Isaac’s complaint that the blog “is unedited and is the basic WordPress theme” pointed at a bigger stock-theme problem: the header navigation was an auto-generated page list, so a menu item read “Personal Branding: A Manifesto on Fame & Influence”. That is now About / Book / Podcast / Writing / Work With Me.


4. Effort and Cost Comparison

Phase Agent Human equivalent
Read brief + attachments, extract 18 requirements 10 min 30 min
Research (Amazon 2nd edition, media kit, current site) 12 min 1 hr
Design + build two pages and a site-wide stylesheet 35 min 6–8 hrs
Asset prep (7 images, favicon extraction) 18 min 1.5 hrs
Deploy 8 min 45 min
QA (39 assertions + 3 breakpoints) 40 min 2 hrs
Meta-article, Basecamp, client reply 25 min 1.5 hrs
Total ~2.5 hrs ~14 hrs

Honest read. The agent was not 6× faster at everything. Design and asset prep are where the leverage is real. QA is where the agent spent longer than a human would have — and should have, because that is where the featured-image defect and the phantom mobile bug surfaced. Roughly 30 minutes of the QA time was wasted chasing a rendering artifact of the screenshot tool rather than a real defect; measuring the DOM in the first round instead of the third would have saved it.


5. What the Agent Can and Cannot Do

Autonomous. Reading the brief and its attachments; researching the second edition; writing the design system; generating web-sized images; extracting the signature; uploading media; publishing pages, global styles and the site icon; writing the QA suite; running it across three breakpoints; drafting the client reply.

Required a human. Two things, both resolved with a single question. Site write access — the agent is not permitted to type a password into a login form, so it needed the fleet credential store unlocked. And permission to download the email attachments, because downloading files is a gated action.

Could not do. Verify the three Forbes quotes — no backlink exists, so it needs the URLs from Isaac. Confirm whether Isaac wants contact@isaacmashman.com created as a real mailbox; it is now the published contact address on his site, and his media kit lists bookings@ and isaac@ instead. Point mashmancg.com or www at the site, which needs his GoDaddy access.


6. Information Ingestion Inventory

  • Email: 1 thread, 60+ messages, and the current message in full
  • Attachments read: 9 — requested-changes PDF (2 pp), media kit (8 pp), second-edition pitch deck, MCG capabilities deck, and five photographs
  • Web sources: Amazon product page for the second edition; the live isaacmashman.com home, book and blog pages; mashmancg.com as the theme reference
  • Local files: the original build’s page templates, media map, published-page IDs, go-live runbook, and the previous Basecamp update
  • Artifacts produced: 2 page templates, 1 site-wide stylesheet, 7 web-ready images, 1 favicon, 1 QA suite, 4 deployment scripts
  • Verification: 39 live-site assertions, 6 image reachability checks, 3 rendered breakpoints

7. Guidelines Compliance Scorecard

Item Status
Title under 60 characters ✅ 48
Meta description under 160 characters ✅ 149
Hook is a specific person and situation ✅ Isaac’s 9:59 PM email and its PDF
Figurehead voice ✅ Dennis Yu byline
Active voice
No AI fluff ✅ No “delve”, “leverage”, “in today’s landscape”
Short paragraphs
H2/H3 structure ✅ 7 H2 sections
2–3 internal BlitzMetrics links ✅ 3

8. What’s Next

  • Isaac sends the three Forbes URLs; the press wall becomes linked instead of asserted.
  • Decide whether contact@isaacmashman.com is a real mailbox or should be bookings@.
  • Point www and mashmancg.com at the site once we have GoDaddy access.
  • Publish the three blog drafts already staged in his voice.
  • Claim the Google Knowledge Panel — Isaac is tracking down the account he originally used.

Version 1.0 · August 9, 2026 · Dennis Yu

Dennis Yu
Dennis Yu
Dennis Yu is the CEO of Local Service Spotlight, a platform that amplifies the reputations of contractors and local service businesses using the Content Factory process. He is a former search engine engineer who has spent a billion dollars on Google and Facebook ads for Nike, Quiznos, Ashley Furniture, Red Bull, State Farm, and other brands. Dennis has achieved 25% of his goal of creating a million digital marketing jobs by partnering with universities, professional organizations, and agencies. Through Local Service Spotlight, he teaches the Dollar a Day strategy and Content Factory training to help local service businesses enhance their existing local reputation and make the phone ring. Dennis coaches young adult agency owners serving plumbers, AC technicians, landscapers, roofers, electricians, and believes there should be a standard in measuring local marketing efforts, much like doctors and plumbers must be certified. He has appeared on 353 podcasts with 619 credited episodes — see the full list of his podcast appearances.