1
00:00:00,000 --> 00:00:02,407
So, Codex is an absolutely incredible super app.

2
00:00:02,407 --> 00:00:05,851
I've been using it a lot more lately, and I'm not saying that I'm ditching Claude Code.

3
00:00:05,851 --> 00:00:09,378
I still use them both regularly because they're both good at different things.

4
00:00:09,378 --> 00:00:18,950
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

5
00:00:18,960 --> 00:00:21,070
in Codex done by the end of this video.

6
00:00:21,080 --> 00:00:27,271
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.

7
00:00:27,271 --> 00:00:36,513
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.

8
00:00:36,513 --> 00:00:44,232
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.

9
00:00:44,232 --> 00:00:49,695
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.

10
00:00:49,695 --> 00:00:54,480
We have projects on the left, we have chats on the left, and then we can talk to ChatGPT right here.

11
00:00:54,480 --> 00:00:59,670
We use this toggle to change the model whether we want to use GPT 5.5, 5.4, or other models.

12
00:00:59,670 --> 00:01:02,910
We can change the speed, and then we can also change the intelligence.

13
00:01:02,910 --> 00:01:04,911
So, low, medium, high, or extra high.

14
00:01:04,911 --> 00:01:08,054
And I'll get into this stuff a little bit later in more depth.

15
00:01:08,054 --> 00:01:15,877
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.

16
00:01:15,877 --> 00:01:17,187
So, that is the interface.

17
00:01:17,187 --> 00:01:18,310
Don't get overwhelmed.

18
00:01:18,320 --> 00:01:26,710
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

19
00:01:26,720 --> 00:01:29,859
automations, and then deploying on some sort of website.

20
00:01:29,859 --> 00:01:30,571
So, buckle up.

21
00:01:30,571 --> 00:01:32,440
All right, so what actually is Codex?

22
00:01:32,440 --> 00:01:35,270
Codex is basically a massive super app.

23
00:01:35,270 --> 00:01:43,602
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.

24
00:01:43,602 --> 00:01:49,369
It can do basically anything on your computer including using the mouse and keyboard and clicking around and automating a browser.

25
00:01:49,369 --> 00:01:51,632
It also lets us build these reusable skills.

26
00:01:51,632 --> 00:01:59,514
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.

27
00:01:59,514 --> 00:02:03,035
So, the main difference here between web chat is that you're basically just talking.

28
00:02:03,035 --> 00:02:06,395
And you have these connectors in chat GPT now, so you can get a little bit more functionality.

29
00:02:06,395 --> 00:02:10,070
You can give that AI brain a bit more of like hands.

30
00:02:10,080 --> 00:02:13,030
But, in Codex, it can do everything.

31
00:02:13,040 --> 00:02:18,438
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.

32
00:02:18,438 --> 00:02:21,022
So, you might as well just switch over to something like Codex.

33
00:02:21,022 --> 00:02:25,565
And if you are curious about the Claude code versus Codex difference, they're different harnesses, right?

34
00:02:25,565 --> 00:02:28,958
So, they fundamentally work a little bit different, but very similarly.

35
00:02:28,958 --> 00:02:30,588
They also use different models.

36
00:02:30,588 --> 00:02:37,110
So, Claude code natively under the hood uses Opus and Sonnet and Haiku, and Codex under the hood uses the different chat GPT models.

37
00:02:37,120 --> 00:02:42,666
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.

38
00:02:42,666 --> 00:02:45,575
So, if you guys want to check out this video next, I'll tag that right up here.

39
00:02:45,575 --> 00:02:47,901
I definitely think it's worth just at least skimming through.

40
00:02:47,901 --> 00:02:53,009
Because ultimately, these models have very different strengths is what I've noticed after playing with them non-stop.

41
00:02:53,009 --> 00:02:59,747
I really like Claude for being sort of like exploratory and brainstorming and helping me get creative and think through things and plan.

42
00:02:59,747 --> 00:03:02,430
But then, I really like Codex for being pragmatic.

43
00:03:02,440 --> 00:03:06,944
And it feels like it does better at following my plan if the plan grows longer and longer.

44
00:03:06,944 --> 00:03:14,098
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.

45
00:03:14,098 --> 00:03:16,850
So, I'm not in here saying that I love Codex more than Claude code.

46
00:03:16,850 --> 00:03:20,589
I'm saying that I'm using them both, and I'm learning more about both every day.

47
00:03:20,589 --> 00:03:25,494
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.

48
00:03:25,494 --> 00:03:30,526
But this pet, while you're working, it stays in the bottom of your screen, and it tells you what it's working on.

49
00:03:30,526 --> 00:03:34,430
So, it's really nice to be able to multitask and see what's happening inside of Codex.

50
00:03:34,440 --> 00:03:35,770
And the pet's kind of funny.

51
00:03:35,770 --> 00:03:37,117
And it's more than just having chats.

52
00:03:37,117 --> 00:03:39,959
It's the ability to have everything organized on your workspace.

53
00:03:39,959 --> 00:03:49,512
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.

54
00:03:49,512 --> 00:03:52,029
And all of this is is a bunch of folders and files.

55
00:03:52,029 --> 00:03:53,388
I've got a bunch of files here.

56
00:03:53,388 --> 00:03:54,727
I've got a bunch of different folders.

57
00:03:54,727 --> 00:03:55,401
I've got settings.

58
00:03:55,401 --> 00:03:56,114
I've got skills.

59
00:03:56,114 --> 00:03:56,849
I've got agents.

60
00:03:56,849 --> 00:03:57,798
I've got projects.

61
00:03:57,798 --> 00:03:59,898
I've got all these things that I'm working on.

62
00:03:59,898 --> 00:04:02,430
And all this is is a bunch of local files.

63
00:04:02,440 --> 00:04:06,942
Which means I can have Codex work inside of this directory and do everything as well.

64
00:04:06,942 --> 00:04:11,729
All that we're doing when we're using these different models is we're organizing things into a structure.

65
00:04:11,729 --> 00:04:13,803
A structure that different agent harnesses can understand.

66
00:04:13,803 --> 00:04:20,590
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.

67
00:04:20,600 --> 00:04:25,170
As long as you have some sort of instructions and guidelines over what actually lives where.

68
00:04:25,170 --> 00:04:30,732
Okay, so basically what I'm going to be building with you guys today is a bit of a YouTube comment intelligence system.

69
00:04:30,732 --> 00:04:34,179
So we want to be able to pull in YouTube comments from my channel.

70
00:04:34,179 --> 00:04:35,986
We want to be able to have those be analyzed.

71
00:04:35,986 --> 00:04:37,241
We want a workbook in Excel.

72
00:04:37,241 --> 00:04:39,184
We want like some data visualization.

73
00:04:39,184 --> 00:04:44,306
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.

74
00:04:44,306 --> 00:04:46,701
And I'm going to show you how we ship and deploy all of that.

75
00:04:46,701 --> 00:04:50,356
So basically from zero to a working project is what I'm going to show you guys today.

76
00:04:50,356 --> 00:04:53,923
So, let me go ahead and open up the Codex app and show you guys how this works.

77
00:04:53,923 --> 00:04:57,550
Now real quick, what you have to do is have some sort of ChatGPT plan.

78
00:04:57,560 --> 00:05:00,322
The good news is if you're on free, you can still try out Codex.

79
00:05:00,322 --> 00:05:01,907
You have limited Codex access.

80
00:05:01,907 --> 00:05:05,420
But I would recommend just hopping on the $20 a month plan to get started.

81
00:05:05,420 --> 00:05:09,670
And if you're running into your limits pretty quickly, then maybe you want to upgrade to Pro.

82
00:05:09,680 --> 00:05:16,364
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.

83
00:05:16,364 --> 00:05:21,197
Because obviously it's so much more expensive to pay per token rather than being on some sort of subscription.

84
00:05:21,197 --> 00:05:25,663
And then you're just going to go ahead and go to Codex and then just download the app for your operating system.

85
00:05:25,663 --> 00:05:27,908
That's the way that we're going to be using it today.

86
00:05:27,908 --> 00:05:34,635
Ultimately, you will be getting more full functionality if you're using Codex in VS Code extension or in the terminal.

87
00:05:34,635 --> 00:05:39,110
But for the sake of the video, using the app is going to get you super far either way.

88
00:05:39,120 --> 00:05:42,433
There's just a few little things you want to keep in mind, which is why I'm making this YouTube video.

89
00:05:42,433 --> 00:05:44,707
All right, so let's go ahead and get started.

90
00:05:44,707 --> 00:05:51,028
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.

91
00:05:51,028 --> 00:05:59,449
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.

92
00:05:59,449 --> 00:06:08,030
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?"

93
00:06:08,040 --> 00:06:13,849
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.

94
00:06:13,849 --> 00:06:23,791
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.

95
00:06:23,791 --> 00:06:32,393
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.

96
00:06:32,393 --> 00:06:43,310
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

97
00:06:43,320 --> 00:06:43,638
Codex.

98
00:06:43,638 --> 00:06:47,053
So, now I can see different assets that live in this project, all these images.

99
00:06:47,053 --> 00:06:53,315
I can see different guides, and I can have a little bit more organization to this ongoing project in my business.

100
00:06:53,315 --> 00:06:55,315
All right, so we're going to start a new project.

101
00:06:55,315 --> 00:07:03,249
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.

102
00:07:03,249 --> 00:07:08,752
So, that's going to open up a little um file explorer over here, and then you choose where you want this to live.

103
00:07:08,752 --> 00:07:20,747
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.

104
00:07:20,747 --> 00:07:27,697
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.

