1
00:00:00,160 --> 00:00:03,066
This is a full social media content machine.

2
00:00:03,066 --> 00:00:07,588
Four AI agents that research, write, design, and publish posts for you.

3
00:00:07,588 --> 00:00:08,961
Watch it work right now.

4
00:00:08,961 --> 00:00:16,044
This content idea, five signs your agent stack is overengineered, is turning itself into a finished Instagram carousel.

5
00:00:16,044 --> 00:00:22,845
Atlas found the angle Vera is writing the slides and in about 2 minutes, Kite renders all of them with just a few clicks.

6
00:00:22,845 --> 00:00:26,448
And here's the thing, nothing goes online without your approval.

7
00:00:26,448 --> 00:00:29,904
You check the words first and you approve the final post.

8
00:00:29,904 --> 00:00:32,426
The agents do the work and you keep control.

9
00:00:32,426 --> 00:00:34,699
Today we are building the entire thing from the scratch.

10
00:00:34,699 --> 00:00:36,813
Every prompt and template is linked below.

11
00:00:36,813 --> 00:00:43,315
If you'd rather skip the 4 plus hours build, there is also an auto installer that can set up everything for you in a matter of minutes.

12
00:00:43,315 --> 00:00:45,556
Hey, Larry here and welcome to the channel.

13
00:00:45,556 --> 00:00:51,510
Today we're building Cadence, a content operations autopilot run by four specialists you just saw.

14
00:00:51,520 --> 00:00:56,751
Packed with over 50 beautifully designed templates, Atlas researches and posts your ideas.

15
00:00:56,751 --> 00:01:00,284
Vera writes every slide, caption, and hashtag for you.

16
00:01:00,284 --> 00:01:02,296
Then Kite does the finished designs.

17
00:01:02,296 --> 00:01:05,818
Once this is done, Orion ships them to your social media platform.

18
00:01:05,818 --> 00:01:11,892
And above them all is an orchestrator agent that can take your orders in the Telegram chat and route every job down the [music] chain.

19
00:01:11,892 --> 00:01:14,205
If you post content regularly, you know the hassle.

20
00:01:14,205 --> 00:01:16,756
You stare at a blank page hunting for [music] an idea.

21
00:01:16,756 --> 00:01:20,954
When you finally get one, now comes the research, then writing slide after slide.

22
00:01:20,954 --> 00:01:26,642
They're making it look good in a template followed by the caption, the hashtag, the scul and all that.

23
00:01:26,642 --> 00:01:30,714
Now, Cadence orchestrates and eats up the entire chain in a matter of minutes.

24
00:01:30,714 --> 00:01:33,309
You tell the agents once what your brand is about.

25
00:01:33,309 --> 00:01:43,934
From then on, one click generates fresh post ideas for you or you type your own rough thought and they build the entire story for you from idea to publish post all handled in a few clicks.

26
00:01:43,934 --> 00:01:45,413
Then your post is online.

27
00:01:45,413 --> 00:01:48,545
And here is where this build beats every other AI slide tool.

28
00:01:48,545 --> 00:01:53,510
Normally, you would generate slides with an image model and you would pay for every single slide.

29
00:01:53,520 --> 00:01:58,149
And even fixing one word means you pay again to regenerate the whole image.

30
00:01:58,159 --> 00:02:01,269
Cadence doesn't touch an [music] image model at all.

31
00:02:01,269 --> 00:02:07,155
Every slide is built from a beautifully designed HTML template with real code, not with AI pixels.

32
00:02:07,155 --> 00:02:08,657
So, every edit is free.

33
00:02:08,657 --> 00:02:14,757
You can grab any elements, change the text, the size, the position, and it rerenders it in a matter of seconds.

34
00:02:14,757 --> 00:02:18,493
Meaning you have unlimited revisions with zero cost per slide.

35
00:02:18,493 --> 00:02:21,731
So your money goes into the words, not into the pictures.

36
00:02:21,731 --> 00:02:24,944
The dashboard shows the whole operation in one glance.

37
00:02:24,944 --> 00:02:34,390
Every number pulled from your own agent's database where every agent logs its name, the task they performed, the AI model they used, and exactly when they performed that task.

38
00:02:34,400 --> 00:02:36,790
So there are no fake metrics anywhere.

39
00:02:36,800 --> 00:02:38,358
My favorite part is the studio.

40
00:02:38,358 --> 00:02:48,544
You can edit every slice text or grab a single element, move it, resize it, rewrite it, plus even the phone preview, a template library, and some that carousel into a video rule.

41
00:02:48,544 --> 00:02:57,181
We would also build a published archive where you can see all the posts that you've generated so far and published, and also a calendar tab where every schedule content can be seen.

42
00:02:57,181 --> 00:03:04,070
We would also have a configurations page which would hold your brand name, handle, voice, and it flows into every word the agent writes.

43
00:03:04,080 --> 00:03:07,618
Now, let me give you a live demo and walk through of what we are building today.

44
00:03:07,618 --> 00:03:11,233
So on the dashboard you see the total number of runs that the agents have performed.

45
00:03:11,233 --> 00:03:14,138
The number of ideas that we have generated in this setup.

46
00:03:14,138 --> 00:03:15,910
The number of posts that we have published.

47
00:03:15,920 --> 00:03:21,119
In my case I just have one because I used this to test for the tutorial and the percentage of runs that have been successful.

48
00:03:21,119 --> 00:03:25,204
Now here we have an agent activity that is pulled from the agents activity database.

49
00:03:25,204 --> 00:03:36,107
So you can see currently on Friday I did a lot with the agents because I was building the setup and that is why you see that this is basically going up and on the right side you can also see which of the agents have currently the largest workload.

50
00:03:36,107 --> 00:03:43,350
So in my case for instance these are Vera who is my content writer and Kite who is a developer because those are the two that were doing most of the work so far.

51
00:03:43,360 --> 00:03:49,146
Now when you come down here you can also see a summary of what the agents have been doing all pulled from the agent login database.

52
00:03:49,146 --> 00:03:51,160
Now the magic happens in the ideas tab.

53
00:03:51,160 --> 00:03:55,484
Here you can see a few ideas that the agents generated for me because I'm doing stuff with AI.

54
00:03:55,484 --> 00:03:59,440
So I just made them generate ideas around AI automation and stuff like that.

55
00:03:59,440 --> 00:04:06,093
Now here you can put in your own idea whatever idea that you have or when you don't even have an idea you can tell the agent hey generate some ideas for me.

56
00:04:06,093 --> 00:04:10,077
So let me just click on generate some ideas and let me see what ideas are going to be generated.

57
00:04:10,077 --> 00:04:17,581
So here you can see that Atlas who is our researcher is the one that is going to look for ideas around what we are building and what we haven't posted before.

58
00:04:17,581 --> 00:04:26,326
And this is going to trigger Atlas who is our researcher who is going to basically look for ideas of what we can post based on what the agents have learned so far about what I'm building.

59
00:04:26,326 --> 00:04:28,646
And then you can see that they generated five ideas.

60
00:04:28,646 --> 00:04:31,590
So the first idea is automation fails at the handoff.

61
00:04:31,600 --> 00:04:38,056
We also have some ideas like your agent should run the test it claims to fix which is going to be a good one because the agents hallucinate a lot.

62
00:04:38,056 --> 00:04:42,390
Now just to demonstrate an example let's say I want to write some slides on this idea.

63
00:04:42,400 --> 00:04:47,270
All I have to do is to just click on promote and then here I can put in a number of slides that I want to put in.

64
00:04:47,280 --> 00:04:50,903
So for instance I want to go for eight slides 10 or whatever number you want to go for.

65
00:04:50,903 --> 00:04:56,179
So what you have to remember is that the first slide is always going to be the hook and then the last slide is going to be the CTA.

66
00:04:56,179 --> 00:04:58,977
So the main content is going to be between the hook and the CTA.

67
00:04:58,977 --> 00:05:06,047
So here if I go for 10 slides or let's say eight slides that it means that I'm going to have six content slides with one being the hook and one being the CTA.

68
00:05:06,047 --> 00:05:09,129
And then here I can decide if the agent should do a deep research.

69
00:05:09,129 --> 00:05:17,401
So for instance if I click research with perplexity then the agents are going to do a deep research through perplexity to really find the right content for this job.

70
00:05:17,401 --> 00:05:22,619
And then here I also built in a sort of a steroids mode where the agents are going to write more punchy slides.

71
00:05:22,619 --> 00:05:25,965
And then when you are done you can just click on write eight slides.

72
00:05:25,965 --> 00:05:29,501
Now what is going to happen is that basically Atlas is done with his job.

73
00:05:29,501 --> 00:05:32,903
Atlas did the research right and now Vera is going to take over.

74
00:05:32,903 --> 00:05:36,199
Vera is the AI agent that does the writing of the content.

75
00:05:36,199 --> 00:05:39,765
So let's wait till Vera is done with the research and have the content ready.

76
00:05:39,765 --> 00:05:40,397
All right.

77
00:05:40,397 --> 00:05:42,061
So Vera is done with the research.

78
00:05:42,061 --> 00:05:48,150
Remember we asked for nice slides and Vera is basically giving us an idea of what the content on each slide is going to be.

79
00:05:48,160 --> 00:05:51,130
Basically you can see the content that is going to come on every slide.

80
00:05:51,130 --> 00:05:57,270
If I do not like the slide and I want to refine the slide, I can click on refine copy and then the agents would basically refine this based on what I tell them.

81
00:05:57,280 --> 00:06:01,371
Now, assuming I'm fine with this and I want to promote this, I can click on approve and pick a templates.

82
00:06:01,371 --> 00:06:06,777
Remember that the contents that the agents did is basically from the idea of what the content should look like.

83
00:06:06,777 --> 00:06:13,048
But here, I have a pile of beautifully designed templates that I'm going to give to you guys, which you can just copy without you having to design everything yourself.

84
00:06:13,048 --> 00:06:16,711
So, what we're going to have to do is just look for whatever templates we want to build with.

85
00:06:16,711 --> 00:06:19,928
Now, because my brand is orange, let me go with this template here, 10 count.

86
00:06:19,928 --> 00:06:22,340
Now what is going to happen is I'm going to click fit copy to this.

87
00:06:22,340 --> 00:06:23,730
Now why do we do this step?

88
00:06:23,730 --> 00:06:26,870
Because every template has the number of characters it can support.

89
00:06:26,880 --> 00:06:32,113
So assuming the number of characters is way more than what a template can support then the design basically looks ugly.

90
00:06:32,113 --> 00:06:43,625
So what Vera is going to do is that Vera is going to look at the template that we have picked and adapt the text that goes onto the slides to match that particular template and then Vera adapted the slide text to the template that we picked.

91
00:06:43,625 --> 00:06:49,347
So here I'm just going to click on render this and then this is going to trigger another agent called kite who is basically for design.

92
00:06:49,347 --> 00:06:56,235
So when I come here you can see that the slide is ready and I can click to open this in the studio or you can also come to the studio tab and this will show you the slides.

93
00:06:56,235 --> 00:06:59,730
So when I click open in studio you can see the slides that the agents generated.

94
00:06:59,730 --> 00:07:04,130
So that you can see that I have eight slides basically tailored to exactly what we did.

95
00:07:04,130 --> 00:07:16,309
Now the beauty about how these slides are generated is that typically when people are generating Instagram slides you need to get an image generation agent or an an image generating model that is going to cost you for every slide that you generate.

96
00:07:16,319 --> 00:07:21,510
And the most painful part is that whenever you want to change any text, then you need to pay for every API call.

97
00:07:21,520 --> 00:07:25,609
The beauty about what we building here is that every slide is rendered as an HTML file.

98
00:07:25,609 --> 00:07:32,627
That means that when you come here and click on fine-tune the slide and I pick on any slide, I can basically edit and add my name Larry here.

99
00:07:32,627 --> 00:07:35,468
I can do whatever I want to do without having to pay for anything.

100
00:07:35,468 --> 00:07:41,575
What you can even also do that I also added is that you can also tune the slide to be left to up down.

101
00:07:41,575 --> 00:07:42,649
You can reduce the slide.

102
00:07:42,649 --> 00:07:43,911
You can change the font size and everything.

103
00:07:43,911 --> 00:07:46,436
And then when you're done, you just click on save and this will be done.

104
00:07:46,436 --> 00:07:50,562
Now assuming you're done and you're basically happy with all the contents, then you can promote this.

105
00:07:50,562 --> 00:07:54,368
Now you can also convert this into a real where you can click on animate this carousel.

106
00:07:54,368 --> 00:08:02,733
You can animate all the slides that are going to come one after the other like a real with a 4 is to 5 aspect ratio or you can also create a full reel with a 9 is to 16 aspect ratio.

107
00:08:02,733 --> 00:08:09,687
Now assuming I'm done and I'm happy with what I've built so far, I can just come here click post now and then in my case I have already configured Instagram.

108
00:08:09,687 --> 00:08:11,227
So I can click on post to only.

109
00:08:11,227 --> 00:08:16,904
And then the agents are going to warn me, hey, are you sure you want to post this image to is I'm going to say yes, post now.

110
00:08:16,904 --> 00:08:22,871
And then the image is going to be pushed through a platform that we're going to be using, which is called Buffer that connects to all the social platforms.

111
00:08:22,871 --> 00:08:25,744
And then this will be pushed directly to Instagram for us.

112
00:08:25,744 --> 00:08:30,454
And now I get a notification from Orion, which is our publisher, that the post has been pushed to buffer.

113
00:08:30,454 --> 00:08:32,961
So in a few minutes, we should see this directly on Instagram.

114
00:08:32,961 --> 00:08:34,214
And right then you see it.

115
00:08:34,214 --> 00:08:37,240
So this is a test account that I created on basically to test what I'm building.

116
00:08:37,240 --> 00:08:42,230
And when I come here, you see that the post that we just created is live on Instagram exactly as we rendered them.

117
00:08:42,240 --> 00:08:45,139
And this exactly what I'm going to be building with you guys today.

118
00:08:45,139 --> 00:08:50,389
We also do have a dedicated agents tab that gives you more insight into the agent architecture that we have.

119
00:08:50,389 --> 00:08:56,156
You can see that we have every sub agents have their dedicated card where you can see the AI model that the agents are using.

120
00:08:56,156 --> 00:09:03,531
You can see the number of runs that particular agent has performed, how many of these runs have been successful and also some of the recent tasks that the agents performed.

121
00:09:03,531 --> 00:09:08,206
On top of all these four agents, we have the orchestrator who is more or less the boss agent.

122
00:09:08,206 --> 00:09:14,753
Now below we have an activity heat map where you can see in a time frame of 24 hours which agent has been active.

123
00:09:14,753 --> 00:09:19,567
So the more brighter the color here, it just means that the agent was more active within that hour window.

124
00:09:19,567 --> 00:09:23,438
And darker spaces just mean that the agent was not active within that time frame.

125
00:09:23,438 --> 00:09:27,930
So the entire build is going to take you about four to 5 hours if you have all the prompts and the templates.

126
00:09:27,930 --> 00:09:31,472
So I also created an auto installer that can do everything for you in a matter of minutes.

127
00:09:31,472 --> 00:09:35,594
If you'll be interested in getting the auto installer, this model will also be in the description section.

128
00:09:35,594 --> 00:09:36,756
Now, let's get into the build.

129
00:09:36,756 --> 00:09:39,212
To get started, we're going to first install her.

130
00:09:39,212 --> 00:09:51,430
He agents allows you to be able to build multiple agent infrastructure where you can be talking to your AI agents using all the popular applications out there like Telegram, Discord, Slack, WhatsApp, and all the popular messaging applications

131
00:09:51,440 --> 00:09:52,336
that are out there.

132
00:09:52,336 --> 00:10:03,103
Additionally, instead of being confined to using one particular AI model, you can use any AI model that you want. been it from OpenAI, Ben from Antropic or any other popular model that is out there.

133
00:10:03,103 --> 00:10:06,424
And to install Hemisen, there are several options that are out there for you.

134
00:10:06,424 --> 00:10:13,713
You can install this on a Windows PC if you have a dedicated PC that you want to run this on, or you can also install this via a Linux operating system.

135
00:10:13,713 --> 00:10:16,482
For this setup, I'm going to be using the Linux approach.

136
00:10:16,482 --> 00:10:18,114
I know Linux sounds intimidating.

137
00:10:18,114 --> 00:10:19,976
Don't worry, I'm going to walk you through the entire step.

138
00:10:19,976 --> 00:10:29,187
And then once we are done with the setup, which is going to take a few minutes, everything that you're going to be doing is going to be from the dashboard that we're going to be building or also from the Telegram messaging application.

139
00:10:29,187 --> 00:10:32,925
So you wouldn't have to come into the terminal to do any stuff with quotes and stuff like that.

140
00:10:32,925 --> 00:10:37,902
But I'm going to walk you through the entire process from A to Z so that you get a breast with how this whole flow would work.

141
00:10:37,902 --> 00:10:41,614
Now, if you have a PC that you can run this on, hey, you can use this as well.

142
00:10:41,614 --> 00:10:44,007
But in my case, for instance, I do not have a dedicated PC.

143
00:10:44,007 --> 00:10:47,380
So you can rent a server somewhere that you used to run this on.

144
00:10:47,380 --> 00:10:49,904
I personally prefer this option, but hey, it's up to you.

145
00:10:49,904 --> 00:10:57,451
With using a private server is that you rent a server from a different company where you pay about $4 a month and then this server is going to be on 24/7.

146
00:10:57,451 --> 00:10:59,555
You do not have to worry about maintenance.

147
00:10:59,555 --> 00:11:02,617
You do not have to worry about internet connectivity and stuff like that.

148
00:11:02,617 --> 00:11:10,699
But of course, this comes for a price and that is why you have to decide if you want to run this on your personal PC that you have at home or if you want to rent a server to run this on.

149
00:11:10,699 --> 00:11:14,583
And for the VPS provider, my personal picks are typically Racknet and Conabo.

150
00:11:14,583 --> 00:11:28,470
Now, with Rocknet, for instance, you can get a server with two CPU cores, 35 GB of this space, 2 GB of RAM for about $35 a year, which amounts to about $2.9 a month, which is quite affordable for a server, considering that you do not have to worry about

151
00:11:28,480 --> 00:11:32,262
keeping it online 24/7, internet activity, maintenance, and stuff like that.

152
00:11:32,262 --> 00:11:34,762
With Rak, you pay once a year and you're basically done.

153
00:11:34,762 --> 00:11:37,735
You don't need to worry about monthly payments and stuff like that.

154
00:11:37,735 --> 00:11:41,058
The second option that you can also go for is from Contabo.

155
00:11:41,058 --> 00:11:47,238
They also do have quite reliable servers and the price are also quite affordable for the specifications of the VPS that you get.

156
00:11:47,238 --> 00:11:56,470
So with Contabo for instance, you can get a server that has four CPU cores, 8 GB of RAM and about 100 GB of SSD disc space for about $8 a month.

157
00:11:56,480 --> 00:12:00,057
This one here is going to be way more sufficient for what we're going to be building.

158
00:12:00,057 --> 00:12:03,590
So you can decide on either going with Raknet or going with Contabo.

159
00:12:03,600 --> 00:12:06,742
So I'm going to put a referral link in the description section that you can get one of these.

160
00:12:06,742 --> 00:12:09,295
And these videos are not sponsored by any of these companies.

161
00:12:09,295 --> 00:12:12,522
I'm just giving you what I typically use when I'm setting up these infrastructures.

162
00:12:12,522 --> 00:12:14,468
If you want to go with Raknet, just come here.

163
00:12:14,468 --> 00:12:16,716
Like I said, my recommended option would be this one here.

164
00:12:16,716 --> 00:12:17,612
Click on order now.

165
00:12:17,612 --> 00:12:22,901
And then you're going to be brought to a page where you would see the summary of the hardware specifications of your VPS that you selected.

166
00:12:22,901 --> 00:12:27,430
And then when you scroll down as well, you see the server label, which you can change later if you want.

167
00:12:27,440 --> 00:12:31,620
Now, in terms of the configuration options, I would recommend that you keep this as a default.

168
00:12:31,620 --> 00:12:35,110
Operating system, we're going to be using Ubuntu 2012.04.

169
00:12:35,120 --> 00:12:44,870
For the RAM, leave everything as a default. immedately you increase the RAM it's going to in an additional cost and that is why I would recommend that you go with the default options that is also here in terms of the location you can

170
00:12:44,880 --> 00:12:54,470
choose whatever location that is closest to you but what we're going to be building latency is not much of an issue so I wouldn't worry too much about having it as close to you cost leave it as a default if you take something

171
00:12:54,480 --> 00:13:04,150
higher you would basically pay more after that click on continue you're going to get an email that would contain all the credentials you're going to need to connect to the VPS ser and I'm going to walk you through that process as well

172
00:13:04,160 --> 00:13:12,966
if you want to go with a contabo option like I said this option that we have here cloudvp4 or the lowest option that they have is going to be way more powerful for what we're going to be building.

173
00:13:12,966 --> 00:13:14,505
So here click on get started here.

174
00:13:14,505 --> 00:13:16,907
Be careful the default is sometimes 24 years.

175
00:13:16,907 --> 00:13:19,916
That means that you're going to be locked with this VPS for 2 years.

176
00:13:19,916 --> 00:13:23,251
And of course it gets cheaper the longer the contract is going to be.

177
00:13:23,251 --> 00:13:28,230
But just be careful because if you go for 2 years then you are locked to pay this amount of money for 2 years.

178
00:13:28,240 --> 00:13:35,942
If you want to have the flexibility of cancelelling this every month then you can go for the one month option where you're going to be paying about 5.5 in my case a month.

179
00:13:35,942 --> 00:13:46,470
Now in terms of the region you can leave this as European Union which is the default because Contabo is in European Union with Contabo immediately you choose a different location then it would incur an additional cost but like I said

180
00:13:46,480 --> 00:13:50,054
earlier with what we're going to be building latency is not going to be that much of an issue.

181
00:13:50,054 --> 00:13:52,804
So you can leave this completely as European Union.

182
00:13:52,804 --> 00:13:59,894
When you scroll down for the storage you can choose SSD 100 GB which is going to be free and way more sufficient for what we want to build.

183
00:13:59,894 --> 00:14:02,947
For the operating system leave this as YUbuntu which is the default.

184
00:14:02,947 --> 00:14:06,879
For data protection, I typically recommend that you go for the auto backup option.

185
00:14:06,879 --> 00:14:10,383
Sometimes I'm working with my agents and something completely gets screwed up.

186
00:14:10,383 --> 00:14:14,502
And then with the auto backup, it basically takes a snapshot of your VPS every day.

187
00:14:14,502 --> 00:14:23,622
So that means that if something goes wrong, you can always go back to about 10 days back and then you can always restore whatever image you had on that VPS for that particular day.

188
00:14:23,622 --> 00:14:33,239
Now this optional but like I said it's highly recommended because if you imagine if you've been building your content management system for over one year and by mistake something screws up you completely lose this.

189
00:14:33,239 --> 00:14:39,648
Now to save this as well you can also configure your own auto backup which is going to take a snapshot of your VPS every day.

190
00:14:39,648 --> 00:14:48,074
This for instance you can build with cloth but if you don't want to do this and you want to go with contabo's default auto backup option you can choose this which would about 1.65 a month.

191
00:14:48,074 --> 00:14:51,073
Now additional features you can leave everything as a default.

192
00:14:51,073 --> 00:14:55,447
In this section here, you're going to have to put in a password where you're going to connect to the VPS server.

193
00:14:55,447 --> 00:14:58,875
Here you can generate a new password or you can put in any password that you want.

194
00:14:58,875 --> 00:15:03,351
This is going to be a password that you're going to have to remember because this is a password that you're going to use to connect to the VPS server.

195
00:15:03,351 --> 00:15:07,797
If you forget this password, you can go into your conso control panel and reset the password.

196
00:15:07,797 --> 00:15:09,290
But why go through the hassle after that?

197
00:15:09,290 --> 00:15:12,521
Just click on next, make the payment, and I'm going to walk you through the next steps.

198
00:15:12,521 --> 00:15:17,110
If you went with a racknet option after making the payments, you're going to get an email like this from Racknet.

