WEBVTT

00:00:00.160 --> 00:00:03.066
This is a full social media content machine.

00:00:03.066 --> 00:00:07.588
Four AI agents that research, write, design, and publish posts for you.

00:00:07.588 --> 00:00:08.961
Watch it work right now.

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.

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.

00:00:22.845 --> 00:00:26.448
And here's the thing, nothing goes online without your approval.

00:00:26.448 --> 00:00:29.904
You check the words first and you approve the final post.

00:00:29.904 --> 00:00:32.426
The agents do the work and you keep control.

00:00:32.426 --> 00:00:34.699
Today we are building the entire thing from the scratch.

00:00:34.699 --> 00:00:36.813
Every prompt and template is linked below.

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.

00:00:43.315 --> 00:00:45.556
Hey, Larry here and welcome to the channel.

00:00:45.556 --> 00:00:51.510
Today we're building Cadence, a content operations autopilot run by four specialists you just saw.

00:00:51.520 --> 00:00:56.751
Packed with over 50 beautifully designed templates, Atlas researches and posts your ideas.

00:00:56.751 --> 00:01:00.284
Vera writes every slide, caption, and hashtag for you.

00:01:00.284 --> 00:01:02.296
Then Kite does the finished designs.

00:01:02.296 --> 00:01:05.818
Once this is done, Orion ships them to your social media platform.

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.

00:01:11.892 --> 00:01:14.205
If you post content regularly, you know the hassle.

00:01:14.205 --> 00:01:16.756
You stare at a blank page hunting for [music] an idea.

00:01:16.756 --> 00:01:20.954
When you finally get one, now comes the research, then writing slide after slide.

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.

00:01:26.642 --> 00:01:30.714
Now, Cadence orchestrates and eats up the entire chain in a matter of minutes.

00:01:30.714 --> 00:01:33.309
You tell the agents once what your brand is about.

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.

00:01:43.934 --> 00:01:45.413
Then your post is online.

00:01:45.413 --> 00:01:48.545
And here is where this build beats every other AI slide tool.

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.

00:01:53.520 --> 00:01:58.149
And even fixing one word means you pay again to regenerate the whole image.

00:01:58.159 --> 00:02:01.269
Cadence doesn't touch an [music] image model at all.

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.

00:02:07.155 --> 00:02:08.657
So, every edit is free.

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.

00:02:14.757 --> 00:02:18.493
Meaning you have unlimited revisions with zero cost per slide.

00:02:18.493 --> 00:02:21.731
So your money goes into the words, not into the pictures.

00:02:21.731 --> 00:02:24.944
The dashboard shows the whole operation in one glance.

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.

00:02:34.400 --> 00:02:36.790
So there are no fake metrics anywhere.

00:02:36.800 --> 00:02:38.358
My favorite part is the studio.

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.

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.

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.

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.

00:03:07.618 --> 00:03:11.233
So on the dashboard you see the total number of runs that the agents have performed.

00:03:11.233 --> 00:03:14.138
The number of ideas that we have generated in this setup.

00:03:14.138 --> 00:03:15.910
The number of posts that we have published.

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.

00:03:21.119 --> 00:03:25.204
Now here we have an agent activity that is pulled from the agents activity database.

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.

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.

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.

00:03:49.146 --> 00:03:51.160
Now the magic happens in the ideas tab.

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.

00:03:55.484 --> 00:03:59.440
So I just made them generate ideas around AI automation and stuff like that.

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.

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.

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.

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.

00:04:26.326 --> 00:04:28.646
And then you can see that they generated five ideas.

00:04:28.646 --> 00:04:31.590
So the first idea is automation fails at the handoff.

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.

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.

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.

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.

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.

00:04:56.179 --> 00:04:58.977
So the main content is going to be between the hook and the CTA.

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.

00:05:06.047 --> 00:05:09.129
And then here I can decide if the agent should do a deep research.

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.

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.

00:05:22.619 --> 00:05:25.965
And then when you are done you can just click on write eight slides.

00:05:25.965 --> 00:05:29.501
Now what is going to happen is that basically Atlas is done with his job.

00:05:29.501 --> 00:05:32.903
Atlas did the research right and now Vera is going to take over.

00:05:32.903 --> 00:05:36.199
Vera is the AI agent that does the writing of the content.

00:05:36.199 --> 00:05:39.765
So let's wait till Vera is done with the research and have the content ready.

00:05:39.765 --> 00:05:40.397
All right.

00:05:40.397 --> 00:05:42.061
So Vera is done with the research.

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.

00:05:48.160 --> 00:05:51.130
Basically you can see the content that is going to come on every slide.

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.

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.

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.

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.

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.

00:06:16.711 --> 00:06:19.928
Now, because my brand is orange, let me go with this template here, 10 count.

00:06:19.928 --> 00:06:22.340
Now what is going to happen is I'm going to click fit copy to this.

00:06:22.340 --> 00:06:23.730
Now why do we do this step?

00:06:23.730 --> 00:06:26.870
Because every template has the number of characters it can support.

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.

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.

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.

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.

00:06:56.235 --> 00:06:59.730
So when I click open in studio you can see the slides that the agents generated.

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.

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.

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.

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.

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.

00:07:32.627 --> 00:07:35.468
I can do whatever I want to do without having to pay for anything.

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.

00:07:41.575 --> 00:07:42.649
You can reduce the slide.

00:07:42.649 --> 00:07:43.911
You can change the font size and everything.

00:07:43.911 --> 00:07:46.436
And then when you're done, you just click on save and this will be done.

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.

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.

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.

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.

00:08:09.687 --> 00:08:11.227
So I can click on post to only.

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.

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.

00:08:22.871 --> 00:08:25.744
And then this will be pushed directly to Instagram for us.

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.

00:08:30.454 --> 00:08:32.961
So in a few minutes, we should see this directly on Instagram.

00:08:32.961 --> 00:08:34.214
And right then you see it.

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.

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.

00:08:42.240 --> 00:08:45.139
And this exactly what I'm going to be building with you guys today.

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.

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.

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.

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.

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.

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.

00:09:19.567 --> 00:09:23.438
And darker spaces just mean that the agent was not active within that time frame.

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.

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.

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.

00:09:35.594 --> 00:09:36.756
Now, let's get into the build.

00:09:36.756 --> 00:09:39.212
To get started, we're going to first install her.

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

00:09:51.440 --> 00:09:52.336
that are out there.

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.

00:10:03.103 --> 00:10:06.424
And to install Hemisen, there are several options that are out there for you.

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.

00:10:13.713 --> 00:10:16.482
For this setup, I'm going to be using the Linux approach.

00:10:16.482 --> 00:10:18.114
I know Linux sounds intimidating.

00:10:18.114 --> 00:10:19.976
Don't worry, I'm going to walk you through the entire step.

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.

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.

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.

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.

00:10:41.614 --> 00:10:44.007
But in my case, for instance, I do not have a dedicated PC.

00:10:44.007 --> 00:10:47.380
So you can rent a server somewhere that you used to run this on.

00:10:47.380 --> 00:10:49.904
I personally prefer this option, but hey, it's up to you.

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.

00:10:57.451 --> 00:10:59.555
You do not have to worry about maintenance.

00:10:59.555 --> 00:11:02.617
You do not have to worry about internet connectivity and stuff like that.

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.

00:11:10.699 --> 00:11:14.583
And for the VPS provider, my personal picks are typically Racknet and Conabo.

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

00:11:28.480 --> 00:11:32.262
keeping it online 24/7, internet activity, maintenance, and stuff like that.

00:11:32.262 --> 00:11:34.762
With Rak, you pay once a year and you're basically done.

00:11:34.762 --> 00:11:37.735
You don't need to worry about monthly payments and stuff like that.

00:11:37.735 --> 00:11:41.058
The second option that you can also go for is from Contabo.

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.

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.

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.

00:12:00.057 --> 00:12:03.590
So you can decide on either going with Raknet or going with Contabo.

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.

00:12:06.742 --> 00:12:09.295
And these videos are not sponsored by any of these companies.

00:12:09.295 --> 00:12:12.522
I'm just giving you what I typically use when I'm setting up these infrastructures.

00:12:12.522 --> 00:12:14.468
If you want to go with Raknet, just come here.

00:12:14.468 --> 00:12:16.716
Like I said, my recommended option would be this one here.

00:12:16.716 --> 00:12:17.612
Click on order now.

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.

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.

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.

00:12:31.620 --> 00:12:35.110
Operating system, we're going to be using Ubuntu 2012.04.

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

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

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

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.

00:13:12.966 --> 00:13:14.505
So here click on get started here.

00:13:14.505 --> 00:13:16.907
Be careful the default is sometimes 24 years.

00:13:16.907 --> 00:13:19.916
That means that you're going to be locked with this VPS for 2 years.

00:13:19.916 --> 00:13:23.251
And of course it gets cheaper the longer the contract is going to be.

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.

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.

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

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.

00:13:50.054 --> 00:13:52.804
So you can leave this completely as European Union.

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.

00:13:59.894 --> 00:14:02.947
For the operating system leave this as YUbuntu which is the default.

00:14:02.947 --> 00:14:06.879
For data protection, I typically recommend that you go for the auto backup option.

00:14:06.879 --> 00:14:10.383
Sometimes I'm working with my agents and something completely gets screwed up.

00:14:10.383 --> 00:14:14.502
And then with the auto backup, it basically takes a snapshot of your VPS every day.

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.

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.

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.

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.

00:14:48.074 --> 00:14:51.073
Now additional features you can leave everything as a default.

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.

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.

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.

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.

00:15:07.797 --> 00:15:09.290
But why go through the hassle after that?

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.

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.

00:15:17.120 --> 00:15:19.082
With this email, we basically going to need three things.

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.

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.

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.

00:15:33.198 --> 00:15:36.195
With Raknet, most of the time name is always going to be root.

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.

00:15:41.095 --> 00:15:43.215
And here's what they're going to provide the password to you.

00:15:43.215 --> 00:15:45.674
All these three credentials are going to be in your email.

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.

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.

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.

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.