105
00:07:27,697 --> 00:07:29,744
Now, right here you can see I have something called full access.

106
00:07:29,744 --> 00:07:32,950
By default, you won't see this, it'll just be on default permissions.

107
00:07:32,960 --> 00:07:36,814
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.

108
00:07:36,814 --> 00:07:45,058
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.

109
00:07:45,058 --> 00:07:47,423
All you have to do to get that is join my free school community.

110
00:07:47,423 --> 00:07:48,897
The link for that is down in the description.

111
00:07:48,897 --> 00:08:00,230
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

112
00:08:00,240 --> 00:08:01,910
on YouTube is usually dropped in here.

113
00:08:01,920 --> 00:08:04,698
So, join the community, link in the description, and let's get back to the video.

114
00:08:04,698 --> 00:08:05,171
Thanks, guys.

115
00:08:05,171 --> 00:08:12,783
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.

116
00:08:12,783 --> 00:08:16,586
And the way that I'm going to do that is I have a project locally.

117
00:08:16,586 --> 00:08:25,834
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.

118
00:08:25,834 --> 00:08:28,308
So, what I'm going to do is I'm not going to give it that file path.

119
00:08:28,308 --> 00:08:35,709
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."

120
00:08:35,719 --> 00:08:42,727
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.

121
00:08:42,727 --> 00:08:44,702
In this case, I'm just telling it to read them.

122
00:08:44,702 --> 00:08:52,712
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.

123
00:08:52,712 --> 00:08:59,375
I make YouTube videos on AI automation, and inside of this folder, I have a bunch of my raw transcripts.

124
00:08:59,375 --> 00:09:04,350
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.

125
00:09:04,350 --> 00:09:05,655
You shouldn't do any organization.

126
00:09:05,655 --> 00:09:07,432
I just want you to read those for context.

127
00:09:07,432 --> 00:09:11,762
Now, what's cool about this is Codex, once again, is an agent that lives locally.

128
00:09:11,762 --> 00:09:22,251
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.

129
00:09:22,251 --> 00:09:24,816
And because we're telling it to do so, it's going to search.

130
00:09:24,816 --> 00:09:27,318
Right here, you can see it's searching inside of my desktop.

131
00:09:27,318 --> 00:09:30,903
And then it's going to find the YouTube OS, and it's going to drill down into that folder.

132
00:09:30,903 --> 00:09:33,950
And it's going to keep searching until it finds what it wants.

133
00:09:33,960 --> 00:09:35,028
Now, a quick warning.

134
00:09:35,028 --> 00:09:38,621
This is not the most effective use of Codex or of your tokens.

135
00:09:38,621 --> 00:09:44,200
The more effective use would be to say, "Hey, this is the folder right here with all my raw transcripts.

136
00:09:44,200 --> 00:09:54,268
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.

137
00:09:54,268 --> 00:09:59,339
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.

138
00:09:59,339 --> 00:10:02,888
And right here it says there are two files, raw and then processed.

139
00:10:02,888 --> 00:10:05,091
So it doesn't know which one to look through.

140
00:10:05,091 --> 00:10:09,078
So anyways, the more specific you can be with your prompting and with your pointing, the better.

141
00:10:09,078 --> 00:10:12,569
Now let's also, while this is running, talk about the model stuff over here.

142
00:10:12,569 --> 00:10:14,829
So right now you've noticed that we're on extra high.

143
00:10:14,829 --> 00:10:18,560
And I would say that extra high is probably overkill for that sort of job.

144
00:10:18,560 --> 00:10:22,738
For the most part, I'm using medium to do all of my planning and my brainstorming.

145
00:10:22,738 --> 00:10:27,138
And then every once in a while, if I'm doing a huge build or some massive scale, I'll switch to high.

146
00:10:27,138 --> 00:10:33,510
I'm honestly hardly using extra high unless I'm hitting some sort of bug or issue that it's not able to solve.

147
00:10:33,520 --> 00:10:38,226
Anyways, it has read nine transcripts, so it has a little bit of a better of an idea now about who we are.

148
00:10:38,226 --> 00:10:44,105
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.

149
00:10:44,105 --> 00:10:51,202
So even though it knows this, this knowledge only really lives in our overall ChatGPT memory, and in this specific chat window.

150
00:10:51,202 --> 00:10:55,357
If I opened up a new chat, it probably wouldn't still have the knowledge about this.

151
00:10:55,357 --> 00:10:59,916
So what I'd probably want to do is say, "What I want you to do is set up an agents.md file.

152
00:10:59,916 --> 00:11:03,876
This should have context about me and about what the goal of this project is.

153
00:11:03,876 --> 00:11:13,310
Ultimately, what we're going to do here is we're going to build a dashboard that's going to be pushed to dashboard that's going to be pushed to Vercel, and it's going to have information about my channel and some analytics around the

154
00:11:13,320 --> 00:11:14,717
comments and stuff like that.

155
00:11:14,717 --> 00:11:15,661
So that's the end goal.

156
00:11:15,661 --> 00:11:20,474
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.

157
00:11:20,474 --> 00:11:24,498
But I just want you to get us started here with a quick agents.md file.

158
00:11:24,498 --> 00:11:27,110
And now I'm going to go ahead and shoot that off."

159
00:11:27,120 --> 00:11:29,114
Now, why do we need to create an agents.md file?

160
00:11:29,114 --> 00:11:34,537
Well, if you're coming over from Cloud Code, you know that we always want to start a project with a Claude.md file.

161
00:11:34,537 --> 00:11:40,430
And this is just agents.md, it's the same thing, but Codex expects a different terminology.

162
00:11:40,440 --> 00:11:43,830
And what this agents file does is it's basically like it's onboarding doc.

163
00:11:43,840 --> 00:11:54,883
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.

164
00:11:54,883 --> 00:11:56,433
So, this document has been created.

165
00:11:56,433 --> 00:11:58,649
If I click on open, we're going to be able to read it right here.

166
00:11:58,649 --> 00:12:00,460
And it's just a very simple markdown file.

167
00:12:00,460 --> 00:12:02,013
This is the project right here.

168
00:12:02,013 --> 00:12:04,443
This is about Nate's, Nate Herc does this.

169
00:12:04,443 --> 00:12:05,950
This is the project goal.

170
00:12:05,960 --> 00:12:07,183
This is the product direction.

171
00:12:07,183 --> 00:12:11,790
So, we're just giving it really important information that it needs to know about our project.

172
00:12:11,800 --> 00:12:17,852
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.

173
00:12:17,852 --> 00:12:19,150
Sorry, not folder, file.

174
00:12:19,160 --> 00:12:23,510
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.

175
00:12:23,520 --> 00:12:26,705
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.

176
00:12:26,705 --> 00:12:31,071
Plan mode is what I like to start with when I am creating some sort of plan.

177
00:12:31,071 --> 00:12:38,328
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.

178
00:12:38,328 --> 00:12:40,230
So, I always start with plan mode.

179
00:12:40,240 --> 00:12:41,390
Now, I'm just going to start yapping.

180
00:12:41,400 --> 00:12:45,957
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.

181
00:12:45,957 --> 00:12:48,732
I'm now an official member of the Glido team, which is super exciting.

182
00:12:48,732 --> 00:12:56,530
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.

183
00:12:56,530 --> 00:12:57,913
So, check it out in the description.

184
00:12:57,913 --> 00:13:06,192
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.

185
00:13:06,192 --> 00:13:11,270
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.

186
00:13:11,280 --> 00:13:14,670
So, help me figure out how we do that, and then explain it to me step-by-step.

187
00:13:14,680 --> 00:13:24,710
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

188
00:13:24,720 --> 00:13:26,266
Codex or Claude Code.

189
00:13:26,266 --> 00:13:28,514
Ask it to do research and explain things to you.

190
00:13:28,514 --> 00:13:31,350
And that's basically how I learned everything that I know.

191
00:13:31,360 --> 00:13:35,947
So while this is running, I wanted to explain something real quick, which is called plugins.

192
00:13:35,947 --> 00:13:39,544
Plugins, MCP servers, skills, connectors, whatever you want to call them.

193
00:13:39,544 --> 00:13:43,473
We kind of have this interface inside of Codex to do stuff like this.

194
00:13:43,473 --> 00:13:46,028
And what you'll notice is there's a bunch of different plugins here.

195
00:13:46,028 --> 00:13:50,072
We've got hugging face, we've got Vercel, we've got GitHub, we've got Game Studio.

196
00:13:50,072 --> 00:13:54,235
We've got a bunch down here for design, Remotion, Figma, Hyperframes, Canva.

197
00:13:54,235 --> 00:14:00,190
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.

198
00:14:00,200 --> 00:14:05,433
Google Drive, Slack, SharePoint, Teams, whatever you may need, a lot of that stuff is available here.

199
00:14:05,433 --> 00:14:06,966
And if you can't find it, you can go ahead and search.

200
00:14:06,966 --> 00:14:08,618
So like Slack, we have it right there.

201
00:14:08,618 --> 00:14:13,190
But look, if I search YouTube, there is no default plugin right here.

202
00:14:13,200 --> 00:14:18,377
And that's why I had to ask Codex, okay, so there's no plugin, how do I actually access YouTube data?

203
00:14:18,377 --> 00:14:21,550
And so it comes back here and it asks us some questions.

204
00:14:21,560 --> 00:14:28,110
It says for the first comment analysis milestone, which connection path should we plan around, API key, OAuth, or both?

205
00:14:28,120 --> 00:14:33,190
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.

206
00:14:33,200 --> 00:14:34,870
What should the first comment pull focus on?