199
00:15:17,120 --> 00:15:19,082
With this email, we basically going to need three things.

200
00:15:19,082 --> 00:15:22,920
The first thing that you're going to need is the IP address of your VPS server.

201
00:15:22,920 --> 00:15:27,544
Every VPS server has a unique IP address and they're going to provide this IP address to you.

202
00:15:27,544 --> 00:15:33,198
The second thing that we're going to need is the username of the account that you use to connect to the VPS server.

203
00:15:33,198 --> 00:15:36,195
With Raknet, most of the time name is always going to be root.

204
00:15:36,195 --> 00:15:41,095
And then thirdly, you're going to need a password which they're also going to provide to you here called root password.

205
00:15:41,095 --> 00:15:43,215
And here's what they're going to provide the password to you.

206
00:15:43,215 --> 00:15:45,674
All these three credentials are going to be in your email.

207
00:15:45,674 --> 00:15:53,608
With the SSH port, you do not have to worry about this because with most of the applications that you use to connect to the VPS server, they always default to an SSH port of three.

208
00:15:53,608 --> 00:16:00,377
Now, with the IP address, with username, and with a password, you would be able to connect to the VPS server, which I would walk you through in the next step.

209
00:16:00,377 --> 00:16:03,833
If you went for the Contabo option, you're going to get an email like this from Contabo.

210
00:16:03,833 --> 00:16:08,751
Mine is in German, but the layout is going to be the same irrespective of which country or which language that you have.

211
00:16:08,751 --> 00:16:11,216
In the email from Contabo, we're going to need two things.

212
00:16:11,216 --> 00:16:19,207
We're going to need on this left side here the IP address which is the unique IP address of your VPS server and we're also going to need the username with Contabo as well.

213
00:16:19,207 --> 00:16:27,926
The username is in most of the cases root the password they wouldn't provide the password to you in the email but this is going to be the password that you put in when you were purchasing the VPS server.

214
00:16:27,926 --> 00:16:35,180
So with the IP address with the username and with the password that you put in when you were purchasing to the VPS server we would be able to connect to the VPS server.

215
00:16:35,180 --> 00:16:38,206
And to connect to the VPS server there are several applications that are out there.

216
00:16:38,206 --> 00:16:46,598
The good news is that whether you're using a Windows operating system or you're using a Mac operating system, both do come with inbuilt applications that you can use to connect to the VPS server.

217
00:16:46,598 --> 00:16:51,512
Using a Windows operating system, just click on the search bar and look for an application that is called Windows PowerShell.

218
00:16:51,512 --> 00:16:54,813
And then when you click on this, this is how the Windows PowerShell application looks.

219
00:16:54,813 --> 00:16:58,738
If you're using a macrop system, the application that you're going to be using is called terminal.

220
00:16:58,738 --> 00:17:04,196
The commands that we're going to be using here in PowerShell are identical to what you would be using in PowerShell.

221
00:17:04,196 --> 00:17:07,270
So you do not have to worry about differences in terms of commands.

222
00:17:07,280 --> 00:17:12,155
To connect to the VPS server, just put in the command ssh space and then put in root.

223
00:17:12,155 --> 00:17:16,855
Root is going to be the username of the VPS server, which is the same for Contabo and for racknet.

224
00:17:16,855 --> 00:17:20,160
And after that, you're going to put in the IP address of your VPS server.

225
00:17:20,160 --> 00:17:30,964
The trick here with PowerShell is that whenever you have something in the clipboard and you right click on your mouse, it basically paste whatever you have in the clipboard, which can be quite useful, especially when you are typing in passwords.

226
00:17:30,964 --> 00:17:32,421
And after that, just press enter.

227
00:17:32,421 --> 00:17:38,184
If this is the first time that you're connecting to the server, you're going to be asked whether you want to add this fingerprint of the server to your PC.

228
00:17:38,184 --> 00:17:41,750
If you're sure you're connecting to the right server, just type in yes and it should be fine.

229
00:17:41,760 --> 00:17:44,806
And after that, you're going to be prompted to put in the password of your VPS server.

230
00:17:44,806 --> 00:17:48,501
And here, if you have a complex password, just type this password somewhere.

231
00:17:48,501 --> 00:17:50,595
Come in here, just right click on your mouse.

232
00:17:50,595 --> 00:17:53,337
It would paste the password into the clipboard and just press enter.

233
00:17:53,337 --> 00:17:56,425
And then you can see that in my case, I'm connected to my VPS server.

234
00:17:56,425 --> 00:17:58,754
So, I'm going to clear the screen by just typing clear.

235
00:17:58,754 --> 00:18:00,996
And then we can start with the configuration process.

236
00:18:00,996 --> 00:18:08,551
So now we connected the VPS server using the router name and root as a user is typically the highest authority on a Linux server.

237
00:18:08,551 --> 00:18:17,295
Now to install Hermes my tip for you would be not to install Hermes on the root user but create a new profile or a new user on which we're going to run this on.

238
00:18:17,295 --> 00:18:23,353
Now this is quite helpful because then you do not have Hermes being the highest authority on your VPS server.

239
00:18:23,353 --> 00:18:27,234
In my earlier videos, we always did this on root, which is absolutely fine.

240
00:18:27,234 --> 00:18:31,451
But I always try to improve and bring you guys the best safety tips out there.

241
00:18:31,451 --> 00:18:34,579
And that is why we're not going to be installing Hemis this time around on root.

242
00:18:34,579 --> 00:18:39,220
We're going to be creating a dedicated user on which we're going to install the whole Hemis application on.

243
00:18:39,220 --> 00:18:42,599
Now, to create a new user on Linux, just use the command user space.

244
00:18:42,599 --> 00:18:45,847
And after that, just put in the name of the user that you want to create.

245
00:18:45,847 --> 00:18:47,550
In my case, I'm going to call this Larry.

246
00:18:47,550 --> 00:18:48,402
So, add Larry.

247
00:18:48,402 --> 00:18:52,135
And after that, you're going to be prompted to put in a password for this user.

248
00:18:52,135 --> 00:18:53,399
So, I'm going to put in my password.

249
00:18:53,399 --> 00:18:54,496
And after that, just press enter.

250
00:18:54,496 --> 00:18:56,430
You're going to be prompted to retype the password.

251
00:18:56,430 --> 00:18:58,021
And then after that, just press enter.

252
00:18:58,021 --> 00:19:00,392
And then we're going to be asked if you want to put in a full name.

253
00:19:00,392 --> 00:19:02,297
You can just skip this by pressing enter.

254
00:19:02,297 --> 00:19:02,870
Room number.

255
00:19:02,880 --> 00:19:03,271
Enter.

256
00:19:03,271 --> 00:19:03,661
Phone.

257
00:19:03,661 --> 00:19:04,052
Enter.

258
00:19:04,052 --> 00:19:05,029
Just skip this.

259
00:19:05,039 --> 00:19:05,583
Home phone.

260
00:19:05,583 --> 00:19:06,722
You can also skip this.

261
00:19:06,722 --> 00:19:07,455
You can also skip this.

262
00:19:07,455 --> 00:19:10,933
And then you're going to be prompted if the information that you have put in is correct.

263
00:19:10,933 --> 00:19:12,040
Just press Y for yes.

264
00:19:12,040 --> 00:19:13,727
And after that, just press enter.

265
00:19:13,727 --> 00:19:16,587
Now, you can see that then Larry is added as a user.

266
00:19:16,587 --> 00:19:24,481
Now, we're going to give this Larry user some pseudo privileges so that the user can be able to run some commands and install the Hemis application.

267
00:19:24,481 --> 00:19:26,789
And to do that, we're going to use this command here.

268
00:19:26,799 --> 00:19:30,130
User mod space minus ag p sudo larry.

269
00:19:30,130 --> 00:19:32,927
So here, just replace this Larry with your username.

270
00:19:32,927 --> 00:19:34,190
And after that, just press enter.

271
00:19:34,190 --> 00:19:36,072
By the way, I'm also going to provide you these commands.

272
00:19:36,072 --> 00:19:38,338
So you do not need to type this or you do not need to remember them.

273
00:19:38,338 --> 00:19:39,543
After that, just press enter.

274
00:19:39,543 --> 00:19:43,990
And then we're going to get Larry now being a user with pseudo privileges.

275
00:19:44,000 --> 00:19:46,099
I'm going to clear the screen just to make it a bit cleaner.

276
00:19:46,099 --> 00:19:53,188
And now we're going to switch from the root user into the Larry user for us to be able to login into the Larry user that we just created.

277
00:19:53,188 --> 00:19:58,904
And for that just use the command su space minus or hyphen space and then just type in Larry.

278
00:19:58,904 --> 00:20:01,789
And you can see that the syntax change from root to Larry.

279
00:20:01,789 --> 00:20:05,780
So that means that now I'm not on the root application which has the highest authority.

280
00:20:05,780 --> 00:20:09,298
I'm now logged in into the Larry path which has this authority.

281
00:20:09,298 --> 00:20:14,221
Now when we're connecting to the VPS server, we use the command ss space root the IP address.

282
00:20:14,221 --> 00:20:25,909
But here as well if you want to connect to the VPS server instead of root you can use the new user that we created which is in my case Larry and then you can just put in the IP address of the VPS server then press enter put in the password that you

283
00:20:25,919 --> 00:20:38,070
created and then you see that I'm also connected to the VPS server so you can connect to the VPS server either using root and after that switching to the larger using su space minus Larry or you can also directly go into that using the

284
00:20:38,080 --> 00:20:39,088
SSH path for Larry.

285
00:20:39,088 --> 00:20:43,029
So I'm just going to be sticking to with this because I already created a set with this here.

286
00:20:43,039 --> 00:20:44,996
I'm just going to type in clear to clear the screen.

287
00:20:44,996 --> 00:20:47,466
And then now we can start with the Hemis installation.

288
00:20:47,466 --> 00:20:51,160
To install Hemis, we're just going to come to the original website from Hemsus.

289
00:20:51,160 --> 00:20:55,788
And then when you're on this page, scroll down here and then come to the install via terminal.

290
00:20:55,788 --> 00:20:58,188
We're going to be going with the native application.

291
00:20:58,188 --> 00:21:02,226
And here the command always starts with curl so that you are sure that you are on the right one.

292
00:21:02,226 --> 00:21:04,578
Now click here to copy the oneline installer.

293
00:21:04,578 --> 00:21:14,797
The advantage here is that with this oneline installer, it's going to install all the dependent that required to install or to run hemis without you having to install application A, application B and stuff like that.

294
00:21:14,797 --> 00:21:17,794
After that, just press enter and then the installation is going to run.

295
00:21:17,794 --> 00:21:23,014
So, it detected that I'm running Linux and it's also going to run all the other things that are missing on my server.

296
00:21:23,014 --> 00:21:28,255
Now, here I'm being asked, do you want to install RIP for faster file search for TTS voice message?

297
00:21:28,255 --> 00:21:29,305
This would be good.

298
00:21:29,305 --> 00:21:37,180
So, we can just type in yes that we want to install this and press enter. and then I'm going to put in a password and then press enter and then the installation is going to proceed.

299
00:21:37,180 --> 00:21:40,761
So I'm going to wait for the installation to be done and then we can continue with the build.

300
00:21:40,761 --> 00:21:43,173
All right, so the prerequisite installation is done.

301
00:21:43,173 --> 00:21:44,715
So now we can start with the setup.

302
00:21:44,715 --> 00:21:47,808
Now for here we're going to have to choose how we want to set up Hemis.

303
00:21:47,808 --> 00:21:54,575
I would recommend that we go with a quick setup because a full setup is going to ask us so many things that we're going to have to configure which we do not need.

304
00:21:54,575 --> 00:21:56,222
And this is also the recommended part.

305
00:21:56,222 --> 00:21:58,059
So just make sure that this option is selected.

306
00:21:58,059 --> 00:22:00,217
If not, just press up and down on your keyboard.

307
00:22:00,217 --> 00:22:04,533
Make sure that the pointer is on this and then press the space bar or enter key.

308
00:22:04,533 --> 00:22:08,111
Now in the next stage, we're going to have to create an account with news research.

309
00:22:08,111 --> 00:22:10,693
If you do have an account, then you do not have to create a new one.

310
00:22:10,693 --> 00:22:17,606
And basically, this is a step where we're going to bind this VPS or this server or this Hemis installation to our news research account.

311
00:22:17,606 --> 00:22:19,755
Now, here you can go with their free subscription.

312
00:22:19,755 --> 00:22:26,930
Nose research does have some paid plans where you can use a pool of AI models that they have, but in my case, I'm going to be coming with my own AI model.

313
00:22:26,930 --> 00:22:28,930
So, I'm going to go with a free option.

314
00:22:28,930 --> 00:22:32,149
So just press control on the keyboard and click on this URL here.

315
00:22:32,159 --> 00:22:34,966
And if you do not have an account, you're going to get an option to create an account.

316
00:22:34,966 --> 00:22:42,060
But in my case, because I already have an account and I'm logged into my account, it directly brings me to a screen where I can bind my account to the setup.

317
00:22:42,060 --> 00:22:43,455
So here, just click on connect.

318
00:22:43,455 --> 00:22:46,716
And when this is successfully, you're going to get a notification that this has been connected.

319
00:22:46,716 --> 00:22:51,695
And then when you come back to the Hemis installer screen, you see that it brings you to the model selection process.

320
00:22:51,695 --> 00:22:57,027
Like I said, in my case, I'm not going to be using any of the models that no research provides.

321
00:22:57,027 --> 00:22:58,491
I'm going to bring in my own model.

322
00:22:58,491 --> 00:23:02,175
So here you can just press enter on the keyboard to skip the model selection process.

323
00:23:02,175 --> 00:23:05,546
In the next stage we're going to pick a few tools that you can use with her agent.

324
00:23:05,546 --> 00:23:12,124
For instance, you can give your agents the options to be able to search on the internet and script data from the internet on particular websites.

325
00:23:12,124 --> 00:23:16,149
And here for instance you can use a tool that is called fire crawl and the same applies.

326
00:23:16,159 --> 00:23:21,428
There are other tools that you can use for image generation for text to speech for speech to text and so on.

327
00:23:21,428 --> 00:23:26,210
So here you can just press enter to use all of these or you can also uncheck them if you do not need them.

328
00:23:26,210 --> 00:23:28,433
In the next stage, we're going to select the terminal back end.

329
00:23:28,433 --> 00:23:32,573
Here you can keep this as the default, which is local by just pressing on the space bar.

330
00:23:32,573 --> 00:23:37,801
In the next stage, we're going to connect a messaging platform with which we're going to use to talk to all our AI agents.

331
00:23:37,801 --> 00:23:44,038
And here, it's recommended that you set this up because we don't want to be talking to the AI agents every time through the terminal here on the VPS.

332
00:23:44,038 --> 00:23:48,295
We want to have a simple, more friendly user interface that we can talk to the AI agents.

333
00:23:48,295 --> 00:23:52,400
So, here we're going to select set up messaging, which is recommended anyway.

334
00:23:52,400 --> 00:23:58,260
So press space bar on the keyboard and then you're going to list all the messaging platforms that are currently configured with Hemis.

335
00:23:58,260 --> 00:24:00,675
And as you can see there are a pool of them that you can use.

336
00:24:00,675 --> 00:24:02,630
But in this setup we're going to be going with Telegram.

337
00:24:02,640 --> 00:24:05,629
So just press down on your keyboard and then here don't press enter.

338
00:24:05,629 --> 00:24:07,590
If you press enter it would skip this part.

339
00:24:07,600 --> 00:24:10,382
Press spacear on your keyboard to make sure that is checked.

340
00:24:10,382 --> 00:24:12,133
And after that you can just press enter.

341
00:24:12,133 --> 00:24:14,390
And then here we're going to create a telegram bot.

342
00:24:14,400 --> 00:24:18,061
And this is going to be the bot with which we will talk to the agents that we're going to create.

343
00:24:18,061 --> 00:24:21,997
For the Telegram B setup, you can either go with the automatic setup or you can also go with a manual.

344
00:24:21,997 --> 00:24:27,594
In my case, I'm going to go with the middle option just to show you how you can do this if later you would need this for another application.

345
00:24:27,594 --> 00:24:30,077
So for manual, just press two and then press enter.

346
00:24:30,077 --> 00:24:33,464
And then HS is going to ask us what is the Telegram bot token.

347
00:24:33,464 --> 00:24:37,621
So to do that, just come to Telegram and look for a bot called BotFather.

348
00:24:37,621 --> 00:24:41,923
So you can see that the right botfather bot has over 7 million monthly users.

349
00:24:41,923 --> 00:24:44,422
So that you are pretty sure that you are using the right bot.

350
00:24:44,422 --> 00:24:45,271
Be careful here.

351
00:24:45,271 --> 00:24:47,110
As you can see there a lot of botfather here.

352
00:24:47,120 --> 00:24:52,599
But the one that you need is this one here with a check mark here and also with over 7 million monthly users.

353
00:24:52,599 --> 00:24:56,390
To create a new ground, use the command forward slash and then type in new bot.

354
00:24:56,400 --> 00:24:59,354
And then you can press enter or you can click on the suggestion that we have here.

355
00:24:59,354 --> 00:25:01,309
Now here we're going to have to give our bot a name.

356
00:25:01,309 --> 00:25:05,988
I'm going to call this km in my case for computer mechanic content creation OS.

357
00:25:05,988 --> 00:25:11,023
So when you're done with the name just press enter and then you're going to be asked to put in the user of the bot.

358
00:25:11,023 --> 00:25:23,269
Now very important here the username has to end with the name but and that is why I copied this because in my case I just want to call it the same name but just add the word but to it and after that just press enter and then the bot is going to be

359
00:25:23,279 --> 00:25:24,006
created for you.

360
00:25:24,006 --> 00:25:32,880
Now when the bot is created the botfather is going to give you a unique key that means that you are the creator of that bot or you are basically the owner of the bot.

361
00:25:32,880 --> 00:25:40,050
So I'm going to click here to copy the key because that is what the hemis installation is asking and I'm going to paste in the key here and after that just press enter.

362
00:25:40,050 --> 00:25:42,233
Now this step is a highly recommended step.

363
00:25:42,233 --> 00:25:47,850
Hermes is asking you, do you want to put some users who are the only people that are allowed to talk to the bot?

364
00:25:47,850 --> 00:25:53,490
Now this is very very important because if someone has the username of your bot, you don't want them to be able to talk to your bot.

365
00:25:53,490 --> 00:25:57,998
And that is why we're going to tell her, hey, let me be the only one that can talk to this bot.

366
00:25:57,998 --> 00:26:04,183
And the only way Hermes can know that it's you is by giving Hermes what your user ID for Telegram is.

367
00:26:04,183 --> 00:26:11,352
And to get your Telegram user ID, we're also going to use a bot that is called user info bot which also has over 400,000 users.

368
00:26:11,352 --> 00:26:13,566
There are a lot of other bots out there.

369
00:26:13,566 --> 00:26:15,573
So make sure that you have the right one here.

370
00:26:15,573 --> 00:26:18,638
And to get your user ID, you can just send the bot any message like hi.

371
00:26:18,638 --> 00:26:21,398
And the bot is going to respond with your user ID.

372
00:26:21,398 --> 00:26:23,254
So I'm going to click here to copy my user ID.

373
00:26:23,254 --> 00:26:26,452
I'm going to come back to the terminal in Hermes installation.

374
00:26:26,452 --> 00:26:29,219
I'm going to paste in the user ID and I'm going to press enter.

375
00:26:29,219 --> 00:26:33,066
And then Hermes is going to ask you if you want to set this user ID as the home channel.

376
00:26:33,066 --> 00:26:42,496
That means that in the messaging chat that you are talking to the bots, whenever the Hemis gateway is restarting or any system things are going on, you're just going to get a notification in this chat window.

377
00:26:42,496 --> 00:26:44,568
You can type in a Y for yes and then press enter.

378
00:26:44,568 --> 00:26:49,098
And then you're going to be asked if you want to install the Hemis gateway as a system service.

379
00:26:49,098 --> 00:26:58,515
This very important because whenever your VPS server restarted due to a system update or anything, the Hemis gateway is going to start automatic which is quite useful so that you do not have to start this manually.

380
00:26:58,515 --> 00:27:00,441
Press Y for yes and then press enter.

381
00:27:00,441 --> 00:27:03,151
And then here you're going to be asked how do you want to run the gateway?

382
00:27:03,151 --> 00:27:05,852
In our case, we're going to go with the system service.

383
00:27:05,852 --> 00:27:06,710
So press enter.

384
00:27:06,720 --> 00:27:11,510
And then I'm going to be prompted again, do you want to run and install the gateway as a background system service?

385
00:27:11,520 --> 00:27:14,296
I'm going to press Y for yes and I'm going to press enter.

386
00:27:14,296 --> 00:27:16,256
And then the Hemis installation is completed.

387
00:27:16,256 --> 00:27:22,429
Now very important here, we're going to have to reload our shell so that we can just type in Hemus and this will launch the Hemis application.

388
00:27:22,429 --> 00:27:25,462
And to do that, just copy the command that they have provided for you here.

389
00:27:25,462 --> 00:27:28,580
Paste this command back in the terminal and just press enter.

390
00:27:28,580 --> 00:27:30,411
It's basically going to restart the shell for you.

391
00:27:30,411 --> 00:27:33,243
Now remember, we are basically done with the Hemis installation.

392
00:27:33,243 --> 00:27:37,514
But in my case, I didn't select any AI model because I want to bring in my own AI model.

393
00:27:37,514 --> 00:27:40,128
So here we're going to configure our own AI model.

394
00:27:40,128 --> 00:27:45,358
And I'm also doing this in this way so that you guys can learn how you can add your own AI models later.

395
00:27:45,358 --> 00:27:50,834
Now, if in future you want to add some AI models, you can basically ask your AI agents to do this for you.

396
00:27:50,834 --> 00:27:57,394
But I typically do not recommend this because in most of the cases the AI model is not very smart, they basically mess up with your configuration.

397
00:27:57,394 --> 00:28:00,305
And that is why for stuffs like that I prefer to do this on my own.

398
00:28:00,305 --> 00:28:03,957
Now for which AI model to use this is absolutely up to you.

399
00:28:03,957 --> 00:28:16,549
But what I typically use most of the time which a lot of people do not also know is that if you do have a charge GPT subscription if you the plus account or the pro account you would be able to use an AI model from open AAI that is called Codex

400
00:28:16,559 --> 00:28:18,370
on her agent basically for free.

401
00:28:18,370 --> 00:28:21,445
If you have the $20 plan you can use you can use this.

402
00:28:21,445 --> 00:28:24,155
If you have the pro plan you can also use this.

403
00:28:24,155 --> 00:28:27,728
I'm I'm not very sure if this is available for the Go plan.

404
00:28:27,728 --> 00:28:30,048
In my case, most of the time I'm using the pro plan.

405
00:28:30,048 --> 00:28:35,669
And the usage limits that you have for the pro plan is more than you would get for the $20 plan, obviously.

406
00:28:35,679 --> 00:28:38,710
So, if you're not sure which one you need, you can go with the plus account.

407
00:28:38,720 --> 00:28:42,332
If you hit your limit, you can basically always upgrade to the pro plan.

408
00:28:42,332 --> 00:28:44,930
Now, the is also a bit generous in terms of the token limits.

409
00:28:44,930 --> 00:28:48,769
So, you would be able to do a lot even if you are using the $20 subscription.

410
00:28:48,769 --> 00:28:51,750
The advantage here is that it's not basically a pay as you go.

411
00:28:51,760 --> 00:28:53,756
Whenever your limits are done, you are done.

412
00:28:53,756 --> 00:28:59,511
You do not get any surprise bill from OPDI that hey, you've used more than your subscription allowed, so you have to pay extra.

413
00:28:59,511 --> 00:29:00,389
That does not exist.

414
00:29:00,399 --> 00:29:06,456
And that is why I personally go with these options because it's you don't have to worry about having a surprise bill or anything like that.

415
00:29:06,456 --> 00:29:12,393
Personally, I'm on the pro plan because I have a lot of Hem setups and that is why my token usage is also very high.

416
00:29:12,393 --> 00:29:23,590
And also for the tutorials that I create for you guys, I typically try this over 10 times and that is why I typically need a higher limit in terms of the tokens that they make available to you. when I had one Hemis account or when I had one open