00:16:08.751 --> 00:16:11.216
In the email from Contabo, we're going to need two things.

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.

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.

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.

00:16:35.180 --> 00:16:38.206
And to connect to the VPS server there are several applications that are out there.

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.

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.

00:16:51.512 --> 00:16:54.813
And then when you click on this, this is how the Windows PowerShell application looks.

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.

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.

00:17:04.196 --> 00:17:07.270
So you do not have to worry about differences in terms of commands.

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.

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.

00:17:16.855 --> 00:17:20.160
And after that, you're going to put in the IP address of your VPS server.

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.

00:17:30.964 --> 00:17:32.421
And after that, just press enter.

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.

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.

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.

00:17:44.806 --> 00:17:48.501
And here, if you have a complex password, just type this password somewhere.

00:17:48.501 --> 00:17:50.595
Come in here, just right click on your mouse.

00:17:50.595 --> 00:17:53.337
It would paste the password into the clipboard and just press enter.

00:17:53.337 --> 00:17:56.425
And then you can see that in my case, I'm connected to my VPS server.

00:17:56.425 --> 00:17:58.754
So, I'm going to clear the screen by just typing clear.

00:17:58.754 --> 00:18:00.996
And then we can start with the configuration process.

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.

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.

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.

00:18:23.353 --> 00:18:27.234
In my earlier videos, we always did this on root, which is absolutely fine.

00:18:27.234 --> 00:18:31.451
But I always try to improve and bring you guys the best safety tips out there.

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.

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.

00:18:39.220 --> 00:18:42.599
Now, to create a new user on Linux, just use the command user space.

00:18:42.599 --> 00:18:45.847
And after that, just put in the name of the user that you want to create.

00:18:45.847 --> 00:18:47.550
In my case, I'm going to call this Larry.

00:18:47.550 --> 00:18:48.402
So, add Larry.

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.

00:18:52.135 --> 00:18:53.399
So, I'm going to put in my password.

00:18:53.399 --> 00:18:54.496
And after that, just press enter.

00:18:54.496 --> 00:18:56.430
You're going to be prompted to retype the password.

00:18:56.430 --> 00:18:58.021
And then after that, just press enter.

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.

00:19:00.392 --> 00:19:02.297
You can just skip this by pressing enter.

00:19:02.297 --> 00:19:02.870
Room number.

00:19:02.880 --> 00:19:03.271
Enter.

00:19:03.271 --> 00:19:03.661
Phone.

00:19:03.661 --> 00:19:04.052
Enter.

00:19:04.052 --> 00:19:05.029
Just skip this.

00:19:05.039 --> 00:19:05.583
Home phone.

00:19:05.583 --> 00:19:06.722
You can also skip this.

00:19:06.722 --> 00:19:07.455
You can also skip this.

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.

00:19:10.933 --> 00:19:12.040
Just press Y for yes.

00:19:12.040 --> 00:19:13.727
And after that, just press enter.

00:19:13.727 --> 00:19:16.587
Now, you can see that then Larry is added as a user.

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.

00:19:24.481 --> 00:19:26.789
And to do that, we're going to use this command here.

00:19:26.799 --> 00:19:30.130
User mod space minus ag p sudo larry.

00:19:30.130 --> 00:19:32.927
So here, just replace this Larry with your username.

00:19:32.927 --> 00:19:34.190
And after that, just press enter.

00:19:34.190 --> 00:19:36.072
By the way, I'm also going to provide you these commands.

00:19:36.072 --> 00:19:38.338
So you do not need to type this or you do not need to remember them.

00:19:38.338 --> 00:19:39.543
After that, just press enter.

00:19:39.543 --> 00:19:43.990
And then we're going to get Larry now being a user with pseudo privileges.

00:19:44.000 --> 00:19:46.099
I'm going to clear the screen just to make it a bit cleaner.

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.

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.

00:19:58.904 --> 00:20:01.789
And you can see that the syntax change from root to Larry.

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.

00:20:05.780 --> 00:20:09.298
I'm now logged in into the Larry path which has this authority.

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.

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

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

00:20:38.080 --> 00:20:39.088
SSH path for Larry.

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.

00:20:43.039 --> 00:20:44.996
I'm just going to type in clear to clear the screen.

00:20:44.996 --> 00:20:47.466
And then now we can start with the Hemis installation.

00:20:47.466 --> 00:20:51.160
To install Hemis, we're just going to come to the original website from Hemsus.

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.

00:20:55.788 --> 00:20:58.188
We're going to be going with the native application.

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.

00:21:02.226 --> 00:21:04.578
Now click here to copy the oneline installer.

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.

00:21:14.797 --> 00:21:17.794
After that, just press enter and then the installation is going to run.

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.

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?

00:21:28.255 --> 00:21:29.305
This would be good.

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.

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.

00:21:40.761 --> 00:21:43.173
All right, so the prerequisite installation is done.

00:21:43.173 --> 00:21:44.715
So now we can start with the setup.

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.

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.

00:21:54.575 --> 00:21:56.222
And this is also the recommended part.

00:21:56.222 --> 00:21:58.059
So just make sure that this option is selected.

00:21:58.059 --> 00:22:00.217
If not, just press up and down on your keyboard.

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.

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.

00:22:08.111 --> 00:22:10.693
If you do have an account, then you do not have to create a new one.

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.

00:22:17.606 --> 00:22:19.755
Now, here you can go with their free subscription.

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.

00:22:26.930 --> 00:22:28.930
So, I'm going to go with a free option.

00:22:28.930 --> 00:22:32.149
So just press control on the keyboard and click on this URL here.

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.

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.

00:22:42.060 --> 00:22:43.455
So here, just click on connect.

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.

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.

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.

00:22:57.027 --> 00:22:58.491
I'm going to bring in my own model.

00:22:58.491 --> 00:23:02.175
So here you can just press enter on the keyboard to skip the model selection process.

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.

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.

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.

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.

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.

00:23:26.210 --> 00:23:28.433
In the next stage, we're going to select the terminal back end.

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.

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.

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.

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.

00:23:48.295 --> 00:23:52.400
So, here we're going to select set up messaging, which is recommended anyway.

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.

00:23:58.260 --> 00:24:00.675
And as you can see there are a pool of them that you can use.

00:24:00.675 --> 00:24:02.630
But in this setup we're going to be going with Telegram.

00:24:02.640 --> 00:24:05.629
So just press down on your keyboard and then here don't press enter.

00:24:05.629 --> 00:24:07.590
If you press enter it would skip this part.

00:24:07.600 --> 00:24:10.382
Press spacear on your keyboard to make sure that is checked.

00:24:10.382 --> 00:24:12.133
And after that you can just press enter.

00:24:12.133 --> 00:24:14.390
And then here we're going to create a telegram bot.

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.

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.

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.

00:24:27.594 --> 00:24:30.077
So for manual, just press two and then press enter.

00:24:30.077 --> 00:24:33.464
And then HS is going to ask us what is the Telegram bot token.

00:24:33.464 --> 00:24:37.621
So to do that, just come to Telegram and look for a bot called BotFather.

00:24:37.621 --> 00:24:41.923
So you can see that the right botfather bot has over 7 million monthly users.

00:24:41.923 --> 00:24:44.422
So that you are pretty sure that you are using the right bot.

00:24:44.422 --> 00:24:45.271
Be careful here.

00:24:45.271 --> 00:24:47.110
As you can see there a lot of botfather here.

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.

00:24:52.599 --> 00:24:56.390
To create a new ground, use the command forward slash and then type in new bot.

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.

00:24:59.354 --> 00:25:01.309
Now here we're going to have to give our bot a name.

00:25:01.309 --> 00:25:05.988
I'm going to call this km in my case for computer mechanic content creation OS.

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.

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

00:25:23.279 --> 00:25:24.006
created for you.

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.

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.

00:25:40.050 --> 00:25:42.233
Now this step is a highly recommended step.

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?

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.

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.

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.

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.

00:26:11.352 --> 00:26:13.566
There are a lot of other bots out there.

00:26:13.566 --> 00:26:15.573
So make sure that you have the right one here.

00:26:15.573 --> 00:26:18.638
And to get your user ID, you can just send the bot any message like hi.

00:26:18.638 --> 00:26:21.398
And the bot is going to respond with your user ID.

00:26:21.398 --> 00:26:23.254
So I'm going to click here to copy my user ID.

00:26:23.254 --> 00:26:26.452
I'm going to come back to the terminal in Hermes installation.

00:26:26.452 --> 00:26:29.219
I'm going to paste in the user ID and I'm going to press enter.

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.

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.

00:26:42.496 --> 00:26:44.568
You can type in a Y for yes and then press enter.

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.

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.

00:26:58.515 --> 00:27:00.441
Press Y for yes and then press enter.

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?

00:27:03.151 --> 00:27:05.852
In our case, we're going to go with the system service.

00:27:05.852 --> 00:27:06.710
So press enter.

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?

00:27:11.520 --> 00:27:14.296
I'm going to press Y for yes and I'm going to press enter.

00:27:14.296 --> 00:27:16.256
And then the Hemis installation is completed.

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.

00:27:22.429 --> 00:27:25.462
And to do that, just copy the command that they have provided for you here.

00:27:25.462 --> 00:27:28.580
Paste this command back in the terminal and just press enter.

00:27:28.580 --> 00:27:30.411
It's basically going to restart the shell for you.

00:27:30.411 --> 00:27:33.243
Now remember, we are basically done with the Hemis installation.

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.

00:27:37.514 --> 00:27:40.128
So here we're going to configure our own AI model.

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.

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.

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.

00:27:57.394 --> 00:28:00.305
And that is why for stuffs like that I prefer to do this on my own.

00:28:00.305 --> 00:28:03.957
Now for which AI model to use this is absolutely up to you.

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

00:28:16.559 --> 00:28:18.370
on her agent basically for free.

00:28:18.370 --> 00:28:21.445
If you have the $20 plan you can use you can use this.

00:28:21.445 --> 00:28:24.155
If you have the pro plan you can also use this.