207
00:14:34,870 --> 00:14:36,670
I'm just going to say recent videos.

208
00:14:36,680 --> 00:14:40,470
And now if it has any other questions, it'll go ahead and ask us those first.

209
00:14:40,480 --> 00:14:49,710
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

210
00:14:49,720 --> 00:14:52,790
back here with a plan, which we can go ahead and read.

211
00:14:52,800 --> 00:14:59,270
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.

212
00:14:59,280 --> 00:15:09,750
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

213
00:15:09,760 --> 00:15:11,069
separate one for Claude code.

214
00:15:11,069 --> 00:15:16,388
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.

215
00:15:16,388 --> 00:15:19,087
Codex is going to review the plan and then edit it.

216
00:15:19,087 --> 00:15:22,345
And then once we're aligned on the plan, we'll go ahead and start executing.

217
00:15:22,345 --> 00:15:26,230
So now it's come back and it has okay, we're going to do a brand new Google Cloud API key.

218
00:15:26,240 --> 00:15:32,070
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.

219
00:15:32,080 --> 00:15:33,835
So, there's some stuff that we're going to have to do here.

220
00:15:33,835 --> 00:15:43,619
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.

221
00:15:43,619 --> 00:15:50,630
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.

222
00:15:50,640 --> 00:15:58,670
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.

223
00:15:58,680 --> 00:16:02,150
Okay, so I have to go to Google Cloud and get everything set up in a project.

224
00:16:02,160 --> 00:16:08,169
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.

225
00:16:08,169 --> 00:16:10,016
So, it created this one called for us.

226
00:16:10,016 --> 00:16:11,550
So, it created this one called .env.local.

227
00:16:11,560 --> 00:16:14,536
So, what I'm going to do is head over to my Google Cloud Console.

228
00:16:14,536 --> 00:16:18,550
I'm signed in with my YouTube account, and I'm going to go ahead and create a new project.

229
00:16:18,560 --> 00:16:21,799
So, I'm going to call this one um Codex demo.

230
00:16:21,799 --> 00:16:26,304
I'm just going to go ahead and create this project, and once that's spun up, it's pretty simple.

231
00:16:26,304 --> 00:16:31,376
We just have to create a connection to YouTube Data API, and then we're going to create an API key.

232
00:16:31,376 --> 00:16:32,542
So, I'm going to select this project.

233
00:16:32,542 --> 00:16:42,650
The first thing I'm going to do is search up here at the top for YouTube 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.

234
00:16:42,650 --> 00:16:51,196
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.

235
00:16:51,196 --> 00:16:52,295
So, create API key.

236
00:16:52,295 --> 00:16:56,331
This is just going to be called Codex YouTube demo.

237
00:16:56,331 --> 00:16:59,522
And then right here for the restrictions, I'm just going to once again type in YouTube.

238
00:16:59,522 --> 00:17:03,858
We're going to check YouTube Data API v3, and then we're going to go ahead and create that API key.

239
00:17:03,858 --> 00:17:05,946
And it gives me this value that I'm going to go ahead and copy.

240
00:17:05,946 --> 00:17:18,058
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.

241
00:17:18,058 --> 00:17:19,829
I'm just going to paste that in right there.

242
00:17:19,839 --> 00:17:25,790
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.

243
00:17:25,800 --> 00:17:27,476
I'm not actually going to do the uploads playlist.

244
00:17:27,476 --> 00:17:31,085
I don't think it needs that, but I am going to go find the YouTube channel ID.

245
00:17:31,085 --> 00:17:32,460
Oh, but this is actually cool.

246
00:17:32,460 --> 00:17:38,548
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.

247
00:17:38,548 --> 00:17:44,497
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.

248
00:17:44,497 --> 00:17:48,470
So now that we have that API key put in, let's just see if it works.

249
00:17:48,480 --> 00:17:52,750
Okay, so I've given you the API key in that local.env.

250
00:17:52,760 --> 00:17:55,198
Can you go ahead and test it to see if that connection works?

251
00:17:55,198 --> 00:17:57,317
And if not, then we'll have to make some changes.

252
00:17:57,317 --> 00:18:05,678
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.

253
00:18:05,678 --> 00:18:08,355
And that's what happens when you're on default permissions.

254
00:18:08,355 --> 00:18:11,310
So if you want to be able to change that, you're going to go up here to your settings.

255
00:18:11,320 --> 00:18:14,857
And then in general, you can see right here, auto review or full access.

256
00:18:14,857 --> 00:18:16,849
And this by default will be turned off.

257
00:18:16,849 --> 00:18:25,539
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.

258
00:18:25,539 --> 00:18:30,772
Or if I switch this to full access, now it's just going to do everything without asking for permission.

259
00:18:30,772 --> 00:18:36,828
So obviously it comes up as orange here because there's sometimes where you might not want full autonomous access.

260
00:18:36,828 --> 00:18:43,049
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.

261
00:18:43,049 --> 00:18:50,791
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.

262
00:18:50,791 --> 00:18:58,333
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.

263
00:18:58,333 --> 00:18:59,832
So you just want to be safe with it.

264
00:18:59,832 --> 00:19:02,395
I personally have never had any sort of problem like that.

265
00:19:02,395 --> 00:19:08,437
That usually comes from context rot or very vague instructions or or just not being super smart with your planning.

266
00:19:08,437 --> 00:19:11,013
So you can see what's happening here is it's trying it out, right?

267
00:19:11,013 --> 00:19:12,303
And it's running into some issues.

268
00:19:12,303 --> 00:19:17,096
But what's great about this agentic loop is that it's going to keep trying things until it actually goes through.

269
00:19:17,096 --> 00:19:17,599
There we go.

270
00:19:17,599 --> 00:19:23,512
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.

271
00:19:23,512 --> 00:19:34,950
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

272
00:19:34,960 --> 00:19:36,870
you every single thing that it's trying.

273
00:19:36,880 --> 00:19:38,830
But now we can see I've tested the key.

274
00:19:38,840 --> 00:19:42,776
I can get comments from your recent videos, and it's completely working as expected.

275
00:19:42,776 --> 00:19:49,150
However, PowerShell's built-in web request had a local TLS issue, but Node and Python both connected cleanly.

276
00:19:49,160 --> 00:19:50,618
For the project, that's fine.

277
00:19:50,618 --> 00:19:54,110
We'll use Node and server-side code for the dashboard anyway.

278
00:19:54,120 --> 00:19:56,390
Now, here's something to think about.

279
00:19:56,400 --> 00:19:58,430
I don't really know what that means.

280
00:19:58,440 --> 00:20:07,430
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.

281
00:20:07,430 --> 00:20:14,136
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.

282
00:20:14,136 --> 00:20:17,934
So all I'm going to say is, "Okay, thanks for testing that.

283
00:20:17,934 --> 00:20:23,529
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.

284
00:20:23,529 --> 00:20:31,590
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."

285
00:20:31,600 --> 00:20:41,390
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.

286
00:20:41,400 --> 00:20:43,105
Another mindset shift for you right there.

287
00:20:43,105 --> 00:20:45,643
So here it decided to add this into the agents.md.

288
00:20:45,643 --> 00:20:55,904
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.

289
00:20:55,904 --> 00:20:56,150
Okay.

290
00:20:56,160 --> 00:21:00,790
So before we keep going, I did want to point out one other thing down here, which is this little bar.

291
00:21:00,800 --> 00:21:04,500
This shows you how much of your context window is currently filled up.

292
00:21:04,500 --> 00:21:08,058
Now, if If were using Claude Code and you're using Opus, you have a million.

293
00:21:08,058 --> 00:21:11,491
So, it's, you know, about four times as much as this in Codex.

294
00:21:11,491 --> 00:21:16,838
However, Codex automatically compacts just like Opus does and just like Cloud Code does.

295
00:21:16,838 --> 00:21:17,595
So, it's really nice.

296
00:21:17,595 --> 00:21:23,085
You don't have to worry about it too much, but you still want to be thinking about some general context management tips.

297
00:21:23,085 --> 00:21:27,386
I've got some videos on my channel about that that are agnostic to whatever tool you want to use.

298
00:21:27,386 --> 00:21:32,735
I'm not going to dive super deep into context window management in this video, but just wanted to point that out as well.

299
00:21:32,735 --> 00:21:33,929
Okay, so what's next?

300
00:21:33,929 --> 00:21:40,429
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.

301
00:21:40,429 --> 00:21:42,803
So, let me just once again go back to plan mode.

302
00:21:42,803 --> 00:21:49,200
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.

303
00:21:49,200 --> 00:21:54,247
I want you to find patterns and I want you to display all of this in a Excel sheet.

304
00:21:54,247 --> 00:22:05,670
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.

305
00:22:05,680 --> 00:22:10,633
So, go ahead and do a plan for this and structure what the Excel sheet deliverable will look like.

306
00:22:10,633 --> 00:22:11,342
So, I shot that off.

307
00:22:11,342 --> 00:22:15,006
I'm going to let you guys know when we have a plan or if it asks me any questions.

308
00:22:15,006 --> 00:22:17,607
A couple questions here to make sure that it understands what we want.

309
00:22:17,607 --> 00:22:19,328
It's asking about the recent comments.

310
00:22:19,328 --> 00:22:21,078
I'm just going to say across recent videos.

311
00:22:21,078 --> 00:22:22,310
How many should we pull?

312
00:22:22,320 --> 00:22:23,078
Let's say 200.

313
00:22:23,078 --> 00:22:25,476
How should we classify and summarize the comments?

314
00:22:25,476 --> 00:22:27,030
I'm just going with all of its recommendations.