417
00:29:23,600 --> 00:29:26,826
CL account, this one was way more sufficient for me.

418
00:29:26,826 --> 00:29:34,725
Now, what people also not aware of is that if you also do have an X account, you can also use the Crog model on Hermes agents for free.

419
00:29:34,725 --> 00:29:42,870
So whether you have a chat GPT paid account or you have a premium or paid subscription, you can use in both cases their AI models on her agent for free.

420
00:29:42,880 --> 00:29:50,455
If you do not want any of these and probably you want a particular model like from Antropic, oo, sonet or whatever, we can also come to open router.

421
00:29:50,455 --> 00:29:55,274
Open router has quite a pool of a models like all the popular AI models that are out there.

422
00:29:55,274 --> 00:29:56,518
You can get them on Open Router.

423
00:29:56,518 --> 00:30:03,445
The advantage with Open Router is that they're going to give you one API key and with that API key, you can get access to all the models that are out there.

424
00:30:03,445 --> 00:30:07,669
The tricky thing that you have to take note of the fact that with Open Router is basically pay as you go.

425
00:30:07,679 --> 00:30:11,551
It's not a case where you paid a month and then when you hit your limit, you hit your limits.

426
00:30:11,551 --> 00:30:12,791
You basically pay as you go.

427
00:30:12,791 --> 00:30:14,701
The more you use, the more you pay.

428
00:30:14,701 --> 00:30:18,230
So, I mean with whatever model that you want to use is completely up to you.

429
00:30:18,240 --> 00:30:20,951
just go for the option that makes the most sense to you.

430
00:30:20,951 --> 00:30:25,147
Now, in my case, I'm going to be going with my OpenAI because I have a CHBT subscription.

431
00:30:25,147 --> 00:30:27,953
And to use that, I'm going to clear the screen here to make it a bit cleaner.

432
00:30:27,953 --> 00:30:31,038
Just put in a command Heis space model and then press enter.

433
00:30:31,038 --> 00:30:35,625
And [clears throat] this is going to load all the models that are currently available on Hemis agent.

434
00:30:35,625 --> 00:30:41,438
If you do have an paid premium X account, then your option would be here, the X AI Grock.

435
00:30:41,438 --> 00:30:44,506
The process is going to be the same irrespective of which option that you go for.

436
00:30:44,506 --> 00:30:47,350
So, in my case, I'm going to select this by pressing the space bar.

437
00:30:47,360 --> 00:30:50,878
And then here we're going to have the option to choose between open open AI API.

438
00:30:50,878 --> 00:30:53,971
If you go with API then you pay as you go.

439
00:30:53,971 --> 00:30:59,310
So the more you use the more you pay and then you would have to create a dedicated API key to collect this.

440
00:30:59,310 --> 00:31:01,872
But in our setup we're going to be using our charging subscription.

441
00:31:01,872 --> 00:31:04,005
So I'm going to go with the open AAI codeex.

442
00:31:04,005 --> 00:31:08,745
And to do that we're going to press control and we're going to click on this URL that is provided here.

443
00:31:08,745 --> 00:31:12,166
And in the process we're going to have to enter this code that is over here.

444
00:31:12,166 --> 00:31:13,750
So just highlight this code.

445
00:31:13,760 --> 00:31:14,696
Very important.

446
00:31:14,696 --> 00:31:16,070
Press control shift C.

447
00:31:16,080 --> 00:31:18,040
Do not press Ctrl C.

448
00:31:18,040 --> 00:31:26,230
Ctrl C in Linux cancel an application and this would quit this whole screen and that is why you press control shift C and then the link is going to bring you to this page.

449
00:31:26,240 --> 00:31:29,466
All you're going to have to do is to just log into your OpenAI account.

450
00:31:29,466 --> 00:31:38,037
So I'm going to click here and then click on continue and then just put in the code that we copied from the PowerShell from the Hermise installation and click continue.

451
00:31:38,037 --> 00:31:48,810
And then our CEX account or our OpenAI account is now bound to our Hemis setup and then when you come here you see that the authentication is done and then here we are being asked to select an AI model.

452
00:31:48,810 --> 00:31:52,216
And then here you can use any of the models that you have here.

453
00:31:52,216 --> 00:32:00,095
Remember the higher the number like 5.6 takes way more tokens than 5.4 4 than 5.5, which also takes higher tokens than 5.4.

454
00:32:00,095 --> 00:32:06,022
In my case, I go with 5.5 most of the time because it's still a very super powerful model and I always want more tokens.

455
00:32:06,022 --> 00:32:11,350
But hey, if you are on the $100 plan and you have a lot of tokens, you can also go with a 5.6.

456
00:32:11,360 --> 00:32:12,503
That's absolutely up to you.

457
00:32:12,503 --> 00:32:13,885
I'm going to go with 5.5 here.

458
00:32:13,885 --> 00:32:15,205
I'm going to press spacebar.

459
00:32:15,205 --> 00:32:19,664
And then you can see that it says that my default model has been set to GPT 5.5.

460
00:32:19,664 --> 00:32:31,869
Now before we go into the telegram to test to see if everything works from the Hemis installation and from the model configuration just type in Hemus and this is going to open what is called a Hermes terminal user interface.

461
00:32:31,869 --> 00:32:37,461
Now it's going to be a chat box where you can basically talk to your default AI agents to make sure that everything works.

462
00:32:37,461 --> 00:32:44,516
But a lot of people like me do not use this part because then you always have to log into your VPS come to this weird page to talk to the AI agent.

463
00:32:44,516 --> 00:32:47,691
We just want to make sure that the setup works and that is why I'm coming here.

464
00:32:47,691 --> 00:32:52,938
So here I'm just going to send in a message like hi and if the agent responds then it means that the hemis installation works.

465
00:32:52,938 --> 00:32:59,076
It also means that the AI model configuration worked and here you can see that the agent response hi what can I help you with?

466
00:32:59,076 --> 00:33:02,711
So that means that our installation worked the AI model configuration works.

467
00:33:02,711 --> 00:33:13,082
Now to leave this screen you can press Ctrl C on your keyboard or you can also just type forward slash and type in exit and press enter and this is going to kick you out of the Hemis terminal user interface.

468
00:33:13,082 --> 00:33:17,840
A quick word from today's sponsor, Sudalis AI, and it's worth paying attention to this one.

469
00:33:17,840 --> 00:33:22,230
Problem they are solving is that enterprises are currently drowning in disconnected AI.

470
00:33:22,240 --> 00:33:25,902
Most companies are using AI tools that do not even talk to each other.

471
00:33:25,902 --> 00:33:29,275
One tool does this, another does that, but nothing connects.

472
00:33:29,275 --> 00:33:31,333
So nothing really works together.

473
00:33:31,333 --> 00:33:35,001
Sudalis AI built a system that connects everything into one stack.

474
00:33:35,001 --> 00:33:39,238
Check them out at sudalis.ai with all the links in the description section.

475
00:33:39,238 --> 00:33:41,250
Thanks Sudalis AI for sponsoring this video.

476
00:33:41,250 --> 00:33:43,912
Now we're going to come back to botfather.

477
00:33:43,912 --> 00:33:49,167
When bot created them for us, he also gives us this URL with which we can start talking to the bots.

478
00:33:49,167 --> 00:33:50,810
So here just click on this URL here.

479
00:33:50,810 --> 00:33:54,070
It's going to open a new chat session with the bot that was created.

480
00:33:54,080 --> 00:33:55,350
You can just click start.

481
00:33:55,350 --> 00:33:57,897
Now this is going to send a message like start to the bot.

482
00:33:57,897 --> 00:34:01,669
But the bot doesn't respond but it doesn't understand what start means.

483
00:34:01,679 --> 00:34:04,653
So here we're just going to send a message to the bot like hi.

484
00:34:04,653 --> 00:34:07,270
And if everything works the bot is going to start typing it.

485
00:34:07,270 --> 00:34:13,039
So if you see this typing symbol then it means that the bot is configured and the bot is going to respond to you.

486
00:34:13,039 --> 00:34:15,850
So the bot responded hi what can I help you with today.

487
00:34:15,850 --> 00:34:18,207
Now we're not going to be talking to the bot in this session here.

488
00:34:18,207 --> 00:34:21,588
What we want to create is we're going to create a telegram group for our bots.

489
00:34:21,588 --> 00:34:24,985
The reason why we're going to create a group is that we're going to have basically three topics.

490
00:34:24,985 --> 00:34:29,672
The first topic is going to be where we're going to be talking to the bots which is going to be our orchestrator.

491
00:34:29,672 --> 00:34:36,906
And then we're going to have a second topic or a second channel which we're going to use to talk to our developer agent who is going to build the whole dashboard for us.

492
00:34:36,906 --> 00:34:40,177
And then we're going to have a third channel which we're going to call studio.

493
00:34:40,177 --> 00:34:43,333
And that is where we're going to brainstorm ideas and stuff like that with our agents.

494
00:34:43,333 --> 00:34:48,717
When we are creating the group, a prerequisite to create a group is that you have to get at least two people in the group.

495
00:34:48,717 --> 00:34:53,494
So we're going to need the username of our bots so that we can add this bot to the group that we're going to create.

496
00:34:53,494 --> 00:34:55,187
I'm going to click on the name of the bot here.

497
00:34:55,187 --> 00:34:58,194
And then here we can click to copy the username of the bot.

498
00:34:58,194 --> 00:35:02,041
And after that we can close this dialogue box and then we can create this new group.

499
00:35:02,041 --> 00:35:07,425
Now to create a new group, click on the hamburger menu that you have here on the left section here and then click on new group.

500
00:35:07,425 --> 00:35:08,910
And then we're going to name the group.

501
00:35:08,910 --> 00:35:12,653
In my case, I'm going to call this KM Content OS and then click on next.

502
00:35:12,653 --> 00:35:15,630
And then we're going to have to add at least one person to the group.

503
00:35:15,630 --> 00:35:17,944
And that is why we copy the username of our bots.

504
00:35:17,944 --> 00:35:22,152
So I paste in the username and I'm going to click to select the bots and I'm going to click on create.

505
00:35:22,152 --> 00:35:24,266
And then now we have our group created.

506
00:35:24,266 --> 00:35:27,438
But like I said, we want to create different channels in this group.

507
00:35:27,438 --> 00:35:33,030
Now, we're going to have to make the bots that we added an administrator so that the bots can talk in this group.

508
00:35:33,040 --> 00:35:34,736
Click on the three dots that we have here.

509
00:35:34,736 --> 00:35:36,013
Come to group info.

510
00:35:36,013 --> 00:35:36,937
Click on manage.

511
00:35:36,937 --> 00:35:39,249
Come down here and click on administrators.

512
00:35:39,249 --> 00:35:40,267
Add administrator.

513
00:35:40,267 --> 00:35:43,775
We're going to select the board that we created because the board is already in that group.

514
00:35:43,775 --> 00:35:47,086
And just review the permissions that you want to give to the board and just click on save.

515
00:35:47,086 --> 00:35:50,392
And then now you see that our bot has an admin privileges.

516
00:35:50,392 --> 00:35:51,750
After that, click on close.

517
00:35:51,760 --> 00:35:55,977
Now, whilst we are here, we also going to enable this aspect that I call channels.

518
00:35:55,977 --> 00:36:01,404
So by default, Telegram doesn't enable these channels or what is called in Telegram topics for you.

519
00:36:01,404 --> 00:36:05,883
So to enable this, just click on the topics section here, which is in my case by default off.

520
00:36:05,883 --> 00:36:07,888
Click on this and then you can enable this.

521
00:36:07,888 --> 00:36:10,230
And then here you can decide the view that you want to go for.

522
00:36:10,240 --> 00:36:12,307
In this case, I'm going to go with the tabs option here.

523
00:36:12,307 --> 00:36:13,633
And then just click on save.

524
00:36:13,633 --> 00:36:15,097
And I'm going to click on save again.

525
00:36:15,097 --> 00:36:16,630
And then we can now close this.

526
00:36:16,640 --> 00:36:18,964
And then immediately we do that when we enable topics.

527
00:36:18,964 --> 00:36:21,074
You see that now we have different channels.

528
00:36:21,074 --> 00:36:24,406
We have all channel where we going to see all the messages from all the channels.

529
00:36:24,406 --> 00:36:26,243
And also we have the general channel.

530
00:36:26,243 --> 00:36:28,401
So first let's rename this general channel.

531
00:36:28,401 --> 00:36:29,861
Click on the three dots here.

532
00:36:29,861 --> 00:36:30,551
Come to edit.

533
00:36:30,551 --> 00:36:35,537
And then we can call this channel orchestrator because this is the channel where we're going to talk to our main bot.

534
00:36:35,537 --> 00:36:36,737
I'm going to click on save.

535
00:36:36,737 --> 00:36:38,844
And then we're going to start talking to orchestrator here.

536
00:36:38,844 --> 00:36:41,218
So let me just send a message in the chat here.

537
00:36:41,218 --> 00:36:45,382
When I send hi and our bot is typing that means that orchestrator is in this chat.

538
00:36:45,382 --> 00:36:48,069
So we can basically start talking to orchestrator.

539
00:36:48,079 --> 00:36:49,861
We are going to create other two channels.

540
00:36:49,861 --> 00:36:51,030
But we are not there yet.

541
00:36:51,040 --> 00:36:54,862
Let's just build the foundation and then when we get there, we're going to go through that process as well.

542
00:36:54,862 --> 00:36:59,214
All the prompts that I'm going to be using in this build can be made available if you interested.

543
00:36:59,214 --> 00:37:05,533
You can get this for a token of support on my website or if you are also a member of my community, you can also get this.

544
00:37:05,533 --> 00:37:16,096
If you guys want to be a member of my community, it's $10 a month and you can get basically access to all the prompts and all the templates and all the tutorials prompts that I have on my channel.

545
00:37:16,096 --> 00:37:18,586
And this goes to also support the work that I do.

546
00:37:18,586 --> 00:37:23,154
A lot of effort goes into creating all these tutorials, creating all these forms that I give to you.

547
00:37:23,154 --> 00:37:33,485
All the AI models that I also use in building these are also quite expensive and that is why I would need to get this with a token of support to help me to be able to keep bringing these tutorials to you as well.

548
00:37:33,485 --> 00:37:36,624
So if you want to join my membership group, I'll be very happy to have you there.

549
00:37:36,624 --> 00:37:47,092
We also do have a telegram channel where you can basically get access to me or all the people in the community ask any questions that you want and everyone there would be happy to support you with the questions that you have.

550
00:37:47,092 --> 00:37:48,633
And I also do create auto installers.

551
00:37:48,633 --> 00:37:54,208
For instance, for the setup that I'm creating, I'm building an auto installer that would build the entire thing for you in less than 5 minutes.

552
00:37:54,208 --> 00:37:58,632
And this is going to be available to people in my community or my membership as well.

553
00:37:58,632 --> 00:38:01,466
Said, hey, if you want to join, I'm very happy to have you on board.

554
00:38:01,466 --> 00:38:08,591
So, what I did now is that I moved Telegram to the left and it basically had all the prompts on the right so that we can basically copy this and it will be very easy.

555
00:38:08,591 --> 00:38:13,032
Now, whenever you set up Hemis for the first time, the bot has no idea who you are.

556
00:38:13,032 --> 00:38:18,420
The bot doesn't have a name. the bot has no idea how the bots can help you with with whatever you want to do.

557
00:38:18,420 --> 00:38:22,941
So the first thing that I always recommend to users is hey let the bot understand who you are.

558
00:38:22,941 --> 00:38:24,047
Give the bot a name.

559
00:38:24,047 --> 00:38:28,748
Tell the bot your name and give the B a gist of how he or she can help you for this.

560
00:38:28,748 --> 00:38:31,037
My first point that I'm going to give to my bot is this.

561
00:38:31,037 --> 00:38:32,930
Your name is going to be orchestrator.

562
00:38:32,930 --> 00:38:39,519
You are going to be my top level coordinator for my multi- aent setup and I am the owner and I have the highest authority.

563
00:38:39,519 --> 00:38:41,637
And then here you're going to fill in your name to the agents.

564
00:38:41,637 --> 00:38:43,956
You're going to also give the agents your brand name.

565
00:38:43,956 --> 00:38:49,589
You're going to give the agents your social media handle because remember we are creating a social media content creation machine.

566
00:38:49,599 --> 00:38:52,001
You're going to tell the agents what your brand teaches.

567
00:38:52,001 --> 00:38:56,270
Now, this is very important because we're going to have this dashboard that is going to create ideas for us.

568
00:38:56,270 --> 00:39:03,109
And for the agents to be able to create these content creation ideas or these post ideas for you, they need to understand what you're building.

569
00:39:03,119 --> 00:39:05,596
And that is why this part here is non-negotiable.

570
00:39:05,596 --> 00:39:08,583
You can also tell the agent what your audience is and stuff like that.

571
00:39:08,583 --> 00:39:09,510
So, I'm going to copy this.

572
00:39:09,520 --> 00:39:10,759
I'm going to paste this in here.

573
00:39:10,759 --> 00:39:12,878
And I'm going to fill in the sections for my build.

574
00:39:12,878 --> 00:39:14,979
So here I bought, hey, my name is Larry.

575
00:39:14,979 --> 00:39:16,677
My brand is computer mechanic.

576
00:39:16,677 --> 00:39:18,486
My social handle is computer mechanic.

577
00:39:18,486 --> 00:39:25,699
And here I teach it technical builders to build AI agents and automation, who my audience is, my voice, and my working time zone.

578
00:39:25,699 --> 00:39:33,771
Now the working time zone, for instance, is important because when the agent is creating like Chrome jobs, then the agents will basically know when to reach you and stuff like that.

579
00:39:33,771 --> 00:39:38,630
Now I'm going to send this to orchestrator to get him breast with who I am and also what we're going to be building today.

580
00:39:38,640 --> 00:39:40,510
And then orchestrator responded, "Hey, got it.

581
00:39:40,510 --> 00:39:42,204
I'm orchestrator and you are Larry.

582
00:39:42,204 --> 00:39:52,298
Your brand is computer mechanic and your content is plain direct content teaching builders to build agents and automation." Now, the next two prompts here are what I would recommend that you do.

583
00:39:52,298 --> 00:39:56,267
The second prompt here is basically where you're telling orchestrator to interview you.

584
00:39:56,267 --> 00:39:59,899
Now, what you give to orchestrator here is basically the backbone, the foundation.

585
00:39:59,899 --> 00:40:03,159
But there are so much that you can let your agents learn about you.

586
00:40:03,159 --> 00:40:11,318
So just take time and give this prompt to Kasha is going to ask you some questions to understand who you are of the setup that you want to build your audience and all those things.

587
00:40:11,318 --> 00:40:17,992
But I'm going to skip this in the tutorial because otherwise the tutorial will get lengthy because for my testing or would ask you about 10 15 questions.

588
00:40:17,992 --> 00:40:21,367
So I would skip this just not to get the tutorial too lengthy.

589
00:40:21,367 --> 00:40:24,934
The second thing that I would also suggest to you is this permanent operating rules.

590
00:40:24,934 --> 00:40:32,591
Now when you are working with the agents it's always advisable to let the agents always give you a plan before they do anything they want to do.

591
00:40:32,591 --> 00:40:37,539
And also when the agents are working, you always want the agents to keep you updated in the process of what they are building.

592
00:40:37,539 --> 00:40:42,556
Otherwise, sometimes you just sit in the dark and you do not know if the task is completed or the task is is done.

593
00:40:42,556 --> 00:40:47,395
And that is why I prepare always these permanent operating rules which you can also give to your agent.

594
00:40:47,395 --> 00:40:50,971
It's optional for you if you want to have this this there ready for you.

595
00:40:50,971 --> 00:40:59,323
I'm going to skip this part as well otherwise in my build orchestrator is always going to ask me give me a plan that I have to type a proof before he does it and this would slow down the build.

596
00:40:59,323 --> 00:41:01,569
Now we're going to start with the main hat of the build.

597
00:41:01,569 --> 00:41:05,196
We're going to tell orchestrator that hey we're going to create different agents.

598
00:41:05,196 --> 00:41:10,102
We're going to create an agent like Atlas who is going to take care of content creates carousel ideas.

599
00:41:10,102 --> 00:41:12,299
We're going to have Vera who is going to be our writer.

600
00:41:12,299 --> 00:41:16,728
We're going to have Kite who is going to be our designer and also Kite is going to be our developer.

601
00:41:16,728 --> 00:41:22,103
And we're also going to have origin who is going to be our publisher publishing things to whatever channel that we want to use.

602
00:41:22,103 --> 00:41:26,897
And here we are basically giving orchestrator a prep or a gist of what we want to build.

603
00:41:26,897 --> 00:41:27,111
Right?

604
00:41:27,111 --> 00:41:32,299
And we are telling orchestrator that hey you are already one of these five agents that we're going to create.

605
00:41:32,299 --> 00:41:35,853
You are going to be the main agent and you are the one I'm talking to right now.

606
00:41:35,853 --> 00:41:46,630
And also important I'm telling him when he is creating these profiles he shouldn't create one for himself because I did test with some AI models that created a profile for themsel as well which doesn't make sense and that is why I also tell it here that

607
00:41:46,640 --> 00:41:48,415
hey you do not need to create one for yourself.

608
00:41:48,415 --> 00:41:52,755
So I'm going to copy this prompt and I'm going to give this to orchestrator to prep him what we're going to be building.

609
00:41:52,755 --> 00:42:00,895
I'm also telling him, hey, confirm that you understand the plan, the five rows and the profile name mapping before he even goes to change or build anything.

610
00:42:00,895 --> 00:42:08,526
And what I like about Hermes is that whenever you send Hermes something that if he finds useful long-term, he commits this to the memory.

611
00:42:08,526 --> 00:42:11,017
And that is why you always see this message like memory.

612
00:42:11,017 --> 00:42:13,150
It means that something has been written to the memory.

613
00:42:13,150 --> 00:42:17,591
And by the way, cadence is the name that I give to the content creating OS that we're going to be working on today.

614
00:42:17,591 --> 00:42:23,589
And then he's just saying hey the five cadence rules are orchestrator which is me and then the other profiles that we're going to be creating.

615
00:42:23,589 --> 00:42:27,126
And he's saying that you are Larry the owner and the final authority.

616
00:42:27,126 --> 00:42:29,880
Now in the next prompt this is going to be the most important prompt.

617
00:42:29,880 --> 00:42:33,772
This is going to be the prompt that is going to create the AI agents that we're going to need.

618
00:42:33,772 --> 00:42:35,254
I'm going to send the prompt to orchestrator.

619
00:42:35,254 --> 00:42:39,265
So I'm telling orchestrator that hey create five persistent hemis profiles.

620
00:42:39,265 --> 00:42:46,942
Now the reason why I use persistent is that hemis can also create agents that are basically called in to do a task and then after that they basically dead.

621
00:42:46,942 --> 00:42:49,321
So what I want to create is that I be created permanently.

622
00:42:49,321 --> 00:42:52,139
So that means that whenever we need them, they are going to be there.

623
00:42:52,139 --> 00:42:57,589
Now here whenever you are creating an agent always with Hermes there is always one default agent.

624
00:42:57,599 --> 00:43:02,091
There's always one agent who is going to be at the top and that is typically the default agent.

625
00:43:02,091 --> 00:43:08,550
And below the default agent you can have whatever number of agents that you want to have but there's always going to be one agent at the top.

626
00:43:08,560 --> 00:43:16,630
And that is why in my setup I typically make the default agent who is at the top orchestrator and then he builds the other agents that would work under him.

627
00:43:16,640 --> 00:43:19,828
So someone for instance asked if you can have two orchestrators.

628
00:43:19,828 --> 00:43:27,432
In principle you can have two orchestrators that but it means that one orchestrator would have to be under the default orchestrator which you can also do.

629
00:43:27,432 --> 00:43:29,949
This is basically up to you how you want to configure this.

630
00:43:29,949 --> 00:43:35,495
Now in creating a profile for an agent you basically need to tell the agent hey what am I as an agent?

631
00:43:35,495 --> 00:43:42,800
So for all the agents we are telling orchestrator to add this information into a document that would be called their soul.md.

