Codex and Claude Code each made a landing page
Let's make a marketing landing page for my micro-SaaS using each agent tool
AI is moving fast. Right now, my favorite tools is somewhere between Claude Code and Codex.
And I’m not talking about the models.
Claude models like Opus 4.6 are awesome. Open AI Codex models like GPT-5.3-Codex are great too. But each has their own custom harness available.
Sure, you can use Claude models inside Cursor or Copilot, but Claude Code is the best way to use Claude Models.
And the same is true for Codex models. You can use them in lots of tools, but the devrel team at OpenAI is clearly betting big on the new Codex app.
So I thought, why not compare each tool and model against each other on an identical task?
The marketing landing pages we’ll make
I have this micro-SaaS, Deep Focus Timer.
It shouldn’t be a surprise to you that I wrote it 100% with AI. I have maybe contributed less than a dozen organic lines of code to this project. And I use it just about every day.
In a low-effort way to catch some SEO juice, I wrote a simple blog post on deep work for the site. A while ago I used the frontend-design skill to redesign the site into what you see now. You can read more about that here:
As part of that redesign, Claude autonomously decided to change the static blog post into something a little more engaging.




This is AWESOME, but it presents one issue. Making new blog posts is kind of a pain.
But that presents an opportunity! I want to add 2 blog posts on topics relevant to my tool, and I’ll use both Codex and Claude Code to do it.
This gives each tool the opportunity to:
Write some engaging content
Design a great blog post frontend
Make independent decisions about visual elements to increase conversion to account creation
Sound good? Let’s get into it.
Prompting Codex
You can visit the Codex website and install the app if you have a Mac. You can sign in with your ChatGPT account, which comes with really generous limits. Even the free tier of ChatGPT has usage for now.
Adding the frontend design skill to Codex
If we’re going to compare Codex to Claude Code, it’s only fair they have the same skill. You may remember a previous article where I raved over the frontend-design skill.
Fortunately, skills are now an open standard. That means Claude Code Skills work for Codex too! Codex has a pretty interesting skill library built-in.
The easiest way to add a new skill is to use the Skill Creator Skill. Meta right? I mostly copied the markdown from Anthropic’s repo for this skill.
Once that was done, I started a new chat in my repo. I recommend using a new chat for each task you give any LLM tool, so you can keep your context clean.
Setting up a blog parent page with Codex
My app only has one blog post, and no blog parent page. It’s just linked in a popover, which doesn’t translate well to multiple posts. So first, I prompted Codex to fix that.
This app has a blog post in app/what-is-deep-work/page.tsx - The blog post is accessible from a link in the question mark box on the home page. Make it so there is a proper "blog" page instead of that link to this blog post in the question mark thing. The blog link should be in a new footer that matches the existing design of the site.
The blog page should list all blog posts, which for now, is only this one. Do any re-architecture necessary to make that happen. I like that the existing blog post has a lot of custom design so don't strip it down to just markdown. Make these changes so that it is easy to add new blog posts in the future, and so they will show up on that blog page, and the blog page is linked in a new footer. Use the frontend-design skill to make it a great design
Notice I explicitly called out the frontend-design skill we just added. This site was only designed with Claude Code, so we’ll see how GPT-5.3-Codex does with staying consistent.
One thing you may notice about using Codex is that it is optimized well for long-running tasks. Codex will take a LONG time to scan your codebase for appropriate context, which makes it great at one-shotting things.
I use to say the pursuit of one-shot prompting was overrated, but now that we’re at the point a model can do it really well, I’m ready to say I was wrong there. It’s nuts to describe a problem and have a model just nail it. This makes it much easier to multitask (which I can’t always recommend).
Codex also seems much more likely than Claude Models to acutally try to build, lint, and run its changes without being explicitly asked to.
I was really happy with the first shot of the blog page!
Fixing the footer with Codex
The footer wasn’t great though, so I explained a number of changes that I wanted Codex to make.