315
00:22:27,040 --> 00:22:27,796
Those were pretty good.

316
00:22:27,796 --> 00:22:32,962
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.

317
00:22:32,962 --> 00:22:39,388
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.

318
00:22:39,388 --> 00:22:43,390
So, now I can keep tabs on my workflow while I'm doing other things.

319
00:22:43,400 --> 00:22:45,622
And Codex makes multitasking really easy.

320
00:22:45,622 --> 00:22:49,102
Because of the fact that I could open up a new chat in this project and work on something else.

321
00:22:49,102 --> 00:22:51,660
Then I could open up a new chat in this project and work on something else.

322
00:22:51,660 --> 00:22:57,597
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.

323
00:22:57,597 --> 00:22:58,822
So, anyways, here is the plan.

324
00:22:58,822 --> 00:23:01,593
What I would recommend is at this point you read through it.

325
00:23:01,593 --> 00:23:06,941
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.

326
00:23:06,941 --> 00:23:11,125
But while this is running real quick, I wanted to show you a few other things that we can look at.

327
00:23:11,125 --> 00:23:15,270
So, if you do {slash} inside of this chat, there's things that you can actually look at.

328
00:23:15,280 --> 00:23:22,430
So, we've got auto review, code review, feedback, MCP, memories, model, personality, pet, plan mode, reasoning.

329
00:23:22,440 --> 00:23:29,110
There's all of these different skills that we can use like browser use, GitHub, Higgs Field, PDF, skill creator.

330
00:23:29,120 --> 00:23:31,799
The {slash} is going to open up a lot of different things for you.

331
00:23:31,799 --> 00:23:34,174
And of course, what you can do is you can also tag things.

332
00:23:34,174 --> 00:23:40,433
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.

333
00:23:40,433 --> 00:23:49,603
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.

334
00:23:49,603 --> 00:23:57,888
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.

335
00:23:57,888 --> 00:24:01,470
So, what I can show you is I don't want to interrupt this main don't want to interrupt this main session.

336
00:24:01,480 --> 00:24:04,164
I could come up here and I could click on open side chat.

337
00:24:04,164 --> 00:24:09,478
And that opens up a different little conversation here that still lives in this chat, still lives in this project.

338
00:24:09,478 --> 00:24:13,830
So, if you're coming over from Cloud Code, this is pretty similar to {slash} by the way.

339
00:24:13,840 --> 00:24:16,209
So, what I can do over here is I can do {slash} personality.

340
00:24:16,209 --> 00:24:19,755
And now I can set if I want the personality to be friendly or pragmatic.

341
00:24:19,755 --> 00:24:25,975
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.

342
00:24:25,975 --> 00:24:27,633
I'm actually going to switch this to pragmatic.

343
00:24:27,633 --> 00:24:31,174
You can see this says concise, task-focused, and direct.

344
00:24:31,174 --> 00:24:34,774
And honestly, most of the time I'd probably prefer pragmatic.

345
00:24:34,774 --> 00:24:37,390
So, I'm usually working on pragmatic by default.

346
00:24:37,400 --> 00:24:40,414
But now that we've opened the side chat, let me just show you guys something else.

347
00:24:40,414 --> 00:24:46,008
Um, give me a quick update about my YouTube channel and, you know, the type of videos I've been making recently.

348
00:24:46,008 --> 00:24:55,990
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

349
00:24:56,000 --> 00:24:57,852
earlier, you can ask over here.

350
00:24:57,852 --> 00:25:02,150
Because right here you can see it has the context of what we talked about already.

351
00:25:02,160 --> 00:25:05,964
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.

352
00:25:05,964 --> 00:25:07,464
Okay, so that has been created.

353
00:25:07,464 --> 00:25:15,992
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.

354
00:25:15,992 --> 00:25:20,570
And I could actually make some follow-ups and chat with it right here, but it's a little bit finicky to be honest.

355
00:25:20,570 --> 00:25:25,124
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.

356
00:25:25,124 --> 00:25:26,936
And you can see there's a lot more that lives in here now.

357
00:25:26,936 --> 00:25:34,454
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.

358
00:25:34,454 --> 00:25:42,950
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, have to do is come into CodaX and say, "Hey, help me like reorganize this, or maybe

359
00:25:42,960 --> 00:25:45,510
give me a document that helps me navigate it a little bit better."

360
00:25:45,520 --> 00:25:51,334
Because of course this lives in a local directory, and CodaX can touch it, read it, organize it, edit it.

361
00:25:51,334 --> 00:25:56,367
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.

362
00:25:56,367 --> 00:26:00,855
So it took some screenshots as you can see, but then it also created the actual Excel sheet.

363
00:26:00,855 --> 00:26:03,826
So I'll open this up right here, and we can take a look.

364
00:26:03,826 --> 00:26:05,485
All right, so we and we can take a look.

365
00:26:05,485 --> 00:26:12,595
All right, so we have YouTube comment insights, 200 newest public comments across recent Nate Hurt videos, generated May 5th, 11:00 a.m.

366
00:26:12,595 --> 00:26:17,670
So we can see the question rate, the content requested rate, top mention tools CodaCode.

367
00:26:17,670 --> 00:26:18,066
Uh-oh.

368
00:26:18,066 --> 00:26:22,203
We've got high priority stuff, top patterns, skip video, stuff like that.

369
00:26:22,203 --> 00:26:24,611
It even started to create some visuals here, which is awesome.

370
00:26:24,611 --> 00:26:27,124
So this is content category mix over here.

371
00:26:27,124 --> 00:26:31,596
It shows the mix between general feedback or questions with um actual values.

372
00:26:31,596 --> 00:26:34,688
So 55 were general feedback, 53 were questions.

373
00:26:34,688 --> 00:26:39,415
Some of these were access, positive feedback, tool comparison, pricing stuff.

374
00:26:39,415 --> 00:26:41,055
Over here we have different tools.

375
00:26:41,055 --> 00:26:43,278
So CodaCode, Higgs Field, CodaX API.

376
00:26:43,278 --> 00:26:45,501
And then over here we have some other stats as you can see.

377
00:26:45,501 --> 00:26:47,254
Now we have a bunch of different tabs as well.

378
00:26:47,254 --> 00:26:48,635
So we have creator insights.

379
00:26:48,635 --> 00:26:51,496
So ranked comment patterns and recommended creator actions.

380
00:26:51,496 --> 00:26:58,867
So I'm able to see the percentage breakdown of different types of comments and it also gives me recommended actions with priority scores.

381
00:26:58,867 --> 00:27:00,138
So, that's pretty cool.

382
00:27:00,138 --> 00:27:01,640
I also can see frequent questions.

383
00:27:01,640 --> 00:27:03,913
So, things that are coming up as patterns.

384
00:27:03,913 --> 00:27:08,190
It's giving me content ideas now as well because it's analyzing those comments.

385
00:27:08,200 --> 00:27:12,444
It's giving me nice reply opportunities and then it's giving me just the raw comments.

386
00:27:12,444 --> 00:27:16,696
So, this should be 200 rows of our actual comments that it pulled.

387
00:27:16,696 --> 00:27:21,273
204 as you can see because the first three or four were just nonsense.

388
00:27:21,273 --> 00:27:22,487
So, that is awesome.

389
00:27:22,487 --> 00:27:25,628
And what you guys might be thinking is okay, is this actually useful?

390
00:27:25,628 --> 00:27:29,916
Maybe not because we just said, "Hey, give me analytics." Right?

391
00:27:29,916 --> 00:27:32,567
If you guys remember my actual prompt, it was very, very vague.

392
00:27:32,567 --> 00:27:44,230
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

393
00:27:44,240 --> 00:27:48,359
know, insights, it would make it much know, insights, it would make it much more customized and tailored.

394
00:27:48,359 --> 00:27:50,696
So, now let's talk about how do we turn this into a skill?

395
00:27:50,696 --> 00:27:52,200
So, first of all, what is a skill?

396
00:27:52,200 --> 00:27:53,110
So, first of all, what is a skill?

397
00:27:53,120 --> 00:27:55,405
Well, a skill is basically a repeatable recipe.

398
00:27:55,405 --> 00:27:58,949
So, if I come back in here and I click on plugins, we saw all these plugins, right?

399
00:27:58,949 --> 00:28:06,698
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.

400
00:28:06,698 --> 00:28:09,969
But, skills are more of just like instructions.

401
00:28:09,969 --> 00:28:11,850
So, there's an image gen skill.

402
00:28:11,850 --> 00:28:13,950
There is a OpenAI doc skill.

403
00:28:13,960 --> 00:28:17,295
There's a GitHub review follow-up skill, a document skill.

404
00:28:17,295 --> 00:28:23,271
And these are all basically just markdown file instructions that tell Codex how to do something better.

405
00:28:23,271 --> 00:28:27,497
So, how to design a website better or how to, you know, give you a morning brief.

406
00:28:27,497 --> 00:28:32,882
And so, what we want to do is we want to turn this, exactly what we just did, into a skill.

407
00:28:32,882 --> 00:28:41,544
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.

408
00:28:41,544 --> 00:28:52,454
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?

409
00:28:52,454 --> 00:28:55,641
So, what you just did is you helped me pull in data from my YouTube.

410
00:28:55,641 --> 00:29:00,169
You got comments, you ran an analysis, and you created me an awesome Excel sheet deliverable.

411
00:29:00,169 --> 00:29:09,889
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.

412
00:29:09,889 --> 00:29:14,021
So, I'm going to shoot off that message, and while it's doing that, just think about it like this.

413
00:29:14,021 --> 00:29:23,630
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