632
00:43:42,800 --> 00:43:47,069
So a soul.md is a document that tells an agent hey my name is Larry.

633
00:43:47,069 --> 00:43:48,088
This is what I do.

634
00:43:48,088 --> 00:43:49,743
This is the person that I'm working with.

635
00:43:49,743 --> 00:43:51,899
This is the system that we are working with and stuff like that.

636
00:43:51,899 --> 00:43:57,934
And that is why in this prompt for all the agents I tell orchestrator what he is supposed to put in their description.

637
00:43:57,934 --> 00:44:03,941
So for instance for scout I'm saying hey your name is scout you are a content scout for candid studio.

638
00:44:03,941 --> 00:44:09,990
Your job is to find fresh scroll stopping Instagram Tik Tok carousel ideas and to research facts behind them.

639
00:44:10,000 --> 00:44:12,708
So for all the agents I'm telling them what they are going to be doing.

640
00:44:12,708 --> 00:44:15,561
And for instance Kite Kite is also going to be our designer.

641
00:44:15,561 --> 00:44:17,257
He's also going to be our engineer.

642
00:44:17,257 --> 00:44:20,912
So he has what I'm describing for Skype for him to understand what he does.

643
00:44:20,912 --> 00:44:26,119
Now whenever you start a new chat session with an agent, they always load in their soul.md.

644
00:44:26,119 --> 00:44:31,510
And that is why it's very advisable that we describe in detail what the agents are going to do.

645
00:44:31,520 --> 00:44:35,383
Now he can change the text to whatever you want, whatever fits what you are doing.

646
00:44:35,383 --> 00:44:40,557
For instance, in my case, I said Instagram and Tik Tok, but maybe you want to have both, LinkedIn and stuff like that.

647
00:44:40,557 --> 00:44:42,169
You can basically add this here as well.

648
00:44:42,169 --> 00:44:43,396
So, orchestrator responded.

649
00:44:43,396 --> 00:44:44,067
He says done.

650
00:44:44,067 --> 00:44:48,138
I have created a persistent herm profiles each with their own soul.MD.

651
00:44:48,138 --> 00:44:51,044
And then you can see here we have scout who is Atlas.

652
00:44:51,044 --> 00:44:52,462
We have Scribe who is Vera.

653
00:44:52,462 --> 00:44:53,750
We have Dev who is Kite.

654
00:44:53,750 --> 00:44:55,298
We have Rich who is Orin.

655
00:44:55,298 --> 00:44:58,415
And he also confirmed that the profiles indeed exist.

656
00:44:58,415 --> 00:45:02,716
Now if you want to also confirm yourself because sometimes the agents do hallucinate.

657
00:45:02,716 --> 00:45:10,315
It can be that the agent orchestrator told you especially if you're not using a very good model or can tell you hey I created the agents but basically they were not created.

658
00:45:10,315 --> 00:45:11,864
So you can double check this yourself.

659
00:45:11,864 --> 00:45:19,896
You can come into your terminal and just type in a command hemis profile list and then press enter and then this is going to list all the profiles that you have on your hemis setup.

660
00:45:19,896 --> 00:45:26,161
So you can see that in my case I have default which is orchestrator and then we also have the four agents that we created.

661
00:45:26,161 --> 00:45:28,374
Now here you can see that the gateways are not running.

662
00:45:28,374 --> 00:45:34,579
Their gateways are stopped which is fine because we want the gateway only to be activated when the agents are working.

663
00:45:34,579 --> 00:45:37,791
So we verify that indeed orchestrator created all these agents.

664
00:45:37,791 --> 00:45:40,724
Now this is going to be a prompt that is also very very important.

665
00:45:40,724 --> 00:45:44,762
Now in this prompt I'm telling orchestrator to define this for each agent.

666
00:45:44,762 --> 00:45:48,225
Now I want every agent to have their own dedicated memory.

667
00:45:48,225 --> 00:45:50,150
Imagine you have five agents.

668
00:45:50,160 --> 00:45:52,375
Every agent has their own particular role.

669
00:45:52,375 --> 00:45:57,249
It's going to be a mess if all these agents are sharing one file for their memory.

670
00:45:57,249 --> 00:46:01,315
So agents always write long-term stuffs into a file that is called memory.mmd.

671
00:46:01,315 --> 00:46:04,572
So if all the five agents are using one file, it's going to be a mess.

672
00:46:04,572 --> 00:46:11,670
Now that means that orchestrator is going to dump his long-term memory in there very it's going to dump her long-term memory stuff in there and it's going to be a mess.

673
00:46:11,680 --> 00:46:15,305
And additionally, this is going to make the memory file very very heavy.

674
00:46:15,305 --> 00:46:18,892
And remember, the bigger the memory MD file, the more tokens that you use.

675
00:46:18,892 --> 00:46:25,773
And that is why I typically like to go with a dedicated memory for every agent so that every agent writes own stuff into their own lane.

676
00:46:25,773 --> 00:46:31,589
And every agent is also going to have their unique identity, their dedicated folders and role boundaries.

677
00:46:31,599 --> 00:46:36,353
So here we are telling every agent to only do stuffs that are within their role.

678
00:46:36,353 --> 00:46:46,009
So for instance, if I go to my agent who does my research like Scout and I tell Scout, hey build me a dashboard, and Scout will tell me, hey, no, probably you should talk to Jeff because he's a developer.

679
00:46:46,009 --> 00:46:57,750
Now this is quite important because for instance imagine that you have an agent who is your finance and this agent maybe has access to your PayPal has access to your stripe and stuff like that and you give your finance agent the particular rules

680
00:46:57,760 --> 00:47:01,278
that he's supposed to work with maybe don't withdraw money from my account and stuff like that.

681
00:47:01,278 --> 00:47:13,109
So finance agents knows these rules but if another agent comes in and does that particular thing and the agent doesn't even know what the rules that you give to finance is then the agent can basically mess up your setup and that is why I always have this

682
00:47:13,119 --> 00:47:25,109
sort of role boundaries where every agent understands what their particular role is and then here orchestrator is working on that as well for us and here orchestrator is done as well all the agents have their dedicated memory and

683
00:47:25,119 --> 00:47:33,190
he also created dedicated folders for all the agents and he also tested the role boundaries for instance he asked Vera, Vera, can you write a code for me?

684
00:47:33,200 --> 00:47:36,223
And then Vera responded, hey, that is Kite's department.

685
00:47:36,223 --> 00:47:40,456
And he also asked Kite's ver research and kite responded that is Atlas department.

686
00:47:40,456 --> 00:47:42,550
So that means that the role boundaries are working.

687
00:47:42,560 --> 00:47:45,626
Now in the next step, we're going to create a project folder that is going to host our project.

688
00:47:45,626 --> 00:47:49,370
And very important, we're going to create the agents login database system.

689
00:47:49,370 --> 00:47:53,817
Now, whenever the agents are performing a task, we want them to log whatever they do.

690
00:47:53,817 --> 00:47:56,542
So we're going to build sort of an agent login database.

691
00:47:56,542 --> 00:48:01,647
The idea here is that before an agent sends you a message that, hey, I'm done with this task.

692
00:48:01,647 --> 00:48:06,813
The agent is going to log their name into the list, they're going to log exactly a description of what they did.

693
00:48:06,813 --> 00:48:12,234
They also going to log the time stamp that they did this and they're also going to write the AI model that they use for that particular task.

694
00:48:12,234 --> 00:48:15,545
And then we're going to do this using what is called an SQL lightsaber.

695
00:48:15,545 --> 00:48:20,504
We're going to build a small database server on our server where the agents are going to log all the activities.

696
00:48:20,504 --> 00:48:23,418
For instance, when we come to the dashboard I'm going to be building.

697
00:48:23,418 --> 00:48:28,686
When you come to the agents tab, you can see that we have this heat map where we see when every agent was active.

698
00:48:28,686 --> 00:48:33,424
And here for instance, the agents also post the work that they did, the most recent work that they did.

699
00:48:33,424 --> 00:48:36,243
So this gives you full transparency of what the agents are doing.

700
00:48:36,243 --> 00:48:40,749
So that if an agent is stuck somewhere, then you know that the agent for instance didn't perform that task.

701
00:48:40,749 --> 00:48:43,106
And by the way, this is the dashboard that we're going to be building.

702
00:48:43,106 --> 00:48:48,239
And for that, I'm going to give this prompt to orchestrator to build this agent login database system for us.

703
00:48:48,239 --> 00:48:51,268
So orchestrator is done with the agent login database.

704
00:48:51,268 --> 00:48:59,374
And he also did a smoke test where we can see dev built the cadence store the AI model that he used and the state that he's completed and when he performed this task.

705
00:48:59,374 --> 00:49:02,124
Now remember we have created a base but the agents do not know.

706
00:49:02,124 --> 00:49:05,423
So currently it's only orchestrator that knows that such a database exists.

707
00:49:05,423 --> 00:49:16,286
So we're going to have to roll this out to all the agents and then we are telling the orchestrator hey save this operating rule in your own memory and then first distribute it to Atlas Vera and all the other agents.

708
00:49:16,286 --> 00:49:18,394
And this is the instruction that we are giving to them.

709
00:49:18,394 --> 00:49:24,862
Before sending any response, log what you did into the kid into the cadence runs table by running this command.

710
00:49:24,862 --> 00:49:29,708
So that's going to be the command that you're going to run to basically insert what they did into the database.

711
00:49:29,708 --> 00:49:36,059
I'm going to copy this and I'm going to send this to install this to make sure that all the agents are aware of the setup that we did.

712
00:49:36,059 --> 00:49:41,910
And after that I'm also going to tell him hey have every agent run a smoke test so that they lock something into the database.

713
00:49:41,920 --> 00:49:46,700
Now this would help us for us to know that all the agents have access to this database that we created.

714
00:49:46,700 --> 00:49:52,702
Now when the agents are working sometimes you get a prompt like this where you're going to have to allow them to be able to run some commands.

715
00:49:52,702 --> 00:50:01,142
In my case you can either go with allow once allow only for this particular session or you can also allow this always so that they don't ask you this every time and then that is also done.

716
00:50:01,142 --> 00:50:10,710
So he also did a smoke test where all the five agents that we have performed the smoke test where they just completed the AI model that they used and the time that he performed and the date and time that he performed this

717
00:50:10,720 --> 00:50:11,013
task.

718
00:50:11,013 --> 00:50:13,852
Now we're going to move in to one of the major parts.

719
00:50:13,852 --> 00:50:24,390
So currently you can see that we are sending all our messages in the orchestrator channel because so far we've been working with orchestrator but now we're going to move into the aspect where we're going to start building the dashboard and for that

720
00:50:24,400 --> 00:50:25,796
we're not going to be using orchestrator.

721
00:50:25,796 --> 00:50:33,562
We're going to have a dedicated agent kite who is our designer and our developer who is going to be creating the dashboard for us because he's going to be our developer.

722
00:50:33,562 --> 00:50:41,288
We're also going to have a third channel which we're going to call studio and that is going to be the channel we're going to use to brainstorm ideas on new content to create and stuff like that.

723
00:50:41,288 --> 00:50:47,272
Now, by default, the issue is that Telegram doesn't allow you to use one bot token to talk to several bots.

724
00:50:47,272 --> 00:50:49,443
So, with Telegram, one bot, one token.

725
00:50:49,443 --> 00:50:56,063
So, if we want to create another dedicated Telegram channel where we're going to talk to Kite, then we basically can't use orchestrators B token.

726
00:50:56,063 --> 00:50:59,109
We have to create a dedicated bot token for kite.

727
00:50:59,119 --> 00:51:04,608
Now, there are workarounds around this like I did in my earlier video where we basically created a router plugin.

728
00:51:04,608 --> 00:51:14,470
So what the router basically does is that whenever you send a message in a channel it first goes through that single B token and the router determines hey this is a message that is coming from orchestrator's channel so let me send

729
00:51:14,480 --> 00:51:24,710
this to orchestrator the same thing that also happens for instance if you have an agent that is called a message comes from that scribe telegram channel then it goes to your same bin and then the router determines hey this is coming

730
00:51:24,720 --> 00:51:34,075
from thread 4 because every channel has their dedicated ID so with that ID the router is able to determine where the message is coming from and then it routes it to that particular agent.

731
00:51:34,075 --> 00:51:37,522
Now, this is quite useful if you have different channels that you want to create.

732
00:51:37,522 --> 00:51:39,458
But in our setup, we're going to create only three channels.

733
00:51:39,458 --> 00:51:45,170
So, I'm going to show you another workar around because with every tutorial, I try to bring in a new flavor so you guys can learn also new things as well.

734
00:51:45,170 --> 00:51:50,908
So, what we're going to do in this setup is that we're going to create another bot token exclusively for kites.

735
00:51:50,908 --> 00:51:57,660
So, that means that every message that goes through this particular gateway or this particular telegram bot token would go directly to kite.

736
00:51:57,660 --> 00:51:59,635
But then we have another challenge.

737
00:51:59,635 --> 00:52:06,408
So by default whenever you create channels in telegram all the messages that we create in these channels are going to go through one bot.

738
00:52:06,408 --> 00:52:17,351
So which is now our case every message is going to go through orchestrator but which doesn't make sense right we want orchestrator to only listen in a particular channel and we also want kite to only listen in the channel that we'll create for him.

739
00:52:17,351 --> 00:52:24,650
So what we're going to do is we're going to tell orchestrator to build sort of a plug-in where orchestrator would only listen in the channels that are dedicated to him.

740
00:52:24,650 --> 00:52:28,497
So orchestrator would never listen in the channel that we would create for Kite.

741
00:52:28,497 --> 00:52:30,492
And the same thing also applies to Kite.

742
00:52:30,492 --> 00:52:33,280
Kite would only listen to his channel that we'll create for him.

743
00:52:33,280 --> 00:52:34,475
This would all make sense soon.

744
00:52:34,475 --> 00:52:34,863
Trust me.

745
00:52:34,863 --> 00:52:36,449
Because this is very very complex.

746
00:52:36,449 --> 00:52:42,256
I typically like to brief the agents whenever we want to create something complex for them to know what is coming.

747
00:52:42,256 --> 00:52:46,052
So here I'm sending this message to prep him on what we want to do.

748
00:52:46,052 --> 00:52:48,687
So I'm telling Oka, hey, we're going to build something together.

749
00:52:48,687 --> 00:53:02,870
The goal is that kite by default is going to build our studios dashboard and I want to talk to this engineer directly in his own group where he would have his own bot and his own identity and then I'm explaining to why we need a second bot

750
00:53:02,880 --> 00:53:06,711
and you can also read this to understand basically the reason why we need the second bot.

751
00:53:06,711 --> 00:53:11,270
So I'm basically telling him hey this is what we're going to build so that can understand what we going to do.

752
00:53:11,280 --> 00:53:19,494
Now, whilst orchestrator is working on this, we're going to have to create a second bot token for Kite because remember that Kite would need his own dedicated bot token.

753
00:53:19,494 --> 00:53:25,336
Orchestrator responded that he understands the goal is that Kite has his own Telegram presence where we can speak to him directly.

754
00:53:25,336 --> 00:53:28,027
But we first going to have to create this bot for Kite.

755
00:53:28,027 --> 00:53:33,233
And to do so, we're going to come back to our bot fer that we used to create the first B that we have forestrator.

756
00:53:33,233 --> 00:53:34,847
And we're going to create a second bot.

757
00:53:34,847 --> 00:53:38,323
So, just type in new bot just like we did for the first time for orchestrator.

758
00:53:38,323 --> 00:53:41,105
And we're going to call this bot km kite content.

759
00:53:41,105 --> 00:53:42,862
Let me call this content kites.

760
00:53:42,862 --> 00:53:43,198
Right?

761
00:53:43,198 --> 00:53:44,703
And I'm going to copy the username.

762
00:53:44,703 --> 00:53:45,346
We press enter.

763
00:53:45,346 --> 00:53:48,803
And just like we did earlier, I'm going to use the same name that I g.

764
00:53:48,803 --> 00:53:54,081
But I'm just going to end with a bot because every username with telegram for a bot has to end with the name bot.

765
00:53:54,081 --> 00:53:55,367
And I'm going to press enter.

766
00:53:55,367 --> 00:53:57,710
And then we get a dedicated token for bot.

767
00:53:57,710 --> 00:54:01,258
Remember this was the token that we had for orchestrator.

768
00:54:01,258 --> 00:54:03,887
And we have now create a dedicated token for kite.

769
00:54:03,887 --> 00:54:08,048
So we're going to have to add this bottle for kites also to our hemis setup.

770
00:54:08,048 --> 00:54:10,470
And to do that I created this command for you here.

771
00:54:10,480 --> 00:54:10,953
Come here.

772
00:54:10,953 --> 00:54:12,041
Copy this command here.

773
00:54:12,041 --> 00:54:13,991
Come back into your terminal instance.

774
00:54:13,991 --> 00:54:15,032
Let me clear the screen.

775
00:54:15,032 --> 00:54:15,661
Very important.

776
00:54:15,661 --> 00:54:17,022
Make sure that you're not on root.

777
00:54:17,022 --> 00:54:20,511
You are on Larry or the new user that you created and just paste in this command.

778
00:54:20,511 --> 00:54:23,196
Now this command is going to ask you to put in the bot token.

779
00:54:23,196 --> 00:54:27,984
So I'm just going to run the command here and then it's going to tell you hey paste your kite token and press enter.

780
00:54:27,984 --> 00:54:29,543
So I'm going to come back to Telegram.

781
00:54:29,543 --> 00:54:30,710
I'm going to click here.

782
00:54:30,720 --> 00:54:32,447
Make sure that you are copying the one for kite.

783
00:54:32,447 --> 00:54:33,701
I'm going to click to copy this.

784
00:54:33,701 --> 00:54:34,681
I'm going to minimize this.

785
00:54:34,681 --> 00:54:37,467
I'm going to come back to the and I'm going to right click to paste this in.

786
00:54:37,467 --> 00:54:38,803
And then the key is pasted here.

787
00:54:38,803 --> 00:54:40,445
And after that, I'm just going to press enter.

788
00:54:40,445 --> 00:54:43,628
And this is going to save the keys into our dashboard.

789
00:54:43,628 --> 00:54:45,291
So, let's go back into our setup.

790
00:54:45,291 --> 00:54:47,109
And then let's go into our group.

791
00:54:47,119 --> 00:54:53,970
And then I'm going to tell the I have created this B token for Kite and I have also added the B token myself in this space here.

792
00:54:53,970 --> 00:55:00,398
So, I'm telling him to verify that the token that I have added exist and also to do a few sanity checks to make sure that it would work for Kite.

793
00:55:00,398 --> 00:55:03,451
I'm going to copy this and I'm going to send this to orchestrator.

794
00:55:03,451 --> 00:55:13,430
And also what is quite useful and what I always recommend to you guys is that whenever you're giving your agent a complex tax that you're not sure if the agents would be able to pull this off, you can always give the agents reference

795
00:55:13,440 --> 00:55:14,043
to the hemis.

796
00:55:14,043 --> 00:55:22,466
So for instance, if I'm telling you, hey, if you are unsure, please look into the hemis in this part here so that the agents would basically understand how he's supposed to build this.

797
00:55:22,466 --> 00:55:24,543
Then I get this command approval from orchestrator.

798
00:55:24,543 --> 00:55:25,623
I'm going to click on always.

799
00:55:25,623 --> 00:55:28,400
And then orchestrator said, hey, step one is completed.

800
00:55:28,400 --> 00:55:33,115
He's verified that the token that we added exists and he's also saying that hey the bot is live.

801
00:55:33,115 --> 00:55:35,996
We can basically send stats to him to directly message Kite.

802
00:55:35,996 --> 00:55:39,267
Now what we're going to do now is that we're going to create the channels that we need.

803
00:55:39,267 --> 00:55:40,668
So we're going to create one channel for Kite.

804
00:55:40,668 --> 00:55:46,900
We're going to create one channel as well for studio which we're going to use for the brainstorming before we even bring Kite into that chat.

805
00:55:46,900 --> 00:55:49,267
So to do that we're going to click on the three dots here.

806
00:55:49,267 --> 00:55:51,155
You wouldn't see the option to create a group.

807
00:55:51,155 --> 00:55:54,385
So we're going to come back to all and then you're going to click on the three dots here.

808
00:55:54,385 --> 00:55:55,791
Then you're going to create a topic.

809
00:55:55,791 --> 00:55:57,130
Now you're going to have to give the topic a name.

810
00:55:57,130 --> 00:55:59,175
In our case, I'm going to call this kite, right?

811
00:55:59,175 --> 00:56:02,933
And because kite is going to be a developer, let me just give him a laptop icon.

812
00:56:02,933 --> 00:56:04,638
And after that, just click on create.

813
00:56:04,638 --> 00:56:10,320
Now, whenever you are creating a new topic, before topic can be activated, you're going to have to send a message in that topic.

814
00:56:10,320 --> 00:56:18,986
For this topic that we are creating, we're going to need the thread ID for this topic because it is with this ID that orchestrator would bind this topic exclusively to kite.

815
00:56:18,986 --> 00:56:26,728
So to kick off this group, I'm just going to copy this prompt here and I'm going to send this immediately to orchestrate that hey, what is this topic's thread ID?

816
00:56:26,728 --> 00:56:27,830
You can send it any message.

817
00:56:27,830 --> 00:56:33,792
We could have sent in hi just to create the channel and then we could follow up with a message like what is the topic thread of this ID.

818
00:56:33,792 --> 00:56:36,306
I'm also going to show you that other approach as well.

819
00:56:36,306 --> 00:56:37,446
Now kite is created.

820
00:56:37,446 --> 00:56:39,270
We have the telegram topic ID.

821
00:56:39,280 --> 00:56:40,571
We have the thread ID.

822
00:56:40,571 --> 00:56:43,505
Come back to all and then here click on create topic.

823
00:56:43,505 --> 00:56:45,990
And then we're going to create the next topic which is going to be the studio.

824
00:56:46,000 --> 00:56:51,141
Now remember the studio is where we're going to be brainstorming ideas on new content, promos, ideas and stuff like that.

825
00:56:51,141 --> 00:56:56,489
So I'm going to call this idea with this icon here and I'm going to click on create and to trigger and create this as well.

826
00:56:56,489 --> 00:57:02,470
I'm just going to use a welcome message like hey what is the topic ID of this group and then here as well we're going to get a response.

827
00:57:02,480 --> 00:57:09,246
Now remember we have created kites but still it's orchestrator that we are talking to because kite hasn't even been added to this group yet.

828
00:57:09,246 --> 00:57:09,537
Right?

829
00:57:09,537 --> 00:57:17,451
So all the messages that you are seeing here the thread the response to the thread ID for kite the response ID for studio all of this is still coming from orchestrator.

830
00:57:17,451 --> 00:57:18,685
So now we have the thread ID.

831
00:57:18,685 --> 00:57:22,352
So we're going to send a message to orchestrator that hey now we have the thread ids.

832
00:57:22,352 --> 00:57:24,468
So we want you to wire our telegram group.

833
00:57:24,468 --> 00:57:27,708
I'm going to give orchestrator telegram group ID of our current group.

834
00:57:27,708 --> 00:57:30,564
And I'm also going to give him the thread ids of all the channels.

835
00:57:30,564 --> 00:57:33,343
So he would have the thread ID of where I'm talking to him.

836
00:57:33,343 --> 00:57:35,246
He would have the thread ID for kite.

837
00:57:35,246 --> 00:57:37,556
He would also have the thread ID for the studio group.

838
00:57:37,556 --> 00:57:41,989
And then only with this he would be able to bind the channels to the particular agent.

839
00:57:41,989 --> 00:57:52,710
So for orchestrator would have access to this channel that we are talking to him and orchestrator would also have access to the studio channel because that is what we going to he's the boss and basically we will be brainstorming the ideas with him on the

840
00:57:52,720 --> 00:57:59,834
studio channel but kite would only listen in this channel and kite would have no access to the orchestra channel and also to the kite channel.

841
00:57:59,834 --> 00:58:03,792
I'm going to open notepad and I'm going to paste in this prompt because we're going to change a few things in there.

842
00:58:03,792 --> 00:58:06,525
The first thing that we're going to need is the telegram group ID.

843
00:58:06,525 --> 00:58:08,274
Now to get your telegram group ID.