00:28:24.155 --> 00:28:27.728
I'm I'm not very sure if this is available for the Go plan.

00:28:27.728 --> 00:28:30.048
In my case, most of the time I'm using the pro plan.

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.

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.

00:28:38.720 --> 00:28:42.332
If you hit your limit, you can basically always upgrade to the pro plan.

00:28:42.332 --> 00:28:44.930
Now, the is also a bit generous in terms of the token limits.

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.

00:28:48.769 --> 00:28:51.750
The advantage here is that it's not basically a pay as you go.

00:28:51.760 --> 00:28:53.756
Whenever your limits are done, you are done.

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.

00:28:59.511 --> 00:29:00.389
That does not exist.

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.

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.

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

00:29:23.600 --> 00:29:26.826
CL account, this one was way more sufficient for me.

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.

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.

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.

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.

00:29:55.274 --> 00:29:56.518
You can get them on Open Router.

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.

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.

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.

00:30:11.551 --> 00:30:12.791
You basically pay as you go.

00:30:12.791 --> 00:30:14.701
The more you use, the more you pay.

00:30:14.701 --> 00:30:18.230
So, I mean with whatever model that you want to use is completely up to you.

00:30:18.240 --> 00:30:20.951
just go for the option that makes the most sense to you.

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.

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.

00:30:27.953 --> 00:30:31.038
Just put in a command Heis space model and then press enter.

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.

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.

00:30:41.438 --> 00:30:44.506
The process is going to be the same irrespective of which option that you go for.

00:30:44.506 --> 00:30:47.350
So, in my case, I'm going to select this by pressing the space bar.

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.

00:30:50.878 --> 00:30:53.971
If you go with API then you pay as you go.

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.

00:30:59.310 --> 00:31:01.872
But in our setup we're going to be using our charging subscription.

00:31:01.872 --> 00:31:04.005
So I'm going to go with the open AAI codeex.

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.

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.

00:31:12.166 --> 00:31:13.750
So just highlight this code.

00:31:13.760 --> 00:31:14.696
Very important.

00:31:14.696 --> 00:31:16.070
Press control shift C.

00:31:16.080 --> 00:31:18.040
Do not press Ctrl C.

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.

00:31:26.240 --> 00:31:29.466
All you're going to have to do is to just log into your OpenAI account.

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.

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.

00:31:48.810 --> 00:31:52.216
And then here you can use any of the models that you have here.

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.

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.

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.

00:32:11.360 --> 00:32:12.503
That's absolutely up to you.

00:32:12.503 --> 00:32:13.885
I'm going to go with 5.5 here.

00:32:13.885 --> 00:32:15.205
I'm going to press spacebar.

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.

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.

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.

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.

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.

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.

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?

00:32:59.076 --> 00:33:02.711
So that means that our installation worked the AI model configuration works.

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.

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.

00:33:17.840 --> 00:33:22.230
Problem they are solving is that enterprises are currently drowning in disconnected AI.

00:33:22.240 --> 00:33:25.902
Most companies are using AI tools that do not even talk to each other.

00:33:25.902 --> 00:33:29.275
One tool does this, another does that, but nothing connects.

00:33:29.275 --> 00:33:31.333
So nothing really works together.

00:33:31.333 --> 00:33:35.001
Sudalis AI built a system that connects everything into one stack.

00:33:35.001 --> 00:33:39.238
Check them out at sudalis.ai with all the links in the description section.

00:33:39.238 --> 00:33:41.250
Thanks Sudalis AI for sponsoring this video.

00:33:41.250 --> 00:33:43.912
Now we're going to come back to botfather.

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.

00:33:49.167 --> 00:33:50.810
So here just click on this URL here.

00:33:50.810 --> 00:33:54.070
It's going to open a new chat session with the bot that was created.

00:33:54.080 --> 00:33:55.350
You can just click start.

00:33:55.350 --> 00:33:57.897
Now this is going to send a message like start to the bot.

00:33:57.897 --> 00:34:01.669
But the bot doesn't respond but it doesn't understand what start means.

00:34:01.679 --> 00:34:04.653
So here we're just going to send a message to the bot like hi.

00:34:04.653 --> 00:34:07.270
And if everything works the bot is going to start typing it.

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.

00:34:13.039 --> 00:34:15.850
So the bot responded hi what can I help you with today.

00:34:15.850 --> 00:34:18.207
Now we're not going to be talking to the bot in this session here.

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.

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.

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.

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.

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.

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.

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.

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.

00:34:53.494 --> 00:34:55.187
I'm going to click on the name of the bot here.

00:34:55.187 --> 00:34:58.194
And then here we can click to copy the username of the bot.

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.

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.

00:35:07.425 --> 00:35:08.910
And then we're going to name the group.

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.

00:35:12.653 --> 00:35:15.630
And then we're going to have to add at least one person to the group.

00:35:15.630 --> 00:35:17.944
And that is why we copy the username of our bots.

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.

00:35:22.152 --> 00:35:24.266
And then now we have our group created.

00:35:24.266 --> 00:35:27.438
But like I said, we want to create different channels in this group.

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.

00:35:33.040 --> 00:35:34.736
Click on the three dots that we have here.

00:35:34.736 --> 00:35:36.013
Come to group info.

00:35:36.013 --> 00:35:36.937
Click on manage.

00:35:36.937 --> 00:35:39.249
Come down here and click on administrators.

00:35:39.249 --> 00:35:40.267
Add administrator.

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.

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.

00:35:47.086 --> 00:35:50.392
And then now you see that our bot has an admin privileges.

00:35:50.392 --> 00:35:51.750
After that, click on close.

00:35:51.760 --> 00:35:55.977
Now, whilst we are here, we also going to enable this aspect that I call channels.

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.

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.

00:36:05.883 --> 00:36:07.888
Click on this and then you can enable this.

00:36:07.888 --> 00:36:10.230
And then here you can decide the view that you want to go for.

00:36:10.240 --> 00:36:12.307
In this case, I'm going to go with the tabs option here.

00:36:12.307 --> 00:36:13.633
And then just click on save.

00:36:13.633 --> 00:36:15.097
And I'm going to click on save again.

00:36:15.097 --> 00:36:16.630
And then we can now close this.

00:36:16.640 --> 00:36:18.964
And then immediately we do that when we enable topics.

00:36:18.964 --> 00:36:21.074
You see that now we have different channels.

00:36:21.074 --> 00:36:24.406
We have all channel where we going to see all the messages from all the channels.

00:36:24.406 --> 00:36:26.243
And also we have the general channel.

00:36:26.243 --> 00:36:28.401
So first let's rename this general channel.

00:36:28.401 --> 00:36:29.861
Click on the three dots here.

00:36:29.861 --> 00:36:30.551
Come to edit.

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.

00:36:35.537 --> 00:36:36.737
I'm going to click on save.

00:36:36.737 --> 00:36:38.844
And then we're going to start talking to orchestrator here.

00:36:38.844 --> 00:36:41.218
So let me just send a message in the chat here.

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.

00:36:45.382 --> 00:36:48.069
So we can basically start talking to orchestrator.

00:36:48.079 --> 00:36:49.861
We are going to create other two channels.

00:36:49.861 --> 00:36:51.030
But we are not there yet.

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.

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.

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.

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.

00:37:16.096 --> 00:37:18.586
And this goes to also support the work that I do.

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.

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.

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.

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.

00:37:47.092 --> 00:37:48.633
And I also do create auto installers.

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.

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.

00:37:58.632 --> 00:38:01.466
Said, hey, if you want to join, I'm very happy to have you on board.

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.

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.

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.

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.

00:38:22.941 --> 00:38:24.047
Give the bot a name.

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.

00:38:28.748 --> 00:38:31.037
My first point that I'm going to give to my bot is this.

00:38:31.037 --> 00:38:32.930
Your name is going to be orchestrator.

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.

00:38:39.519 --> 00:38:41.637
And then here you're going to fill in your name to the agents.

00:38:41.637 --> 00:38:43.956
You're going to also give the agents your brand name.

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.

00:38:49.599 --> 00:38:52.001
You're going to tell the agents what your brand teaches.

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.

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.

00:39:03.119 --> 00:39:05.596
And that is why this part here is non-negotiable.

00:39:05.596 --> 00:39:08.583
You can also tell the agent what your audience is and stuff like that.

00:39:08.583 --> 00:39:09.510
So, I'm going to copy this.

00:39:09.520 --> 00:39:10.759
I'm going to paste this in here.

00:39:10.759 --> 00:39:12.878
And I'm going to fill in the sections for my build.

00:39:12.878 --> 00:39:14.979
So here I bought, hey, my name is Larry.

00:39:14.979 --> 00:39:16.677
My brand is computer mechanic.

00:39:16.677 --> 00:39:18.486
My social handle is computer mechanic.

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.

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.

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.

00:39:38.640 --> 00:39:40.510
And then orchestrator responded, "Hey, got it.

00:39:40.510 --> 00:39:42.204
I'm orchestrator and you are Larry.

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.

00:39:52.298 --> 00:39:56.267
The second prompt here is basically where you're telling orchestrator to interview you.

00:39:56.267 --> 00:39:59.899
Now, what you give to orchestrator here is basically the backbone, the foundation.

00:39:59.899 --> 00:40:03.159
But there are so much that you can let your agents learn about you.

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.

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.

00:40:17.992 --> 00:40:21.367
So I would skip this just not to get the tutorial too lengthy.

00:40:21.367 --> 00:40:24.934
The second thing that I would also suggest to you is this permanent operating rules.

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.

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.

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.

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.

00:40:47.395 --> 00:40:50.971
It's optional for you if you want to have this this there ready for you.

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.

00:40:59.323 --> 00:41:01.569
Now we're going to start with the main hat of the build.

00:41:01.569 --> 00:41:05.196
We're going to tell orchestrator that hey we're going to create different agents.

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.

00:41:10.102 --> 00:41:12.299
We're going to have Vera who is going to be our writer.

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.

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.

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.

00:41:26.897 --> 00:41:27.111
Right?

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.

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.

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