414
00:29:23,640 --> 00:29:23,788
a T.

415
00:29:23,788 --> 00:29:28,550
You're going to follow the measurements, the ingredients, and the temperature, and the timing, and temperature, and the timing, and whatever.

416
00:29:28,560 --> 00:29:35,405
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.

417
00:29:35,405 --> 00:29:42,623
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.

418
00:29:42,623 --> 00:29:47,957
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.

419
00:29:47,957 --> 00:29:53,512
If one time you experiment, and you add some more chocolate chips, you either like that or you don't, you update the recipe.

420
00:29:53,512 --> 00:29:56,820
Maybe one time you realize that you're actually leaving too much raw batter inside.

421
00:29:56,820 --> 00:29:57,744
So, what do you do?

422
00:29:57,744 --> 00:30:09,230
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.

423
00:30:09,240 --> 00:30:13,914
And you can see that it's able to work backwards and reverse engineer a skill from our output.

424
00:30:13,914 --> 00:30:25,312
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.

425
00:30:25,312 --> 00:30:28,897
And all you have to do to call it is you'll do a slash command, and then you will just name the skill.

426
00:30:28,897 --> 00:30:31,372
So, if you guys remember, down here we have all these other ones.

427
00:30:31,372 --> 00:30:37,551
I could do slash browser use slash image gen slash PDF, and that's how I could be able to call them.

428
00:30:37,551 --> 00:30:40,867
The other way you can call them is you can actually just have them be natural language.

429
00:30:40,867 --> 00:30:48,870
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.

430
00:30:48,880 --> 00:30:55,677
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.

431
00:30:55,677 --> 00:31:00,711
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.

432
00:31:00,711 --> 00:31:02,192
All this is is a markdown file.

433
00:31:02,192 --> 00:31:04,680
We have the name of the skill, we have the description.

434
00:31:04,680 --> 00:31:16,521
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.

435
00:31:16,521 --> 00:31:24,441
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.

436
00:31:24,441 --> 00:31:26,719
So, step one, step two, step three.

437
00:31:26,719 --> 00:31:32,186
Here is what you do whenever Nate asks for a morning coffee skill." So, that is all that is happening right here.

438
00:31:32,186 --> 00:31:37,117
You can see it created this skill called YouTube comment insights, and it did this at the global level.

439
00:31:37,117 --> 00:31:42,549
What I mean by that is this lives locally in our directory directory that sits across any Codex project ever.

440
00:31:42,549 --> 00:31:53,199
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.

441
00:31:53,199 --> 00:32:01,364
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.

442
00:32:01,364 --> 00:32:06,030
So, now if I do a slash and I do YouTube comment insights, we have this right here.

443
00:32:06,040 --> 00:32:10,670
YouTube comment insights analyze comments into an Excel report.

444
00:32:10,680 --> 00:32:13,100
Which is the skill that we just built together, so that is awesome.

445
00:32:13,100 --> 00:32:20,199
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.

446
00:32:20,199 --> 00:32:25,805
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.

447
00:32:25,805 --> 00:32:27,755
And we can choose between different ones.

448
00:32:27,755 --> 00:32:34,103
So, right now I'm just using the Codex pet, but I could choose Dewey, or CD, or Beasod, or Stacky.

449
00:32:34,103 --> 00:32:38,069
So, I'm just going to go ahead and switch this to Fireball for fun, and you can see down here it changes.

450
00:32:38,069 --> 00:32:49,473
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.

451
00:32:49,473 --> 00:32:51,578
So, it is a little bit practical as well.

452
00:32:51,578 --> 00:32:52,150
All right.

453
00:32:52,160 --> 00:32:54,422
So, now we have a deliverable.

454
00:32:54,422 --> 00:32:58,738
We have an Excel sheet and we're going to use that as the back end that basically powers this next section.

455
00:32:58,738 --> 00:33:03,726
So, I'm going to open up a new project because we're kind of starting a new goal, a new a new deliverable.

456
00:33:03,726 --> 00:33:09,670
So, I want to open up a new chat and this will still be able to access everything that's in this folder.

457
00:33:09,680 --> 00:33:11,562
So, I'm going to go ahead and switch over to plan mode here.

458
00:33:11,562 --> 00:33:13,209
Okay, so here's the idea I have.

459
00:33:13,209 --> 00:33:19,189
You have access to a file inside of this project and what I'm going to do is actually reference the exact file.

460
00:33:19,189 --> 00:33:27,150
So, I'm going to look for the YouTube comment insights right here and I'm going to tag that right here and I'm going to tag that file.

461
00:33:27,160 --> 00:33:38,710
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

462
00:33:38,720 --> 00:33:41,670
different insights about my YouTube different insights about my YouTube comments.

463
00:33:41,680 --> 00:33:48,068
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.

464
00:33:48,068 --> 00:34:00,631
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.

465
00:34:00,631 --> 00:34:02,510
So, that is the idea I have.

466
00:34:02,520 --> 00:34:07,968
I want you to help plan this out, ask me any questions you have about this, and then we'll go ahead and execute.

467
00:34:07,968 --> 00:34:13,019
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.

468
00:34:13,019 --> 00:34:17,766
And you can see down here the pet has started to think and it's talking a little bit.

469
00:34:17,766 --> 00:34:21,608
But, the reason why you want to be careful about which models you're using, there's two reasons.

470
00:34:21,608 --> 00:34:27,590
The first one is because sometimes if you chuck extra high at a task that's really simple, like over engineers it.

471
00:34:27,600 --> 00:34:31,992
And the second piece is because each of these cost you different amounts of your tokens or your session.

472
00:34:31,992 --> 00:34:34,591
Obviously, low cost the least and extra high cost the most.

473
00:34:34,591 --> 00:34:41,859
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.

474
00:34:41,859 --> 00:34:51,110
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.

475
00:34:51,120 --> 00:35:02,663
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.

476
00:35:02,663 --> 00:35:09,571
In general though, I have seen that my session is lasting way longer in Codex than it is in Claude Code.

477
00:35:09,571 --> 00:35:18,105
And a big part of that is because ChatGPT 5.5 is really, really efficient with tokens, with output tokens and input tokens.

478
00:35:18,105 --> 00:35:27,257
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.

479
00:35:27,257 --> 00:35:28,625
Now, we have some feedback here.

480
00:35:28,625 --> 00:35:34,390
It says, "Which visual direction should guide the GPT image two concepts and the final dashboard UI?"

481
00:35:34,400 --> 00:35:37,270
Creator Ops, Playful Studio or Executive Clean.

482
00:35:37,270 --> 00:35:39,001
I'm just going to go with the recommendation.

483
00:35:39,001 --> 00:35:42,112
For this first version, how should the dashboard get its YouTube comment data?

484
00:35:42,112 --> 00:35:46,340
I'm going to say to use the existing output, which was the um Excel file.

485
00:35:46,340 --> 00:35:49,356
And then what should the first screen prioritize most?

486
00:35:49,356 --> 00:35:51,431
Reply and ideas, analytics overview.

487
00:35:51,431 --> 00:35:54,257
I'm actually going to go with analytics overview for this one.

488
00:35:54,257 --> 00:36:00,691
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.

489
00:36:00,691 --> 00:36:03,356
Okay, so it came up with a plan pretty quickly.

490
00:36:03,356 --> 00:36:05,962
You can see here that I can expand this and read about it.

491
00:36:05,962 --> 00:36:15,950
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

492
00:36:15,960 --> 00:36:21,057
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.

493
00:36:21,057 --> 00:36:24,270
And here is one of the kind of versions that it came up with.

494
00:36:24,280 --> 00:36:35,112
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.

495
00:36:35,112 --> 00:36:37,571
You can see this is the little logo that it came up with, which is kind of cool.

496
00:36:37,571 --> 00:36:41,953
It's got like a YouTube play button with some noise and some comments coming in.

497
00:36:41,953 --> 00:36:51,190
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

498
00:36:51,200 --> 00:36:52,629
all of these assets already.

499
00:36:52,629 --> 00:36:53,978
And this is super cool, guys.

500
00:36:53,978 --> 00:37:01,184
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.

501
00:37:01,184 --> 00:37:04,008
So, it said the automated browser verification passed.

502
00:37:04,008 --> 00:37:08,384
I'm now doing one visual pass to see what else there might be, what other issues.

503
00:37:08,384 --> 00:37:11,515
And it found three issues when it did an actual visual scan.

504
00:37:11,515 --> 00:37:12,772
So, now it's fixing those.

505
00:37:12,772 --> 00:37:14,341
It says, "Okay, those UI fixes are in.

506
00:37:14,341 --> 00:37:15,590
I'm going to stop the server.

507
00:37:15,600 --> 00:37:22,172
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.

508
00:37:22,172 --> 00:37:28,798
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.

509
00:37:28,798 --> 00:37:30,805
And now we have our creator ops signal desk.

510
00:37:30,805 --> 00:37:32,635
So, I'm going to expand this a little bit.

511
00:37:32,635 --> 00:37:34,895
We see the logo up here that it made.

512
00:37:34,895 --> 00:37:37,870
We see 83% creator replies, 78 total likes.

513
00:37:37,870 --> 00:37:43,178
We can switch between overview, replies, ideas, questions, and the explorer.

514
00:37:43,178 --> 00:37:44,317
And this is really cool.

515
00:37:44,317 --> 00:37:46,284
It looks like every single comment has a link.

516
00:37:46,284 --> 00:37:49,270
So, if I click on this, does it actually take us Okay, no.

517
00:37:49,280 --> 00:37:51,820
It didn't actually sync up every single comment to a link.