844
00:58:08,274 --> 00:58:13,074
We're going to use the same bot that we used to fetch our telegram ID called user infobot.

845
00:58:13,074 --> 00:58:18,069
So when this opens, click on forum down here and select the group that you just created.

846
00:58:18,079 --> 00:58:19,852
In my case, this is KM content.

847
00:58:19,852 --> 00:58:21,910
And then when you click on this, just press send.

848
00:58:21,920 --> 00:58:24,863
And then the bot will send you the ID of the Telegram group.

849
00:58:24,863 --> 00:58:26,333
You can click on here to copy this.

850
00:58:26,333 --> 00:58:29,655
And I'm just going to replace this with this section here called Telegram ID.

851
00:58:29,655 --> 00:58:33,239
In the next stage, we're going to fill in the thread ID for the three channels.

852
00:58:33,239 --> 00:58:35,726
And for that, I'm going to come back into our Telegram group.

853
00:58:35,726 --> 00:58:39,904
But in most of the cases, the first channel that you create always has a thread ID one.

854
00:58:39,904 --> 00:58:42,470
So most likely orchestrator would reply that is one.

855
00:58:42,480 --> 00:58:44,535
But just to be sure, let me just ask him this as well.

856
00:58:44,535 --> 00:58:48,118
Okay, she responded that his thread ID is one because that is that was created.

857
00:58:48,118 --> 00:58:49,283
So I'm going to put in one here.

858
00:58:49,283 --> 00:58:50,574
I'm going to go to kite.

859
00:58:50,574 --> 00:58:51,191
Kite was 36.

860
00:58:51,191 --> 00:58:55,841
I'm going to put in 30 and I'm going to come to studio and studio is 40.

861
00:58:55,841 --> 00:58:57,455
And then basically we're done.

862
00:58:57,455 --> 00:59:00,563
Only these are the four parameters that you're going to have to fill in in this prompt.

863
00:59:00,563 --> 00:59:01,998
And after that, copy the message.

864
00:59:01,998 --> 00:59:02,593
Very important.

865
00:59:02,593 --> 00:59:13,750
Don't do this in studio or kite. do this in orchestrator's channel and then paste this message and send this message to orchestrator to basically implement the topic lane agents binding and he orchestrator responds hey I've saved the

866
00:59:13,760 --> 00:59:23,430
four lane members to memory and completed the save part but there is an issue that he's having he's not able to run this command to restart the gateway so he's telling us if we can run this for him so I'm just going to copy the

867
00:59:23,440 --> 00:59:32,069
command here I'm going to come back to my terminal let me just clear the screen to make it a bit cleaner and I'm going to paste in this command here very very important again make sure that if you created a new user you are on the new

868
00:59:32,079 --> 00:59:34,336
user not your root account and and press enter.

869
00:59:34,336 --> 00:59:39,470
And then it happened as well when I was testing this that you get this response failed to connect to bus.

870
00:59:39,470 --> 00:59:45,473
So just copy everything here and then come to telegram and then tell okay I got this error and just paste it.

871
00:59:45,473 --> 00:59:46,727
Oops, I think I didn't copy it.

872
00:59:46,727 --> 00:59:50,164
Well, let me come back into PowerShell control shift C to copy this.

873
00:59:50,164 --> 00:59:52,789
I'm going to come back to Telegram and I'm going to paste this.

874
00:59:52,799 --> 00:59:56,917
And then he would basically correct this and give me another command that I can use to fix this issue.

875
00:59:56,917 --> 00:59:58,163
And I should have found this.

876
00:59:58,163 --> 01:00:00,931
He says the error means your shell didn't use a bus environment.

877
01:00:00,931 --> 01:00:02,949
So he's basically giving me another command to run.

878
01:00:02,949 --> 01:00:05,634
So I'm going to copy this and I'm going to clear the screen again.

879
01:00:05,634 --> 01:00:07,003
I'm going to paste in this new command.

880
01:00:07,003 --> 01:00:07,794
I'm going to press enter.

881
01:00:07,794 --> 01:00:11,374
And then you see that immediately I get a notification that my gateway is restarting.

882
01:00:11,374 --> 01:00:15,270
So that means that the command is so it took a few seconds for everything to complete.

883
01:00:15,280 --> 01:00:17,674
So just be a bit more patient when you see this.

884
01:00:17,674 --> 01:00:18,839
So I'm going to copy this here.

885
01:00:18,839 --> 01:00:22,630
Control shift C and I'm going to send this orchestrator it worked out.

886
01:00:22,640 --> 01:00:24,135
This is the message I got.

887
01:00:24,135 --> 01:00:29,749
So you see that when I sent it to immediately orchestrator, he didn't respond because the gateway I think was still booting all the agents.

888
01:00:29,749 --> 01:00:35,655
So sometimes when you restart a gateway immediately it takes a while for all the gateways for the agents to get restarted.

889
01:00:35,655 --> 01:00:39,510
So when you send this immediately and you do not see a response just be a bit more patient.

890
01:00:39,520 --> 01:00:47,105
And here just as a tip when you come back into your terminal and you type in hemis profile list and enter you would see that now we have two gateways running.

891
01:00:47,105 --> 01:00:51,738
Initially we only had the default gateway that was running and the gateway for dev was stopped.

892
01:00:51,738 --> 01:00:56,160
But now you can see that we have another gateway that we have built for kite which is running.

893
01:00:56,160 --> 01:01:00,152
So what we're going to do now is we're going to have to add kite into this group that we have created.

894
01:01:00,152 --> 01:01:05,429
And to do that we're going to come to botfather click on the URL that he gave to us to be able to fetch the ID for kite.

895
01:01:05,429 --> 01:01:10,407
Click on the name and then we're going to click to copy the of kite and then we're going to come back into our group.

896
01:01:10,407 --> 01:01:11,211
I'm going to go to all.

897
01:01:11,211 --> 01:01:14,464
I'm going to click on the three dots here and go to view group info.

898
01:01:14,464 --> 01:01:23,277
And then here I'm going to click on manage and I'm going to come to members down here and I'm going to click on add members and I'm going to put in the username of kitespot.

899
01:01:23,277 --> 01:01:26,003
And I'm going to select this and I'm going to click on add.

900
01:01:26,003 --> 01:01:28,360
And then now Kite is added to this group.

901
01:01:28,360 --> 01:01:31,517
We also have to make Kite an administrator for him to be able to work here.

902
01:01:31,517 --> 01:01:34,527
Still on the all tab, I'm going to click on the three dots.

903
01:01:34,527 --> 01:01:35,838
I'm going to come to manage group.

904
01:01:35,838 --> 01:01:39,697
Then I'm going to come to administrator and I'm going to click on add administrator.

905
01:01:39,697 --> 01:01:41,199
I'm going to add Kite there.

906
01:01:41,199 --> 01:01:42,549
Review the permissions.

907
01:01:42,559 --> 01:01:44,283
If you're fine with that, just click on save.

908
01:01:44,283 --> 01:01:45,811
And then we can close this.

909
01:01:45,811 --> 01:01:47,662
So now we have added Kite to the group.

910
01:01:47,662 --> 01:01:53,186
So what we're going to do now, we're going to come into Kite's channel and we're going to send a message like who are you?

911
01:01:53,186 --> 01:01:59,117
And this is the part that always gets me nervous because that is the point that you see if the agent to channel binding works.

912
01:01:59,117 --> 01:02:02,649
If everything works, we are supposed to see a message from Kite that I am Kite.

913
01:02:02,649 --> 01:02:04,648
So let's see if this is going to work.

914
01:02:04,648 --> 01:02:05,217
Perfect.

915
01:02:05,217 --> 01:02:06,568
I'm a bit relieved.

916
01:02:06,568 --> 01:02:08,032
So here Kite responded.

917
01:02:08,032 --> 01:02:10,721
I'm Kite Laris Cadence designer and engineer.

918
01:02:10,721 --> 01:02:14,130
Now just to make sure that the other parts are working, I'm also going to send this to orchestrator.

919
01:02:14,130 --> 01:02:16,862
And if this should respond that he is orchestrator.

920
01:02:16,862 --> 01:02:19,762
So if Kite is responding in the shadow, then we are screwed up.

921
01:02:19,762 --> 01:02:25,112
Let me do the same thing for studio just to be on the safe side that we have the right agents behind these channels.

922
01:02:25,112 --> 01:02:25,481
Great.

923
01:02:25,481 --> 01:02:30,626
So in orchestrator's channel he still responded I'm orchestrator which means that this is working very well.

924
01:02:30,626 --> 01:02:32,742
Kite if you remember also responded he is kite.

925
01:02:32,742 --> 01:02:36,570
And then now when I go to studio orchestrator also responded orchestrator is there.

926
01:02:36,570 --> 01:02:39,530
So that means that the telegram channel to agent binding work.

927
01:02:39,530 --> 01:02:46,684
Kite is never going to listen in orchestrator's channel and orchestrator would also not listen to ka's channel and that's exactly what we want.

928
01:02:46,684 --> 01:02:57,030
So now that we have all the core aspects of the framework that we need ready, her message agent is ready, orchestrator is fully set up and kite our developer is also set up, group is ready, we can now start with the build

929
01:02:57,040 --> 01:02:57,753
of the dashboard.

930
01:02:57,753 --> 01:03:03,635
Now with the entire build of the dashboard, we're going to be using Kite who is basically playing the role of a designer and also our developer.

931
01:03:03,635 --> 01:03:12,504
And before we even let Kite start building the dashboard, we're going to have to brief Kite on the whole thing that we want to build from the beginning to the end and a concept that we have for what we're building.

932
01:03:12,504 --> 01:03:16,418
And for that I'm going to give Kite this prompt here as a briefing to know what we want to do.

933
01:03:16,418 --> 01:03:20,565
So I just sent this to Kite and in the process I'll be explaining to you guys what I just sent to Kite.

934
01:03:20,565 --> 01:03:25,915
I'm telling Kite, hey before we even write any single line of code, here is the whole picture of what we building.

935
01:03:25,915 --> 01:03:30,530
So I'm telling Kite we're building a premium content automation studio with a beautiful web dashboard.

936
01:03:30,530 --> 01:03:32,752
I'm telling Kite how the whole process is going to work.

937
01:03:32,752 --> 01:03:43,990
So we're going to have Atlas who is going to be our researcher. basically go and propose some ideas and then we will promote one as a user and then Vera would write the content of the slides and after this is done Kite who is also

938
01:03:44,000 --> 01:03:57,029
our developer and our designer would fit this content into one of the templates that we would pick and then we would render that template from an HTML document into an image with about 10 1080 to 1350p and then Orin who is going

939
01:03:57,039 --> 01:04:06,150
to be our publisher would publish this to any network that we want to build this on and I'm also telling Sky that we're going to set this on a small Python server which is going to be on dashboard and also very important I'm

940
01:04:06,160 --> 01:04:15,349
telling Kai that we're going to give him or a template that we're going to be working with and I want this template to be the design source of truth because I don't want him to change anything that we're going to be putting in the

941
01:04:15,359 --> 01:04:21,942
template and also a few things that I'm giving him that I want to have a backup protocol and also some principles of how the whole build is going to be.

942
01:04:21,942 --> 01:04:25,774
So Kite responded that hey understood here is the plan in my own words.

943
01:04:25,774 --> 01:04:37,444
Candice is a complete content automation studio with a polished web dashboard as a control interface and he's basically just repeating all the things that we told Kite in the sequence how the whole flow is going to work.

944
01:04:37,444 --> 01:04:40,797
So Kite is basically ready to fill in to build the dashboard with us.

945
01:04:40,797 --> 01:04:47,022
So in the next stage we're going to tell Kite to build the Python back end on which this web dashboard is going to be running on.

946
01:04:47,022 --> 01:04:49,349
I'm going to give this prompt here to get that ready.

947
01:04:49,359 --> 01:04:53,479
I'm telling Kai that hey we're going to build this dashboard in a way that is going to be very secured.

948
01:04:53,479 --> 01:04:57,361
So for the first part we're going to be setting this thing on what is called SSA tunneling.

949
01:04:57,361 --> 01:05:06,000
So that means that whenever you want to connect to the dashboard you're going to use a command like SS minus N minus L this port here and at the end you're going to put in your username and your IP address.

950
01:05:06,000 --> 01:05:07,349
But I'm going to show you how this would work.

951
01:05:07,359 --> 01:05:13,225
Now the reason why we are using this in the first place is that the web dashboard is not going to be available to the public internet.

952
01:05:13,225 --> 01:05:18,495
It's only someone who knows the password of your VPS server that would be able to connect to the dashboard.

953
01:05:18,495 --> 01:05:20,146
And that is why it makes it so secured.

954
01:05:20,146 --> 01:05:25,286
But even after we are done with the build, we're going to be installing tails skill that will save the dashboard for us.

955
01:05:25,286 --> 01:05:30,526
Now tail skill is one of the most solid security setups that we can use to get our dashboard online.

956
01:05:30,526 --> 01:05:33,885
So for the first time, we're going to use SSH tunneling to access the dashboard.

957
01:05:33,885 --> 01:05:38,150
But when we are done, we're going to be installing tail skill which is going to host the whole thing for us.

958
01:05:38,160 --> 01:05:45,315
And the best thing about tail skill is that we would then be able to access the dashboard on any PC that is running our tail skill account or even on your mobile phone.

959
01:05:45,315 --> 01:05:45,772
All right.

960
01:05:45,772 --> 01:05:46,444
So kite is done.

961
01:05:46,444 --> 01:05:52,802
He set up the back end that we used to run the dashboard and he also gave us the SSH tunnel command that we're going to use to access the dashboard.

962
01:05:52,802 --> 01:05:57,009
So what we're going to have to do is to just copy this command that Kite has provided for us here.

963
01:05:57,009 --> 01:06:01,283
We're going to go back into PowerShell and then in PowerShell just put in this command ssh minus L.

964
01:06:01,283 --> 01:06:03,743
This is the port that we use to save the dashboard.

965
01:06:03,743 --> 01:06:11,785
This is the security end and also this is the your username which in my case I created a new username if you remember called Larry and this is the IP address of the VPS server.

966
01:06:11,785 --> 01:06:14,470
Now here I'm going to put in my password and then just press enter.

967
01:06:14,480 --> 01:06:16,248
Now it's going to bring you to this point here.

968
01:06:16,248 --> 01:06:17,979
It's going to be a ca just blinking.

969
01:06:17,979 --> 01:06:20,882
That means that you are connected to the back end of the VPS server.

970
01:06:20,882 --> 01:06:27,670
So what we're going to do now is we're going to open a browser and then just as Kite gave to us, he says that we should open this URL on our browser.

971
01:06:27,680 --> 01:06:28,996
We're going to copy this URL here.

972
01:06:28,996 --> 01:06:30,906
We're going to paste this in here and press enter.

973
01:06:30,906 --> 01:06:33,062
And then you see that we are connected to the dashboard.

974
01:06:33,062 --> 01:06:36,667
But because we do not have anything there yet, that is why we get this error response.

975
01:06:36,667 --> 01:06:39,714
But in principle, we are connected to the back end of the Python server.

976
01:06:39,714 --> 01:06:44,790
Now what we're going to do is in the next thing we're going to have to put something on the dashboard for us to see basically what we're building.

977
01:06:44,790 --> 01:06:47,731
And for that we're going to tell Kite to create a web upload page.

978
01:06:47,731 --> 01:06:52,943
Now in this web upload page we're going to upload all the files that is going to save the template of what we want to build.

979
01:06:52,943 --> 01:07:00,299
I'm going to copy this prompt to Kite and I'm going to send this to Kite to build the upload point where we can upload all the dashboard stuffs that we need.

980
01:07:00,299 --> 01:07:07,927
And this would contain the HTML template to the dashboard and all the the slides that we're going to be using when we building these carousel slides.

981
01:07:07,927 --> 01:07:10,921
Whilst Kite is building that, let me show you how the template looks.

982
01:07:10,921 --> 01:07:15,510
So this is the empty template that we're going to give to Kite to upload on the dashboard for us.

983
01:07:15,520 --> 01:07:18,198
So we see that we have the content tab which is a bit populated.

984
01:07:18,198 --> 01:07:19,551
The idea tab looks empty.

985
01:07:19,551 --> 01:07:21,270
The studio tab also looks empty.

986
01:07:21,270 --> 01:07:22,457
Everything looks empty.

987
01:07:22,457 --> 01:07:28,503
But once he's done, he's going to basically add this to the back end and then we're going to populate this dashboard template as we build.

988
01:07:28,503 --> 01:07:29,048
All right.

989
01:07:29,048 --> 01:07:29,801
So Kite is done.

990
01:07:29,801 --> 01:07:34,381
He's built the back end which we're going to use to upload all the files that he would need to build the dashboard.

991
01:07:34,381 --> 01:07:36,038
And he gave us this URL here for that.

992
01:07:36,038 --> 01:07:37,190
So I'm going to copy the URL.

993
01:07:37,200 --> 01:07:39,661
I'm going to open the browser and I'm going to paste in this URL.

994
01:07:39,661 --> 01:07:42,390
Hopefully, we have a web upload upload dashboard.

995
01:07:42,400 --> 01:07:43,794
Okay, so this is working quite well.

996
01:07:43,794 --> 01:07:48,487
So, he built the cadence upload back end and he's telling us that he expects four files.

997
01:07:48,487 --> 01:07:55,245
So, the template, so the HTML templates and three JSON files which are going to be the templates of the carousel slides and for the reuse.

998
01:07:55,245 --> 01:08:00,292
So, I uploaded all the four files that are required and also this is confirmed on the dashboard that these four files are saved.

999
01:08:00,292 --> 01:08:07,083
So the next point what I'm going to tell Kite is that hey I have uploaded all the four files that are required to build the templates to build the dashboard.

1000
01:08:07,083 --> 01:08:11,915
So I want him to serve these files on the Python temp so that we can actually see that this is working.

1001
01:08:11,915 --> 01:08:23,669
So what we're basically telling Kite in this prompt is that the file that we upload the template is called cadence dashboard template.html but I want him to rename this to index.html into the dedicated folder that we have created

1002
01:08:23,679 --> 01:08:25,147
for the dashboard that we're going to be building.

1003
01:08:25,147 --> 01:08:33,749
And also very very important at least in my case if you want to change the templates then you don't need to give Kite this instruction but what I'm telling Kite is that hey this is going to be the design source of truth.

1004
01:08:33,759 --> 01:08:43,110
So whenever he's building anything he should always check for the template to make sure that he hasn't made any design changes to the temp so that whatever he's going to be building is going to be identical to what we have in the

1005
01:08:43,120 --> 01:08:54,309
templates. on telling him that hey the template contains basically mock values like hardcoded stuff so that nothing basically looks empty but those numbers that we have on the templates are going to be replaced with real metrics once we

1006
01:08:54,319 --> 01:09:03,110
start building the dashboard and this one of the nice things not that I like about Hermes so what you can see here for instance is that he's done with basically the work that we give to him and you can see that he's using an

1007
01:09:03,120 --> 01:09:15,590
inbuilt browser to check to see if everything that is there is correct so he's clicking and taking browser snapshots he's clicking different sections and taking snapshots of that aspect just to be sure that whatever he did is identical to what is in the

1008
01:09:15,600 --> 01:09:15,877
template.

1009
01:09:15,877 --> 01:09:20,309
And this is one of the main reasons why I really like working with Hemis because I build dashboards a lot.

1010
01:09:20,319 --> 01:09:26,644
And if the agents or Hemis allows the agent to be able to work with a headless browser to be able to see what it's building, this is really cool.

1011
01:09:26,644 --> 01:09:27,131
All right.

1012
01:09:27,131 --> 01:09:28,402
So Kite says he's done.

1013
01:09:28,402 --> 01:09:32,986
He says the template is logged in but is partially complete because there's one file that is missing.

1014
01:09:32,986 --> 01:09:37,127
So when I look here, he says that he didn't find the templates packed because it's false zero.

1015
01:09:37,127 --> 01:09:38,709
Let me see why this is the case.

1016
01:09:38,719 --> 01:09:40,231
So it could be that our upload didn't work.

1017
01:09:40,231 --> 01:09:43,678
So he's saying that we should re-upload this file through the upload point.

1018
01:09:43,678 --> 01:09:47,446
So I'm going to put in this here again and I'm going to re-upload the templates pack.

1019
01:09:47,446 --> 01:09:50,934
So I'm going to tell Kite I have re-upload templates pack.json.

1020
01:09:50,934 --> 01:09:52,175
Can you confirm?

1021
01:09:52,175 --> 01:09:52,795
Perfect.

1022
01:09:52,795 --> 01:09:55,546
So it appears that something happened the first time that I uploaded this.

1023
01:09:55,546 --> 01:09:57,410
So he says that yes, he can see it now.

1024
01:09:57,410 --> 01:10:03,997
He checked the file and all the uploaded source files are now present in the folder that we require them to be which is perfect.

1025
01:10:03,997 --> 01:10:08,544
So now let's go to the dashboard and see if the dashboard is actually rendering on the Python ser.

1026
01:10:08,544 --> 01:10:11,750
So to do that we're going to use local host to do that we're going to use local host col8892.

1027
01:10:11,760 --> 01:10:18,570
The 8892 is the part of the server and the local host is basically the local area on our server that we're going to use to access the dashboard.

1028
01:10:18,570 --> 01:10:20,692
And then when I open this hopefully beautiful.

1029
01:10:20,692 --> 01:10:23,737
So you can see that now we have the dashboard loaded just as we had in the template.

1030
01:10:23,737 --> 01:10:26,635
So let me open the template for us to do a one is to one copy.

1031
01:10:26,635 --> 01:10:30,216
This what we had in the template and this is what is being saved on our dashboard.

1032
01:10:30,216 --> 01:10:33,766
So all the pages are identical to what we had in the template.

1033
01:10:33,766 --> 01:10:35,240
So kite is doing a pretty good job.

1034
01:10:35,240 --> 01:10:39,590
Now, in the next stage, we're going to, this is one of the things that I always recommend when you're building stuffs with the agents.

1035
01:10:39,600 --> 01:10:43,456
Let the agents always create a copy of the dashboard before they make any changes.

1036
01:10:43,456 --> 01:10:50,070
I always say this in every video that I worked on the dashboard for several days and my agent just made a mistake and basically I lost everything.

1037
01:10:50,080 --> 01:10:57,345
And that is why it's very important that you tell your agent that, hey, before you make any changes to the dashboard, please create a copy of the dashboard and save it somewhere.

1038
01:10:57,345 --> 01:11:00,877
And also on the dashboard, we have this section here that is the version number.

1039
01:11:00,877 --> 01:11:04,700
And I want him to update a version number anytime he makes a change to the dashboard.

1040
01:11:04,700 --> 01:11:09,510
So I'm going to copy this prompt and I'm going to send it to Kite to implement this and Kite is done with that as well.

1041
01:11:09,520 --> 01:11:12,012
So when we come to the dashboard and we reload the template.

1042
01:11:12,012 --> 01:11:14,143
So we should now see that he has changed.

1043
01:11:14,143 --> 01:11:15,522
So we used to have editorial.

1044
01:11:15,522 --> 01:11:18,417
Let me open the template for you to see what this looked like before.

1045
01:11:18,417 --> 01:11:29,350
So in the template in this bottom section here we used to have version 0.1 editorial and you can see that now this is updated in our version to version 0.1 which means that kite is going to keep the version update always

1046
01:11:29,360 --> 01:11:30,543
updated as we move on.

1047
01:11:30,543 --> 01:11:32,403
So currently we're going to start with the build.

1048
01:11:32,403 --> 01:11:41,644
So all the parameters that you see here in the content tab are basically hardcoded from the template that I built and also the all the stuffs that we have in the agents tab, the heat map, everything is hardcoded.

1049
01:11:41,644 --> 01:11:53,270
So we're going to tell Kite, we're going to give Kite a prompt to basically update the dashboard metrics that we have here and also the agents tab so that we have real data, real data from our hemis setup that we have but

1050
01:11:53,280 --> 01:11:55,714
not from the hardcoded stuff that we have in the template.

1051
01:11:55,714 --> 01:12:02,374
And I'm telling him that hey when you are done confirm that both tabs show the real data and the heat map matches the run table.

