So, Codex is an absolutely incredible
super app. I've been using it a lot more
lately, and I'm not saying that I'm
ditching Claude Code. I still use them
both regularly because they're both good
at different things. So, today's video,
I'm going to break down every single
important thing that you need to know
about Codex to be able to, you know,
open up the app for the first time and
then actually have finished automations
and websites and whatever you want to do
in Codex done by the end of this video.
So, whether you've never opened up a
tool like this before or if you're
already kind of used to using Claude
Code, I'm going to break down everything
as simple as I can. So, first of all, if
you fit in this bucket of someone that
uses ChatGPT just on the web or uses
Claude, you are going to get this really
quick because what we're looking at
right here is ChatGPT. We have the
ability to make new chats, we can search
through chats, we can have different
projects, we can have all of our
different chats over here, and then we
talk to chat right here. And if I open
up the Codex app, which is what we're
going to be using today for the entire
video, it looks pretty much the exact
same. We have projects on the left, we
have chats on the left, and then we can
talk to ChatGPT right here. We use this
toggle to change the model whether we
want to use GPT 5.5, 5.4, or other
models. We can change the speed, and
then we can also change the
intelligence. So, low, medium, high, or
extra high. And I'll get into this stuff
a little bit later in more depth. And
this is also very similar to the Claude
Code desktop app where we have the
ability to chat with Claude right here,
and then on the left-hand side we can
see our chats and our projects. So, that
is the interface. Don't get overwhelmed.
So, I'm going to get you guys all
familiar with the interface and go over
all the settings that you need to know,
and then I'm going to show you a full
project from beginning to end building
skills, connecting to things, building
automations, and then deploying on some
sort of website. So,
buckle up. All right, so what actually
is Codex? Codex is basically a massive
super app. We can use ChatGPT same way
you talk to it on the web, but now we
work in projects, and Codex can create
Excel sheets, read Excel sheets, look
through all your local files. It can do
basically anything on your computer
including using the mouse and keyboard
and clicking around and automating a
browser. It also lets us build these
reusable skills. We can build websites,
we can build apps, we can build video
games, and then we can automate and push
all that stuff so that it actually runs
while we're sleeping every night. So,
the main difference here between web
chat is that you're basically just
talking. And you have these connectors
in chat GPT now, so you can get a little
bit more functionality. You can give
that AI brain a bit more of like hands.
But, in Codex, it can do everything.
It's one of those things where Codex can
do everything that chat can do, but chat
cannot do nearly as much as what Codex
can do. So, you might as well just
switch over to something like Codex. And
if you are curious about the Claude code
versus Codex difference, they're
different harnesses, right? So, they
fundamentally work a little bit
different, but very similarly. They also
use different models. So, Claude code
natively under the hood uses Opus and
Sonnet and Haiku, and Codex under the
hood uses the different chat GPT models.
Now, I did do a full breakdown where I
actually tested Opus 4.7 against GPT
5.5, and I got some really interesting
results. So, if you guys want to check
out this video next, I'll tag that right
up here. I definitely think it's worth
just at least skimming through. Because
ultimately, these models have very
different strengths is what I've noticed
after playing with them non-stop. I
really like Claude for being sort of
like exploratory and brainstorming and
helping me get creative and think
through things and plan. But then, I
really like Codex for being pragmatic.
And it feels like it does better at
following my plan if the plan grows
longer and longer. And it's really good
at executing, and it's really good at
finding issues and troubleshooting
things that sometimes Claude, for some
reason, can't handle. So, I'm not in
here saying that I love Codex more than
Claude code. I'm saying that I'm using
them both, and I'm learning more about
both every day. And one other thing I
really like about Codex is you can see
my little pet down here, which I'll tell
you guys how you get this later. But
this pet, while you're working, it stays
in the bottom of your screen, and it
tells you what it's working on. So, it's
really nice to be able to multitask and
see what's happening inside of Codex.
And the pet's kind of funny. And it's
more than just having chats. It's the
ability to have everything organized on
your workspace. So, if you guys watch my
recent video about Claude code operating
system, or you've seen my executive
assistant video, this is my heart two
project, which is basically where I live
inside of Claude code. And all of this
is is a bunch of folders and files. I've
got a bunch of files here. I've got a
bunch of different folders. I've got
settings. I've got skills. I've got
agents. I've got projects. I've got all
these things that I'm working on. And
all this is is a bunch of local files.
Which means I can have Codex work inside
of this directory and do everything as
well. All that we're doing when we're
using these different models is we're
organizing things into a structure. A
structure that different agent harnesses
can understand. And whether you want to
use Codex or Claude Code or Cursor or,
you know, Open Claw, whatever it is,
they can all work out of that directory.
As long as you have some sort of
instructions and guidelines over what
actually lives where. Okay, so basically
what I'm going to be building with you
guys today is a bit of a YouTube comment
intelligence system. So we want to be
able to pull in YouTube comments from my
channel. We want to be able to have
those be analyzed. We want a workbook in
Excel. We want like some data
visualization. And we want a dashboard
that lives somewhere on the web so I
could go check it on my phone if I'm out
on a walk. And I'm going to show you how
we ship and deploy all of that. So
basically from zero to a working project
is what I'm going to show you guys
today. So, let me go ahead and open up
the Codex app and show you guys how this
works. Now real quick, what you have to
do is have some sort of ChatGPT plan.
The good news is if you're on free, you
can still try out Codex. You have
limited Codex access. But I would
recommend just hopping on the $20 a
month plan to get started. And if you're
running into your limits pretty quickly,
then maybe you want to upgrade to Pro.
Now what else is really nice about
ChatGPT subscription is you can plug it
into Open Claw or Hermes Agent, which is
really really nice. Because obviously
it's so much more expensive to pay per
token rather than being on some sort of
subscription. And then you're just going
to go ahead and go to Codex and then
just download the app for your operating
system. That's the way that we're going
to be using it today. Ultimately, you
will be getting more full functionality
if you're using Codex in VS Code
extension or in the terminal. But for
the sake of the video, using the app is
going to get you super far either way.
There's just a few little things you
want to keep in mind, which is why I'm
making this YouTube video. All right, so
let's go ahead and get started. So, on
the left-hand side you can see I've got
one project open, and this project is
actually how I built the slide deck that
you were looking at earlier. So, this
slide deck I built right here in this
project, and you can see because I'm in
the app,
Codex lets us basically navigate this
right here in this little localhost
browser. And this is also where if I
said, "Hey, can you use browser use and
test out this slide deck to make sure
everything looks good and make sure it
functionally like clicks and moves?"
Then it would
bring up a mouse over here, and we would
see it move around, and we would see it
click, which I'll show you guys later in
the video. But anyways, what we're going
to do is we're going to start a new
project because over here you can see we
have a bunch of random chats, which can
still do things like building games and
building automations and simulators. But
what we want to do is we want to work
inside of an actual project because
these chats, any deliverable that we
create doesn't really have a home, you
know, it just lives somewhere random in
our documents. But when we're working in
a certain project, I can actually grab
the local working directory, so I copy
that, and if I go into my file explorer
and paste that in, now I'm inside of the
actual project that we're working on in
Codex. So, now I can see different
assets that live in this project, all
these images. I can see different
guides, and I can have a little bit more
organization to this ongoing project in
my business. All right, so we're going
to start a new project. I'm going to
click on new chat in the top, and then
right here you can see I'm inside of the
Codex 95% project, but we're going to go
ahead and add a new project. So, that's
going to open up a little um file
explorer over here, and then you choose
where you want this to live. So, for
this example, I'm going to go to my
desktop, I'm going to go into a folder
called Codex YouTube, and I'm going to
create a new folder inside of this
folder just called um YouTube analytics
demo. And we're going to go ahead and
open up this folder and select that, and
now you can see it's a new project over
here on this left-hand side that we're
going to be working in. Now, right here
you can see I have something called full
access. By default, you won't see this,
it'll just be on default permissions.
So, I'm going to kick off some sort of
chat here, and then I'll show you how we
actually get that set up. Real quick,
guys, I know we're going over a ton of
information in this video, so what I did
is I threw all of this into a complete
PDF resource guide that you can use and
reference later. All you have to do to
get that is join my free school
community. The link for that is down in
the description. And once you get in
here, go to the classroom and click on
all YouTube resources, and you'll be
able to find all of my repos, all of my
skills, resource guides, everything that
I've ever dropped inside of here is
completely free, and anything I've shown
on YouTube is usually dropped in here.
So, join the community, link in the
description, and let's get back to the
video. Thanks, guys. All right, so the
first thing that I want to do in this
project is I want it to be able to just
kind of familiarize with self with my
workspace and with who I am. And the way
that I'm going to do that is I have a
project locally. If I go to my
um if I go to my desktop and I go into a
project here called YouTube OS, I have
like all of my transcripts right here
from some YouTube videos. So, what I'm
going to do is I'm not going to give it
that file path. I'm just going to say,
"Hey, in my desktop, look inside my
YouTube OS folder, and just pull in 10
of my raw transcripts and analyze them."
This is just to show you guys how good
it's going to be at finding different
files locally and being able to organize
them, move them, delete them, whatever
you want. In this case, I'm just telling
it to read them. All right, so I want
you to go onto my desktop, and I want
you to look at a folder called YouTube
OS, and I just want you to familiarize
yourself with me. I make YouTube videos
on AI automation, and inside of this
folder, I have a bunch of my raw
transcripts. So, I just want you to read
through like 5 to 10 of those just to
familiarize yourself with the type of
content that I make. You shouldn't do
any organization. I just want you to
read those for context. Now, what's cool
about this is Codex, once again, is an
agent that lives locally. So, just
because it's working inside of one
project, which is our, you know, um
YouTube sort of demo folder, that
doesn't mean that it can't navigate
anywhere else inside of your local
files. And because we're telling it to
do so, it's going to search. Right here,
you can see it's searching inside of my
desktop. And then it's going to find the
YouTube OS, and it's going to drill down
into that folder. And it's going to keep
searching until it finds what it wants.
Now, a quick warning. This is not the
most effective use of Codex or of your
tokens. The more effective use would be
to say, "Hey,
this is the folder right here with all
my raw transcripts. I'm going to copy
this path, and I'm now just going to
give Codex this exact path, so it can
just look in there instead of having to
search for it on its own." But I just
wanted to show you how it's able to do
this. Because you can see right here,
inside of my transcripts folder, I have
one called raw, and that's the one that
I wanted it to look at. And right here
it says there are two files, raw and
then processed. So it doesn't know which
one to look through. So anyways, the
more specific you can be with your
prompting and with your pointing, the
better. Now let's also, while this is
running, talk about the model stuff over
here. So right now you've noticed that
we're on extra high. And I would say
that extra high is probably overkill for
that sort of job. For the most part, I'm
using medium to do all of my planning
and my brainstorming. And then every
once in a while, if I'm doing a huge
build or some massive scale, I'll switch
to high. I'm honestly hardly using extra
high unless I'm hitting some sort of bug
or issue that it's not able to solve.
Anyways, it has read nine transcripts,
so it has a little bit of a better of an
idea now about who we are. But just to
show you guys, this is still the folder
that we're working in, the YouTube
Analytics Demo, and there's nothing that
exists here. So even though it knows
this, this knowledge only really lives
in our overall ChatGPT memory, and in
this specific chat window. If I opened
up a new chat, it probably wouldn't
still have the knowledge about this. So
what I'd probably want to do is say,
"What I want you to do is set up an
agents.md file. This should have context
about me and about what the goal of this
project is. Ultimately, what we're going
to do here is we're going to build a
dashboard that's going to be pushed to
Vercel,
and it's going to have information about
my channel and some analytics around the
comments and stuff like that. So that's
the end goal. We're going to have to
connect to YouTube, we're going to have
to pull in data, we're going to set up
some skills and some automations. But I
just want you to get us started here
with a quick agents.md file. And now I'm
going to go ahead and shoot that off."
Now, why do we need to create an
agents.md file? Well, if you're coming
over from Cloud Code, you know that we
always want to start a project with a
Claude.md file. And this is just
agents.md, it's the same thing, but
Codex expects a different terminology.
And what this agents file does is it's
basically like it's onboarding doc.
Every time you open up a new chat, it's
first of all going to read the agents.md
file and it's going to get organized
with what is my goal, what is this user
doing, and how do I help them as
effectively as possible. So, this
document has been created. If I click on
open, we're going to be able to read it
right here. And it's just a very simple
markdown file. This is the project right
here. This is about Nate's, Nate Herc
does this. This is the project goal.
This is the product direction. So, we're
just giving it really important
information that it needs to know about
our project.
And you can see now if I pull the file
explorer over, it has created this
agents markdown folder, which is exactly
what we wanted. Sorry, not folder, file.
Okay, so now that that's out of the way,
I'm going to go ahead and close back out
of that, and we're going to get started.
So, what I'm going to do is I'm going to
click on this button and I'm going to
turn on plan mode. Plan mode is what I
like to start with when I am creating
some sort of plan. That basically means
that Codex won't actually execute
anything, it's just going to brainstorm
and help you guys get clear on what you
want to build before you actually build
it. So, I always start with plan mode.
Now, I'm just going to start yapping.
And by the way, if you guys are curious
about the tool I use for voice-to-text,
check it out in the description, it's
called Glido. I'm now an official member
of the Glido team, which is super
exciting. I've fully switched over from
Whisper to Glido because it's faster,
it's more private, and it is a way more
agentic tool, and we've got a really
cool vision. So, check it out in the
description. Okay, so now that you
understand that context, the first
hurdle for us to overcome is how do you
actually connect to my YouTube in order
to be able to pull in my data. I want
you to be able to specifically at this
point be able to pull in a bunch of
comments so that you can analyze them.
So, help me figure out how we do that,
and then explain it to me step-by-step.
And that's really the mindset shift with
tools like Codex or Claude Code is if
you don't know something's possible,
instead of defaulting to oh, I need to
go to YouTube or oh, I want to book in a
consulting call with an expert, just ask
Codex or Claude Code. Ask it to do
research and explain things to you. And
that's basically how I learned
everything that I know.
So while this is running,
I wanted to explain something real
quick, which is called plugins. Plugins,
MCP servers, skills, connectors,
whatever you want to call them. We kind
of have this interface inside of Codex
to do stuff like this. And what you'll
notice is there's a bunch of different
plugins here. We've got hugging face,
we've got Vercel, we've got GitHub,
we've got Game Studio. We've got a bunch
down here for design, Remotion, Figma,
Hyperframes, Canva. We've got stuff for
lifestyle, productivity, and this lets
us basically connect to a lot of the
tools that we already know and love.
Google Drive, Slack, SharePoint, Teams,
whatever you may need, a lot of that
stuff is available here. And if you
can't find it, you can go ahead and
search. So like Slack, we have it right
there. But look, if I search YouTube,
there is no default plugin right here.
And that's why I had to ask Codex, okay,
so there's no plugin, how do I actually
access YouTube data? And so it comes
back here and it asks us some questions.
It says for the first comment analysis
milestone, which connection path should
we plan around, API key, OAuth, or both?
Um I'm just going to go with his
recommendation cuz let's say I don't
know what I need to do, and I'm going to
click on API key.
What should the first comment pull focus
on? I'm just going to say recent videos.
And now if it has any other questions,
it'll go ahead and ask us those first.
Now one thing you'll notice is because
it already was searching through my
other folders and projects, it did find
an API key in a different project, but
I'm still going to show you guys how you
would get this set up because it comes
back here with a plan, which we can go
ahead and read.
So what it wants to use is it it found
an API key, so not full OAuth, and then
it needs to actually convert everything.
So what I'm just going to say is instead
of implementing, I'm going to say,
"I'm glad that you found that API key,
but let's set up a fresh one because in
my Google Cloud, I want to have a
separate API key for Codex and a
separate one for Claude code. So let's
just go ahead and assume that we're
going to create a complete new one from
scratch." And now I'm able to shoot off
those changes. Codex is going to review
the plan and then edit it. And then once
we're aligned on the plan, we'll go
ahead and start executing. So now it's
come back and it has okay, we're going
to do a brand new Google Cloud API key.
If you wanted to read through all of
this step-by-step, you could, but I'm
just going to go ahead and say submit,
implement the plan.
So, there's some stuff that we're going
to have to do here. We're going to have
to go into Google Cloud Console, and
we're going to have to create this new
project, um enable this API, and then
grab the API key, and then get it
configured inside of Codex. So, if this
part of the tutorial isn't very
interesting to you, you don't want to
watch me get it set up, maybe you want
to do some stuff first with the native
plugins, which is much easier.
Typically, these plugins you just
basically sign in, the same way where
you would open up Slack and sign in, or
the same way you would open up Gmail and
sign in, and that's a lot lot easier.
Okay, so I have to go to Google Cloud
and get everything set up in a project.
If I didn't know exactly how to do this,
it would tell me step-by-step as you
guys saw on the plan, but what it's
going to do is it created another file
for us. So, it created this one called
.env.local.
So, what I'm going to do is head over to
my Google Cloud Console. I'm signed in
with my YouTube account, and I'm going
to go ahead and create a new project.
So, I'm going to call this one
um Codex
demo. I'm just going to go ahead and
create this project, and once that's
spun up, it's pretty simple. We just
have to create a connection to YouTube
Data API, and then we're going to create
an API key. So, I'm going to select this
project. The first thing I'm going to do
is search up here at the top for YouTube
Data,
and we're going to grab the YouTube Data
API v3,
and then I'm going to go ahead and click
enable. And once that has been enabled,
it should pull up a new screen that
looks like this, and then I'm going to
go down here to credentials, and I'm
going to just create a new API key. So,
create API key. This is just going to be
called Codex YouTube demo. And then
right here for the restrictions, I'm
just going to once again type in
YouTube. We're going to check YouTube
Data API v3, and then we're going to go
ahead and create that API key. And it
gives me this value that I'm going to go
ahead and copy. So, I'm going to copy
that, and then I'm going to pull in that
file that it created, the .env.local,
and I'm just going to open this file
real quick with
um my notepad, and here is where I'm
going to put my YouTube API key. I'm
just going to paste that in right there.
Hit save and then I can close out of
that because what we need to get next is
we need to get our YouTube channel ID.
I'm not actually going to do the uploads
playlist. I don't think it needs that,
but I am going to go find the YouTube
channel ID. Oh, but this is actually
cool. My YouTube channel ID is already
in there and the playlist ID is already
in there because it was able to just
pull it from a different project. So
obviously if you didn't have that
already set up, it wouldn't do that, but
it would explain to you exactly how to
do that if you needed to. So now that we
have that API key put in, let's just see
if it works.
Okay, so I've given you the API key in
that local.env.
Can you go ahead and test it to see if
that connection works? And if not, then
we'll have to make some changes. Okay,
now while this is running, what you guys
might notice when you hop into Codex is
that it might pause a lot to actually
ask you questions and like approve
things. And that's what happens when
you're on default permissions. So if you
want to be able to change that, you're
going to go up here to your settings.
And then in general, you can see right
here, auto review or full access. And
this by default will be turned off. So
if I turn this on, then when we're back
in our chat, we now have the ability,
see right here, this is exact example,
allow network access and I want to say
yeah, allow it. Or if I switch this to
full access, now it's just going to do
everything without asking for
permission. So obviously it comes up as
orange here because there's sometimes
where you might not want full autonomous
access. And I think it's best practice
when you're first getting started and
you're first building some automations
to maybe just leave it on default. But
once you start getting a hang of your
skills and you start getting a hang of
the flow, then moving to full access is
going to save you a lot of time so that
you can actually not have to baby sit
it. But I had to call that out because,
you know, we've seen horror stories of
agents deleting databases or sending out
mass emails and stuff like that. So you
just want to be safe with it. I
personally have never had any sort of
problem like that. That usually comes
from context rot or very vague
instructions or or just not being super
smart with your planning. So you can see
what's happening here is it's trying it
out, right? And it's running into some
issues. But what's great about this
agentic loop is that it's going to keep
trying things until it actually goes
through. There we go. You can see nice
the key works for channel data, and I'm
going to do one more test to make sure
that I can pull comments from recent
videos. So a big mindset shift when
you're using any of these tools is to
just let it run, let it try things, help
steer in the right direction, ask
questions, be curious, and just take a
look at what it's doing because it tells
you every single thing that it's trying.
But now we can see I've tested the key.
I can get comments from your recent
videos, and it's completely working as
expected. However, PowerShell's built-in
web request had a local TLS issue, but
Node and Python both connected cleanly.
For the project, that's fine. We'll use
Node and server-side code for the
dashboard anyway.
Now, here's something to think about.
I don't really know what that means.
But what I want to make sure is that
that doesn't happen again, or I want to
make sure that this project doesn't lose
this knowledge because it it it it ran
into a failure. And whenever you run
into a failure, you want to treat that
as golden knowledge because it means you
have more data to make sure that it
doesn't do it again. So all I'm going to
say is,
"Okay, thanks for testing that. I want
to make sure that you don't ever run
into that issue again, and I want to
make sure that that knowledge is saved
in this project. So can you just throw
together a quick file somewhere in your
memory, somewhere in this project to
make sure that you already know that so
that next time it doesn't happen again."
And doing stuff like this, having this
sort of habit, is how you actually make
these systems get smarter over time
rather than just feeling like you're
always repeating yourself or that you're
always running into the same issues.
Another mindset shift for you right
there. So here it decided to add this
into the agents.md. Right now, I have no
objections to that, but as your projects
grow, you don't want to put everything
in the agents.md because if that
agents.md file gets really huge, it's
going to use more of your tokens. Okay.
So before we keep going, I did want to
point out one other thing down here,
which is this little bar.
This shows you how much of your context
window is currently filled up. Now, if
If were using Claude Code and you're
using Opus, you have a million. So,
it's, you know, about four times as much
as this in Codex. However, Codex
automatically compacts just like Opus
does and just like Cloud Code does. So,
it's really nice. You don't have to
worry about it too much, but you still
want to be thinking about some general
context management tips. I've got some
videos on my channel about that that are
agnostic to whatever tool you want to
use. I'm not going to dive super deep
into context window management in this
video, but just wanted to point that out
as well. Okay, so what's next? What I
want to do is I want to show you guys
that it's able to pull comments and that
we're able to create an actual
deliverable from it. So, let me just
once again go back to plan mode. All
right, so what I want you to do is pull
in, you know, about 100 or 200 of my
most recent comments and I want you to
analyze them. I want you to find
patterns and I want you to display all
of this in a
Excel sheet. And I want it to be a
visual representation of this data that
has interesting insights for me as a
content creator so that I can keep
making content that people want and I
can keep answering questions that are
coming up frequently.
So, go ahead and do a plan for this and
structure what the Excel sheet
deliverable will look like. So, I shot
that off. I'm going to let you guys know
when we have a plan or if it asks me any
questions. A couple questions here to
make sure that it understands what we
want. It's asking about the recent
comments. I'm just going to say across
recent videos. How many should we pull?
Let's say 200. How should we classify
and summarize the comments? I'm just
going with all of its recommendations.
Those were pretty good. And so, if I
switch over to a different tab, let's
say we're back on our slides, you can
see my pet down here has a little one
next to it. Well, the one's gone because
I switched back into Codex, but that
little one, if I would have hovered over
it, it would show me what it's working
on. So, now I can keep tabs on my
workflow while I'm doing other things.
And Codex makes multitasking really
easy. Because of the fact that I could
open up a new chat in this project and
work on something else. Then I could
open up a new chat in this project and
work on something else. And it will
color code and give you like a little
blue dot or yellow dot on the side here
if one of these sessions needs
attention. So, anyways, here is the
plan. What I would recommend is at this
point you read through it. You make any
changes to specific sections if you
want, but for the sake of the video I'm
just going to go ahead and submit that
plan. But while this is running real
quick, I wanted to show you a few other
things that we can look at. So, if you
do {slash} inside of this chat, there's
things that you can actually look at.
So, we've got auto review, code review,
feedback, MCP, memories, model,
personality, pet, plan mode, reasoning.
There's all of these different skills
that we can use like browser use,
GitHub, Higgs Field, PDF, skill creator.
The {slash} is going to open up a lot of
different things for you. And of course,
what you can do is you can also tag
things. So, if I do an {at}, this is
going to let us tag either specific
plugins or specific files that live
somewhere in this project. So, if you're
ever trying to reference a specific
plugin or something specific, then it's
probably best to try using the {slash}
or using the {at} to actually tag that
in your chat. Now, the reason I wanted
to bring up the {slash} is because
you'll see one right here called {slash}
personality, which if I shot that off,
it would actually let it, you know, do
something. So, what I can show you is I
don't want to interrupt this main
session.
I could come up here and I could click
on open side chat. And that opens up a
different little conversation here that
still lives in this chat, still lives in
this project. So, if you're coming over
from Cloud Code, this is pretty similar
to {slash} by the way.
So, what I can do over here is I can do
{slash} personality. And now I can set
if I want the personality to be friendly
or pragmatic. And I guess I didn't
actually need to switch over here
because it just opens like this, but
right now we're on friendly. I'm
actually going to switch this to
pragmatic. You can see this says
concise, task-focused, and direct. And
honestly, most of the time
I'd probably prefer pragmatic. So, I'm
usually working on pragmatic by default.
But now that we've opened the side chat,
let me just show you guys something
else. Um,
give me a quick update about
my YouTube channel and, you know, the
type of videos I've been making
recently. Just to show you guys that,
okay, if you have your agent working
right here on something and you don't
want to interrupt it, but you have some
sort of side question that is relevant
to this project or maybe relevant to
something that you guys were working on
earlier, you can ask over here. Because
right here you can see it has the
context of what we talked about already.
And I could go back and forth a little
bit, and then I could just close out of
the side chat whenever I'm done. Okay,
so that has been created. It pulled in
200 recent comments across three recent
videos, and I could open it up right
here in this dashboard sort of view
right in CodaX, which is awesome. And I
could actually make some follow-ups and
chat with it right here, but it's a
little bit finicky to be honest. So what
I'm going to do is close out of that,
and I'm just going to open up our folder
again, which was right here. And you can
see there's a lot more that lives in
here now. Not only do we have our agents
and our .env, but we have scripts, and
we have outputs, and we have different
nodes and modules, which has a lot of
stuff. So if at any point this starts to
feel a little bit unorganized and you
don't understand the structure, all you
have to do is come into CodaX and say,
"Hey,
help me like reorganize this, or maybe
give me a document that helps me
navigate it a little bit better."
Because of course this lives in a local
directory, and CodaX can touch it, read
it, organize it, edit it. So if I go to
the outputs and I go to the YouTube
comment insights, we see all of these
different stuff that it did. So it took
some screenshots as you can see, but
then it also created the actual Excel
sheet. So I'll open this up right here,
and we can take a look. All right, so we
have
YouTube comment insights, 200 newest
public comments across recent Nate Hurt
videos, generated May 5th, 11:00 a.m. So
we can see the question rate, the
content requested rate, top mention
tools CodaCode. Uh-oh. We've got high
priority stuff, top patterns, skip
video, stuff like that. It even started
to create some visuals here, which is
awesome. So this is content category mix
over here. It shows the mix between
general feedback or questions with um
actual values. So 55 were general
feedback, 53 were questions. Some of
these were access, positive feedback,
tool comparison, pricing stuff. Over
here we have different tools. So
CodaCode, Higgs Field, CodaX API. And
then over here we have some other stats
as you can see. Now we have a bunch of
different tabs as well. So we have
creator insights. So ranked comment
patterns and recommended creator
actions. So I'm able to see the
percentage breakdown of different types
of comments and it also gives me
recommended actions with priority
scores. So, that's pretty cool. I also
can see frequent questions. So, things
that are coming up as patterns. It's
giving me content ideas now as well
because it's analyzing those comments.
It's giving me nice reply opportunities
and then it's giving me just the raw
comments. So, this should be 200 rows of
our actual comments that it pulled. 204
as you can see because the first three
or four were just nonsense. So, that is
awesome. And what you guys might be
thinking is okay, is this actually
useful? Maybe not because we just said,
"Hey, give me analytics." Right? If you
guys remember my actual prompt, it was
very, very vague. So, if we would have
spent more time in the planning phase or
if we had certain analytics that we're
tracking very heavy or certain comments
that we're really looking out for, we
would give that to Codex as knowledge
and it would make this actual, um, you
know, insights, it would make it much
more
customized and tailored. So, now let's
talk about how do we turn this into a
skill? So, first of all, what is a
skill?
Well, a skill is basically a repeatable
recipe. So, if I come back in here and I
click on plugins, we saw all these
plugins, right? These are actual like
connections and potentially MCP servers
and kind of like some other, you know,
it's a package that people are able to
install and use. But, skills are more of
just like
instructions. So, there's an image gen
skill. There is a OpenAI doc skill.
There's a GitHub review follow-up skill,
a document skill. And these are all
basically just markdown file
instructions that tell Codex how to do
something better. So, how to design a
website better or how to, you know, give
you a morning brief. And so, what we
want to do
is we want to turn this, exactly what we
just did, into a skill. So, that anytime
I say, "Hey, go give me more YouTube
insights." It knows what endpoints to
hit, it knows how to pull them in, it
knows how to make the Excel sheet, it
knows how to do all this. And the best
way that I like to make skills is I just
basically brainstorm with with Codex to
do something and then after I get an
output I like, I say, "Okay, turn that
into a skill." So, this was the ultimate
deliverable, right? So, what you just
did is you helped me pull in data from
my YouTube. You got comments, you ran an
analysis, and you created me an awesome
Excel sheet deliverable. I want you to
turn that into a skill so that every
time I say to grab my YouTube comments
and give me some insights, you do this
exact flow, and that makes it more
consistent. So, I'm going to shoot off
that message, and while it's doing that,
just think about it like this. If
someone asked you to create or not
create If someone asked you to make them
chocolate chip pancakes, you're going to
open up your cookbook or pull up your
phone, and you're going to read a
recipe, and you're going to follow it to
a T. You're going to follow the
measurements, the ingredients, and the
temperature, and the timing, and
whatever.
And then next time someone asked you to
make chocolate chip cookies or pancakes,
you would just use that same recipe, and
they'd come out pretty much the exact
same way. Because if you didn't use the
recipe, you would just be guessing, and
you'd be you'd be sort of measuring, and
you'd be feeling, and it just wouldn't
be consistent. And the cool thing is,
now that you have this recipe to use,
every time you use the recipe, you might
be able to make it better. If one time
you experiment, and you add some more
chocolate chips, you either like that or
you don't, you update the recipe. Maybe
one time you realize that you're
actually leaving too much raw batter
inside. So, what do you do? You update
the recipe to say, "Okay, you leave it
on 4 minutes on each side rather than 3
and 1/2 minutes on each side." You're
able to, each time you use the recipe,
have it be updated, and that is the
power of building these skills.
And you can see that it's able to work
backwards and reverse engineer a skill
from our output. And what it does is it
puts them in a file called the dot
Codex, which kind of lives globally,
which means whenever you're working
inside of any Codex project, you're
going to be able to use that skill. And
all you have to do to call it is you'll
do a slash command, and then you will
just name the skill. So, if you guys
remember, down here we have all these
other ones. I could do slash browser use
slash image gen slash PDF, and that's
how I could be able to call them. The
other way you can call them is you can
actually just have them be natural
language. So, just to show you guys
another example, if I go to my Herc 2
project, and I know this is more
optimized for cloud code, but we have a
dot cloud folder, which is local.
So, if I click into here, I can see I
have a folder called skills, and all of
these are my different skills that
currently live inside of my AI OS. So,
let's say here I have a morning coffee
skill, and I'm going to open this up
real quick in my notepad just to show
you guys. All this is is a markdown
file. We have the name of the skill, we
have the description. So, here it says,
"Use when someone asks for morning
coffee to prep or plan their day." So,
anytime in cloud code I say, "Hey, can
you help me plan my day?" cloud code
will grab this morning coffee skill,
read it, and then execute it. And it
says, "Okay, here's the context, here's
the recurring meetings, here is the
meeting prep, here are these different
reference IDs, here's everything you
need to know, and the order. So, step
one, step two, step three. Here is what
you do whenever Nate asks for a morning
coffee skill." So, that is all that is
happening right here. You can see it
created this skill called YouTube
comment insights, and it did this at the
global level. What I mean by that is
this lives locally in our directory
directory that sits across any Codex
project ever. So, if I open up this
other project, I could use the skill, or
we could put it locally in our project,
which would mean I could only use the
skill in this specific YouTube analytics
demo project. And all you have to do to
change that differentiation is say,
"Hey, instead of putting that global,
put that locally in this project." Or,
instead of having that locally in this
project, make that global. So, now if I
do a slash and I do YouTube comment
insights, we have this right here.
YouTube comment insights analyze
comments into an Excel report.
Which is the skill that we just built
together, so that is awesome. All right,
so before we move on to the next step of
this, I wanted to talk about pets real
quick just because I know you guys are
dying to understand how you can get
this. It's really simple, you go to your
settings, and then you're going to go to
your appearance and scroll all the way
down, and you can see right here we have
pets. And we can choose between
different ones. So, right now I'm just
using the Codex pet, but I could choose
Dewey, or CD, or Beasod, or Stacky. So,
I'm just going to go ahead and switch
this to Fireball for fun, and you can
see down here it changes. And yes, it's
kind of a fun little UI thing, but
remember if I'm not inside of Codex
and I'm in this dashboard over here, we
can still see the pet and it will tell
us when it's working on things and when
it's done with things. So, it is a
little bit practical as well. All right.
So, now we have a deliverable. We have
an Excel sheet and we're going to use
that as the back end that basically
powers this next section. So, I'm going
to open up a new project because we're
kind of starting a new goal, a new a new
deliverable. So, I want to open up a new
chat and this will still be able to
access everything that's in this folder.
So, I'm going to go ahead and switch
over to plan mode here. Okay, so here's
the idea I have. You have access to a
file inside of this project
and what I'm going to do is actually
reference the exact file. So, I'm going
to look for the YouTube comment insights
right here and I'm going to tag that
file.
So, what I want you to do is create me a
dashboard, spin this up on a local host,
and I want it to have really nice UI
elements and, you know, charts and
graphics and things, so visualizing my
data and I want to be able to see
different insights about my YouTube
comments.
What I want you to do here is I want you
to use GPT image 2 and create some
really nice concepts of how this
dashboard should look. And also, if you
want to use it for maybe like a nice
logo in the top or any of the other UI
elements, utilize GPT image 2 to make
this thing just look really polished and
really aesthetic and really fun at the
same time. So, that is the idea I have.
I want you to help plan this out, ask me
any questions you have about this, and
then we'll go ahead and execute. And so
also, this default switch to extra high
again, I'm just going to go ahead and
switch that back to medium and then
shoot that off. And you can see down
here the pet has started to think and
it's talking a little bit. But, the
reason why you want to be careful about
which models you're using, there's two
reasons. The first one is because
sometimes if you chuck extra high at a
task that's really simple, like over
engineers it.
And the second piece is because each of
these cost you different amounts of your
tokens or your session. Obviously, low
cost the least and extra high cost the
most. If you go over here to your
settings and you click on rate limits
remaining, it shows you how much of your
session you have left and when it
expires. So, every 5 hours it resets and
right now I have 97% remaining and then
every week it resets and right now I
have 99% remaining there.
And so, it's really nice to be able to
keep tabs on that right here, but that's
why you want to be careful about, you
know, your context window management and
your planning and your prompting and
your model usage down here. In general
though, I have seen that my session is
lasting way longer in Codex than it is
in Claude Code. And a big part of that
is because ChatGPT 5.5 is really, really
efficient with tokens, with output
tokens and input tokens. And if you guys
go watch that video that I was talking
about, you will see that exact
experiment and it's really interesting
to understand and look at, but I've
generally found that it's really
efficient with tokens. Now, we have some
feedback here. It says, "Which visual
direction should guide the GPT image two
concepts and the final dashboard UI?"
Creator Ops, Playful Studio or Executive
Clean. I'm just going to go with the
recommendation. For this first version,
how should the dashboard get its YouTube
comment data? I'm going to say to use
the existing output, which was the um
Excel file. And then what should the
first screen prioritize most? Reply and
ideas, analytics overview. I'm actually
going to go with analytics overview for
this one. And by the way, if you're in
the app and you want to get rid of the
pet really quick, you can just do
{slash} pet and then that will just tuck
it away. Okay, so it came up with a plan
pretty quickly. You can see here that I
can expand this and read about it. So,
we've got like a summary, we've got key
changes, we've got all this other stuff
and this is where we would once again
iterate with Codex before we say, "Yep,
go ahead and build that for me." But I'm
just going to go ahead and say, "Yep, go
ahead and build that for me." You can
see that it's using the image generation
for GPT image two, which is really,
really solid. And here is one of the
kind of versions that it came up with.
And I've just found if If using Codex to
build games or websites or whatever it
is, it just helps to give it the ability
to test things out and generate some
concepts first before it actually
designs the rest of the site. You can
see this is the little logo that it came
up with, which is kind of cool. It's got
like a YouTube play button with some
noise and some comments coming in. And
what it's going to do is it's going to
store all of these assets locally
somewhere in this project, so that later
if we wanted to spin up different
versions of the dashboard or a different
landing page, it would have access to
all of these assets already. And this is
super cool, guys. It has like this
built-in verification loop where it's
going to check its work before it
actually gives you an output, which is
pretty cool. So, it said the automated
browser verification passed. I'm now
doing one visual pass to see what else
there might be, what other issues. And
it found three issues when it did an
actual visual scan. So, now it's fixing
those. It says, "Okay, those UI fixes
are in. I'm going to stop the server.
I'm going to rebuild, and then I'm going
to verify it one more time with
screenshots." And then it comes back and
says, "Okay, the second visual pass
looks a lot better. Here is your
dashboard to actually go ahead and test
out." So, let's just real quick open
this up right here locally in the
explorer. And now we have our creator
ops signal desk. So, I'm going to expand
this a little bit. We see the logo up
here that it made. We see 83% creator
replies, 78 total likes. We can switch
between overview, replies, ideas,
questions, and the explorer. And this is
really cool. It looks like every single
comment has a link. So, if I click on
this, does it actually take us Okay, no.
It didn't actually sync up every single
comment to a link. But it's cool that it
showed us that because that gave us a
nice idea of like, "Okay, cool. I do
actually want a link." Now, you can
actually go ahead and work that into the
back end code where every single comment
should be associated with a link so that
I could open it up and respond to it. Or
we could take it one step further and
say, "Okay, what would it look like for
me to be able to respond right in this
dashboard?" And you actually fire off
that API call to YouTube to respond on
the right comment. Because that is 100%
doable. You guys have seen how I've
automated my comment section a little
bit. Anyways, let's Let's take a look at
the overview. We can see we have this
really nice chart. We have some AI
insights over here where I can click on
work reply queue and that goes over to
the replies. I could also click on more
content ideas and that takes us to the
ideas. We can look at top tool mentions,
reply priority, common themes. We can
also see the videos that are driving
comments and this would obviously grow
as we pull in more and more data. So
let's say at this point we like this
output and we want to actually deploy
this because what you'll notice is this
says that it's running on a localhost.
So if I copy this link right here and I
go to Chrome and I paste that in, it's
going to pull up exactly what we saw,
right? And it works and it looks fine.
But if I gave you this localhost and you
copy and pasted that into your own
browser, you would get nothing because
this lives locally. It's being served on
a server from our codebase. So what I'm
going to show you how to do now is how
do you actually get this from a
localhost to the web? And what we're
going to do is we're going to use two
tools. We're going to use The first tool
is called GitHub and the second tool is
called Vercel. So the first thing you're
going to do is you're going to type in
GitHub and you're going to go over here
and you're going to make a profile. It's
completely free to set up, pretty much
completely free to maintain. Once you've
created your GitHub, all you have to do
is connect this to Codex and we're going
to have Codex help us set up something
called a repository which is basically
just a
collection of your files and folders.
Remember how if we open up my file
explorer and we look inside of our
YouTube comment or sorry, YouTube
analytics demo folder,
all of these files and folders are
important and all we have to do is get
these off of our local machine or not
off, they'll still live here locally.
But we're going to get them into some
sort of repository where I can access
them publicly or if you wanted to share
these with other people, they could
access them as well. So it's kind of
like having a Word doc locally but
instead you're putting it on into
Microsoft's cloud on OneDrive or
something like that so that other people
can use it and you could use it from a
different machine. So that's the first
step. So let's go back into Codex and
what do you do when you don't exactly
know how something works? You just ask.
So
this looks really good. What I want to
do is I want to sync this code base for
this specific dashboard to a GitHub
repository. So, help me get that signed
up. Help me get connected here to
GitHub, and then I want you to help me
create that actual repo and push
everything into that repo. And it even
mentioned that right here. Note, this
folder is not currently a Git repo, so
there is no diff and status to
summarize. So, I'm going to shoot off
that message, and now it's going to help
us actually sync up to GitHub. Now,
there is a difference between Git and
GitHub. Really the same thing of version
control and all this stuff, but Git is
local and GitHub is on the cloud. And
what's important here is that it says,
"I'll avoid committing secrets,
especially the .env.local." And so,
that's why I told you to always paste
your keys in that .env, not into some
random file called secrets. It has to be
in the .env because that dot in front of
the word env basically tells Codex or
Cloud Code or whatever you're using, it
tells it to exclude this from any,
you know, public commits. So, this point
I've already set up the GitHub CLI. If
you haven't, it would just say, "Hey, do
you want to set this up?" And you'll
say, "Yes." Very simple. And then you'll
authenticate, which means it'll
basically just pop up a browser tab and
you'll sign in with the account you used
to create GitHub, and then boom, you
will be connected to GitHub in Codex.
And while this is syncing up, let me
show you guys the next tool we're going
to use. This one is called Vercel. Now,
Vercel has a pretty generous free tier.
You can see I've got a few products on
here. You're going to be able to get
working on Vercel for free just to get
started. And what Vercel does is it
basically takes that code, it takes, you
know, this exact website, which is on
the back end, all this is it's code, and
it takes this and it serves it on a
actual URL, on an actual domain that
anyone can access. And what's really
cool about this is Vercel and GitHub
have a really nice partnership. They
actually like talk to each other. So,
anytime I make a change to our GitHub
repo, Vercel automatically picks that up
and deploys it. So, I know there's three
tools here, Codex, GitHub, and Vercel,
but that doesn't mean we have to manage
three places. All we have to do is
manage Codex. So it said that it's
created a private repo for us. If I open
this up, I don't want to open this up
here. And the reason why it doesn't show
up here is because this is a private
repo and over here I'm not signed in to
GitHub. So if I open this up in a
browser where I am signed in to GitHub,
we can see YouTube Analytics Demo. This
is a private repo and what's in here is
all of the different folders and files
that we've actually created to spin up
this dashboard. And now what's really
cool is if I go into Vercel and I go
ahead and click on add new project, I
can connect this to GitHub and it
already is connected. So you would then
just sign in and you would connect your
Vercel to GitHub. And now you can import
any of your repos. So right here you can
see YouTube Analytics Demo 1 minute ago.
I'm going to click on import. And that's
literally that simple. I'm going to
click on deploy and then in maybe 30
seconds we will have our YouTube
Analytics Dashboard, but we'll have it
up on a live URL. Awesome. So it says
congratulations, you have deployed a new
project and I'm going to go ahead and
continue to dashboard. And this gives us
a youtube-analytics-demo.vercel.app
domain.
And if you wanted to switch this off to
your own domain, you certainly could.
You would just basically have to move
the DNS records over here. But I'm going
to click on this so you guys can see
that this is the exact same thing we
were just looking at. Our replies, our
ideas, our questions, our explorer,
everything here is the same. Except for
now I could take this URL and I could
open it up on my phone. Or I could open
it up on my laptop. Or you guys could
open it up. And like I said, what's cool
about that is we basically are able to
then test in Codex. We can iterate right
here. We can make changes. But just
because we make changes doesn't mean
that it's actually going to go live. So
if I said, "Hey, I want you to change
the entire background instead of blue to
be red." And it would say, "Okay, cool.
Here's the red background. Here's the
localhost to test it out on." And if we
like it, we say, "Okay, push those
changes to our repo."
And then as soon as we push those
changes, Vercel would automatically
deploy those onto the real URL. But if
we said, "You know what? I don't like
that. Just keep it as is." then our main
production site never got touched. And
that's how we keep a clean separation to
test and to have something in
production. Okay, awesome. So, what do
we have now? We have a working project,
and I'm opening up this folder just to
show you how much we've actually done in
the past, I don't know, 30 to 40 minutes
together. And we've set up a bunch of
different stuff. Now, what do I want to
talk about next is automations. So,
already over here you can see this tab
called automations.
Automate work by setting up scheduled
chats. You can set up things like a
status report, release prep. There's
bunch of different things here that give
you sort of some inspiration. But,
what's really cool is you can turn all
of your skills or any of your repeatable
workflows into an automation that Codex
will run without needing your oversight.
So, I'm going to open up a new chat in
our YouTube Analytics Demo project, and
I'm going to go ahead and start chatting
to Codex here. Okay, so we've just done
a lot of stuff together. We built a
skill that grabs YouTube comments from
my YouTube, and it puts them into an
Excel sheet after it does some analysis.
And that's coming out really nice. And
then we built a dashboard served on
Vercel
that actually displays visually all of
those analytics and statistics from that
Excel sheet.
Now, what I want to do
is I want to set up an automation that
just refreshes this every week. So,
let's just say every Sunday at 5:00
p.m., I want you to run the YouTube
comments analytics skill. And then what
I want you to do with that is update
that data on that Excel sheet, you know,
add more rows, update the statistics,
and that will automatically sync to the
GitHub repo. So, after you make those
changes, you'll have to also reflect
those changes onto the actual code base
where the dashboard lives, and then
you'll push those changes to GitHub so
that they automatically get reflected in
Vercel. So, a lot of moving pieces here,
but basically high-level, you need to
get more comments,
redo the analysis, refresh the data into
Excel, and that way I'm always getting a
weekly report of what's going on with my
YouTube comment replies. Okay, so
honestly felt like a little bit of a
messy prompt, but Codex should be able
to do a good job of asking us any
questions it has and making sure that
it's able to actually set up this
automation for us the way we want it.
Now, something I want you guys to think
about here is the way that I approach
building AI automations and skills and
stuff like this is
remember when we talked about skills and
I said every time you use it, it's going
to get better cuz you can get feedback?
You should honestly think of these
automations in a similar way. You should
think about it like you're teaching a
kid to ride a bike. You're not going to
just chuck a kid on a bike and say,
"Okay, go have fun." You're going to
start off by holding the handles and
walking alongside the kid and saying,
"Okay, you're leaning too much to the
right. You need to lean more to the left
and you need to center your weight and
you need to make sure you're pedaling
and you need to do all this." And slowly
over time you'll start getting more
trust and you'll take your hand off the
handlebars and you'll start to walk a
little bit farther behind. And
eventually maybe you'll take off the
training wheels and stuff like that. The
point I'm making here is don't expect
your automations or skills to be perfect
on the first shot. That's just
unrealistic. You should be expecting
them to get better the more you use them
because every time you use them you get
more data. But look how quickly it set
that up. It set up a weekly automation.
It'll run every Sunday at 5:00 p.m. and
it will just basically run inside of
this project and it will run the YouTube
comment insights workflow. It will
regenerate the Excel workbook. It will
preserve and merge comment rows. It will
refresh the workbook. It will verify the
dashboard and it will commit only those
changes to our repo and it will push it
to the right branch so that Vercel
actually deploys all of that.
And what you want to do is you come into
the automations. You can see that we
have this one which is Sunday at 5:00
p.m. We can click into it to see the
actual prompt that it will submit to
Codex. We could add some stuff here if
we wanted, but we don't want to. This
will get injected into a new Codex chat
inside of our project. So, just as a
test, if I click on run now, you can see
that this starts a new chat right here.
This injected that exact prompt that we
looked at with the automation, the ID,
the memory, the last run, and the actual
prompt. And then it starts up this
little progress sheet which is kind of
like a to-do list and it's going to go
down in this order. And we have the full
Codex Agentic loop going on here. So, if
you're used to Cloud Code, this is
basically the same thing as running a
local scheduled routine in Cloud Code or
in Cloud Co-work. Now, the one thing
you're going to have to think about here
is because this is kind of a local cron,
if you close out of the Codex app or if
you turn off your PC or your laptop,
this will stop running.
In order for this to be truly 24/7 all
the time, you would have to get this
sort of Codex routine on the cloud
somehow. And that's what Cloud Code just
added with their cloud routines. Okay,
so while this automation is running, and
we know we're going to make sure that
it's working as expected, and if not,
we'll correct it a little bit. But, I
realized that I wanted to show you guys
a little bit more of that kind of
computer use and and browser use
functionality. So, if I go back into the
actual um dashboard where it built it,
which I believe was this one.
Yep, it was this one. What I'm going to
say here is
before we kind of keep making changes, I
want you to test the UI here. I want you
to open up this
um dashboard, and I want you to open it
up in this app so I can watch you do it.
I want you to use your browser use skill
and click around. I want you to click on
the buttons. I want you to try to break
this thing. I want you to stress test it
and QA it. And let me know what you
find, what bugs you find, and what we
might need to improve. And so, all I did
here is I explained in natural language
what I wanted, and we're going to be
able to see it use the right skills. So,
browser use is great for a lot of
things. It's great for um QA-ing, like
you just saw here, because it can find
bugs and click around on things that
typically it wouldn't be able to do.
It's also really great for certain
automations. So, maybe you don't have an
API for something, and you want to be
able to go in and download reports or go
in and change some settings. I've done a
few of those automations on my channel
as well, and browser use can be really,
really good for that. And you can even
use it to just search the web, because
you can use browser use in a way where
it has like cookies, and it's able to
remember your login info. So, you could
log into something like school, where
you'd have to get past the
authentication, and then the browser can
automate and control things. But
anyways, what you see right here is the
in-app browser open. And this little
mouse right here, which kind of looks
like the ChatGPT Alice logo, is going to
click around. You guys already saw it
switch from overview to replies. You can
see it's moving around even more now.
And as it's clicking these different
links and moving around, it's going to
start to document what might be wrong
with this app. And then we can obviously
say, "Okay, cool. Go make all of those
changes for us." Right here, it found
the thing with the YouTube link. So, it
said they have the correct URLs, but the
in-app browser did not visibly open the
new tab after clicking. So, that's one
of the things that we actually did
notice ourselves. Now, browser use is
pretty, I don't know, it can feel kind
of subjective when you're looking at it.
I mean, this is pretty cool to watch it
move live. But that also happens in
Cloud Code when I use like the
Playwright CLI or something. But from my
testing, Codex browser use has been much
more smooth and much more intelligent
than any other sort of browser use
automations that I've built or used
before. So, that is something that is
really cool about Codex in
this app here is that the browser use is
really good. Now, you could obviously
use it still from a CLI or whatever, but
it is pretty good. And like I said,
there's just so many really cool use
cases with browser automation. If you
want to check out a few more, even
though this video was Cloud Code, you
would set it up the exact same way in
Codex. I'll tag a video right up here. I
mean, I love this. It's literally going
through the filters. You guys saw it had
something else up here. It's changing
these check boxes. It's changing the
stuff. It did another search here, and
it's really going to actually stress
test this app to make sure that it
didn't miss anything. And what else is
really cool is you can build in this
sort of QA check into skills or into the
knowledge. So, next time when you're
building another dashboard or next time
you're building a game, before it ever
comes back to you, it already does a few
passes visually and, you know, from like
a code perspective, but you can make
sure that, "Hey, don't ever ever ever
come back to me until you've stress
tested with your own browser use." And
that's how you can really just make this
stuff smarter and smarter every day. All
right, so it decided that it's done
testing now. You can see that we have a
bunch of things that passed, but it
found a ton of improvements. It ended up
finding six things. The external links
for YouTube aren't really working. The
empty explorer state is too bare. Search
is too literal. Active tab state is
mostly visual. And there's some other
things that are just coming through
awkward and little changes that we need
to make to the UI. So, what's really
cool now is I can say, "Okay, take all
of these six changes and build a plan
around exactly how you're going to solve
those." And then once it comes back with
its proper plan, we would go ahead and
execute. But now that I showed you guys
that, let's check back in on our actual
automation that's running. You can see
that it is still going through the
checks. It's been about 10 minutes. So,
I will just check back in with you guys
once this has been fully committed and
we'll see what changes we have on our
actual live dashboard. Oh my goodness.
So, this was pushing like 20 minutes, so
I stopped it and said, "Why is it taking
so long?" And it's because it couldn't
overwrite a file that I had open. So,
don't do that. But now we're going to go
ahead and just keep this going. But
honestly, there is a lesson there, which
is sometimes it is nice to be able to
watch it, especially before, like I
said, before we know that this
automation is really refined, because if
it is going down the wrong path or it's
hitting some sort of roadblock that you
the human should be able to just be able
to solve in like a quick 20 seconds,
then stop it and ask a question or stop
it and steer it in the right way,
because it's going to help not only save
you time, but it's also going to save
you session limit. Because if it was
just burning tokens trying things, when
the fix was for me to just close out of
the app, then, you know, you'd rather
have stopped that earlier before it's
going down multiple wrong paths. And
another thing that I just noticed, which
is really important to call out here, is
that when you look at the automation,
this automation is set up by default to
run with GPT 5.2, which obviously we
don't want. So, you're going to want to
make sure that your model is set up
correctly, that the reasoning is set up
correctly, and all of this other stuff
is set up correctly, because that is
also a reason why that run was probably
taking so long. So, I just went ahead
and retriggered a new run using GPT 5.5,
and I decided to try this one out using
high. Now, you also might be curious
about the speed thing, the difference
between standard and fast. And honestly,
I never really ever touch fast. I'm
never working in something that's super
time-sensitive where I need to go fast,
because that also eats up your usage a
lot quicker. But this is much more like
it. We can actually see it thinking and
now we're going to be able to get this
back much quicker. Okay, so finally that
has finished up. You can see that it was
able to make changes to that Excel
sheet. And it says that it analyzed 208
comments. Now, because we just did this,
you know, earlier today, I'm curious if
it actually analyzed 200 of the same or
if it knew not to duplicate. And that's
something that we'll want to take a look
at. But let's actually head over to my
GitHub real quick. This is the repo that
we just set up, right? And if I go ahead
and give this a refresh, we should now
see that we have two commits. So, in the
second commit, this shows we refreshed
the comments. So, every single time that
you make a change to this repo, it'll
show that here. So, you can check at the
version control and you can see what's
going on. But what that means is because
our GitHub repo here got a new commit,
if we go to Vercel now and we look at
this actual project, if I go to
deployments, we should be able to see
that this just picked up a new change. 1
minute ago, it picked up this new
deployment. So, now if we go to the
dashboard and I give this a refresh,
this has new data. So, this used to say
200 videos, or sorry, 200 comments, and
now it says 208. So, that is just proof
that we were able to actually get some
fresh insights. Now, what's really nice
is that it looks like it just basically
added on eight new ones. It didn't like
add on 200 and then 200 more and then
eight more, because it realized that
they were duplicated. And if we actually
go and open up the actual source of
truth, if I go into our repo, I go to
outputs, I go to YouTube comment
insights and I click on the Excel sheet
that we accidentally had open earlier,
we see that the dashboard is exactly the
same, except for now we've analyzed
eight extra comments instead of the
original 200. But I wanted to show you
guys what happened inside of this run.
So, as you guys know, we ran into that
issue where I had the Excel sheet open,
right? That was the first mistake. The
second mistake was that this was running
with 5.2. So, we reset the automation,
and now it's running with 5.5 high. But
then what happened is this was running
for quite a while again. So, I stopped
it and said, "Hey, you've been running
for a long time. Why is it taking so
long? This is a very simple task." So,
basically, I knew that something went
wrong here. Because when we built this
dashboard from scratch, it only took
about 20 minutes.
But updating it took 40 minutes or
probably even longer. So, I knew
something was going wrong. So, I stopped
it, and I wanted to dig into it a little
bit better. And it And I was able to
find out that it was stuck on some
process. So, I said, "What do you need
from me in order to make sure that this
doesn't happen again, and that you're
able to just basically actually give us
this deliverable that we're looking
for?" And it had me make some
confirmations. And then as soon as I did
that, it took about 7 minutes, and then
it was able to make all of those
changes. So, the reason why I wanted to
show you this is because once again,
this stuff is not magic. You don't
deploy something, and you just expect it
to work perfectly. But what's really
cool is I could say,
"Awesome. So, everything worked as
expected on the dashboard. The analytics
have been updated. Now, I want you to
dig into what you just did with this
automation, and help me understand, are
there any opportunities to streamline
this automation? Are there any
opportunities to make this better and
more robust? Do you have any
recommendations here?" And I'll go ahead
and fire that off and see if there's any
way that we can make this automation
better. It's really important because
there's this concept called dark code,
which basically means you're writing a
bunch of code when you do your vibe
coding, but you don't actually know
what's going on
in the Python script or whatever
language you're using there. And not to
say that you need to understand every
line of your code, but you need to
understand fundamentally what it's doing
and why. And if there are any
opportunities to get rid of some code,
or if you have to, you know, bake in
some more guardrails in a certain place,
or anything like that. So, it's
basically looking at this to see if we
can make it faster, or if we can make it
safer. Now, ultimately, as long as it's
working, I don't really care how fast it
is. Because if this is running once a
week, I don't care if it happens at 6:00
p.m. or 6:30 p.m. or even 7:00 p.m. As
long as it's actually working. But
sometimes speed is a big deal in your
automations. So, it comes back and says,
"Yes, this works, but it is still too
agent orchestrated and too heavy for a
weekly data refresh." So, we could add
one repo script to basically run the
builder. We could stop running the full
next build for these sorts of updates.
And it's giving us all these different
insights that we could then go ahead and
push to make our automation and our
system better here. So, that's how you
can kind of keep iterating upon it. Even
if you yourself don't really know
exactly how you would make this better,
you can use the AI to figure out and
brainstorm. Okay. So, what you guys saw
here is we created this product from
scratch, right? It was our YouTube
analytics demo. We connected to YouTube,
we set up a skill, we set up an
automation, we set up a dashboard, we
used some browser use, and now we have
an actual system where every week it
will pull in more comments, it will
update our data, our Excel sheet, and
then it pushes all of those changes to
our actual live dashboard completely
automatically. So, I hope you guys
enjoyed seeing that flow from basically
idea, setting up a project, all the way
to the end. And just remember, what's
really important is that this entire
project, everything that we just did, is
literally just a folder on your
computer. And what that means is you can
customize this folder to be used by
OpenClaw or CloudCode or whatever you
want. Any agent can work inside of this
directory now. And if I wanted to
explicitly do this inside of Codex,
well, I could go ahead and click on
view. I could open up the terminal. And
now, because we're in this directory, I
could call on Claude. And so, right
here, I could be working with ClaudeCode
inside of this actual repository. So,
maybe right here I'm using Claude to
help brainstorm, and it creates me a
brainstorming file inside of this
project somewhere. And then what I could
do is I could just go back up here to
Codex, and I could go ahead and tag that
file. So, say, "Hey, here is a planning
file, a brainstorm file that I just
generated with Claude. I want you to be
the one who actually takes this file and
executes it for me." So, you can really
start to play with these together and
mix and match. Just like I've shown you
before where we would build something
with Cloud Code and then we would
actually loop in Codex to do the review
on it and to find like security bugs or
any just like code-based functionality
bugs inside of it. So, in my mind it's
always about which tool is best for this
specific use case, not which tool is
best. All right, so I really hope that
you guys enjoyed that. You should have a
really good understanding of the
interface of Codex. You should have a
really good understanding of how you
come in here, you connect to other
tools, you use plugins, you start
building skills. And really the next
unlock is start building more and more
skills. So, try to think about what are
you doing on a daily basis? What are you
doing on a weekly basis? And write down
some of those things that are boring and
repetitive and that you just wish
happened when you slept. And then start
to bring those into Codex and start to
just brainstorm. And as you're going
through this process, you're going to
want to set up kind of your own AI
operating system. So, I'm going to tag a
video right up here that you guys should
100% go watch next. This one was kind of
based on Cloud Code, but remember
everything is just files and folders.
So, if you follow the steps in this
video, you will be able to replicate
this in Codex, absolutely no problem.
And what's really cool is every project
that I've moved over from Cloud Code to
Codex, I've said, "Hey, this is
something I built with Cloud Code. Go
ahead and analyze it and help me figure
out what files you need to create in
order to make this compatible with
Codex." And all it's going to do is
maybe change a few names and maybe
change the cloud.md to the agent.md and
it's really, really simple. It'll take
like 30 seconds and then you have your
project in Codex. So, anyways, I'll see
you guys over there at that AI operating
system video. Please give it a like if
you enjoyed. It helps me out a ton. And
as always, I appreciate you guys making
it to the end of the video.