00:41:46.640 --> 00:41:48.415
hey you do not need to create one for yourself.

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.

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.

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.

00:42:08.526 --> 00:42:11.017
And that is why you always see this message like memory.

00:42:11.017 --> 00:42:13.150
It means that something has been written to the memory.

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.

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.

00:42:23.589 --> 00:42:27.126
And he's saying that you are Larry the owner and the final authority.

00:42:27.126 --> 00:42:29.880
Now in the next prompt this is going to be the most important prompt.

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.

00:42:33.772 --> 00:42:35.254
I'm going to send the prompt to orchestrator.

00:42:35.254 --> 00:42:39.265
So I'm telling orchestrator that hey create five persistent hemis profiles.

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.

00:42:46.942 --> 00:42:49.321
So what I want to create is that I be created permanently.

00:42:49.321 --> 00:42:52.139
So that means that whenever we need them, they are going to be there.

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.

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.

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.

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.

00:43:16.640 --> 00:43:19.828
So someone for instance asked if you can have two orchestrators.

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.

00:43:27.432 --> 00:43:29.949
This is basically up to you how you want to configure this.

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?

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.

00:43:42.800 --> 00:43:47.069
So a soul.md is a document that tells an agent hey my name is Larry.

00:43:47.069 --> 00:43:48.088
This is what I do.

00:43:48.088 --> 00:43:49.743
This is the person that I'm working with.

00:43:49.743 --> 00:43:51.899
This is the system that we are working with and stuff like that.

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.

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.

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.

00:44:10.000 --> 00:44:12.708
So for all the agents I'm telling them what they are going to be doing.

00:44:12.708 --> 00:44:15.561
And for instance Kite Kite is also going to be our designer.

00:44:15.561 --> 00:44:17.257
He's also going to be our engineer.

00:44:17.257 --> 00:44:20.912
So he has what I'm describing for Skype for him to understand what he does.

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.

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.

00:44:31.520 --> 00:44:35.383
Now he can change the text to whatever you want, whatever fits what you are doing.

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.

00:44:40.557 --> 00:44:42.169
You can basically add this here as well.

00:44:42.169 --> 00:44:43.396
So, orchestrator responded.

00:44:43.396 --> 00:44:44.067
He says done.

00:44:44.067 --> 00:44:48.138
I have created a persistent herm profiles each with their own soul.MD.

00:44:48.138 --> 00:44:51.044
And then you can see here we have scout who is Atlas.

00:44:51.044 --> 00:44:52.462
We have Scribe who is Vera.

00:44:52.462 --> 00:44:53.750
We have Dev who is Kite.

00:44:53.750 --> 00:44:55.298
We have Rich who is Orin.

00:44:55.298 --> 00:44:58.415
And he also confirmed that the profiles indeed exist.

00:44:58.415 --> 00:45:02.716
Now if you want to also confirm yourself because sometimes the agents do hallucinate.

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.

00:45:10.315 --> 00:45:11.864
So you can double check this yourself.

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.

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.

00:45:26.161 --> 00:45:28.374
Now here you can see that the gateways are not running.

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.

00:45:34.579 --> 00:45:37.791
So we verify that indeed orchestrator created all these agents.

00:45:37.791 --> 00:45:40.724
Now this is going to be a prompt that is also very very important.

00:45:40.724 --> 00:45:44.762
Now in this prompt I'm telling orchestrator to define this for each agent.

00:45:44.762 --> 00:45:48.225
Now I want every agent to have their own dedicated memory.

00:45:48.225 --> 00:45:50.150
Imagine you have five agents.

00:45:50.160 --> 00:45:52.375
Every agent has their own particular role.

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.

00:45:57.249 --> 00:46:01.315
So agents always write long-term stuffs into a file that is called memory.mmd.

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.

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.

00:46:11.680 --> 00:46:15.305
And additionally, this is going to make the memory file very very heavy.

00:46:15.305 --> 00:46:18.892
And remember, the bigger the memory MD file, the more tokens that you use.

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.

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.

00:46:31.599 --> 00:46:36.353
So here we are telling every agent to only do stuffs that are within their role.

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.

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

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.

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

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

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?

00:47:33.200 --> 00:47:36.223
And then Vera responded, hey, that is Kite's department.

00:47:36.223 --> 00:47:40.456
And he also asked Kite's ver research and kite responded that is Atlas department.

00:47:40.456 --> 00:47:42.550
So that means that the role boundaries are working.

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.

00:47:45.626 --> 00:47:49.370
And very important, we're going to create the agents login database system.

00:47:49.370 --> 00:47:53.817
Now, whenever the agents are performing a task, we want them to log whatever they do.

00:47:53.817 --> 00:47:56.542
So we're going to build sort of an agent login database.

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.

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.

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.

00:48:12.234 --> 00:48:15.545
And then we're going to do this using what is called an SQL lightsaber.

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.

00:48:20.504 --> 00:48:23.418
For instance, when we come to the dashboard I'm going to be building.

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.

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.

00:48:33.424 --> 00:48:36.243
So this gives you full transparency of what the agents are doing.

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.

00:48:40.749 --> 00:48:43.106
And by the way, this is the dashboard that we're going to be building.

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.

00:48:48.239 --> 00:48:51.268
So orchestrator is done with the agent login database.

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.

00:48:59.374 --> 00:49:02.124
Now remember we have created a base but the agents do not know.

00:49:02.124 --> 00:49:05.423
So currently it's only orchestrator that knows that such a database exists.

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.

00:49:16.286 --> 00:49:18.394
And this is the instruction that we are giving to them.

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.

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.

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.

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.

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.

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.

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.

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

00:50:10.720 --> 00:50:11.013
task.

00:50:11.013 --> 00:50:13.852
Now we're going to move in to one of the major parts.

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

00:50:24.400 --> 00:50:25.796
we're not going to be using orchestrator.

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.

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.

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.

00:50:47.272 --> 00:50:49.443
So, with Telegram, one bot, one token.

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.

00:50:56.063 --> 00:50:59.109
We have to create a dedicated bot token for kite.

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.

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

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

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.

00:51:34.075 --> 00:51:37.522
Now, this is quite useful if you have different channels that you want to create.

00:51:37.522 --> 00:51:39.458
But in our setup, we're going to create only three channels.

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.

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.

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.

00:51:57.660 --> 00:51:59.635
But then we have another challenge.

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.

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.

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.

00:52:24.650 --> 00:52:28.497
So orchestrator would never listen in the channel that we would create for Kite.

00:52:28.497 --> 00:52:30.492
And the same thing also applies to Kite.

00:52:30.492 --> 00:52:33.280
Kite would only listen to his channel that we'll create for him.

00:52:33.280 --> 00:52:34.475
This would all make sense soon.

00:52:34.475 --> 00:52:34.863
Trust me.

00:52:34.863 --> 00:52:36.449
Because this is very very complex.

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.

00:52:42.256 --> 00:52:46.052
So here I'm sending this message to prep him on what we want to do.

00:52:46.052 --> 00:52:48.687
So I'm telling Oka, hey, we're going to build something together.

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

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.

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.

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.

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.

00:53:25.336 --> 00:53:28.027
But we first going to have to create this bot for Kite.

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.

00:53:33.233 --> 00:53:34.847
And we're going to create a second bot.

00:53:34.847 --> 00:53:38.323
So, just type in new bot just like we did for the first time for orchestrator.

00:53:38.323 --> 00:53:41.105
And we're going to call this bot km kite content.

00:53:41.105 --> 00:53:42.862
Let me call this content kites.

00:53:42.862 --> 00:53:43.198
Right?

00:53:43.198 --> 00:53:44.703
And I'm going to copy the username.

00:53:44.703 --> 00:53:45.346
We press enter.

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.

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.

00:53:54.081 --> 00:53:55.367
And I'm going to press enter.

00:53:55.367 --> 00:53:57.710
And then we get a dedicated token for bot.

00:53:57.710 --> 00:54:01.258
Remember this was the token that we had for orchestrator.

00:54:01.258 --> 00:54:03.887
And we have now create a dedicated token for kite.

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.

00:54:08.048 --> 00:54:10.470
And to do that I created this command for you here.

00:54:10.480 --> 00:54:10.953
Come here.

00:54:10.953 --> 00:54:12.041
Copy this command here.

00:54:12.041 --> 00:54:13.991
Come back into your terminal instance.

00:54:13.991 --> 00:54:15.032
Let me clear the screen.

00:54:15.032 --> 00:54:15.661
Very important.

00:54:15.661 --> 00:54:17.022
Make sure that you're not on root.

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.

00:54:20.511 --> 00:54:23.196
Now this command is going to ask you to put in the bot token.

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.

00:54:27.984 --> 00:54:29.543
So I'm going to come back to Telegram.

00:54:29.543 --> 00:54:30.710
I'm going to click here.

00:54:30.720 --> 00:54:32.447
Make sure that you are copying the one for kite.

00:54:32.447 --> 00:54:33.701
I'm going to click to copy this.

00:54:33.701 --> 00:54:34.681
I'm going to minimize this.

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.

00:54:37.467 --> 00:54:38.803
And then the key is pasted here.

00:54:38.803 --> 00:54:40.445
And after that, I'm just going to press enter.

00:54:40.445 --> 00:54:43.628
And this is going to save the keys into our dashboard.

00:54:43.628 --> 00:54:45.291
So, let's go back into our setup.

00:54:45.291 --> 00:54:47.109
And then let's go into our group.

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.

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.

00:55:00.398 --> 00:55:03.451
I'm going to copy this and I'm going to send this to orchestrator.

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

00:55:13.440 --> 00:55:14.043
to the hemis.

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.

00:55:22.466 --> 00:55:24.543
Then I get this command approval from orchestrator.

00:55:24.543 --> 00:55:25.623
I'm going to click on always.

00:55:25.623 --> 00:55:28.400
And then orchestrator said, hey, step one is completed.

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.

00:55:33.115 --> 00:55:35.996
We can basically send stats to him to directly message Kite.

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.