1052
01:12:02,374 --> 01:12:07,379
Now for the heat map all the information is going to be pulled from the agents login database that we built.

1053
01:12:07,379 --> 01:12:14,540
If you remember we built something where every agent is going to log the activity whenever they do something whenever they perform any action.

1054
01:12:14,540 --> 01:12:14,970
All right.

1055
01:12:14,970 --> 01:12:16,327
So Kite is done with that as well.

1056
01:12:16,327 --> 01:12:17,499
Let's look at what Kite built.

1057
01:12:17,499 --> 01:12:18,850
Let's reload the dashboard.

1058
01:12:18,850 --> 01:12:23,289
So here you can see that he's now pulling the real metrics from our data agent database that we built.

1059
01:12:23,289 --> 01:12:28,470
So you can see that now kite is trying to pull the real metrics from the agents login database.

1060
01:12:28,480 --> 01:12:39,544
So you can see that currently in the agent workload because none of the agents have done something today that is why everything stays at zero for atlas vera and origin and kite is the only one that'll be working with today.

1061
01:12:39,544 --> 01:12:41,083
So kite is basically at 100%.

1062
01:12:41,083 --> 01:12:47,967
And the same thing when you come to the agent database you can see that everything is almost zero for all the agents because they haven't done anything today.

1063
01:12:47,967 --> 01:12:50,179
So I'm recording today on the second day.

1064
01:12:50,179 --> 01:12:53,725
So basically I would expect that there would be some metrics from the previous day.

1065
01:12:53,725 --> 01:13:01,619
So I'm going to tell Kai that hey it appears that the metrics that are being pulled are only being pulled from today but there should be some activity from the agents the previous day.

1066
01:13:01,619 --> 01:13:08,636
So he should make sure that the dashboard doesn't only reflect today but basically reflects all the data that we have in the agent login database.

1067
01:13:08,636 --> 01:13:11,016
So I'm telling Kite hey this looks awesome.

1068
01:13:11,016 --> 01:13:11,430
Thanks.

1069
01:13:11,440 --> 01:13:15,154
However it appears that the agent metrics being displayed are only from today.

1070
01:13:15,154 --> 01:13:20,100
I do not see any data for instance from yesterday. even though the database should contain this.

1071
01:13:20,100 --> 01:13:26,185
So he should basically investigate and see what is wrong and make sure that we are serving all the data that is currently in our agent login database.

1072
01:13:26,185 --> 01:13:26,709
All right.

1073
01:13:26,719 --> 01:13:27,733
So Kai says he's done.

1074
01:13:27,733 --> 01:13:29,011
It appears there was an issue.

1075
01:13:29,011 --> 01:13:36,737
So he says that the real problem was there was this issue with the test server Python server that was basically deleting stuff from the production database.

1076
01:13:36,737 --> 01:13:38,315
So he basically fixed this as well.

1077
01:13:38,315 --> 01:13:39,898
So he says that the fixes are made.

1078
01:13:39,898 --> 01:13:46,688
The test no longer touch the production database and he's basically put in some metrics some implementations to make sure that this does not happen.

1079
01:13:46,688 --> 01:13:51,724
But what I would like Kai to do here before we even proceed further, I want to be sure that this problem is fixed.

1080
01:13:51,724 --> 01:14:02,641
I'm going to tell Kai that hey perform a quick end to end smoke test to all the agent trigger a few test activities and verify that the resulting data are saved in the database and also correctly reflected on the dashboard.

1081
01:14:02,641 --> 01:14:09,602
If there is anything that is not there, he should fix it as well because the agent login database is going to be an integral part of what we are going to be building.

1082
01:14:09,602 --> 01:14:17,588
And that is why I want to be thousand% sure that the agents are logging and also that all the things that they do also reflect here on the dashboard.

1083
01:14:17,588 --> 01:14:21,326
And by the way, all these deep prompts that I'm adding, I'm going to make these available to you.

1084
01:14:21,326 --> 01:14:26,586
So that should you have the same situation, you can just copy paste the prompt and give it to the agents or Kite to fix this for you.

1085
01:14:26,586 --> 01:14:27,049
All right.

1086
01:14:27,049 --> 01:14:28,963
So Kite says he's done with the smoke test.

1087
01:14:28,963 --> 01:14:30,576
He repeated this across all the agents.

1088
01:14:30,576 --> 01:14:33,110
And currently you can see that all the agents completed.

1089
01:14:33,120 --> 01:14:36,942
When we come back to the dashboard, you can see that now we don't have the 00 that we had.

1090
01:14:36,942 --> 01:14:41,590
We basically have metrics from all the agents that is being pulled correctly from the agent login database.

1091
01:14:41,600 --> 01:14:43,317
And the same thing also applies to the heat map.

1092
01:14:43,317 --> 01:14:47,450
And when we come to the dashboard, we also see that the agents total runs are also correct.

1093
01:14:47,450 --> 01:14:52,226
There is one more thing that is not correct here which has to do with the agent workload distribution.

1094
01:14:52,226 --> 01:14:57,521
This would always have to sum up to 100 so that we can always see which agent has the most workload.

1095
01:14:57,521 --> 01:15:01,172
I'm also going to tell Kite to fix this and after that we can continue with the build.

1096
01:15:01,172 --> 01:15:06,278
And for that I'm telling Kite, hey on the dashboard homepage, the agent workload share distribution does not make sense.

1097
01:15:06,278 --> 01:15:11,189
So basically I'm telling him that everything should add up to 100% but currently everything adds up to 350.

1098
01:15:11,199 --> 01:15:15,069
The idea is that whenever I look at this I'm supposed to see which agent has been more active.

1099
01:15:15,069 --> 01:15:17,521
So he should basically correct this for us as well.

1100
01:15:17,521 --> 01:15:18,965
And Kite has done with that as well.

1101
01:15:18,965 --> 01:15:22,883
So basically now when I look on the dashboard you can see that the distribution now makes sense.

1102
01:15:22,883 --> 01:15:30,057
It all adds up to 100% and I can see clearly that Kite is the most active agent because he is the one building the dashboard anyway.

1103
01:15:30,057 --> 01:15:39,344
So now the agent login database is working correctly. all the metrics that have been put on the agent tab are also making sense so we can start with the build of the other components of the dashboard.

1104
01:15:39,344 --> 01:15:47,597
I'm going to explain the concept of what all the prompts are going to do and I'm going to put in all these prompts in one go so that you don't have to sit and watch me put in one after the other.

1105
01:15:47,597 --> 01:15:51,930
Now in the next prompt we're going to build an exporter and let me explain why we need this.

1106
01:15:51,930 --> 01:15:59,303
So initially, previously whenever you wanted to build a carousel image like a slide or something like that, you always had to design everything in a photo editor, right?

1107
01:15:59,303 --> 01:16:03,001
And then save it, export it as a picture and then you had your carousel image.

1108
01:16:03,001 --> 01:16:06,341
But the trick what we're going to be using here is we're going to render every slide.

1109
01:16:06,341 --> 01:16:08,564
We're going to build every slide as an HTML.

1110
01:16:08,564 --> 01:16:13,495
Now, if you build a slide as an image, you pay for every image that you generate.

1111
01:16:13,495 --> 01:16:21,189
So if you want to change any text in the image, then it means that you always have to pay for API calls, which makes it not fun anymore to work on slides.

1112
01:16:21,199 --> 01:16:22,916
So, we're going to build this in a smarter way.

1113
01:16:22,916 --> 01:16:26,929
What we're going to do is we're going to build every carousel as an HTML file.

1114
01:16:26,929 --> 01:16:32,540
Now, because it's going to be an HTML file, it will be very easy for us to edit any text that we want to edit.

1115
01:16:32,540 --> 01:16:37,549
And let me just go into my setup just to explain for you guys to get a concept of how we're going to build a slice.

1116
01:16:37,549 --> 01:16:39,370
So, let me take this one here for instance.

1117
01:16:39,370 --> 01:16:43,840
Everything that you are seeing here looks like an image, but it's basically not an image.

1118
01:16:43,840 --> 01:16:47,002
It's an HTML document that is rendering the file like this.

1119
01:16:47,002 --> 01:16:52,677
So whenever I want to export this as an image then I'm going to deploy what is called a headless browser.

1120
01:16:52,677 --> 01:16:55,466
So a headless browser doesn't need a desktop to run.

1121
01:16:55,466 --> 01:17:02,121
It's basically going to render this file here which is basically an HTML file and then take a snapshot of what it sees.

1122
01:17:02,121 --> 01:17:13,765
So eventually all the things here that we are seeing which is rendered as a code would be then exported as a JPEG and then with that you can upload this to Instagram, Tik Tok or whatever wherever you want to build this on.

1123
01:17:13,765 --> 01:17:20,572
Now the reason why we do it in this smart way is that originally whenever you want to build any carousel slide you have to use an image generator.

1124
01:17:20,572 --> 01:17:25,172
Maybe you can use nano banana or all the AI models that are out there to generate images.

1125
01:17:25,172 --> 01:17:30,547
But when you even want to change one text then you have to tell the AI model again hey I want to change the text.

1126
01:17:30,547 --> 01:17:38,267
Maybe for instance I want to change this from most people to most users and I have to tell my a model again hey I want to change the text from most people to most users.

1127
01:17:38,267 --> 01:17:42,628
And then you pay for every edit that you do which is probably not the smartest way.

1128
01:17:42,628 --> 01:17:47,264
So how I build this and what most users are using is that you build the whole slide as an HTML file.

1129
01:17:47,264 --> 01:17:55,270
And by so doing when you can change everything that you want to do in the file without having to regenerate the prompts or regenerate some API keys.

1130
01:17:55,280 --> 01:17:57,858
So here for instance this is what our dashboard is also going to do.

1131
01:17:57,858 --> 01:18:03,880
When I click on fine-tune and I pick this element I can just change the text here from people to most builders, right?

1132
01:18:03,880 --> 01:18:10,390
And you see that it does I can save and rerender and then I have my new slide without me having to do any API call.

1133
01:18:10,400 --> 01:18:11,150
the same thing.

1134
01:18:11,150 --> 01:18:12,545
I can change all the contents.

1135
01:18:12,545 --> 01:18:14,634
This is why I really like what we're building here.

1136
01:18:14,634 --> 01:18:15,641
I can change the layout.

1137
01:18:15,641 --> 01:18:22,398
I can move every content here, change the size, put it in every format that I want to do it without me having to pay for any API calls.

1138
01:18:22,398 --> 01:18:35,270
So, what we build, we're building every carousel slide as an HTML file and then when we are ready, we deploy a headless browser that looks at that HTML file we have created and creates a snapshot of as a picture that we can then upload to more

1139
01:18:35,280 --> 01:18:36,614
any social media platform.

1140
01:18:36,614 --> 01:18:44,232
So we avoiding the aspect of complicating the whole carousel image design where you have to make an API call for every edit and pay for every edit.

1141
01:18:44,232 --> 01:18:48,147
We are rendering everything as an HTML file that will be completely edited.

1142
01:18:48,147 --> 01:18:50,525
Quite crazy the things that you can do with standard HTML.

1143
01:18:50,525 --> 01:18:54,675
Like you see here all these templates that you are seeing here, none of it is a picture.

1144
01:18:54,675 --> 01:19:01,559
Everything is built with standls that someone might not even believe you that this built with HTML.

1145
01:19:01,559 --> 01:19:13,510
So basically with this prompt here, what the prompt is doing is that we're going to build this setup of this headless browser that would render whatever that we build from an HTML file into an image that can be uploaded on any social media platform

1146
01:19:13,520 --> 01:19:14,081
that we have.

1147
01:19:14,081 --> 01:19:16,562
So we are not building images straight ahead.

1148
01:19:16,562 --> 01:19:19,479
We build an HTML file which contains the structure that we want.

1149
01:19:19,479 --> 01:19:22,960
Then once we are satisfied with it, we export it into an image.

1150
01:19:22,960 --> 01:19:26,123
And for this we are using a headless browser that is called Chromium.

1151
01:19:26,123 --> 01:19:29,507
And by default, most of the Hemis setups come with Chromium.

1152
01:19:29,507 --> 01:19:31,754
So we might not even need to install this on our own.

1153
01:19:31,754 --> 01:19:35,830
We can just leverage what Hemis already has and then use it to build what we want to build.

1154
01:19:35,840 --> 01:19:40,310
If you remember when we were building the dashboard, there was a aspect that I told you that the agents were basically.

1155
01:19:40,320 --> 01:19:46,315
So here for instance, you can see that Kite was rendering a browser where he was going to the dashboard and making sure that everything was working.

1156
01:19:46,315 --> 01:19:47,830
That is the same concept I'm going to use.

1157
01:19:47,840 --> 01:19:51,779
We're going to let the designer in this case as well is going to be Kite use the same headless browser.

1158
01:19:51,779 --> 01:19:56,893
But right now he's not going to use it to check the dashboard, but he's going to use it lots of what the HTML file contains.

1159
01:19:56,893 --> 01:20:01,472
It makes it so easy to be able to build slides without having to pay for API calls every time.

1160
01:20:01,472 --> 01:20:03,292
And Kite is done with that as well.

1161
01:20:03,292 --> 01:20:10,793
He did a smoke test and he verified that the images were indeed being rendered from the browser into for instance here a PNG file.

1162
01:20:10,793 --> 01:20:14,557
Now in the next stage we're going to build all the things that are going to run from the back end.

1163
01:20:14,557 --> 01:20:23,414
So I'm going to explain all these backend prompts and then I'm going to give these to kites but I'm going to explain all these prompts to the point where we get to a prompt that would trigger a front-end design.

1164
01:20:23,414 --> 01:20:29,264
So when you are using the prompt everything that I say backend back end I try to add this so that you can see what to expect.

1165
01:20:29,264 --> 01:20:32,608
If it's a backend prompt then it wouldn't show anything on the dashboard.

1166
01:20:32,608 --> 01:20:36,731
It's basically building the foundation on which we would build to show something on the dashboard.

1167
01:20:36,731 --> 01:20:41,853
When we get to the aspect here where I write design then it means that what you going to do is going to show a design.

1168
01:20:41,853 --> 01:20:49,277
But if I get to an aspect where I realize that it's quite useful to explain I'm going to explain this to you guys as well so that you can also understand what these prompts look like.

1169
01:20:49,277 --> 01:20:56,052
And in every case I always include sort of a description to basically explain what the prompt is going to do and what you should expect.

1170
01:20:56,052 --> 01:20:58,094
So now we are done with the exporter prompt.

1171
01:20:58,094 --> 01:21:01,108
The next prompt is going to be the template packs auto fit.

1172
01:21:01,108 --> 01:21:06,070
Now whenever we are generating an idea, let me use my setup to give you a concept of what I'm doing.

1173
01:21:06,080 --> 01:21:07,872
So when I click on generate ideas, let's see.

1174
01:21:07,872 --> 01:21:10,599
I already have some ideas that are already generated here.

1175
01:21:10,599 --> 01:21:14,670
So let's look at for instance building a one person AI operation team.

1176
01:21:14,670 --> 01:21:20,609
Now when I like this idea and I click on promote basically I can decide on the number of slides that I want to generate.

1177
01:21:20,609 --> 01:21:23,893
So let's say for instance I want to generate six slides and I say write slides.

1178
01:21:23,893 --> 01:21:32,762
What is going to happen is that Vera who is going to be our right is going to write the slides for the carousel or the content or the text for the carousel that we want to generate.

1179
01:21:32,762 --> 01:21:40,006
Now like I said all these things that Vera is going to give to us is just going to be raw text but we have to be able to insert these text into the template.

1180
01:21:40,006 --> 01:21:48,304
This prompt that we're going to build here is going to build that part where it's going to take the content that has been generated by Vera and insert it into the HTML template that we have.

1181
01:21:48,304 --> 01:21:52,098
So all the templates that you see here like I said these are basically HTML templates.

1182
01:21:52,098 --> 01:21:57,405
So for instance when I look at this example here you can see that some of it have longer word characters than some.

1183
01:21:57,405 --> 01:21:59,580
So this one for instance has longer characters.

1184
01:21:59,580 --> 01:22:01,536
This has a different layout and stuff like that.

1185
01:22:01,536 --> 01:22:10,117
So then what is going to happen is that the back end that we're going to build is going to look at a template that you select and then adapt the text that Vera generated here to fit that template.

1186
01:22:10,117 --> 01:22:12,324
And this is what I call the auto fit feature.

1187
01:22:12,324 --> 01:22:18,381
And for this to work, we have to build a render engine that is going to look at the content that Vera generated look at a destination template.

1188
01:22:18,381 --> 01:22:21,170
So here for instance, if I say that, hey, I like this content.

1189
01:22:21,170 --> 01:22:25,644
When I come to approve and pick templates, then it ask me which of the templates I want to use.

1190
01:22:25,644 --> 01:22:35,750
So whenever I select the template that I want to use, then the back end that we're going to build here is going to look at the template that we selected, look at the number of words and characters that are in there and then adapt the text that

1191
01:22:35,760 --> 01:22:37,892
Vera generated to fit that template.

1192
01:22:37,892 --> 01:22:49,189
Now imagine that if the words that Vera generated are way longer than what the template can fit, then the carousel just becomes ugly and that is why we build this render take care of that for us and after that we're going to build a

1193
01:22:49,199 --> 01:22:50,612
pipeline to talk to the crew.

1194
01:22:50,612 --> 01:23:00,790
So currently whenever I'm talking to the crew right I'm chatting with Kite able to chat with Vera I'm not able to chat to our publisher but we want to be able to chat with them from the dashboard and by chat what I mean is that when I come

1195
01:23:00,800 --> 01:23:08,195
to the idea tab and I click on generate idea this sends a message to Atlas who is our research look for ideas of what we can build.

1196
01:23:08,195 --> 01:23:15,447
I'm talking to Atlas through a code where I send a trigger to Atlas that hey generate some ideas and the same thing applies for all the other agents.

1197
01:23:15,447 --> 01:23:19,502
Whenever we want to publish something we're not going to come to Telegram and tell them to publish.

1198
01:23:19,502 --> 01:23:23,729
We want to push a button the dashboard that is going to trigger the agent to publish the content.

1199
01:23:23,729 --> 01:23:26,768
And these are the things that prompt 17 is going to do.

1200
01:23:26,768 --> 01:23:33,990
It's going to build an interface where whenever we click a button on the dashboard, it sends and triggers an agent to do that particular task for us.

1201
01:23:34,000 --> 01:23:35,750
And then we're going to have prompt 18.

1202
01:23:35,760 --> 01:23:40,583
Prompt 18 is going to be exclusively for Atlas who is our ideas guy and our researcher.

1203
01:23:40,583 --> 01:23:44,755
And I'm basically just telling Atlas how I want the carousels to be designed.

1204
01:23:44,755 --> 01:23:46,628
So here, these are just examples of what I put in.

1205
01:23:46,628 --> 01:23:56,263
I'm telling Atlas that hey whenever you're writing the carousel slides I want to have this written in plain simple language short words short sentences no hype no buzz words and stuff like that.

1206
01:23:56,263 --> 01:24:06,041
So this prompt is basically giving Atlas an orientation of how we want the content and also Vera who is our content writer how we want the content of the slides to look like.

1207
01:24:06,041 --> 01:24:09,861
And here we're also giving them an orientation on how he's generating an idea.

1208
01:24:09,861 --> 01:24:15,767
He should generate four ideas and basically an orientation on how we want the whole carousel slides to look like.

1209
01:24:15,767 --> 01:24:21,258
And then we're going to have this last prompt here which is going to be basically for our publisher whenever we want to publish.

1210
01:24:21,258 --> 01:24:31,910
So for instance when we come to the dashboard and I come to my studio tab for instance if I want to publish something here I'm just going to click on post and then this can be published directly to Instagram to Tik Tok or wherever you

1211
01:24:31,920 --> 01:24:33,008
want to apply this to.

1212
01:24:33,008 --> 01:24:36,732
But for that as well we need to build a backend and that is what this prompt is going to do.

1213
01:24:36,732 --> 01:24:44,834
This prompt is going to build a backend so that whenever we trigger an upload then the upload can be pushed directly to whatever social media platform that we want to push this in.

1214
01:24:44,834 --> 01:24:46,433
So I'm going to render all these prompts.

1215
01:24:46,433 --> 01:24:51,212
The first prompt being the one that is going to take the text that has been generated and adapt it to the template.

1216
01:24:51,212 --> 01:24:57,884
The next prompt which is going to be taking care of that we can use all the buttons on our dashboard to trigger an action to the agent.

1217
01:24:57,884 --> 01:25:02,027
The prompt 18 which is going to take care of how we want our ideas to be generated.

1218
01:25:02,027 --> 01:25:08,276
The number of ideas that we want to be generated, how we want the cast, how we want the carousel slides, the content to look like.

1219
01:25:08,276 --> 01:25:15,102
And we would also have the last prompt that is going to take care of publishing to the server or the social media platform that we want to publish this to.

1220
01:25:15,102 --> 01:25:16,732
So I'm going to run all these prompts.

1221
01:25:16,732 --> 01:25:21,750
If I get any backs, I'm going to pause and I'm going to explain this to you so that you guys can also follow what we would do there.

1222
01:25:21,760 --> 01:25:22,057
Right.

1223
01:25:22,057 --> 01:25:24,633
So Kite is done with processing all those prompts as well.

1224
01:25:24,633 --> 01:25:26,746
Like I said, I didn't have to respond to anything.

1225
01:25:26,746 --> 01:25:30,255
I just copy pasted all the prompts to Kite and he processed all the back end.

1226
01:25:30,255 --> 01:25:36,021
Now in the next stage, we're going to grab some API keys and I'm going to explain every API key and why we need that.

1227
01:25:36,021 --> 01:25:39,024
The first API key that we're going to search is for publicity.

1228
01:25:39,024 --> 01:25:44,293
So perplexity is one of the AI models that you can use that is very very strong in research.

1229
01:25:44,293 --> 01:25:55,830
So I added this feature so that when you are writing a carousel and you want the agents to really use recent data then for instance you can use perplexity as a research model where Atlas is going to query perplexity to do the research

1230
01:25:55,840 --> 01:25:58,130
before the contents of the slides have been written.

1231
01:25:58,130 --> 01:26:00,194
Just to give you an example of where we would need this.

1232
01:26:00,194 --> 01:26:06,281
For instance, when I come to my dashboard and I click on generate ideas, you see that I have a couple of ideas that have been generated for me.

1233
01:26:06,281 --> 01:26:09,533
So for instance, let's go for the builder AI automation map.

1234
01:26:09,533 --> 01:26:16,920
Now when I want to promote this article or when I want to promote this idea into slides, I do have this option where I take research with publicity.

1235
01:26:16,920 --> 01:26:23,768
If you take research with publicity, then the agent will query publicity as a research tool to gather this information on this new idea.

1236
01:26:23,768 --> 01:26:31,481
If you do not take this article, then the agent will just do a standard web search to get ideas for this content or probably what the agent is also already trained on.

1237
01:26:31,481 --> 01:26:42,896
But if you want really research based content, then you can toggle this research perplexity and then the agents will basically do a researchbased content for the article or for the idea that you want to create.

1238
01:26:42,896 --> 01:26:44,950
So that's going to be the first key that we're going to get.

1239
01:26:44,960 --> 01:26:48,229
Now to get this, you can come to Now to get this, you can come to console.plexity.ai.

1240
01:26:48,239 --> 01:26:51,073
I'm also going to provide a link to this in the description section.

1241
01:26:51,073 --> 01:26:53,865
Then when you're here, just create an account or login if you already have one.

1242
01:26:53,865 --> 01:26:56,481
And then when you are logged in into the console, you do not have to do much here.

1243
01:26:56,481 --> 01:26:59,274
You can just come to the left section here and click on API keys.

1244
01:26:59,274 --> 01:27:03,843
And then under API keys, just come to the top right section here, click on generate API key.

1245
01:27:03,843 --> 01:27:05,830
And you can put in web key you want to go with.

1246
01:27:05,840 --> 01:27:10,593
For this tutorial, I'm going to call this comp mechanic tutorial test and then just click on create a key.

1247
01:27:10,593 --> 01:27:13,451
And after that, you see that an API key would be generated for you.