518
00:37:51,820 --> 00:37:55,430
But it's cool that it showed us that because that gave us a nice idea of like, "Okay, cool.

519
00:37:55,430 --> 00:38:04,538
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.

520
00:38:04,538 --> 00:38:14,934
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.

521
00:38:14,934 --> 00:38:16,405
Because that is 100% doable.

522
00:38:16,405 --> 00:38:19,227
You guys have seen how I've automated my comment section a little bit.

523
00:38:19,227 --> 00:38:21,051
Anyways, let's Let's take a look at the overview.

524
00:38:21,051 --> 00:38:23,216
We can see we have this really nice chart.

525
00:38:23,216 --> 00:38:28,563
We have some AI insights over here where I can click on work reply queue and that goes over to the replies.

526
00:38:28,563 --> 00:38:31,952
I could also click on more content ideas and that takes us to the ideas.

527
00:38:31,952 --> 00:38:35,405
We can look at top tool mentions, reply priority, common themes.

528
00:38:35,405 --> 00:38:40,535
We can also see the videos that are driving comments and this would obviously grow as we pull in more and more data.

529
00:38:40,535 --> 00:38:47,750
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.

530
00:38:47,760 --> 00:38:53,601
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?

531
00:38:53,601 --> 00:38:55,670
And it works and it looks fine.

532
00:38:55,680 --> 00:39:03,144
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.

533
00:39:03,144 --> 00:39:06,041
It's being served on a server from our codebase.

534
00:39:06,041 --> 00:39:11,546
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?

535
00:39:11,546 --> 00:39:13,722
And what we're going to do is we're going to use two tools.

536
00:39:13,722 --> 00:39:17,723
We're going to use The first tool is called GitHub and the second tool is called Vercel.

537
00:39:17,723 --> 00:39:22,504
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.

538
00:39:22,504 --> 00:39:25,634
It's completely free to set up, pretty much completely free to maintain.

539
00:39:25,634 --> 00:39:36,230
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.

540
00:39:36,240 --> 00:39:48,390
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

541
00:39:48,400 --> 00:39:50,310
off, they'll still live here locally.

542
00:39:50,320 --> 00:39:57,594
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.

543
00:39:57,594 --> 00:40:06,532
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.

544
00:40:06,532 --> 00:40:07,771
So that's the first step.

545
00:40:07,771 --> 00:40:13,561
So let's go back into Codex and what do you do when you don't exactly know how something works?

546
00:40:13,561 --> 00:40:14,310
You just ask.

547
00:40:14,320 --> 00:40:15,039
know how something works?

548
00:40:15,039 --> 00:40:15,412
You just ask.

549
00:40:15,412 --> 00:40:16,493
So this looks really good.

550
00:40:16,493 --> 00:40:22,280
What I want to do is I want to sync this code base for this specific dashboard to a GitHub repository.

551
00:40:22,280 --> 00:40:24,105
So, help me get that signed up.

552
00:40:24,105 --> 00:40:31,057
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.

553
00:40:31,057 --> 00:40:32,924
And it even mentioned that right here.

554
00:40:32,924 --> 00:40:36,877
Note, this folder is not currently a Git repo, so there is no diff and status to summarize.

555
00:40:36,877 --> 00:40:41,372
So, I'm going to shoot off that message, and now it's going to help us actually sync up to GitHub.

556
00:40:41,372 --> 00:40:43,683
Now, there is a difference between Git and GitHub.

557
00:40:43,683 --> 00:40:49,374
Really the same thing of version control and all this stuff, but Git is local and GitHub is on the cloud.

558
00:40:49,374 --> 00:40:59,925
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.

559
00:40:59,925 --> 00:41:11,821
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.

560
00:41:11,821 --> 00:41:14,102
So, this point I've already set up the GitHub CLI.

561
00:41:14,102 --> 00:41:17,772
If you haven't, it would just say, "Hey, do you want to set this up?" And you'll say, "Yes." Very simple.

562
00:41:17,772 --> 00:41:28,390
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.

563
00:41:28,400 --> 00:41:31,345
And while this is syncing up, let me show you guys the next tool we're going to use.

564
00:41:31,345 --> 00:41:33,221
This one is called Vercel.

565
00:41:33,221 --> 00:41:35,310
Now, Vercel has a pretty generous free tier.

566
00:41:35,320 --> 00:41:36,713
You can see I've got a few products on here.

567
00:41:36,713 --> 00:41:41,049
You're going to be able to get working on Vercel for free just to get started.

568
00:41:41,049 --> 00:41:55,078
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.

569
00:41:55,078 --> 00:41:59,880
And what's really cool about this is Vercel and GitHub have a really nice partnership.

570
00:41:59,880 --> 00:42:01,534
They actually like talk to each other.

571
00:42:01,534 --> 00:42:06,510
So, anytime I make a change to our GitHub repo, Vercel automatically picks that up and deploys it.

572
00:42:06,510 --> 00:42:12,434
So, I know there's three tools here, Codex, GitHub, and Vercel, but that doesn't mean we have to manage three places.

573
00:42:12,434 --> 00:42:14,374
All we have to do is manage Codex.

574
00:42:14,374 --> 00:42:17,168
So it said that it's created a private repo for us.

575
00:42:17,168 --> 00:42:19,053
If I open this up, I don't want to open this up here.

576
00:42:19,053 --> 00:42:23,573
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.

577
00:42:23,573 --> 00:42:29,534
So if I open this up in a browser where I am signed in to GitHub, we can see YouTube Analytics Demo.

578
00:42:29,534 --> 00:42:36,646
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.

579
00:42:36,646 --> 00:42:44,537
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.

580
00:42:44,537 --> 00:42:48,074
So you would then just sign in and you would connect your Vercel to GitHub.

581
00:42:48,074 --> 00:42:50,432
And now you can import any of your repos.

582
00:42:50,432 --> 00:42:53,710
So right here you can see YouTube Analytics Demo 1 minute ago.

583
00:42:53,720 --> 00:42:55,111
I'm going to click on import.

584
00:42:55,111 --> 00:42:56,370
And that's literally that simple.

585
00:42:56,370 --> 00:43:03,924
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.

586
00:43:03,924 --> 00:43:04,416
Awesome.

587
00:43:04,416 --> 00:43:09,486
So it says congratulations, you have deployed a new project and I'm going to go ahead and continue to dashboard.

588
00:43:09,486 --> 00:43:14,790
And this gives us a youtube-analytics-demo.vercel.app a youtube-analytics-demo.vercel.app domain.

589
00:43:14,800 --> 00:43:18,030
And if you wanted to switch this off to your own domain, you certainly could.

590
00:43:18,040 --> 00:43:21,100
You would just basically have to move the DNS records over here.

591
00:43:21,100 --> 00:43:25,519
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.

592
00:43:25,519 --> 00:43:29,212
Our replies, our ideas, our questions, our explorer, everything here is the same.

593
00:43:29,212 --> 00:43:31,850
Except for now I could take this URL and I could open it up on my phone.

594
00:43:31,850 --> 00:43:33,279
Or I could open it up on my laptop.

595
00:43:33,279 --> 00:43:34,522
Or you guys could open it up.

596
00:43:34,522 --> 00:43:38,347
And like I said, what's cool about that is we basically are able to then test in Codex.

597
00:43:38,347 --> 00:43:39,775
We can iterate right here.

598
00:43:39,775 --> 00:43:40,957
We can make changes.

599
00:43:40,957 --> 00:43:43,727
But just because we make changes doesn't mean that it's actually going to go live.

600
00:43:43,727 --> 00:43:49,590
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.

601
00:43:49,600 --> 00:43:50,488
Here's the red background.

602
00:43:50,488 --> 00:43:57,230
Here's the localhost to test it out on." And if we like it, we say, "Okay, push those changes to our repo."

603
00:43:57,240 --> 00:44:01,475
And then as soon as we push those changes, Vercel would automatically deploy those onto the real URL.

604
00:44:01,475 --> 00:44:02,633
But if we said, "You know what?

605
00:44:02,633 --> 00:44:03,300
I don't like that.

606
00:44:03,300 --> 00:44:07,019
Just keep it as is." then our main production site never got touched.

607
00:44:07,019 --> 00:44:11,175
And that's how we keep a clean separation to test and to have something in production.

608
00:44:11,175 --> 00:44:12,415
Okay, awesome.

609
00:44:12,415 --> 00:44:14,092
So, what do we have now?

610
00:44:14,092 --> 00:44:21,128
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.

611
00:44:21,128 --> 00:44:23,474
And we've set up a bunch of different stuff.

612
00:44:23,474 --> 00:44:26,444
Now, what do I want to talk about next is automations.

613
00:44:26,444 --> 00:44:29,110
So, already over here you can see this tab called automations.

614
00:44:29,120 --> 00:44:31,314
Automate work by setting up scheduled chats.

615
00:44:31,314 --> 00:44:34,352
You can set up things like a status report, release prep.

616
00:44:34,352 --> 00:44:37,612
There's bunch of different things here that give you sort of some inspiration.

617
00:44:37,612 --> 00:44:45,950
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.

618
00:44:45,960 --> 00:44:51,245
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.

619
00:44:51,245 --> 00:44:53,793
Okay, so we've just done a lot of stuff together.

620
00:44:53,793 --> 00:45:01,590
We built a skill that grabs YouTube comments from my YouTube, and it puts them into an Excel sheet after it does some analysis.

621
00:45:01,600 --> 00:45:03,098
And that's coming out really nice.