00:55:39.267 --> 00:55:40.668
So we're going to create one channel for Kite.

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.

00:55:46.900 --> 00:55:49.267
So to do that we're going to click on the three dots here.

00:55:49.267 --> 00:55:51.155
You wouldn't see the option to create a group.

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.

00:55:54.385 --> 00:55:55.791
Then you're going to create a topic.

00:55:55.791 --> 00:55:57.130
Now you're going to have to give the topic a name.

00:55:57.130 --> 00:55:59.175
In our case, I'm going to call this kite, right?

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.

00:56:02.933 --> 00:56:04.638
And after that, just click on create.

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.

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.

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?

00:56:26.728 --> 00:56:27.830
You can send it any message.

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.

00:56:33.792 --> 00:56:36.306
I'm also going to show you that other approach as well.

00:56:36.306 --> 00:56:37.446
Now kite is created.

00:56:37.446 --> 00:56:39.270
We have the telegram topic ID.

00:56:39.280 --> 00:56:40.571
We have the thread ID.

00:56:40.571 --> 00:56:43.505
Come back to all and then here click on create topic.

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.

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.

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.

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.

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.

00:57:09.246 --> 00:57:09.537
Right?

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.

00:57:17.451 --> 00:57:18.685
So now we have the thread ID.

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.

00:57:22.352 --> 00:57:24.468
So we want you to wire our telegram group.

00:57:24.468 --> 00:57:27.708
I'm going to give orchestrator telegram group ID of our current group.

00:57:27.708 --> 00:57:30.564
And I'm also going to give him the thread ids of all the channels.

00:57:30.564 --> 00:57:33.343
So he would have the thread ID of where I'm talking to him.

00:57:33.343 --> 00:57:35.246
He would have the thread ID for kite.

00:57:35.246 --> 00:57:37.556
He would also have the thread ID for the studio group.

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.

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

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.

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.

00:58:03.792 --> 00:58:06.525
The first thing that we're going to need is the telegram group ID.

00:58:06.525 --> 00:58:08.274
Now to get your telegram group ID.

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.

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.

00:58:18.079 --> 00:58:19.852
In my case, this is KM content.

00:58:19.852 --> 00:58:21.910
And then when you click on this, just press send.

00:58:21.920 --> 00:58:24.863
And then the bot will send you the ID of the Telegram group.

00:58:24.863 --> 00:58:26.333
You can click on here to copy this.

00:58:26.333 --> 00:58:29.655
And I'm just going to replace this with this section here called Telegram ID.

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.

00:58:33.239 --> 00:58:35.726
And for that, I'm going to come back into our Telegram group.

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.

00:58:39.904 --> 00:58:42.470
So most likely orchestrator would reply that is one.

00:58:42.480 --> 00:58:44.535
But just to be sure, let me just ask him this as well.

00:58:44.535 --> 00:58:48.118
Okay, she responded that his thread ID is one because that is that was created.

00:58:48.118 --> 00:58:49.283
So I'm going to put in one here.

00:58:49.283 --> 00:58:50.574
I'm going to go to kite.

00:58:50.574 --> 00:58:51.191
Kite was 36.

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.

00:58:55.841 --> 00:58:57.455
And then basically we're done.

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.

00:59:00.563 --> 00:59:01.998
And after that, copy the message.

00:59:01.998 --> 00:59:02.593
Very important.

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

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

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

00:59:32.079 --> 00:59:34.336
user not your root account and and press enter.

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.

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.

00:59:45.473 --> 00:59:46.727
Oops, I think I didn't copy it.

00:59:46.727 --> 00:59:50.164
Well, let me come back into PowerShell control shift C to copy this.

00:59:50.164 --> 00:59:52.789
I'm going to come back to Telegram and I'm going to paste this.

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.

00:59:56.917 --> 00:59:58.163
And I should have found this.

00:59:58.163 --> 01:00:00.931
He says the error means your shell didn't use a bus environment.

01:00:00.931 --> 01:00:02.949
So he's basically giving me another command to run.

01:00:02.949 --> 01:00:05.634
So I'm going to copy this and I'm going to clear the screen again.

01:00:05.634 --> 01:00:07.003
I'm going to paste in this new command.

01:00:07.003 --> 01:00:07.794
I'm going to press enter.

01:00:07.794 --> 01:00:11.374
And then you see that immediately I get a notification that my gateway is restarting.

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.

01:00:15.280 --> 01:00:17.674
So just be a bit more patient when you see this.

01:00:17.674 --> 01:00:18.839
So I'm going to copy this here.

01:00:18.839 --> 01:00:22.630
Control shift C and I'm going to send this orchestrator it worked out.

01:00:22.640 --> 01:00:24.135
This is the message I got.

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.

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.

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.

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.

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.

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.

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.

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.

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.

01:01:10.407 --> 01:01:11.211
I'm going to go to all.

01:01:11.211 --> 01:01:14.464
I'm going to click on the three dots here and go to view group info.

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.

01:01:23.277 --> 01:01:26.003
And I'm going to select this and I'm going to click on add.

01:01:26.003 --> 01:01:28.360
And then now Kite is added to this group.

01:01:28.360 --> 01:01:31.517
We also have to make Kite an administrator for him to be able to work here.

01:01:31.517 --> 01:01:34.527
Still on the all tab, I'm going to click on the three dots.

01:01:34.527 --> 01:01:35.838
I'm going to come to manage group.

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.

01:01:39.697 --> 01:01:41.199
I'm going to add Kite there.

01:01:41.199 --> 01:01:42.549
Review the permissions.

01:01:42.559 --> 01:01:44.283
If you're fine with that, just click on save.

01:01:44.283 --> 01:01:45.811
And then we can close this.

01:01:45.811 --> 01:01:47.662
So now we have added Kite to the group.

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?

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.

01:01:59.117 --> 01:02:02.649
If everything works, we are supposed to see a message from Kite that I am Kite.

01:02:02.649 --> 01:02:04.648
So let's see if this is going to work.

01:02:04.648 --> 01:02:05.217
Perfect.

01:02:05.217 --> 01:02:06.568
I'm a bit relieved.

01:02:06.568 --> 01:02:08.032
So here Kite responded.

01:02:08.032 --> 01:02:10.721
I'm Kite Laris Cadence designer and engineer.

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.

01:02:14.130 --> 01:02:16.862
And if this should respond that he is orchestrator.

01:02:16.862 --> 01:02:19.762
So if Kite is responding in the shadow, then we are screwed up.

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.

01:02:25.112 --> 01:02:25.481
Great.

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.

01:02:30.626 --> 01:02:32.742
Kite if you remember also responded he is kite.

01:02:32.742 --> 01:02:36.570
And then now when I go to studio orchestrator also responded orchestrator is there.

01:02:36.570 --> 01:02:39.530
So that means that the telegram channel to agent binding work.

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.

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

01:02:57.040 --> 01:02:57.753
of the dashboard.

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.

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.

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.

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.

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.

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.

01:03:30.530 --> 01:03:32.752
I'm telling Kite how the whole process is going to work.

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

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

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

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

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.

01:04:21.942 --> 01:04:25.774
So Kite responded that hey understood here is the plan in my own words.

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.

01:04:37.444 --> 01:04:40.797
So Kite is basically ready to fill in to build the dashboard with us.

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.

01:04:47.022 --> 01:04:49.349
I'm going to give this prompt here to get that ready.

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.

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.

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.

01:05:06.000 --> 01:05:07.349
But I'm going to show you how this would work.

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.

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.

01:05:18.495 --> 01:05:20.146
And that is why it makes it so secured.

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.

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.

01:05:30.526 --> 01:05:33.885
So for the first time, we're going to use SSH tunneling to access the dashboard.

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.

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.

01:05:45.315 --> 01:05:45.772
All right.

01:05:45.772 --> 01:05:46.444
So kite is done.

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.

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.

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.

01:06:01.283 --> 01:06:03.743
This is the port that we use to save the dashboard.

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.

01:06:11.785 --> 01:06:14.470
Now here I'm going to put in my password and then just press enter.

01:06:14.480 --> 01:06:16.248
Now it's going to bring you to this point here.

01:06:16.248 --> 01:06:17.979
It's going to be a ca just blinking.

01:06:17.979 --> 01:06:20.882
That means that you are connected to the back end of the VPS server.

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.

01:06:27.680 --> 01:06:28.996
We're going to copy this URL here.

01:06:28.996 --> 01:06:30.906
We're going to paste this in here and press enter.

01:06:30.906 --> 01:06:33.062
And then you see that we are connected to the dashboard.

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.

01:06:36.667 --> 01:06:39.714
But in principle, we are connected to the back end of the Python server.

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.

01:06:44.790 --> 01:06:47.731
And for that we're going to tell Kite to create a web upload page.

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.

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.

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.

01:07:07.927 --> 01:07:10.921
Whilst Kite is building that, let me show you how the template looks.

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.

01:07:15.520 --> 01:07:18.198
So we see that we have the content tab which is a bit populated.

01:07:18.198 --> 01:07:19.551
The idea tab looks empty.

01:07:19.551 --> 01:07:21.270
The studio tab also looks empty.

01:07:21.270 --> 01:07:22.457
Everything looks empty.

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.

01:07:28.503 --> 01:07:29.048
All right.

01:07:29.048 --> 01:07:29.801
So Kite is done.

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.

01:07:34.381 --> 01:07:36.038
And he gave us this URL here for that.

01:07:36.038 --> 01:07:37.190
So I'm going to copy the URL.

01:07:37.200 --> 01:07:39.661
I'm going to open the browser and I'm going to paste in this URL.

01:07:39.661 --> 01:07:42.390
Hopefully, we have a web upload upload dashboard.

01:07:42.400 --> 01:07:43.794
Okay, so this is working quite well.

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.

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.

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.

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.

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.

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

01:08:23.679 --> 01:08:25.147
for the dashboard that we're going to be building.

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.

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

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

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

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

01:09:15.600 --> 01:09:15.877
template.

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.

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.

01:09:26.644 --> 01:09:27.131
All right.