1248
01:27:13,451 --> 01:27:17,628
So just copy this API key, save it in the safe space, and we're going to use this API key.

1249
01:27:17,628 --> 01:27:20,271
The next stage we're going to get an API key from imageB.

1250
01:27:20,271 --> 01:27:22,427
But let me explain to you why we need this.

1251
01:27:22,427 --> 01:27:29,345
So what we want to do with our setup is that we have our cadence and we want to push images from here to Instagram for an example.

1252
01:27:29,345 --> 01:27:29,750
Right?

1253
01:27:29,760 --> 01:27:35,486
The issue is that if we want to push our slides directly from cadence to we need to get Instagram API key.

1254
01:27:35,486 --> 01:27:38,837
If you want to do this for Tik Tok, you need to build your own Tik Tok flow.

1255
01:27:38,837 --> 01:27:43,873
If you want to do this for Facebook, you have to create your own keys, your own flow and stuff like that.

1256
01:27:43,873 --> 01:27:45,539
And this is very very complex, right?

1257
01:27:45,539 --> 01:27:50,731
We're going to spend more time building those connections than basically focusing on the dashboard that we want to create.

1258
01:27:50,731 --> 01:27:55,338
So what we're going to do is that there are some platforms like buffer or metrical.

1259
01:27:55,338 --> 01:28:01,720
And what these platforms do is they have access to all the social media platforms and they have worked on all those backends for you.

1260
01:28:01,720 --> 01:28:10,790
So all we would have to do is to push our slides through a platform like metricle or buffer and they would push the slides to the social media platforms that we want to go to.

1261
01:28:10,800 --> 01:28:16,810
There is one c however that at least from my testing buffer doesn't allow us to push our images directly to that platform.

1262
01:28:16,810 --> 01:28:26,315
So what we're going to need is an intermediate storage where the images that we generate will be pushed to and then from there the images would go to buffer and for that we're going to need a platform called image BB.

1263
01:28:26,315 --> 01:28:27,366
Now this BB is free.

1264
01:28:27,366 --> 01:28:37,829
So what is going to happen is that whenever you push an image or whenever you push a story or a carousel from our cadence this would be first be pushed to BB and then from image they would go to Instagram.

1265
01:28:37,829 --> 01:28:41,358
Now, it looks complicated from the setup that I'm explaining to you, but we're going to wire this in.

1266
01:28:41,358 --> 01:28:48,286
And when you click on post, like for instance, when I come to my dashboard here and I click on post and I choose, for instance, I want to post to Instagram.

1267
01:28:48,286 --> 01:28:49,413
This is going to happen.

1268
01:28:49,413 --> 01:28:51,450
All this transfer is going to happen automatically.

1269
01:28:51,450 --> 01:28:54,340
So, you do not have to go here, push from here to here, push from here to here.

1270
01:28:54,340 --> 01:28:56,454
We're going to wire in all those connections.

1271
01:28:56,454 --> 01:28:58,790
And to do that, we're going to come to image.b.

1272
01:28:58,800 --> 01:28:59,611
It's completely free.

1273
01:28:59,611 --> 01:29:01,153
So, you can just create an free account.

1274
01:29:01,153 --> 01:29:04,897
And then once you create the account, come to the left section here and click on API.

1275
01:29:04,897 --> 01:29:06,959
And this brings you to the API page.

1276
01:29:06,959 --> 01:29:09,423
When you are here, just click on add API key.

1277
01:29:09,423 --> 01:29:14,849
Create an API key, store the API key, and then we can proceed to the next API key that we will need.

1278
01:29:14,849 --> 01:29:21,110
Now, the next API key that we will need is the platform that is going to push our slides to the social media platform that we want to go to.

1279
01:29:21,120 --> 01:29:23,281
Now, here there are several platforms that are out there.

1280
01:29:23,281 --> 01:29:25,913
As an example, we have Buffer who can do this for us.

1281
01:29:25,913 --> 01:29:28,411
And we also have Metro who can also do this for us.

1282
01:29:28,411 --> 01:29:29,466
Both of them work.

1283
01:29:29,466 --> 01:29:34,117
I know that a lot of people use metrical because they have a very very powerful dashboard that they use.

1284
01:29:34,117 --> 01:29:46,278
But from my testing, I realized that for you to be able to push our slides from Cadence OS to Instagram or Tik Tok, if you want to use metrical, then we have to go for a higher payment plan.

1285
01:29:46,278 --> 01:29:52,772
It's only the advanced option where you're going to pay 43 in my case a month that would come with the metrical API.

1286
01:29:52,772 --> 01:30:02,912
So this was quite expensive for me because in my case if you really need metric code to work with kers then you would have to go with advance where you pay dollars a month a month to be able to get access to their API.

1287
01:30:02,912 --> 01:30:06,841
Remember an AP is an interface that would allow us to be able to communicate with the platform.

1288
01:30:06,841 --> 01:30:10,126
And in my case I had just two social media accounts that I was using to test.

1289
01:30:10,126 --> 01:30:13,751
So I didn't want to pay €43 a month just for two social media platforms.

1290
01:30:13,751 --> 01:30:23,521
But advantage with metricle is that you can go for instance with their starter plan where you would pay $16 a month and then you can add so many social media platforms without having to increase your pricing.

1291
01:30:23,521 --> 01:30:32,936
So for instance if you have four social media platforms Tik Tok, Facebook, LinkedIn etc. you would still be paying $16 a month which I find pretty cool and I'm going to show you when I would go with metric.

1292
01:30:32,936 --> 01:30:37,193
We have another platform that is called buffer and that is what I used in what we are building with hidden.

1293
01:30:37,193 --> 01:30:42,665
Advantage with buffer is that they would allow us to be able to use their API assets even with a standard plan.

1294
01:30:42,665 --> 01:30:46,266
And I think in my case I went with the five plan which is essential right?

1295
01:30:46,266 --> 01:30:54,445
So even with this you have access to three API keys and you would be able to use this but with metrical you can only get access to the API key if you have the dollar plan.

1296
01:30:54,445 --> 01:30:59,187
But the caveat with Buffer is that every social media platform that you add you pay an extra $5.

1297
01:30:59,187 --> 01:31:02,669
So if you have Tik Tok, Facebook, Instagram it becomes $15.

1298
01:31:02,669 --> 01:31:06,608
If you add LinkedIn it becomes $20 and so it can get a bit expensive.

1299
01:31:06,608 --> 01:31:16,955
So in that case, if you don't really care about pushing directly from cadence to the social media platform, I also did add an option on the dashboard where you can basically download all the slides.

1300
01:31:16,955 --> 01:31:18,312
Let me do an example here for you.

1301
01:31:18,312 --> 01:31:21,747
When I click on slides, you can see that the slides are downloaded here.

1302
01:31:21,747 --> 01:31:25,415
When I click on this, you see that I have all the slides downloaded here.

1303
01:31:25,415 --> 01:31:28,363
Let me go to thumbnails and you can see that I have all the images.

1304
01:31:28,363 --> 01:31:39,270
And what I also added for you is that you can click on caption where you're going to see the caption that is going to be required for you to post. and then you can post this yourself and in that case then probably metrical would be a best option because

1305
01:31:39,280 --> 01:31:49,990
they do have for instance for the $16 plan you would be able to add more social media you can see here up to 10 brands which makes it very cool but if you really want to leverage the push from cadence directly to your social

1306
01:31:50,000 --> 01:31:58,870
media platform then buffer might be a cheaper option I'm just trying to explain how you can decide on which are the platforms that you want to go for so for this example we're going to be going with Buffer because like I said I had

1307
01:31:58,880 --> 01:32:07,729
only two social media accounts and I didn't want to pay €43 here for my testing so you can just create an account with whatever platform that you want to go for and then just loging into your account.

1308
01:32:07,729 --> 01:32:18,066
Once you're logged in into your buffer dashboard, just come to the bottom section here where you have my organization and click on API and then here click on new key and then you can create an API key.

1309
01:32:18,066 --> 01:32:25,525
Now with these three API keys from perplexity, imageb and buffer, we would be able to wire this into cadence and continue with the build.

1310
01:32:25,525 --> 01:32:29,253
Now with these API keys that we have gathered, we have to store these API keys to our server.

1311
01:32:29,253 --> 01:32:31,430
And to do that, we're going to come back to PowerShell.

1312
01:32:31,440 --> 01:32:35,856
I'm going to log in back into the terminal. come back into the and I'm going to paste in this command.

1313
01:32:35,856 --> 01:32:47,669
Now this command is going to ask us for all the API keys and these are going to be secretly stored into the you can in principle just give kite directly into the API keys but this is not a recommended approach because if gets

1314
01:32:47,679 --> 01:32:56,654
compromised then someone has access to your API keys and that is why whenever I'm adding API keys or secrets I prefer to do it from the rather than directly giving it to kite or telegram.

1315
01:32:56,654 --> 01:33:00,201
So just press enter and then it's going to ask you for your buffer access token.

1316
01:33:00,201 --> 01:33:02,286
So here I'm going to paste in my buffer key.

1317
01:33:02,286 --> 01:33:03,009
Paste this in.

1318
01:33:03,009 --> 01:33:04,452
And after that just press enter.

1319
01:33:04,452 --> 01:33:07,630
And then it's going to ask you if your image BB API key.

1320
01:33:07,630 --> 01:33:09,090
I'm going to copy this as well.

1321
01:33:09,090 --> 01:33:10,173
I'm going to paste this in.

1322
01:33:10,173 --> 01:33:10,792
Press enter.

1323
01:33:10,792 --> 01:33:13,547
And then the last one you're going to be asked for your perplexity.

1324
01:33:13,547 --> 01:33:13,777
Oops.

1325
01:33:13,777 --> 01:33:15,294
I realized that I made a mistake.

1326
01:33:15,294 --> 01:33:18,041
So the first one that I put in wasn't for buffer.

1327
01:33:18,041 --> 01:33:19,156
It was for perplexity.

1328
01:33:19,156 --> 01:33:21,443
So I'm going to cancel this and I'm going to run this again.

1329
01:33:21,443 --> 01:33:22,699
I hope it doesn't get messed up.

1330
01:33:22,699 --> 01:33:24,921
I'm going to tell Kite in the process that I made a mistake.

1331
01:33:24,921 --> 01:33:26,631
I'm going to recall the same command that I used.

1332
01:33:26,631 --> 01:33:29,358
I'm going to press enter and then I'm going to copy the right buffer key.

1333
01:33:29,358 --> 01:33:31,010
Then I'm going to copy the image PV.

1334
01:33:31,010 --> 01:33:33,023
Then I'm going to copy the Plexity API key.

1335
01:33:33,023 --> 01:33:34,278
I'm going to paste this in.

1336
01:33:34,278 --> 01:33:38,307
And then you can see that all the characters are saved and we get a notification that all done.

1337
01:33:38,307 --> 01:33:43,430
So what I'm going to do now is I'm going to come to Kite and I'm going to tell Kite that hey, we've stored these three API keys.

1338
01:33:43,440 --> 01:33:46,377
He should do a smoke test to make sure that all the keys are working.

1339
01:33:46,377 --> 01:33:48,149
So I'm going to copy this and I'm going to give to Kite.

1340
01:33:48,149 --> 01:33:56,219
But because I made a mistake and did it twice, I'm going to send him a I'm going to write I did make a mistake and added it twice so you can ignore this entry.

1341
01:33:56,219 --> 01:33:58,124
Then I'm going to tell him to do a smoke test.

1342
01:33:58,124 --> 01:34:02,642
I hope that the first mistake that I did, he would be able to just rectify it and see that all the keys are working.

1343
01:34:02,642 --> 01:34:12,337
Hey, if you're finding value in this content that I'm creating, hit the subscribe button, subscribe to my channel, and hit the like button for YouTube algorithm to keep pushing this video to other people that will be out there.

1344
01:34:12,337 --> 01:34:15,153
It doesn't cost you anything, but it really does support my channel's growth.

1345
01:34:15,153 --> 01:34:24,464
A lot of work goes into crafting all these tutorials, creating that, creating the prompt, and that is why I'm not even able to upload a video every week because I test everything about 20 times before I push it out there.

1346
01:34:24,464 --> 01:34:29,631
And that is why I have to upload videos on a bi-weekly schedule because a lot of work goes into crafting all these things.

1347
01:34:29,631 --> 01:34:30,705
And kite is done as well.

1348
01:34:30,705 --> 01:34:31,740
So he did a smoke test.

1349
01:34:31,740 --> 01:34:34,991
He verified that buffer works, imageb works, and perplexity works.

1350
01:34:34,991 --> 01:34:35,430
All right.

1351
01:34:35,440 --> 01:34:37,285
In the next stage, we're going to put in prompt 20.

1352
01:34:37,285 --> 01:34:45,269
Prompt 20 is basically going to give us a trigger where we can publish an idea, create an idea, render a content, render a carousel and stuff like that.

1353
01:34:45,269 --> 01:34:48,380
So just copy this prompt here and we're going to give this as well to Kite.

1354
01:34:48,380 --> 01:34:48,822
All right.

1355
01:34:48,822 --> 01:34:50,370
And Kite is done with that as well.

1356
01:34:50,370 --> 01:34:53,272
Now the next three prompts are basically going to be the design prompts.

1357
01:34:53,272 --> 01:34:57,454
This is going to wire the ideas tab, the promotes tab, and also the studio tab.

1358
01:34:57,454 --> 01:34:59,906
And after that, we're going to basically test the whole thing.

1359
01:34:59,906 --> 01:35:02,458
So now we have this idea tab that has nothing there.

1360
01:35:02,458 --> 01:35:04,407
We have the studio tab that has nothing there.

1361
01:35:04,407 --> 01:35:06,470
We have the publish tab that also has nothing there.

1362
01:35:06,480 --> 01:35:07,552
And also the templates tab.

1363
01:35:07,552 --> 01:35:10,803
So what we're going to do is we're going to give Kite these prompts to wire those up.

1364
01:35:10,803 --> 01:35:14,452
And after that, we can test some functions so that you guys can see what we are building.

1365
01:35:14,452 --> 01:35:18,460
So I'm going to give all these prompts to Kite sequentially and then we can go to see the test.

1366
01:35:18,460 --> 01:35:18,868
All right.

1367
01:35:18,868 --> 01:35:21,157
So Kite is done with processing all those prompts.

1368
01:35:21,157 --> 01:35:23,232
Now, I know we've been building for some time now.

1369
01:35:23,232 --> 01:35:26,849
Now, let's see a real demo of the end to end to make sure that everything is working.

1370
01:35:26,849 --> 01:35:31,834
So, I'm going to come back to the dashboard and I'm going to reload the dashboard and then let's go to the ideas tab.

1371
01:35:31,834 --> 01:35:37,350
Now, I see that Kite did a smoke test where he tested one agent tonight before you trusted.

1372
01:35:37,360 --> 01:35:40,160
So, he just did a smoke test to make sure that the ideas are working.

1373
01:35:40,160 --> 01:35:46,733
Now, let's click on generate ideas to see if the end to end flow with Atlas doing the research, giving us some ideas is going to work.

1374
01:35:46,733 --> 01:35:49,317
So, I see a notification that he's doing the research.

1375
01:35:49,317 --> 01:35:50,927
Let's wait till the results come out.

1376
01:35:50,927 --> 01:35:51,922
And this worked very well.

1377
01:35:51,922 --> 01:35:55,110
So you can see that we have four ideas that was generated by Atlas.

1378
01:35:55,120 --> 01:35:57,998
Browser agents should verify, not just click.

1379
01:35:57,998 --> 01:36:00,659
Your agent needs a sandbox before it needs more tokens.

1380
01:36:00,659 --> 01:36:03,189
Now let's say that we want to promote one of these ideas.

1381
01:36:03,199 --> 01:36:05,593
So let's go with stop giving agents your whole app.

1382
01:36:05,593 --> 01:36:06,870
And let's click on promote.

1383
01:36:06,880 --> 01:36:10,151
And then here, let's say we want to generate 10 carousel slides.

1384
01:36:10,151 --> 01:36:12,167
And I'm going to say research perlexity.

1385
01:36:12,167 --> 01:36:19,007
And then here perplexity is enabled because we want to research perplexity is enabled just to make sure that we test that the API key is working.

1386
01:36:19,007 --> 01:36:21,283
And I also added this option here steroid mode.

1387
01:36:21,283 --> 01:36:25,806
Now this is going to create more of like a power sort of words for the carousel slides.

1388
01:36:25,806 --> 01:36:27,470
So let's just enable those two as well.

1389
01:36:27,470 --> 01:36:29,384
And then let's go to write 10 slides.

1390
01:36:29,384 --> 01:36:30,611
And then this is working.

1391
01:36:30,611 --> 01:36:31,784
So Vera is triggered.

1392
01:36:31,784 --> 01:36:34,384
Vera is the agent that does the writing of the content.

1393
01:36:34,384 --> 01:36:38,284
So he's basically reading the idea and doing the research to make sure that everything is working.

1394
01:36:38,284 --> 01:36:42,419
Doing the research to make sure that she got us all the information that we need to write that content.

1395
01:36:42,419 --> 01:36:42,892
All right.

1396
01:36:42,892 --> 01:36:44,013
And Vera created the content.

1397
01:36:44,013 --> 01:36:46,999
So you can see here that we have all the 10 slides generated.

1398
01:36:46,999 --> 01:36:55,059
We have the cover text which says your agent is not dump your packet is bloated and then it basically writes all the content that would be on every slide that we have.

1399
01:36:55,059 --> 01:36:58,064
Now let's say we want to approve this and we want to promote this into a template.

1400
01:36:58,064 --> 01:37:01,245
So let's click on approve and then let's pick a template in the next stage.

1401
01:37:01,245 --> 01:37:03,896
Now here we're going to be generating an Instagram carousel.

1402
01:37:03,896 --> 01:37:05,810
So we need a 4 is to5 aspect ratio.

1403
01:37:05,810 --> 01:37:09,213
Let's say just for this example I'm going to go with this purple one that we have here.

1404
01:37:09,213 --> 01:37:12,040
I'm going to select that and I'm going to click fit copy to this.

1405
01:37:12,040 --> 01:37:24,129
Now what is going to happen is that Vera is going to check if the content the text that she generated fits the number of characters that are in that template because if the words are way more than what the template can fit then the whole design gets ugly.

1406
01:37:24,129 --> 01:37:34,709
So what Vera is going to do is Vera is going to read all the hardcoded text that are in the template and try to adapt and fit the content that she generated to that particular template and Vera basically readapted the content

1407
01:37:34,719 --> 01:37:37,048
that she generated to fit the template that we have.

1408
01:37:37,048 --> 01:37:42,723
So because the template that we chose has less words in the cover, she just rewrote the package into agent.

1409
01:37:42,723 --> 01:37:46,987
Okay, package fat and then basically wrote all the content that would be on the slide.

1410
01:37:46,987 --> 01:37:53,188
Now I'm going to click on render now to push this into the studio tab so that we would see how this would look on the template that we selected.

1411
01:37:53,188 --> 01:37:55,116
Now you see a notification open in studio.

1412
01:37:55,116 --> 01:37:59,990
Now we can click open in studio here and this would open the slide that we just generated in studio.

1413
01:38:00,000 --> 01:38:11,990
Now let's click on this and you can see that just as Barard wrote agent okay packet fat packet fat bad agent run starts with too much context whole ripple noise guesses and then when you click on this you can see all the text

1414
01:38:12,000 --> 01:38:22,950
that was generated so assuming maybe we don't want to go with this text here for the cover we want to just fine-tune you can click on fine-tune the slide here and this would basically load the slide here and when we click on this here just

1415
01:38:22,960 --> 01:38:34,629
for an example I can write agents not the problem packet fat and then you can also move the slides up and down however you want to have them right this is all possible in the fine tune tab so I'm going to close this I'm going to discard

1416
01:38:34,639 --> 01:38:46,149
the changes and then let's say we want to push this to Instagram and this is the part that makes me nervous and for that I created a dummy Instagram account called content vibe so that when we push directly from our this would come

1417
01:38:46,159 --> 01:38:55,990
hopefully it would go through buffer and then this would come to this Instagram account open the package again let me click on and then here by the way you can come here and you can always change the template whenever you want to pick a

1418
01:38:56,000 --> 01:39:01,759
different template you can pick whatever template that you want and then cadence would basically rewrite the content to fit that template.

1419
01:39:01,759 --> 01:39:02,731
Now, let me come here.

1420
01:39:02,731 --> 01:39:03,988
Let me click on post now.

1421
01:39:03,988 --> 01:39:07,503
And then here, because I've configured only Instagram, it's only going to show Instagram.

1422
01:39:07,503 --> 01:39:09,061
I'm going to click on Instagram only.

1423
01:39:09,061 --> 01:39:11,430
And it's going to warn me and I'm going to get notification.

1424
01:39:11,440 --> 01:39:12,870
Hey, are you sure you want to post this?

1425
01:39:12,880 --> 01:39:14,715
I'm going to say yes, post now.

1426
01:39:14,715 --> 01:39:16,629
And then this is going to be pushed to buffer.

1427
01:39:16,639 --> 01:39:22,248
And hopefully, if the end to end stream works, we should see the post coming directly to Instagram.

1428
01:39:22,248 --> 01:39:24,844
And we get notification that this has been pushed to buffer.

1429
01:39:24,844 --> 01:39:25,891
Let's click on okay.

1430
01:39:25,891 --> 01:39:28,618
And this gets put from the studio tab into the publish tab.

1431
01:39:28,618 --> 01:39:30,038
Once this is pushed to buffer.

1432
01:39:30,038 --> 01:39:32,134
Now let's go to Instagram and see if we'll see this post.

1433
01:39:32,134 --> 01:39:35,964
I'm going to come to my Instagram and hey you see this it posted directly to Instagram.

1434
01:39:35,964 --> 01:39:42,302
So you can see this exact post that we had and generated in our cadence which is the first post that I've tested with this account.

1435
01:39:42,302 --> 01:39:46,970
And then you can see that all the text came just as we rendered them on the cadence website.

1436
01:39:46,970 --> 01:39:52,521
And then here as well we have the text that was generated also by the AI for the description section.

1437
01:39:52,521 --> 01:39:53,811
So this is working very well.

1438
01:39:53,811 --> 01:39:58,772
Now when I come back to the studio tab and I go to the published I should see oh so this is not working.

1439
01:39:58,772 --> 01:40:02,552
So it renders that we have one all but I do not see the slide that was generated.

1440
01:40:02,552 --> 01:40:06,260
So I'm telling kite hey the publish tab is not displaying any published content.

1441
01:40:06,260 --> 01:40:11,377
I can see a count of one which indicates that the item exists but the page itself is completely empty.

1442
01:40:11,377 --> 01:40:16,021
So that kite should fix this for us and hopefully after that we should see the content popping up here.

1443
01:40:16,021 --> 01:40:17,462
Now two more things that we're going to do.

1444
01:40:17,462 --> 01:40:20,595
I'm going to be show you how that tab would work like on the configuration tab.

1445
01:40:20,595 --> 01:40:31,680
You would have the opportunity to be able to always edit your brand name, edit your handle, write a bit about what content you are creating so that the agents would always read this to find ideas and to generate your content for you.

1446
01:40:31,680 --> 01:40:35,167
And then you can also select the number of generation defaults that you want to have.

1447
01:40:35,167 --> 01:40:38,554
And for that, we're going to give Cadence this prompt here to wire the configuration tab.

1448
01:40:38,554 --> 01:40:41,930
But I'm going to wait till he's done with the back that we have on the publish tab.

1449
01:40:41,930 --> 01:40:45,146
And after that, we can go into the configuration tab and wire this in as well.

1450
01:40:45,146 --> 01:40:55,830
And then also whilst we are here we also do have the calendar tab where whenever you schedule a post maybe you don't want to publish immediately you want to schedule this as a particular date when you come into your calendar you would also see the number

1451
01:40:55,840 --> 01:40:57,036
of posts that you have scheduled.

1452
01:40:57,036 --> 01:41:02,466
So here for instance you can see that the post that we posted today 24th of July this is already showing up in the calendar tab.

1453
01:41:02,466 --> 01:41:04,087
All right so kite is done with that.

1454
01:41:04,087 --> 01:41:05,189
Let's reload the dashboard.