622
00:45:03,098 --> 00:45:12,350
And then we built a dashboard served on then we built a dashboard served on Vercel that actually displays visually all of those analytics and statistics from that Excel sheet.

623
00:45:12,360 --> 00:45:16,869
Now, what I want to do is I want to set up an automation that just refreshes this every week.

624
00:45:16,869 --> 00:45:23,498
So, let's just say every Sunday at 5:00 p.m., I want you to run the YouTube comments analytics skill.

625
00:45:23,498 --> 00:45:34,210
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.

626
00:45:34,210 --> 00:45:44,865
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.

627
00:45:44,865 --> 00:45:59,222
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.

628
00:45:59,222 --> 00:46:09,670
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.

629
00:46:09,680 --> 00:46:22,030
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?

630
00:46:22,040 --> 00:46:24,391
You should honestly think of these automations in a similar way.

631
00:46:24,391 --> 00:46:27,035
You should think about it like you're teaching a kid to ride a bike.

632
00:46:27,035 --> 00:46:35,448
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.

633
00:46:35,448 --> 00:46:43,270
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

634
00:46:43,280 --> 00:46:45,863
handlebars and you'll start to walk a little bit farther behind.

635
00:46:45,863 --> 00:46:48,662
And eventually maybe you'll take off the training wheels and stuff like that.

636
00:46:48,662 --> 00:46:53,228
The point I'm making here is don't expect your automations or skills to be perfect on the first shot.

637
00:46:53,228 --> 00:46:54,375
That's just unrealistic.

638
00:46:54,375 --> 00:46:59,262
You should be expecting them to get better the more you use them because every time you use them you get more data.

639
00:46:59,262 --> 00:47:00,939
But look how quickly it set that up.

640
00:47:00,939 --> 00:47:02,510
It set up a weekly automation.

641
00:47:02,520 --> 00:47:09,493
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.

642
00:47:09,493 --> 00:47:11,324
It will regenerate the Excel workbook.

643
00:47:11,324 --> 00:47:13,575
It will preserve and merge comment rows.

644
00:47:13,575 --> 00:47:14,921
It will refresh the workbook.

645
00:47:14,921 --> 00:47:24,150
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.

646
00:47:24,160 --> 00:47:25,934
And what you want to do is you come into the automations.

647
00:47:25,934 --> 00:47:28,929
You can see that we have this one which is Sunday at 5:00 p.m.

648
00:47:28,929 --> 00:47:32,685
We can click into it to see the actual prompt that it will submit to Codex.

649
00:47:32,685 --> 00:47:35,409
We could add some stuff here if we wanted, but we don't want to.

650
00:47:35,409 --> 00:47:39,014
This will get injected into a new Codex chat inside of our project.

651
00:47:39,014 --> 00:47:44,590
So, just as a test, if I click on run now, you can see that this starts a new chat right here.

652
00:47:44,600 --> 00:47:51,611
This injected that exact prompt that we looked at with the automation, the ID, the memory, the last run, and the actual prompt.

653
00:47:51,611 --> 00:47:57,048
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.

654
00:47:57,048 --> 00:47:59,939
And we have the full Codex Agentic loop going on here.

655
00:47:59,939 --> 00:48:06,571
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.

656
00:48:06,571 --> 00:48:16,750
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.

657
00:48:16,760 --> 00:48:23,957
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.

658
00:48:23,957 --> 00:48:26,830
And that's what Cloud Code just added with their cloud routines.

659
00:48:26,830 --> 00:48:32,812
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.

660
00:48:32,812 --> 00:48:38,330
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.

661
00:48:38,330 --> 00:48:45,550
So, if I go back into the actual um dashboard where it built it, which I believe was this one.

662
00:48:45,560 --> 00:48:46,350
Yep, it was this one.

663
00:48:46,350 --> 00:48:52,308
What I'm going to say here is before we kind of keep making changes, I want you to test the UI here.

664
00:48:52,308 --> 00:48:58,670
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.

665
00:48:58,680 --> 00:49:02,051
I want you to use your browser use skill and click around.

666
00:49:02,051 --> 00:49:03,289
I want you to click on the buttons.

667
00:49:03,289 --> 00:49:04,842
I want you to try to break this thing.

668
00:49:04,842 --> 00:49:06,759
I want you to stress test it and QA it.

669
00:49:06,759 --> 00:49:11,410
And let me know what you find, what bugs you find, and what we might need to improve.

670
00:49:11,410 --> 00:49:17,246
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.

671
00:49:17,246 --> 00:49:19,002
So, browser use is great for a lot of things.

672
00:49:19,002 --> 00:49:25,870
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.

673
00:49:25,880 --> 00:49:27,862
It's also really great for certain automations.

674
00:49:27,862 --> 00:49:33,885
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.

675
00:49:33,885 --> 00:49:38,212
I've done a few of those automations on my channel as well, and browser use can be really, really good for that.

676
00:49:38,212 --> 00:49:46,370
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.

677
00:49:46,370 --> 00:49:52,716
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.

678
00:49:52,716 --> 00:49:56,057
But anyways, what you see right here is the in-app browser open.

679
00:49:56,057 --> 00:50:01,739
And this little mouse right here, which kind of looks like the ChatGPT Alice logo, is going to click around.

680
00:50:01,739 --> 00:50:04,390
You guys already saw it switch from overview to replies.

681
00:50:04,390 --> 00:50:07,070
You can see it's moving around even more now.

682
00:50:07,080 --> 00:50:13,815
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.

683
00:50:13,815 --> 00:50:15,974
And then we can obviously say, "Okay, cool.

684
00:50:15,974 --> 00:50:19,703
Go make all of those changes for us." Right here, it found the thing with the YouTube link.

685
00:50:19,703 --> 00:50:25,526
So, it said they have the correct URLs, but the in-app browser did not visibly open the new tab after clicking.

686
00:50:25,526 --> 00:50:28,361
So, that's one of the things that we actually did notice ourselves.

687
00:50:28,361 --> 00:50:32,670
Now, browser use is pretty, I don't know, it can feel kind of subjective when you're looking at it.

688
00:50:32,680 --> 00:50:34,409
I mean, this is pretty cool to watch it move live.

689
00:50:34,409 --> 00:50:39,129
But that also happens in Cloud Code when I use like the Playwright CLI or something.

690
00:50:39,129 --> 00:50:49,419
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.

691
00:50:49,419 --> 00:50:55,650
So, that is something that is really cool about Codex in this app here is that the browser use is really good.

692
00:50:55,650 --> 00:50:59,614
Now, you could obviously use it still from a CLI or whatever, but it is pretty good.

693
00:50:59,614 --> 00:51:03,325
And like I said, there's just so many really cool use cases with browser automation.

694
00:51:03,325 --> 00:51:07,971
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.

695
00:51:07,971 --> 00:51:09,888
I'll tag a video right up here.

696
00:51:09,888 --> 00:51:10,922
I mean, I love this.

697
00:51:10,922 --> 00:51:12,672
It's literally going through the filters.

698
00:51:12,672 --> 00:51:14,336
You guys saw it had something else up here.

699
00:51:14,336 --> 00:51:15,717
It's changing these check boxes.

700
00:51:15,717 --> 00:51:16,809
It's changing the stuff.

701
00:51:16,809 --> 00:51:22,252
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.

702
00:51:22,252 --> 00:51:29,271
And what else is really cool is you can build in this sort of QA check into skills or into the knowledge.

703
00:51:29,271 --> 00:51:38,910
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

704
00:51:38,920 --> 00:51:47,185
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.

705
00:51:47,185 --> 00:51:49,384
All right, so it decided that it's done testing now.

706
00:51:49,384 --> 00:51:53,798
You can see that we have a bunch of things that passed, but it found a ton of improvements.

707
00:51:53,798 --> 00:51:55,345
It ended up finding six things.

708
00:51:55,345 --> 00:51:58,489
The external links for YouTube aren't really working.

709
00:51:58,489 --> 00:52:00,533
The empty explorer state is too bare.

710
00:52:00,533 --> 00:52:01,776
Search is too literal.

711
00:52:01,776 --> 00:52:03,538
Active tab state is mostly visual.

712
00:52:03,538 --> 00:52:07,958
And there's some other things that are just coming through awkward and little changes that we need to make to the UI.

713
00:52:07,958 --> 00:52:18,196
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.

714
00:52:18,196 --> 00:52:22,122
But now that I showed you guys that, let's check back in on our actual automation that's running.

715
00:52:22,122 --> 00:52:24,244
You can see that it is still going through the checks.

716
00:52:24,244 --> 00:52:25,491
It's been about 10 minutes.

717
00:52:25,491 --> 00:52:32,063
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.

718
00:52:32,063 --> 00:52:32,870
Oh my goodness.

719
00:52:32,880 --> 00:52:40,191
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.

720
00:52:40,191 --> 00:52:41,284
So, don't do that.

721
00:52:41,284 --> 00:52:44,505
But now we're going to go ahead and just keep this going.

722
00:52:44,505 --> 00:52:54,470
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

723
00:52:54,480 --> 00:53:05,710
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

724
00:53:05,720 --> 00:53:07,331
you time, but it's also going to save you session limit.

725
00:53:07,331 --> 00:53:16,792
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.

726
00:53:16,792 --> 00:53:27,437
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.

727
00:53:27,437 --> 00:53:37,789
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.

728
00:53:37,789 --> 00:53:43,519
So, I just went ahead and retriggered a new run using GPT 5.5, and I decided to try this one out using high.

729
00:53:43,519 --> 00:53:48,233
Now, you also might be curious about the speed thing, the difference between standard and fast.

730
00:53:48,233 --> 00:53:51,226
And honestly, I never really ever touch fast.