01:09:27.131 --> 01:09:28.402
So Kite says he's done.

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.

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.

01:09:37.127 --> 01:09:38.709
Let me see why this is the case.

01:09:38.719 --> 01:09:40.231
So it could be that our upload didn't work.

01:09:40.231 --> 01:09:43.678
So he's saying that we should re-upload this file through the upload point.

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.

01:09:47.446 --> 01:09:50.934
So I'm going to tell Kite I have re-upload templates pack.json.

01:09:50.934 --> 01:09:52.175
Can you confirm?

01:09:52.175 --> 01:09:52.795
Perfect.

01:09:52.795 --> 01:09:55.546
So it appears that something happened the first time that I uploaded this.

01:09:55.546 --> 01:09:57.410
So he says that yes, he can see it now.

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.

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.

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.

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.

01:10:18.570 --> 01:10:20.692
And then when I open this hopefully beautiful.

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.

01:10:23.737 --> 01:10:26.635
So let me open the template for us to do a one is to one copy.

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.

01:10:30.216 --> 01:10:33.766
So all the pages are identical to what we had in the template.

01:10:33.766 --> 01:10:35.240
So kite is doing a pretty good job.

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.

01:10:39.600 --> 01:10:43.456
Let the agents always create a copy of the dashboard before they make any changes.

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.

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.

01:10:57.345 --> 01:11:00.877
And also on the dashboard, we have this section here that is the version number.

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.

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.

01:11:09.520 --> 01:11:12.012
So when we come to the dashboard and we reload the template.

01:11:12.012 --> 01:11:14.143
So we should now see that he has changed.

01:11:14.143 --> 01:11:15.522
So we used to have editorial.

01:11:15.522 --> 01:11:18.417
Let me open the template for you to see what this looked like before.

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

01:11:29.360 --> 01:11:30.543
updated as we move on.

01:11:30.543 --> 01:11:32.403
So currently we're going to start with the build.

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.

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

01:11:53.280 --> 01:11:55.714
not from the hardcoded stuff that we have in the template.

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.

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.

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.

01:12:14.540 --> 01:12:14.970
All right.

01:12:14.970 --> 01:12:16.327
So Kite is done with that as well.

01:12:16.327 --> 01:12:17.499
Let's look at what Kite built.

01:12:17.499 --> 01:12:18.850
Let's reload the dashboard.

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.

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.

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.

01:12:39.544 --> 01:12:41.083
So kite is basically at 100%.

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.

01:12:47.967 --> 01:12:50.179
So I'm recording today on the second day.

01:12:50.179 --> 01:12:53.725
So basically I would expect that there would be some metrics from the previous day.

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.

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.

01:13:08.636 --> 01:13:11.016
So I'm telling Kite hey this looks awesome.

01:13:11.016 --> 01:13:11.430
Thanks.

01:13:11.440 --> 01:13:15.154
However it appears that the agent metrics being displayed are only from today.

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.

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.

01:13:26.185 --> 01:13:26.709
All right.

01:13:26.719 --> 01:13:27.733
So Kai says he's done.

01:13:27.733 --> 01:13:29.011
It appears there was an issue.

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.

01:13:36.737 --> 01:13:38.315
So he basically fixed this as well.

01:13:38.315 --> 01:13:39.898
So he says that the fixes are made.

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.

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.

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.

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.

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.

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.

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.

01:14:26.586 --> 01:14:27.049
All right.

01:14:27.049 --> 01:14:28.963
So Kite says he's done with the smoke test.

01:14:28.963 --> 01:14:30.576
He repeated this across all the agents.

01:14:30.576 --> 01:14:33.110
And currently you can see that all the agents completed.

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.

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.

01:14:41.600 --> 01:14:43.317
And the same thing also applies to the heat map.

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.

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.

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.

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.

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.

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.

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.

01:15:15.069 --> 01:15:17.521
So he should basically correct this for us as well.

01:15:17.521 --> 01:15:18.965
And Kite has done with that as well.

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.

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.

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.

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.

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.

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?

01:15:59.303 --> 01:16:03.001
And then save it, export it as a picture and then you had your carousel image.

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.

01:16:06.341 --> 01:16:08.564
We're going to build every slide as an HTML.

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.

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.

01:16:21.199 --> 01:16:22.916
So, we're going to build this in a smarter way.

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.

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.

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.

01:16:37.549 --> 01:16:39.370
So, let me take this one here for instance.

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.

01:16:43.840 --> 01:16:47.002
It's an HTML document that is rendering the file like this.

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.

01:16:52.677 --> 01:16:55.466
So a headless browser doesn't need a desktop to run.

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.

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.

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.

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.

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.

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.

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.

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.

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.

01:17:55.280 --> 01:17:57.858
So here for instance this is what our dashboard is also going to do.

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?

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.

01:18:10.400 --> 01:18:11.150
the same thing.

01:18:11.150 --> 01:18:12.545
I can change all the contents.

01:18:12.545 --> 01:18:14.634
This is why I really like what we're building here.

01:18:14.634 --> 01:18:15.641
I can change the layout.

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.

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

01:18:35.280 --> 01:18:36.614
any social media platform.

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.

01:18:44.232 --> 01:18:48.147
We are rendering everything as an HTML file that will be completely edited.

01:18:48.147 --> 01:18:50.525
Quite crazy the things that you can do with standard HTML.

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.

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.

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

01:19:13.520 --> 01:19:14.081
that we have.

01:19:14.081 --> 01:19:16.562
So we are not building images straight ahead.

01:19:16.562 --> 01:19:19.479
We build an HTML file which contains the structure that we want.

01:19:19.479 --> 01:19:22.960
Then once we are satisfied with it, we export it into an image.

01:19:22.960 --> 01:19:26.123
And for this we are using a headless browser that is called Chromium.

01:19:26.123 --> 01:19:29.507
And by default, most of the Hemis setups come with Chromium.

01:19:29.507 --> 01:19:31.754
So we might not even need to install this on our own.

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.

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.

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.

01:19:46.315 --> 01:19:47.830
That is the same concept I'm going to use.

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.

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.

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.

01:20:01.472 --> 01:20:03.292
And Kite is done with that as well.

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.

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.

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.

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.

01:20:29.264 --> 01:20:32.608
If it's a backend prompt then it wouldn't show anything on the dashboard.

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.

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.

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.

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.

01:20:56.052 --> 01:20:58.094
So now we are done with the exporter prompt.

01:20:58.094 --> 01:21:01.108
The next prompt is going to be the template packs auto fit.

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.

01:21:06.080 --> 01:21:07.872
So when I click on generate ideas, let's see.

01:21:07.872 --> 01:21:10.599
I already have some ideas that are already generated here.

01:21:10.599 --> 01:21:14.670
So let's look at for instance building a one person AI operation team.

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.

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.

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.

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.

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.

01:21:48.304 --> 01:21:52.098
So all the templates that you see here like I said these are basically HTML templates.

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.

01:21:57.405 --> 01:21:59.580
So this one for instance has longer characters.

01:21:59.580 --> 01:22:01.536
This has a different layout and stuff like that.

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.

01:22:10.117 --> 01:22:12.324
And this is what I call the auto fit feature.

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.

01:22:18.381 --> 01:22:21.170
So here for instance, if I say that, hey, I like this content.

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.

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

01:22:35.760 --> 01:22:37.892
Vera generated to fit that template.

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

01:22:49.199 --> 01:22:50.612
pipeline to talk to the crew.

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

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.

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.

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.

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.

01:23:23.729 --> 01:23:26.768
And these are the things that prompt 17 is going to do.

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.

01:23:34.000 --> 01:23:35.750
And then we're going to have prompt 18.

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.

01:23:40.583 --> 01:23:44.755
And I'm basically just telling Atlas how I want the carousels to be designed.

01:23:44.755 --> 01:23:46.628
So here, these are just examples of what I put in.

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.

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.

01:24:06.041 --> 01:24:09.861
And here we're also giving them an orientation on how he's generating an idea.

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.

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.

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

01:24:31.920 --> 01:24:33.008
want to apply this to.

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.

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.

01:24:44.834 --> 01:24:46.433
So I'm going to render all these prompts.

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.

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.

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.

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.

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.

01:25:15.102 --> 01:25:16.732
So I'm going to run all these prompts.

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.

01:25:21.760 --> 01:25:22.057
Right.

01:25:22.057 --> 01:25:24.633
So Kite is done with processing all those prompts as well.

01:25:24.633 --> 01:25:26.746
Like I said, I didn't have to respond to anything.

01:25:26.746 --> 01:25:30.255
I just copy pasted all the prompts to Kite and he processed all the back end.

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.

01:25:36.021 --> 01:25:39.024
The first API key that we're going to search is for publicity.

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.

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

01:25:55.840 --> 01:25:58.130
before the contents of the slides have been written.

01:25:58.130 --> 01:26:00.194
Just to give you an example of where we would need this.

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.

01:26:06.281 --> 01:26:09.533
So for instance, let's go for the builder AI automation map.

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.

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.

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.

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.

01:26:42.896 --> 01:26:44.950
So that's going to be the first key that we're going to get.

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.

01:26:48.239 --> 01:26:51.073
I'm also going to provide a link to this in the description section.

01:26:51.073 --> 01:26:53.865
Then when you're here, just create an account or login if you already have one.

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.

01:26:56.481 --> 01:26:59.274
You can just come to the left section here and click on API keys.

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.

01:27:03.843 --> 01:27:05.830
And you can put in web key you want to go with.

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.

01:27:10.593 --> 01:27:13.451
And after that, you see that an API key would be generated for you.

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.

01:27:17.628 --> 01:27:20.271
The next stage we're going to get an API key from imageB.

01:27:20.271 --> 01:27:22.427
But let me explain to you why we need this.

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.

01:27:29.345 --> 01:27:29.750
Right?

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.

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.

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.

01:27:43.873 --> 01:27:45.539
And this is very very complex, right?

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.

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.

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.

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.

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.

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.

01:28:26.315 --> 01:28:27.366
Now this BB is free.

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.

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.

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.