1455
01:41:05,199 --> 01:41:06,629
Then let's come to the publish tab.

1456
01:41:06,639 --> 01:41:06,948
Perfect.

1457
01:41:06,948 --> 01:41:09,839
And now you see that the post that was published is already here.

1458
01:41:09,839 --> 01:41:19,510
Now the next two things that we're going to work on like I said is a configuration tab where you can basically alter the configurations here and the agent would pick the new updates that you have and for that I'm going to send kite to this

1459
01:41:19,520 --> 01:41:21,350
prompt to wire in the configuration tab.

1460
01:41:21,360 --> 01:41:21,735
All right.

1461
01:41:21,735 --> 01:41:24,689
So that means that when we come to the configuration put up, let me reload this.

1462
01:41:24,689 --> 01:41:31,072
You can basically change your brand name, the handle, the number of slides that you want to default with, if you want to have perlexity by default.

1463
01:41:31,072 --> 01:41:38,470
For instance, when I toggle this off and I save the configuration and I'm generating an idea, it wouldn't use publicity toggle on as a default.

1464
01:41:38,480 --> 01:41:41,476
And after that, we're basically done with the main aspect of the build.

1465
01:41:41,476 --> 01:41:46,857
I do have some other prompts that I'm giving to you as optional things that you can add to your setup to make it even more powerful.

1466
01:41:46,857 --> 01:41:51,195
Now what we're going to build now is going to be the telegram remote control.

1467
01:41:51,195 --> 01:41:58,852
So if you remember we do have this studio tab that we created which ideally we want to also use to be able to generate ideas without us having to come to the dashboard.

1468
01:41:58,852 --> 01:42:05,477
Now the idea here is that whenever you want to create an idea you can just come to the studio tab here in telegram generate an idea promoted and stuff like that.

1469
01:42:05,477 --> 01:42:09,200
So for that we're going to give kite as prompt here to set up the telegram remote control.

1470
01:42:09,200 --> 01:42:14,220
All right so kite says he's done he built and verified the telegram remote so far as he could.

1471
01:42:14,220 --> 01:42:16,111
He also said that he did a smoke test.

1472
01:42:16,111 --> 01:42:22,172
So let's come to the studio tab and then we can see that he did a test where we can see the things that he triggered on the studio tab.

1473
01:42:22,172 --> 01:42:24,426
Now he did mention something that he couldn't run.

1474
01:42:24,426 --> 01:42:25,969
Let me scroll down to the bottom.

1475
01:42:25,969 --> 01:42:27,447
He said that he's he has a blocker.

1476
01:42:27,447 --> 01:42:30,408
So he wasn't able to restart the hermits gateway himself.

1477
01:42:30,408 --> 01:42:35,744
So he's telling us from a separate shell on the machine we should run this and then we should just tell him that it's restarted.

1478
01:42:35,744 --> 01:42:36,672
So let me copy this.

1479
01:42:36,672 --> 01:42:37,780
Let me come to PowerShell.

1480
01:42:37,780 --> 01:42:38,957
Let me clear the screen here.

1481
01:42:38,957 --> 01:42:39,990
Then let me paste in this.

1482
01:42:40,000 --> 01:42:41,642
Let me connect to the server again.

1483
01:42:41,642 --> 01:42:43,590
Then let me run the command he gave to us.

1484
01:42:43,600 --> 01:42:44,148
All right.

1485
01:42:44,148 --> 01:42:45,607
So this gateway has restarted.

1486
01:42:45,607 --> 01:42:48,184
So, I'm going to wait a bit for the gateway to completely boot.

1487
01:42:48,184 --> 01:42:50,387
And after that, I'm going to send a message to Kite restarted.

1488
01:42:50,387 --> 01:42:52,994
So, I'm going to now send Kite a message restarted.

1489
01:42:52,994 --> 01:42:56,033
And then hopefully he should be able to continue with what he was doing.

1490
01:42:56,033 --> 01:42:56,431
All right.

1491
01:42:56,431 --> 01:42:57,747
And he says that he's done.

1492
01:42:57,747 --> 01:42:59,795
So, basically, everything is wired in.

1493
01:42:59,795 --> 01:43:05,430
Now, let's go to the studio tab and let's write something like let's forward slash let's run idea.

1494
01:43:05,440 --> 01:43:07,156
Now, let me check what the slash command was.

1495
01:43:07,156 --> 01:43:09,748
I don't remember if it was ideas or if it was idea.

1496
01:43:09,748 --> 01:43:10,616
So, it's ideas.

1497
01:43:10,616 --> 01:43:12,509
So, let's send forward slash ideas.

1498
01:43:12,509 --> 01:43:17,610
And then hopefully this should trigger the ideas tab on the studio right in this work in this workown.

1499
01:43:17,610 --> 01:43:20,576
So we have fresh ideas stop asking one agent to do the whole job.

1500
01:43:20,576 --> 01:43:22,980
So when I come to the studio tab I also see the same thing.

1501
01:43:22,980 --> 01:43:25,751
So basically this is mirroring whatever that we have on our dashboard.

1502
01:43:25,751 --> 01:43:32,180
Now the reason why we are doing this is that I want you to be able to build ideas and stuff like that without you having to always come to the dashboard.

1503
01:43:32,180 --> 01:43:37,544
Now let's say we want to promote this idea/promote and then let's put in the number of that idea 11.

1504
01:43:37,544 --> 01:43:38,838
Oops, I made a mistake.

1505
01:43:38,838 --> 01:43:40,249
I intended to type in 11.

1506
01:43:40,249 --> 01:43:41,878
And this was exactly correct.

1507
01:43:41,878 --> 01:43:43,818
He says that idea one was not found.

1508
01:43:43,818 --> 01:43:45,055
So let me do it again.

1509
01:43:45,055 --> 01:43:47,320
Forward/promotees and then let me send 11.

1510
01:43:47,320 --> 01:43:48,627
That was what I intended to send.

1511
01:43:48,627 --> 01:43:50,707
And then you can see that immediately we triggered this.

1512
01:43:50,707 --> 01:43:52,205
This is also live on the dashboard.

1513
01:43:52,205 --> 01:43:54,222
We can see that Vera is now promoted.

1514
01:43:54,222 --> 01:43:58,759
You can see that the idea was promoted and Vera is basically writing this idea that we have.

1515
01:43:58,759 --> 01:44:03,134
And we can see exactly the same thing here is actually done with the promotion of the idea.

1516
01:44:03,134 --> 01:44:04,708
So it worked on the dashboard.

1517
01:44:04,708 --> 01:44:06,614
We can see the ideas have been generated.

1518
01:44:06,614 --> 01:44:10,663
But on Telegram we did get this promotes field list attributes no get.

1519
01:44:10,663 --> 01:44:13,203
So I'm going to tell Kite to fix this as well for us.

1520
01:44:13,203 --> 01:44:14,733
So I'm giving Kite this prompt.

1521
01:44:14,733 --> 01:44:17,273
I tested the idea telegram command enabled perfectly.

1522
01:44:17,273 --> 01:44:24,467
However, when I promote an idea using the command promote idea number, the idea is promoted correctly on the dashboard, but Telegram sends us this message.

1523
01:44:24,467 --> 01:44:26,446
So you see what the problem is and fix it for us.

1524
01:44:26,446 --> 01:44:26,865
All right.

1525
01:44:26,865 --> 01:44:27,830
So Kite says he's done.

1526
01:44:27,840 --> 01:44:28,498
Let's try this again.

1527
01:44:28,498 --> 01:44:30,754
I'm going to come back to this app and I'm going to trigger ideas.

1528
01:44:30,754 --> 01:44:37,186
Now what you can also do to make it a bit easier when you are promoting an idea, you can also directly add the template that you want to use, right?

1529
01:44:37,186 --> 01:44:47,270
And then what I would suggest to you is that just use it to basically brainstorm ideas and then promote it to come into the studio tab and then once you're in the studio tab then you do all the stuff to do with the templates which

1530
01:44:47,280 --> 01:44:56,149
templates you want to use the edits that you want to do and stuff like that but it would be better to use the telegram just for the idea generation and stuff like that or maybe whenever you want to have an idea you can just come here and

1531
01:44:56,159 --> 01:44:59,750
tell which agent say hey give me some ideas on automation and stuff like that.

1532
01:44:59,760 --> 01:45:03,128
So let's say here for instance that we want to promote just an example.

1533
01:45:03,128 --> 01:45:06,070
Let me go to promote and let me put in oops 18.

1534
01:45:06,080 --> 01:45:09,801
Sorry there's a typo here promote 18 and then let me put in the templates.

1535
01:45:09,801 --> 01:45:12,394
Let me go to the templates tab just to get an example.

1536
01:45:12,394 --> 01:45:15,194
Let's say I want to go with the statement template.

1537
01:45:15,194 --> 01:45:19,662
Let me just type in statements then enter and then hopefully this will be produced then for us.

1538
01:45:19,662 --> 01:45:21,667
So weirdly it says template not found.

1539
01:45:21,667 --> 01:45:22,982
Let me see why this is the case.

1540
01:45:22,982 --> 01:45:25,831
Let me type in templates to see if I can get a list of templates.

1541
01:45:25,831 --> 01:45:29,072
So it appears that the names of the templates are different than what I see here.

1542
01:45:29,072 --> 01:45:30,641
So let's look for an example.

1543
01:45:30,641 --> 01:45:34,191
Let me say I want to go with a template called isometric.

1544
01:45:34,191 --> 01:45:34,644
Right?

1545
01:45:34,644 --> 01:45:36,865
Let me come back and promote this again.

1546
01:45:36,865 --> 01:45:39,148
And then let me go to isometric.

1547
01:45:39,148 --> 01:45:50,107
Now what you can also tell kites to do for you later would be to basically make sure that the names that you see for the template stylist with the names that is on the dashboard so that it becomes a bit easier for you to work with it.

1548
01:45:50,107 --> 01:46:01,109
I think the reason why there are different names is that for instance tip deck has two words and then for you to use it you have to use tip hyphen deck but it's just a prompt we can tell kite to just do this and he would be able to correct

1549
01:46:01,119 --> 01:46:04,210
this for you as well and then basically you can see that the slides are generated.

1550
01:46:04,210 --> 01:46:09,722
So when I come to this now you can see that the template that we picked is here and then we can see all the slides that are generated.

1551
01:46:09,722 --> 01:46:19,030
Now, what I think I can also do for you is I can just give you the prompts to correct this inconsistency where we have the temp name been different than the templates that we can use in Telegram.

1552
01:46:19,040 --> 01:46:22,427
And then I'm also going to give you this prompt that we can just give to Kite to fix this for us.

1553
01:46:22,427 --> 01:46:28,837
So, we're just going to tell Kite, hey, the template names shown on the dashboard do not match the names accepted by promote command.

1554
01:46:28,837 --> 01:46:32,753
For instance, on the dashboard when I type statement, it tells me template not found.

1555
01:46:32,753 --> 01:46:34,231
So, he should make sure that he fixes this.

1556
01:46:34,231 --> 01:46:42,264
Now I'm going to provide all these prompts to you so that you guys can also if you have the same issue you can just copy paste the prompts and your agent should be able to fix this for you.

1557
01:46:42,264 --> 01:46:48,964
Now whilst kite is building and correcting the issue with the templates name not matching telegram there is one more thing that we want to do.

1558
01:46:48,964 --> 01:46:52,534
I just want to make good use of the time whilst we are waiting for kite to be done.

1559
01:46:52,534 --> 01:47:05,430
So currently if you remember whenever we want to access a dashboard we do this through what is called SSH tunneling right where we put in this command here SSH minus N minus L and all the name and stuff like that we press enter and then

1560
01:47:05,440 --> 01:47:17,715
we put in the password of our user account and then only with that the SSH handling is activated that we are able to access the dashboard but what you can do which is even a better way to access the dashboard is to use tail skill.

1561
01:47:17,715 --> 01:47:24,773
Now what tails skill does is that tilk skill gives you with which you can access the dashboard without you having to go through SSA tunneling and stuff like that.

1562
01:47:24,773 --> 01:47:35,030
The idea is that you going to download the tail skill application connect your account and right there you get a unique with that URL you would be able to connect to the dashboard very easily without you having to put in your

1563
01:47:35,040 --> 01:47:35,896
password every time.

1564
01:47:35,896 --> 01:47:45,189
The best part about tail skill in the setup is that on every PC for instance in my case I have a desktop that I'm working with and I have a MacBook I have my mobile phone and a whole lot of devices that I work with.

1565
01:47:45,199 --> 01:47:55,947
Now on any of these devices that I have installed tail skill on and connected my account I can also access the dashboard without me having to go through all the terminal every time especially on your mobile phone.

1566
01:47:55,947 --> 01:48:01,430
Wherever you are you can work with the dashboard on your mobile phone so long as you have the tail skill app installed and connect your account.

1567
01:48:01,440 --> 01:48:04,664
Now to do this we're going to download the application that is called tail skill.

1568
01:48:04,664 --> 01:48:06,070
Now this is completely for free.

1569
01:48:06,080 --> 01:48:10,290
I have seven servers currently running on tail skill and I do not pay anything for this.

1570
01:48:10,290 --> 01:48:14,007
Now when you are here just come to this section here and click on get started.

1571
01:48:14,007 --> 01:48:20,927
Now when you click on get started you can basically sign up create an account everything is free you you would not have to pay for anything.

1572
01:48:20,927 --> 01:48:25,153
Now once the installation is complete you can then come here and download sales skills.

1573
01:48:25,153 --> 01:48:31,108
So on their homepage.com just click on the download button here and then this is going to download the tail skill application here.

1574
01:48:31,108 --> 01:48:33,171
Select whatever operating system that you're working with.

1575
01:48:33,171 --> 01:48:34,584
In my case I'm working with Windows.

1576
01:48:34,584 --> 01:48:38,272
So I'm going to click on the Windows and download the Windows application for TK skill.

1577
01:48:38,272 --> 01:48:42,977
If you're using the interface for Mac OS is even way better than the interface for Windows.

1578
01:48:42,977 --> 01:48:44,408
So I'm going to open the installer.

1579
01:48:44,408 --> 01:48:47,261
I'm going to accept the terms and conditions and then just click on install.

1580
01:48:47,261 --> 01:48:49,471
And the tail scale application is going to be completed.

1581
01:48:49,471 --> 01:48:55,093
Looks like the task that I gave to Kite to basically make sure that the template matches with the was a pretty heavy tax.

1582
01:48:55,093 --> 01:48:57,585
He's been working for close to 15 minutes now.

1583
01:48:57,585 --> 01:48:58,663
And he's still not done.

1584
01:48:58,663 --> 01:49:03,054
Now once the tail installation is completed on my end, I can basically click on close here.

1585
01:49:03,054 --> 01:49:07,189
And then when I come down here in Windows, you're going to see a small symbol here.

1586
01:49:07,199 --> 01:49:11,430
Yeah, this one here for tail skill with some I think about eight or seven dots.

1587
01:49:11,440 --> 01:49:11,685
Right?

1588
01:49:11,685 --> 01:49:15,299
When you right click on this then you would have to sign in into your tailskll account.

1589
01:49:15,299 --> 01:49:19,703
Now once you are signing into your tailskll account you are basically done with the installation on tailskll.

1590
01:49:19,703 --> 01:49:25,669
Now when you loging into your tail skill account you would see all the devices that are currently connected to your tail skill account.

1591
01:49:25,679 --> 01:49:31,648
And with all these devices you're going to get a unique URL that you would be able to use to access the server that we are building.

1592
01:49:31,648 --> 01:49:33,632
So now the tail skill application is installed.

1593
01:49:33,632 --> 01:49:37,030
We've created a tail skill account or if you already have an account this would be perfect.

1594
01:49:37,040 --> 01:49:48,950
What we would have to then do is to tell kites to install tailskll for us and bind the dashboard or the cadence dashboard that we have built to our tail skill server and with that we would be able to access the dashboard directly

1595
01:49:48,960 --> 01:49:54,094
from the URL directly on the browser without us having to go through the part where the sit tunneling.

1596
01:49:54,094 --> 01:49:56,595
So let me wait for kite to finish the task that he's doing.

1597
01:49:56,595 --> 01:49:57,738
I think he's almost done.

1598
01:49:57,738 --> 01:50:07,750
So currently you can see that he's browsing to make sure that all the changes that he did are working and then once he's done we can basically give Kite the command to do the tail skill wiring for us and then we would be done with this

1599
01:50:07,760 --> 01:50:08,182
tutorial.

1600
01:50:08,182 --> 01:50:13,097
And hey I'm working on an auto installer that is going to install all this for you in a matter of minutes.

1601
01:50:13,097 --> 01:50:14,258
So just sign up to my membership.

1602
01:50:14,258 --> 01:50:21,815
You're going to get a unique key which would you'll be able to use the installer and I will also create a tutorial for you on how to use the installer as well when this is ready.

1603
01:50:21,815 --> 01:50:24,628
And now finally kite is done with that big job.

1604
01:50:24,628 --> 01:50:31,065
The names of the templates that we see on the dashboard here would tally with the names that we see on Telegram.

1605
01:50:31,065 --> 01:50:33,924
Going back to the tail skill points, Kite is done with the work.

1606
01:50:33,924 --> 01:50:37,654
So, we can basically give Kite the prompt to work on the tail skill connection for us.

1607
01:50:37,654 --> 01:50:39,714
And for that, I'm going to give Kite this prompt here.

1608
01:50:39,714 --> 01:50:46,775
I'm telling Kite, hey, set up tail skill access to the dashboard so I can securely access it from my own devices without the SSA tunnel.

1609
01:50:46,775 --> 01:50:49,924
And I'm just giving him the guide on how I want this to be.

1610
01:50:49,924 --> 01:50:56,086
And when he's done, he's going to give us a link that we're going to use click to bind this particular server to our tail skill account.

1611
01:50:56,086 --> 01:50:59,513
So let make sure I'm on kite stop and let me send this prompt to kite to do this.

1612
01:50:59,513 --> 01:51:02,709
And then once we are done with this, then we are basically at the end of the tutorial.

1613
01:51:02,719 --> 01:51:03,734
I'm already exhausted.

1614
01:51:03,734 --> 01:51:05,843
I've been recording for more than 10 hours.

1615
01:51:05,843 --> 01:51:07,303
So I'm getting tired myself.

1616
01:51:07,303 --> 01:51:07,848
All right.

1617
01:51:07,848 --> 01:51:08,669
So Kite is done.

1618
01:51:08,669 --> 01:51:14,297
He's given us this login link that we're going to use to authenticate our account to this particular server that we have built.

1619
01:51:14,297 --> 01:51:17,803
So I'm going to open a new tab and just put in the URL that Kite gave to us.

1620
01:51:17,803 --> 01:51:21,684
And after that, all you're going to have to do is to connect and sign in into your tail skill account.

1621
01:51:21,684 --> 01:51:28,346
Now, this is going to bring you to a page here where tailskll is going to ask you, hey, I want to connect the device cadence dashboard to your computer.

1622
01:51:28,346 --> 01:51:30,265
So, in my case, computer mechanic.com tailnet.

1623
01:51:30,265 --> 01:51:33,422
I'm going to click on connect and then the login is accessible.

1624
01:51:33,422 --> 01:51:36,593
So, our device has now been bound to our tail skill account.

1625
01:51:36,593 --> 01:51:42,435
So, I'm going to come here and I'm going to tell kite done because he says that when I'm done with authentication, I should just reply we're done.

1626
01:51:42,435 --> 01:51:42,758
Right.

1627
01:51:42,758 --> 01:51:44,457
So, kite is done with that as well.

1628
01:51:44,457 --> 01:51:51,794
He also said that he did a public IP testing and all failed to connect which means that the dashboard can only be accessed through the tail skill IP.

1629
01:51:51,794 --> 01:51:53,626
Now let me be sure that this is working.

1630
01:51:53,626 --> 01:51:54,743
Let me reload the dashboard.

1631
01:51:54,743 --> 01:51:57,375
Here we have the SSA tunneling working which is expected.

1632
01:51:57,375 --> 01:52:07,189
I'm going to come to PowerShell and I'm going to kill the SSH connection and then I'm going to come back to the dashboard and I'm going to try to access the dashboard through the SSA tunnel and you see that I get the sites cannot be

1633
01:52:07,199 --> 01:52:07,517
reached.

1634
01:52:07,517 --> 01:52:12,075
Now whenever I want to connect to the dashboard I can just use this URL that Kite gave to us.

1635
01:52:12,075 --> 01:52:13,811
So let me copy the dashboard URL.

1636
01:52:13,811 --> 01:52:15,189
Let me paste in this URL.

1637
01:52:15,199 --> 01:52:15,780
And then hooray.

1638
01:52:15,780 --> 01:52:20,675
You see that we can access the dashboard without us having to go through the complication with the SSA tunnel.

1639
01:52:20,675 --> 01:52:25,752
Now tails skill works by setting sort of a local viva or on the PC on which it's installed.

1640
01:52:25,752 --> 01:52:35,093
So if you have any other VPN services running, you would have to stop this VPN before tail skill can work because if you have two parallel services running, then tails scale would not be able to work.

1641
01:52:35,093 --> 01:52:40,227
So make sure that you always stop any other running so that tail scale would be able to deploy the server for you.

1642
01:52:40,227 --> 01:52:42,470
So this brings us to the end of the tutorial.

1643
01:52:42,480 --> 01:52:44,326
Let me walk you through shortly what we have built.

1644
01:52:44,326 --> 01:52:51,099
We have the dashboard tab where we can see and all the things that the agents are doing an activity log all pulled from the agents database.

1645
01:52:51,099 --> 01:52:59,787
Now when you come to the ideas tab, we can always create any new idea by picking your idea and the agents at last is going to pick up that idea and build it into a content for you.

1646
01:52:59,787 --> 01:53:05,679
And then also whenever you don't have any idea, you can just come and click on the generate idea and an idea will be generated for you.

1647
01:53:05,679 --> 01:53:10,551
Whenever we want to promote an idea, we can just click on promote and this will be promoted for us into the studio tab.

1648
01:53:10,551 --> 01:53:14,683
And whenever we want to push any of the post to Instagram, Tik Tok, whatever we want to do.

1649
01:53:14,683 --> 01:53:19,128
When we click on post now, this will directly be pushed to the social media platform that we want to use.

1650
01:53:19,128 --> 01:53:24,786
And then when this is done, this will bring the post to the publish tab so that you can always refer to it whenever you want to do something with it.

1651
01:53:24,786 --> 01:53:32,625
We also have a templates tab that is packed with a lot of templates currently in the setup that you can always pick from and develop any carousel slide that you want to develop.

1652
01:53:32,625 --> 01:53:37,208
And then we have the dedicated agents tab where we see all the agents that we have their heat map.

1653
01:53:37,208 --> 01:53:43,043
You have your calendar where you can see the post that you have scheduled, post that you have already published and also upcoming post.

1654
01:53:43,043 --> 01:53:50,867
A configuration tab where you can configure your brand name, the things that you want the agents to work on when they are generating the and a docs tab where you can basically understand the dashboard.

1655
01:53:50,867 --> 01:53:56,034
Now I do have way more prompts that I'm going to provide to you that you can also use that I would highly recommend that you use.

1656
01:53:56,034 --> 01:54:01,189
For instance, for the agent login activity, the agents are going to log in the database whenever they perform a task.

1657
01:54:01,199 --> 01:54:04,786
But if you run this for a whole year, then your database is going to get so cluttered.

1658
01:54:04,786 --> 01:54:11,783
So you can set up sort of a weekly cleanup where the agents are going to look for activities that are older than 7 days and basically clean all of them.

1659
01:54:11,783 --> 01:54:16,221
And I also included some additional problems that you can use to basically amplify the setup that you have.

1660
01:54:16,221 --> 01:54:22,381
I know it's a lengthy tutorial, but I wanted to go through everything that we are building, the thought process that I have when I'm building something like this.

1661
01:54:22,381 --> 01:54:27,307
And also you see me troubleshoot all the errors that we have so that when you have a similar situation, you can do the same thing as well.

1662
01:54:27,307 --> 01:54:29,525
If you found the video helpful, please hit the like button.

1663
01:54:29,525 --> 01:54:33,119
Subscribe to my channel to see more like this.