731
00:53:51,226 --> 00:53:57,553
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.

732
00:53:57,553 --> 00:53:58,917
But this is much more like it.

733
00:53:58,917 --> 00:54:02,918
We can actually see it thinking and now we're going to be able to get this back much quicker.

734
00:54:02,918 --> 00:54:04,751
Okay, so finally that has finished up.

735
00:54:04,751 --> 00:54:09,308
You can see that it was able to make changes to that Excel sheet.

736
00:54:09,308 --> 00:54:11,428
And it says that it analyzed 208 comments.

737
00:54:11,428 --> 00:54:18,235
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.

738
00:54:18,235 --> 00:54:19,748
And that's something that we'll want to take a look at.

739
00:54:19,748 --> 00:54:22,285
But let's actually head over to my GitHub real quick.

740
00:54:22,285 --> 00:54:24,087
This is the repo that we just set up, right?

741
00:54:24,087 --> 00:54:27,683
And if I go ahead and give this a refresh, we should now see that we have two commits.

742
00:54:27,683 --> 00:54:31,397
So, in the second commit, this shows we refreshed the comments.

743
00:54:31,397 --> 00:54:34,645
So, every single time that you make a change to this repo, it'll show that here.

744
00:54:34,645 --> 00:54:37,588
So, you can check at the version control and you can see what's going on.

745
00:54:37,588 --> 00:54:50,029
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.

746
00:54:50,029 --> 00:54:52,729
1 minute ago, it picked up this new deployment.

747
00:54:52,729 --> 00:54:57,027
So, now if we go to the dashboard and I give this a refresh, this has new data.

748
00:54:57,027 --> 00:55:01,434
So, this used to say 200 videos, or sorry, 200 comments, and now it says 208.

749
00:55:01,434 --> 00:55:05,407
So, that is just proof that we were able to actually get some fresh insights.

750
00:55:05,407 --> 00:55:10,413
Now, what's really nice is that it looks like it just basically added on eight new ones.

751
00:55:10,413 --> 00:55:16,555
It didn't like add on 200 and then 200 more and then eight more, because it realized that they were duplicated.

752
00:55:16,555 --> 00:55:29,550
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

753
00:55:29,560 --> 00:55:33,965
same, except for now we've analyzed eight extra comments instead of the original 200.

754
00:55:33,965 --> 00:55:37,070
But I wanted to show you guys what happened inside of this run.

755
00:55:37,080 --> 00:55:40,952
So, as you guys know, we ran into that issue where I had the Excel sheet open, right?

756
00:55:40,952 --> 00:55:42,174
That was the first mistake.

757
00:55:42,174 --> 00:55:44,593
The second mistake was that this was running with 5.2.

758
00:55:44,593 --> 00:55:48,254
So, we reset the automation, and now it's running with 5.5 high.

759
00:55:48,254 --> 00:55:50,537
But then what happened is this was running for quite a while again.

760
00:55:50,537 --> 00:55:52,891
So, I stopped it and said, "Hey, you've been running for a long time.

761
00:55:52,891 --> 00:55:54,218
Why is it taking so long?

762
00:55:54,218 --> 00:55:57,852
This is a very simple task." So, basically, I knew that something went wrong here.

763
00:55:57,852 --> 00:56:02,150
Because when we built this dashboard from scratch, it only took about 20 minutes.

764
00:56:02,160 --> 00:56:05,542
But updating it took 40 minutes or probably even longer.

765
00:56:05,542 --> 00:56:06,847
So, I knew something was going wrong.

766
00:56:06,847 --> 00:56:09,352
So, I stopped it, and I wanted to dig into it a little bit better.

767
00:56:09,352 --> 00:56:12,509
And it And I was able to find out that it was stuck on some process.

768
00:56:12,509 --> 00:56:21,203
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.

769
00:56:21,203 --> 00:56:25,566
And then as soon as I did that, it took about 7 minutes, and then it was able to make all of those changes.

770
00:56:25,566 --> 00:56:29,265
So, the reason why I wanted to show you this is because once again, this stuff is not magic.

771
00:56:29,265 --> 00:56:31,935
You don't deploy something, and you just expect it to work perfectly.

772
00:56:31,935 --> 00:56:35,237
But what's really cool is I could say, "Awesome.

773
00:56:35,237 --> 00:56:37,607
So, everything worked as expected on the dashboard.

774
00:56:37,607 --> 00:56:39,195
The analytics have been updated.

775
00:56:39,195 --> 00:56:45,870
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?

776
00:56:45,870 --> 00:56:49,053
Are there any opportunities to make this better and more robust?

777
00:56:49,053 --> 00:56:55,213
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.

778
00:56:55,213 --> 00:57:05,630
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

779
00:57:05,640 --> 00:57:07,195
language you're using there.

780
00:57:07,195 --> 00:57:13,089
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.

781
00:57:13,089 --> 00:57:21,433
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.

782
00:57:21,433 --> 00:57:25,148
So, it's basically looking at this to see if we can make it faster, or if we can make it safer.

783
00:57:25,148 --> 00:57:28,646
Now, ultimately, as long as it's working, I don't really care how fast it is.

784
00:57:28,646 --> 00:57:34,021
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.

785
00:57:34,021 --> 00:57:35,460
As long as it's actually working.

786
00:57:35,460 --> 00:57:38,689
But sometimes speed is a big deal in your automations.

787
00:57:38,689 --> 00:57:47,817
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.

788
00:57:47,817 --> 00:57:51,230
We could stop running the full next build for these sorts of updates.

789
00:57:51,240 --> 00:57:57,341
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.

790
00:57:57,341 --> 00:57:59,851
So, that's how you can kind of keep iterating upon it.

791
00:57:59,851 --> 00:58:07,187
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.

792
00:58:07,187 --> 00:58:07,472
Okay.

793
00:58:07,472 --> 00:58:10,854
So, what you guys saw here is we created this product from scratch, right?

794
00:58:10,854 --> 00:58:12,335
It was our YouTube analytics demo.

795
00:58:12,335 --> 00:58:24,950
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

796
00:58:24,960 --> 00:58:28,888
then it pushes all of those changes to our actual live dashboard completely automatically.

797
00:58:28,888 --> 00:58:34,119
So, I hope you guys enjoyed seeing that flow from basically idea, setting up a project, all the way to the end.

798
00:58:34,119 --> 00:58:41,308
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.

799
00:58:41,308 --> 00:58:46,259
And what that means is you can customize this folder to be used by OpenClaw or CloudCode or whatever you want.

800
00:58:46,259 --> 00:58:48,883
Any agent can work inside of this directory now.

801
00:58:48,883 --> 00:58:53,963
And if I wanted to explicitly do this inside of Codex, well, I could go ahead and click on view.

802
00:58:53,963 --> 00:58:55,836
I could open up the terminal.

803
00:58:55,836 --> 00:58:59,730
And now, because we're in this directory, I could call on Claude.

804
00:58:59,730 --> 00:59:04,511
And so, right here, I could be working with ClaudeCode inside of this actual repository.

805
00:59:04,511 --> 00:59:10,115
So, maybe right here I'm using Claude to help brainstorm, and it creates me a brainstorming file inside of this project somewhere.

806
00:59:10,115 --> 00:59:15,589
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.

807
00:59:15,589 --> 00:59:20,523
So, say, "Hey, here is a planning file, a brainstorm file that I just generated with Claude.

808
00:59:20,523 --> 00:59:26,986
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.

809
00:59:26,986 --> 00:59:38,448
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.

810
00:59:38,448 --> 00:59:44,591
So, in my mind it's always about which tool is best for this specific use case, not which tool is best.

811
00:59:44,591 --> 00:59:46,819
All right, so I really hope that you guys enjoyed that.

812
00:59:46,819 --> 00:59:49,193
You should have a really good understanding of the interface of Codex.

813
00:59:49,193 --> 00:59:54,720
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.

814
00:59:54,720 --> 00:59:57,864
And really the next unlock is start building more and more skills.

815
00:59:57,864 --> 01:00:00,695
So, try to think about what are you doing on a daily basis?

816
01:00:00,695 --> 01:00:02,587
What are you doing on a weekly basis?

817
01:00:02,587 --> 01:00:07,309
And write down some of those things that are boring and repetitive and that you just wish happened when you slept.

818
01:00:07,309 --> 01:00:10,552
And then start to bring those into Codex and start to just brainstorm.

819
01:00:10,552 --> 01:00:14,733
And as you're going through this process, you're going to want to set up kind of your own AI operating system.

820
01:00:14,733 --> 01:00:18,163
So, I'm going to tag a video right up here that you guys should 100% go watch next.

821
01:00:18,163 --> 01:00:23,310
This one was kind of based on Cloud Code, but remember everything is just files and folders.

822
01:00:23,320 --> 01:00:28,630
So, if you follow the steps in this video, you will be able to replicate this in Codex, absolutely no problem.

823
01:00:28,640 --> 01:00:35,113
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.

824
01:00:35,113 --> 01:00:46,430
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

825
01:00:46,440 --> 01:00:47,425
it's really, really simple.

826
01:00:47,425 --> 01:00:50,468
It'll take like 30 seconds and then you have your project in Codex.

827
01:00:50,468 --> 01:00:53,773
So, anyways, I'll see you guys over there at that AI operating system video.

828
01:00:53,773 --> 01:00:55,317
Please give it a like if you enjoyed.

829
01:00:55,317 --> 01:00:56,191
It helps me out a ton.

830
01:00:56,191 --> 01:01:00,560
And as always, I appreciate you guys making it to the end of the video.