01:28:48.286 --> 01:28:49.413
This is going to happen.

01:28:49.413 --> 01:28:51.450
All this transfer is going to happen automatically.

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.

01:28:54.340 --> 01:28:56.454
We're going to wire in all those connections.

01:28:56.454 --> 01:28:58.790
And to do that, we're going to come to image.b.

01:28:58.800 --> 01:28:59.611
It's completely free.

01:28:59.611 --> 01:29:01.153
So, you can just create an free account.

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.

01:29:04.897 --> 01:29:06.959
And this brings you to the API page.

01:29:06.959 --> 01:29:09.423
When you are here, just click on add API key.

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.

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.

01:29:21.120 --> 01:29:23.281
Now, here there are several platforms that are out there.

01:29:23.281 --> 01:29:25.913
As an example, we have Buffer who can do this for us.

01:29:25.913 --> 01:29:28.411
And we also have Metro who can also do this for us.

01:29:28.411 --> 01:29:29.466
Both of them work.

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.

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.

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.

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.

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.

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.

01:30:10.126 --> 01:30:13.751
So I didn't want to pay €43 a month just for two social media platforms.

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.

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.

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.

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.

01:30:42.665 --> 01:30:46.266
And I think in my case I went with the five plan which is essential right?

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.

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.

01:30:59.187 --> 01:31:02.669
So if you have Tik Tok, Facebook, Instagram it becomes $15.

01:31:02.669 --> 01:31:06.608
If you add LinkedIn it becomes $20 and so it can get a bit expensive.

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.

01:31:16.955 --> 01:31:18.312
Let me do an example here for you.

01:31:18.312 --> 01:31:21.747
When I click on slides, you can see that the slides are downloaded here.

01:31:21.747 --> 01:31:25.415
When I click on this, you see that I have all the slides downloaded here.

01:31:25.415 --> 01:31:28.363
Let me go to thumbnails and you can see that I have all the images.

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

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

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

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.

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.

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.

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.

01:32:29.253 --> 01:32:31.430
And to do that, we're going to come back to PowerShell.

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.

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

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.

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.

01:33:00.201 --> 01:33:02.286
So here I'm going to paste in my buffer key.

01:33:02.286 --> 01:33:03.009
Paste this in.

01:33:03.009 --> 01:33:04.452
And after that just press enter.

01:33:04.452 --> 01:33:07.630
And then it's going to ask you if your image BB API key.

01:33:07.630 --> 01:33:09.090
I'm going to copy this as well.

01:33:09.090 --> 01:33:10.173
I'm going to paste this in.

01:33:10.173 --> 01:33:10.792
Press enter.

01:33:10.792 --> 01:33:13.547
And then the last one you're going to be asked for your perplexity.

01:33:13.547 --> 01:33:13.777
Oops.

01:33:13.777 --> 01:33:15.294
I realized that I made a mistake.

01:33:15.294 --> 01:33:18.041
So the first one that I put in wasn't for buffer.

01:33:18.041 --> 01:33:19.156
It was for perplexity.

01:33:19.156 --> 01:33:21.443
So I'm going to cancel this and I'm going to run this again.

01:33:21.443 --> 01:33:22.699
I hope it doesn't get messed up.

01:33:22.699 --> 01:33:24.921
I'm going to tell Kite in the process that I made a mistake.

01:33:24.921 --> 01:33:26.631
I'm going to recall the same command that I used.

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.

01:33:29.358 --> 01:33:31.010
Then I'm going to copy the image PV.

01:33:31.010 --> 01:33:33.023
Then I'm going to copy the Plexity API key.

01:33:33.023 --> 01:33:34.278
I'm going to paste this in.

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.

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.

01:33:43.440 --> 01:33:46.377
He should do a smoke test to make sure that all the keys are working.

01:33:46.377 --> 01:33:48.149
So I'm going to copy this and I'm going to give to Kite.

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.

01:33:56.219 --> 01:33:58.124
Then I'm going to tell him to do a smoke test.

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.

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.

01:34:12.337 --> 01:34:15.153
It doesn't cost you anything, but it really does support my channel's growth.

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.

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.

01:34:29.631 --> 01:34:30.705
And kite is done as well.

01:34:30.705 --> 01:34:31.740
So he did a smoke test.

01:34:31.740 --> 01:34:34.991
He verified that buffer works, imageb works, and perplexity works.

01:34:34.991 --> 01:34:35.430
All right.

01:34:35.440 --> 01:34:37.285
In the next stage, we're going to put in prompt 20.

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.

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.

01:34:48.380 --> 01:34:48.822
All right.

01:34:48.822 --> 01:34:50.370
And Kite is done with that as well.

01:34:50.370 --> 01:34:53.272
Now the next three prompts are basically going to be the design prompts.

01:34:53.272 --> 01:34:57.454
This is going to wire the ideas tab, the promotes tab, and also the studio tab.

01:34:57.454 --> 01:34:59.906
And after that, we're going to basically test the whole thing.

01:34:59.906 --> 01:35:02.458
So now we have this idea tab that has nothing there.

01:35:02.458 --> 01:35:04.407
We have the studio tab that has nothing there.

01:35:04.407 --> 01:35:06.470
We have the publish tab that also has nothing there.

01:35:06.480 --> 01:35:07.552
And also the templates tab.

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.

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.

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.

01:35:18.460 --> 01:35:18.868
All right.

01:35:18.868 --> 01:35:21.157
So Kite is done with processing all those prompts.

01:35:21.157 --> 01:35:23.232
Now, I know we've been building for some time now.

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.

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.

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.

01:35:37.360 --> 01:35:40.160
So, he just did a smoke test to make sure that the ideas are working.

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.

01:35:46.733 --> 01:35:49.317
So, I see a notification that he's doing the research.

01:35:49.317 --> 01:35:50.927
Let's wait till the results come out.

01:35:50.927 --> 01:35:51.922
And this worked very well.

01:35:51.922 --> 01:35:55.110
So you can see that we have four ideas that was generated by Atlas.

01:35:55.120 --> 01:35:57.998
Browser agents should verify, not just click.

01:35:57.998 --> 01:36:00.659
Your agent needs a sandbox before it needs more tokens.

01:36:00.659 --> 01:36:03.189
Now let's say that we want to promote one of these ideas.

01:36:03.199 --> 01:36:05.593
So let's go with stop giving agents your whole app.

01:36:05.593 --> 01:36:06.870
And let's click on promote.

01:36:06.880 --> 01:36:10.151
And then here, let's say we want to generate 10 carousel slides.

01:36:10.151 --> 01:36:12.167
And I'm going to say research perlexity.

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.

01:36:19.007 --> 01:36:21.283
And I also added this option here steroid mode.

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.

01:36:25.806 --> 01:36:27.470
So let's just enable those two as well.

01:36:27.470 --> 01:36:29.384
And then let's go to write 10 slides.

01:36:29.384 --> 01:36:30.611
And then this is working.

01:36:30.611 --> 01:36:31.784
So Vera is triggered.

01:36:31.784 --> 01:36:34.384
Vera is the agent that does the writing of the content.

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.

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.

01:36:42.419 --> 01:36:42.892
All right.

01:36:42.892 --> 01:36:44.013
And Vera created the content.

01:36:44.013 --> 01:36:46.999
So you can see here that we have all the 10 slides generated.

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.

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.

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.

01:37:01.245 --> 01:37:03.896
Now here we're going to be generating an Instagram carousel.

01:37:03.896 --> 01:37:05.810
So we need a 4 is to5 aspect ratio.

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.

01:37:09.213 --> 01:37:12.040
I'm going to select that and I'm going to click fit copy to this.

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.

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

01:37:34.719 --> 01:37:37.048
that she generated to fit the template that we have.

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.

01:37:42.723 --> 01:37:46.987
Okay, package fat and then basically wrote all the content that would be on the slide.

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.

01:37:53.188 --> 01:37:55.116
Now you see a notification open in studio.

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.

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

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

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

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

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

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.

01:39:01.759 --> 01:39:02.731
Now, let me come here.

01:39:02.731 --> 01:39:03.988
Let me click on post now.

01:39:03.988 --> 01:39:07.503
And then here, because I've configured only Instagram, it's only going to show Instagram.

01:39:07.503 --> 01:39:09.061
I'm going to click on Instagram only.

01:39:09.061 --> 01:39:11.430
And it's going to warn me and I'm going to get notification.

01:39:11.440 --> 01:39:12.870
Hey, are you sure you want to post this?

01:39:12.880 --> 01:39:14.715
I'm going to say yes, post now.

01:39:14.715 --> 01:39:16.629
And then this is going to be pushed to buffer.

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.

01:39:22.248 --> 01:39:24.844
And we get notification that this has been pushed to buffer.

01:39:24.844 --> 01:39:25.891
Let's click on okay.

01:39:25.891 --> 01:39:28.618
And this gets put from the studio tab into the publish tab.

01:39:28.618 --> 01:39:30.038
Once this is pushed to buffer.

01:39:30.038 --> 01:39:32.134
Now let's go to Instagram and see if we'll see this post.

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.

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.

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.

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.

01:39:52.521 --> 01:39:53.811
So this is working very well.

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.

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.

01:40:02.552 --> 01:40:06.260
So I'm telling kite hey the publish tab is not displaying any published content.

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.

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.

01:40:16.021 --> 01:40:17.462
Now two more things that we're going to do.

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.

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.

01:40:31.680 --> 01:40:35.167
And then you can also select the number of generation defaults that you want to have.

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.

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.

01:40:41.930 --> 01:40:45.146
And after that, we can go into the configuration tab and wire this in as well.

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

01:40:55.840 --> 01:40:57.036
of posts that you have scheduled.

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.

01:41:02.466 --> 01:41:04.087
All right so kite is done with that.

01:41:04.087 --> 01:41:05.189
Let's reload the dashboard.

01:41:05.199 --> 01:41:06.629
Then let's come to the publish tab.

01:41:06.639 --> 01:41:06.948
Perfect.

01:41:06.948 --> 01:41:09.839
And now you see that the post that was published is already here.

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

