Skip to content
MMManuel Mattar

Applied AI

I launched my site in one day with an AI agent: what it did and didn't

From a parked domain to a live site, with AWS infrastructure and a digital twin, in one day. What the agent did, what I decided and what it cost.

Manuel Mattar · · 4 min read

At 9:30 in the morning on October 8, manuelmattar.com was a parked domain at GoDaddy. If you searched my name together with WolfSellers or Adobe, nothing came up. By 6:40 p.m. the site was live on AWS, and by 9:27 p.m. it had a full redesign and a digital twin that answers in my voice. I built it with an AI agent (Claude Code). The agent wrote almost everything; the decisions and the production commands were mine.

Why do it this way

When someone asks ChatGPT or Perplexity who knows Adobe Commerce in Mexico, those models answer with what they find on the web. If your name isn't there, you don't exist. I wasn't there. So the goal wasn't "having a page": it was getting search engines and LLMs to understand who I am and how I connect to WolfSellers.

That's why the site wasn't built as a pretty portfolio, but as a well-defined entity:

  • Structured data (Person and ProfilePage) pointing to the same identifier wolfsellers.com already publishes, so both sites read as one network.
  • llms.txt and llms-full.txt: a plain-text summary meant for language models.
  • A robots.txt open to every AI bot. A company sometimes wants to limit them; a personal brand wants to be read.
  • Bing Webmaster Tools, Search Console and IndexNow from the very first deploy. ChatGPT search relies on Bing's index, so telling Bing reaches more than Bing.

What the agent did

Task Result
Positioning study Plan with a diagnosis, content pillars and a path to speaking engagements
Site Static Next.js, bilingual (ES/EN), with SEO checks that block the build if something fails
Infrastructure Terraform: 63 AWS resources (CloudFront, WAF, DNSSEC, a Lambda contact form) in a single apply
Redesign WebGL background, GSAP animations and "Ask Manuel"
Digital twin 14 clips with my HeyGen avatar, in Spanish and English

The most valuable part wasn't the speed. It reused what we had already learned at WolfSellers: the same infrastructure patterns, and the SEO mistakes that had already cost us, now turned into automatic checks.

What I did

An agent can write Terraform in minutes, but it shouldn't apply it to production. My rule is simple: the agent prepares, I execute. I ran every terraform apply, every push and every change at GoDaddy.

The decisions were mine too: an AWS sub-account inside our organization, a bilingual site from day one, which clients to mention and how to tell the WolfSellers story with my partner, Daniel Islas. And the visual bar: the first version worked perfectly, but the first thing I said when I saw it was, "What an ugly page, I'm supposed to be a tech guru and this looks like it's from the 1800s." That's where the redesign came from.

Three bugs that only show up in production

  1. The first deploy couldn't get into AWS. GitHub Actions authenticates with OIDC, and the role only accepted the identity repo:user/repo:ref:refs/heads/main. CloudTrail showed that, for a freshly created repository, GitHub sent the identity with numeric IDs: repo:user@ID/repo@ID:.... I fixed it by adjusting the trust policy to that format, which is also safer: if someone later creates a repo with the same name, it can't assume the role.
  2. The background animation was invisible. The <body> had its own background color, and the browser painted it on top of the WebGL canvas. One line of CSS fixed it, but without checking in the browser nobody would have noticed.
  3. The avatar answered questions nobody asked. "What's your favorite food?" got the "Who are you?" answer, because the keyword "you" matched inside "your". Matching now uses whole words.

None of the three would have been caught in a code review. All three came from testing what was actually running.

What a digital twin costs

I recorded my avatar in HeyGen and generated 14 clips through the API: a greeting, five answers and a fallback message, in two languages. In total it was about 2.8 minutes of video and US$12.58, roughly US$0.08 per second with the Avatar IV engine.

Real-time conversation is a different story. It lives on a separate platform, LiveAvatar, with its own account, its own API key and a plan that starts at US$99 a month (two credits per live minute). On top of that, the custom avatar has to be created again there. So I went with pre-recorded clips first and left real time for later. And the "Digital twin · AI" label is always visible: if you talk about AI, the least you can do is not hide it.

What I take away

The agent cut work that normally takes weeks down to hours. But it paid off because the rules were clear: verifiable facts and nothing made up, nothing in production without me, and checks that fail before anything broken gets published. Without those rules, the same speed would only have helped make mistakes faster.

If you're thinking about doing something similar at your company, or want to talk about it at an event, get in touch.

Sources

  1. OpenAI: crawlers and user agents (OAI-SearchBot, GPTBot, ChatGPT-User)
  2. IndexNow: documentation
  3. GitHub: security hardening with OpenID Connect
  4. HeyGen: generate video with a Digital Twin
  5. LiveAvatar: credits and plans