01:41:19.520 --> 01:41:21.350
prompt to wire in the configuration tab.

01:41:21.360 --> 01:41:21.735
All right.

01:41:21.735 --> 01:41:24.689
So that means that when we come to the configuration put up, let me reload this.

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.

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.

01:41:38.480 --> 01:41:41.476
And after that, we're basically done with the main aspect of the build.

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.

01:41:46.857 --> 01:41:51.195
Now what we're going to build now is going to be the telegram remote control.

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.

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.

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.

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.

01:42:14.220 --> 01:42:16.111
He also said that he did a smoke test.

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.

01:42:22.172 --> 01:42:24.426
Now he did mention something that he couldn't run.

01:42:24.426 --> 01:42:25.969
Let me scroll down to the bottom.

01:42:25.969 --> 01:42:27.447
He said that he's he has a blocker.

01:42:27.447 --> 01:42:30.408
So he wasn't able to restart the hermits gateway himself.

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.

01:42:35.744 --> 01:42:36.672
So let me copy this.

01:42:36.672 --> 01:42:37.780
Let me come to PowerShell.

01:42:37.780 --> 01:42:38.957
Let me clear the screen here.

01:42:38.957 --> 01:42:39.990
Then let me paste in this.

01:42:40.000 --> 01:42:41.642
Let me connect to the server again.

01:42:41.642 --> 01:42:43.590
Then let me run the command he gave to us.

01:42:43.600 --> 01:42:44.148
All right.

01:42:44.148 --> 01:42:45.607
So this gateway has restarted.

01:42:45.607 --> 01:42:48.184
So, I'm going to wait a bit for the gateway to completely boot.

01:42:48.184 --> 01:42:50.387
And after that, I'm going to send a message to Kite restarted.

01:42:50.387 --> 01:42:52.994
So, I'm going to now send Kite a message restarted.

01:42:52.994 --> 01:42:56.033
And then hopefully he should be able to continue with what he was doing.

01:42:56.033 --> 01:42:56.431
All right.

01:42:56.431 --> 01:42:57.747
And he says that he's done.

01:42:57.747 --> 01:42:59.795
So, basically, everything is wired in.

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.

01:43:05.440 --> 01:43:07.156
Now, let me check what the slash command was.

01:43:07.156 --> 01:43:09.748
I don't remember if it was ideas or if it was idea.

01:43:09.748 --> 01:43:10.616
So, it's ideas.

01:43:10.616 --> 01:43:12.509
So, let's send forward slash ideas.

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.

01:43:17.610 --> 01:43:20.576
So we have fresh ideas stop asking one agent to do the whole job.

01:43:20.576 --> 01:43:22.980
So when I come to the studio tab I also see the same thing.

01:43:22.980 --> 01:43:25.751
So basically this is mirroring whatever that we have on our dashboard.

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.

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.

01:43:37.544 --> 01:43:38.838
Oops, I made a mistake.

01:43:38.838 --> 01:43:40.249
I intended to type in 11.

01:43:40.249 --> 01:43:41.878
And this was exactly correct.

01:43:41.878 --> 01:43:43.818
He says that idea one was not found.

01:43:43.818 --> 01:43:45.055
So let me do it again.

01:43:45.055 --> 01:43:47.320
Forward/promotees and then let me send 11.

01:43:47.320 --> 01:43:48.627
That was what I intended to send.

01:43:48.627 --> 01:43:50.707
And then you can see that immediately we triggered this.

01:43:50.707 --> 01:43:52.205
This is also live on the dashboard.

01:43:52.205 --> 01:43:54.222
We can see that Vera is now promoted.

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.

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.

01:44:03.134 --> 01:44:04.708
So it worked on the dashboard.

01:44:04.708 --> 01:44:06.614
We can see the ideas have been generated.

01:44:06.614 --> 01:44:10.663
But on Telegram we did get this promotes field list attributes no get.

01:44:10.663 --> 01:44:13.203
So I'm going to tell Kite to fix this as well for us.

01:44:13.203 --> 01:44:14.733
So I'm giving Kite this prompt.

01:44:14.733 --> 01:44:17.273
I tested the idea telegram command enabled perfectly.

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.

01:44:24.467 --> 01:44:26.446
So you see what the problem is and fix it for us.

01:44:26.446 --> 01:44:26.865
All right.

01:44:26.865 --> 01:44:27.830
So Kite says he's done.

01:44:27.840 --> 01:44:28.498
Let's try this again.

01:44:28.498 --> 01:44:30.754
I'm going to come back to this app and I'm going to trigger ideas.

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?

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

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

01:44:56.159 --> 01:44:59.750
tell which agent say hey give me some ideas on automation and stuff like that.

01:44:59.760 --> 01:45:03.128
So let's say here for instance that we want to promote just an example.

01:45:03.128 --> 01:45:06.070
Let me go to promote and let me put in oops 18.

01:45:06.080 --> 01:45:09.801
Sorry there's a typo here promote 18 and then let me put in the templates.

01:45:09.801 --> 01:45:12.394
Let me go to the templates tab just to get an example.

01:45:12.394 --> 01:45:15.194
Let's say I want to go with the statement template.

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.

01:45:19.662 --> 01:45:21.667
So weirdly it says template not found.

01:45:21.667 --> 01:45:22.982
Let me see why this is the case.

01:45:22.982 --> 01:45:25.831
Let me type in templates to see if I can get a list of templates.

01:45:25.831 --> 01:45:29.072
So it appears that the names of the templates are different than what I see here.

01:45:29.072 --> 01:45:30.641
So let's look for an example.

01:45:30.641 --> 01:45:34.191
Let me say I want to go with a template called isometric.

01:45:34.191 --> 01:45:34.644
Right?

01:45:34.644 --> 01:45:36.865
Let me come back and promote this again.

01:45:36.865 --> 01:45:39.148
And then let me go to isometric.

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.

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

01:46:01.119 --> 01:46:04.210
this for you as well and then basically you can see that the slides are generated.

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.

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.

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.

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.

01:46:28.837 --> 01:46:32.753
For instance, on the dashboard when I type statement, it tells me template not found.

01:46:32.753 --> 01:46:34.231
So, he should make sure that he fixes this.

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.

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.

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.

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

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.

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.

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

01:47:35.040 --> 01:47:35.896
password every time.

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.

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.

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.

01:48:01.440 --> 01:48:04.664
Now to do this we're going to download the application that is called tail skill.

01:48:04.664 --> 01:48:06.070
Now this is completely for free.

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.

01:48:10.290 --> 01:48:14.007
Now when you are here just come to this section here and click on get started.

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.

01:48:20.927 --> 01:48:25.153
Now once the installation is complete you can then come here and download sales skills.

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.

01:48:31.108 --> 01:48:33.171
Select whatever operating system that you're working with.

01:48:33.171 --> 01:48:34.584
In my case I'm working with Windows.

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.

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.

01:48:42.977 --> 01:48:44.408
So I'm going to open the installer.

01:48:44.408 --> 01:48:47.261
I'm going to accept the terms and conditions and then just click on install.

01:48:47.261 --> 01:48:49.471
And the tail scale application is going to be completed.

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.

01:48:55.093 --> 01:48:57.585
He's been working for close to 15 minutes now.

01:48:57.585 --> 01:48:58.663
And he's still not done.

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.

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.

01:49:07.199 --> 01:49:11.430
Yeah, this one here for tail skill with some I think about eight or seven dots.

01:49:11.440 --> 01:49:11.685
Right?

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.

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.

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.

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.

01:49:31.648 --> 01:49:33.632
So now the tail skill application is installed.

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.

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

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.

01:49:54.094 --> 01:49:56.595
So let me wait for kite to finish the task that he's doing.

01:49:56.595 --> 01:49:57.738
I think he's almost done.

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

01:50:07.760 --> 01:50:08.182
tutorial.

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.

01:50:13.097 --> 01:50:14.258
So just sign up to my membership.

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.

01:50:21.815 --> 01:50:24.628
And now finally kite is done with that big job.

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.

01:50:31.065 --> 01:50:33.924
Going back to the tail skill points, Kite is done with the work.

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.

01:50:37.654 --> 01:50:39.714
And for that, I'm going to give Kite this prompt here.

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.

01:50:46.775 --> 01:50:49.924
And I'm just giving him the guide on how I want this to be.

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.

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.

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.

01:51:02.719 --> 01:51:03.734
I'm already exhausted.

01:51:03.734 --> 01:51:05.843
I've been recording for more than 10 hours.

01:51:05.843 --> 01:51:07.303
So I'm getting tired myself.

01:51:07.303 --> 01:51:07.848
All right.

01:51:07.848 --> 01:51:08.669
So Kite is done.

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.

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.

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.

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.

01:51:28.346 --> 01:51:30.265
So, in my case, computer mechanic.com tailnet.

01:51:30.265 --> 01:51:33.422
I'm going to click on connect and then the login is accessible.

01:51:33.422 --> 01:51:36.593
So, our device has now been bound to our tail skill account.

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.

01:51:42.435 --> 01:51:42.758
Right.

01:51:42.758 --> 01:51:44.457
So, kite is done with that as well.

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.

01:51:51.794 --> 01:51:53.626
Now let me be sure that this is working.

01:51:53.626 --> 01:51:54.743
Let me reload the dashboard.

01:51:54.743 --> 01:51:57.375
Here we have the SSA tunneling working which is expected.

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

01:52:07.199 --> 01:52:07.517
reached.

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.

01:52:12.075 --> 01:52:13.811
So let me copy the dashboard URL.

01:52:13.811 --> 01:52:15.189
Let me paste in this URL.

01:52:15.199 --> 01:52:15.780
And then hooray.

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.

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.

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.

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.

01:52:40.227 --> 01:52:42.470
So this brings us to the end of the tutorial.

01:52:42.480 --> 01:52:44.326
Let me walk you through shortly what we have built.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

01:54:27.307 --> 01:54:29.525
If you found the video helpful, please hit the like button.

01:54:29.525 --> 01:54:33.119
Subscribe to my channel to see more like this.
