WEBVTT

00:00:00.000 --> 00:00:03.120
Ever feel like your digital life is just overwhelming,

00:00:03.379 --> 00:00:06.000
like you're constantly wading through this flood

00:00:06.000 --> 00:00:08.599
of tech news, maybe a dozen tabs open, hitting

00:00:08.599 --> 00:00:10.839
refresh, and you still feel like you're missing

00:00:10.839 --> 00:00:12.980
the important stuff? Yeah, that feeling is real.

00:00:13.320 --> 00:00:17.039
It's this like background anxiety of trying to

00:00:17.039 --> 00:00:20.699
stay current, manage your own projects, and maybe

00:00:20.699 --> 00:00:23.260
just have a minute to think. What if you could

00:00:23.260 --> 00:00:25.899
actually... change that? What if there was this

00:00:25.899 --> 00:00:29.579
open source tool that lets you build your own

00:00:29.579 --> 00:00:32.039
kind of digital assistant to cut through all

00:00:32.039 --> 00:00:35.189
that noise? Well, welcome back to the deep dive.

00:00:35.270 --> 00:00:37.409
That's exactly what we're digging into today.

00:00:37.630 --> 00:00:40.210
How you can actually build your very own personal

00:00:40.210 --> 00:00:43.170
intelligence agent. We've got this really comprehensive

00:00:43.170 --> 00:00:45.789
guide here covering how to build a pretty sophisticated

00:00:45.789 --> 00:00:49.210
automation system. And our mission today, it's

00:00:49.210 --> 00:00:50.990
simple, really. We want to show you how to take

00:00:50.990 --> 00:00:53.149
that information overload and turn it into your

00:00:53.149 --> 00:00:56.710
own personalized AI powered command center. We'll

00:00:56.710 --> 00:00:59.149
walk through setting up the tool, building an

00:00:59.149 --> 00:01:01.829
AI news aggregator, exploring direct command

00:01:01.829 --> 00:01:05.159
line stuff. setting up a YouTube monitor and

00:01:05.159 --> 00:01:08.000
even getting into AI agents that can actually

00:01:08.000 --> 00:01:10.480
think and act. You know, that feeling of drowning

00:01:10.480 --> 00:01:13.340
in digital stuff. It's so common for anyone who's

00:01:13.340 --> 00:01:16.159
really into tech. Your home lab, personal projects,

00:01:16.280 --> 00:01:19.079
just keeping up. It can be completely exhausting.

00:01:19.379 --> 00:01:21.719
Oh, absolutely. And that's exactly where NN,

00:01:21.879 --> 00:01:24.519
that's N8N, by the way, comes in. Think of it

00:01:24.519 --> 00:01:27.959
as this like open source automation powerhouse.

00:01:28.200 --> 00:01:30.439
It's ready to genuinely shake up your workflow.

00:01:30.760 --> 00:01:33.189
N8N. Got it. Yeah, it's got a bit of a nerdy

00:01:33.189 --> 00:01:35.010
name, maybe a pun in there, but honestly, the

00:01:35.010 --> 00:01:36.969
power is serious. It sounds like it. I've heard

00:01:36.969 --> 00:01:39.609
comparisons. Like if the usual automation tools

00:01:39.609 --> 00:01:43.510
are, say, a friendly family car, then N8N is

00:01:43.510 --> 00:01:46.310
more like a custom -built street -legal F1 car.

00:01:46.430 --> 00:01:49.209
It's sleeker, way smarter, and just has this

00:01:49.209 --> 00:01:51.670
monstrous engine. That's a great analogy, actually.

00:01:52.189 --> 00:01:56.140
And, crucially, it's free. Right. And it really

00:01:56.140 --> 00:01:58.319
respects your privacy. That feels like a big

00:01:58.319 --> 00:02:00.700
deal. It's not just about automating tasks. It's

00:02:00.700 --> 00:02:03.219
about taking back control, keeping your data

00:02:03.219 --> 00:02:06.040
yours and building something exactly for you.

00:02:06.159 --> 00:02:08.259
That's the core idea. You become the architect.

00:02:08.580 --> 00:02:12.939
Yeah. But fair warning here. N .A .N. It's incredibly

00:02:12.939 --> 00:02:16.060
addictive. Yeah. Seriously. You might start simple,

00:02:16.159 --> 00:02:17.900
maybe just thinking, I'll build a little news

00:02:17.900 --> 00:02:20.120
digest. Right. Next thing you know, you're deep

00:02:20.120 --> 00:02:22.560
down the rabbit hole building AI agents that

00:02:22.560 --> 00:02:24.560
are troubleshooting your servers for you. You've

00:02:24.560 --> 00:02:27.680
been warned. Okay. Noted. So for this deep dive,

00:02:27.819 --> 00:02:30.090
what's the plan? We're building something. Specific?

00:02:30.189 --> 00:02:32.550
Yeah. We're constructing a smart news aggregator

00:02:32.550 --> 00:02:35.030
with AI summaries, an automated YouTube channel

00:02:35.030 --> 00:02:36.949
monitor, getting instant Discord notifications,

00:02:37.349 --> 00:02:40.550
powerful command line integrations, and finally

00:02:40.550 --> 00:02:43.990
building a thinking AI agent. Wow. Okay. That's

00:02:43.990 --> 00:02:45.969
quite a build. So what's the fundamental shift

00:02:45.969 --> 00:02:48.370
this tool offers compared to the more traditional

00:02:48.370 --> 00:02:50.849
automation platforms? It's really about moving

00:02:50.849 --> 00:02:54.530
away from those fixed kind of rigid rules towards

00:02:54.530 --> 00:02:57.490
having that adaptable, powerful F1 car we talked

00:02:57.490 --> 00:02:59.800
about. One that respects... your privacy and

00:02:59.800 --> 00:03:01.960
lets you build precisely what you need. That

00:03:01.960 --> 00:03:04.240
makes sense. Adaptability and control. Okay,

00:03:04.300 --> 00:03:07.039
so once you decide you want this power, the first

00:03:07.039 --> 00:03:10.319
big question is, where do you actually put it?

00:03:10.379 --> 00:03:13.139
Where does it live? Exactly. That's the foundational

00:03:13.139 --> 00:03:15.300
decision. Where does your NANN instance run?

00:03:15.960 --> 00:03:18.340
Cloud or on -premise? It's that classic fork

00:03:18.340 --> 00:03:20.580
in the road. Right. The cloud path sounds like

00:03:20.580 --> 00:03:23.120
the express lane, especially if you're just starting

00:03:23.120 --> 00:03:26.099
out. Using a cloud provider seems like it gets

00:03:26.099 --> 00:03:28.560
you automating faster. It absolutely does. Less

00:03:28.560 --> 00:03:30.560
complexity, you don't manage the underlying server,

00:03:30.659 --> 00:03:33.319
better connectivity usually. It's quick. Like

00:03:33.319 --> 00:03:35.300
how quick? We're talking maybe a five -minute

00:03:35.300 --> 00:03:39.259
launch sequence. Sign up, pick a plan like a

00:03:39.259 --> 00:03:41.819
virtual private server with NNN pre -installed,

00:03:41.819 --> 00:03:44.180
maybe two cores, four gigs of RAM, deploy it,

00:03:44.219 --> 00:03:46.460
create your admin account. Done. Five minutes.

00:03:46.620 --> 00:03:48.960
So then there's the on -prem path. This is for

00:03:48.960 --> 00:03:52.039
the, let's call them the home lab warriors. Ah,

00:03:52.039 --> 00:03:54.780
yes. I know a few of those. Right. Running it

00:03:54.780 --> 00:03:57.080
on your own hardware, you get absolute control,

00:03:57.319 --> 00:04:00.939
maximum data privacy, and honestly, that satisfaction

00:04:00.939 --> 00:04:03.259
of running it yourself. Definitely more control,

00:04:03.340 --> 00:04:05.759
more privacy, maybe more rewarding if you're

00:04:05.759 --> 00:04:08.219
into that stuff. For sure. Full control, data

00:04:08.219 --> 00:04:11.039
stays home, personal reward. So for someone just

00:04:11.039 --> 00:04:14.020
curious, maybe a beginner, what's the biggest

00:04:14.020 --> 00:04:17.050
plus of starting with that cloud path? Speed

00:04:17.050 --> 00:04:19.189
and simplicity, hands down. You're automating

00:04:19.189 --> 00:04:21.569
almost instantly, no fuss. Right, gets you going

00:04:21.569 --> 00:04:23.649
quickly. Okay. Okay, so we know where we could

00:04:23.649 --> 00:04:25.790
build it. Let's actually build something, something

00:04:25.790 --> 00:04:28.589
useful right away, like that AI news aggregation

00:04:28.589 --> 00:04:30.350
machine you mentioned. Let's do it. The core

00:04:30.350 --> 00:04:33.350
idea in NAN, the philosophy, it's pretty intuitive.

00:04:33.490 --> 00:04:36.579
Think of a workflow like a... A digital Rube

00:04:36.579 --> 00:04:39.220
Goldberg machine. Okay. Data goes in, flows through

00:04:39.220 --> 00:04:41.720
these different blocks called nodes, each doing

00:04:41.720 --> 00:04:44.139
one specific job, and then something useful comes

00:04:44.139 --> 00:04:46.360
out. You've got triggers, which start things.

00:04:46.639 --> 00:04:49.199
The on switch. Exactly. Data nodes gather stuff.

00:04:49.300 --> 00:04:52.220
Logic nodes are the brains doing filtering or

00:04:52.220 --> 00:04:54.560
changing things. And action nodes, well, they

00:04:54.560 --> 00:04:56.860
do something. Send a message, save a file, whatever.

00:04:57.120 --> 00:04:59.279
It's like stacking Lego blocks, but with data.

00:04:59.480 --> 00:05:02.660
Perfect analogy. So you start with a blank workflow.

00:05:02.860 --> 00:05:05.779
First thing, add a manual trigger. That's your

00:05:05.779 --> 00:05:08.399
test button. Lets you run it anytime. Crucial

00:05:08.399 --> 00:05:10.879
for building, right? Instant feedback. Absolutely.

00:05:11.019 --> 00:05:13.300
But for real automation, you need it to run on

00:05:13.300 --> 00:05:15.699
its own. So you add a second trigger, a schedule

00:05:15.699 --> 00:05:18.759
trigger, maybe every day at 7 a .m. So you have

00:05:18.759 --> 00:05:21.500
both a test button and a schedule. Yep. It's

00:05:21.500 --> 00:05:24.040
kind of like a pro setup, a dev mode and a prod

00:05:24.040 --> 00:05:26.319
mode trigger. You can turn the schedule off while

00:05:26.319 --> 00:05:29.459
you're tinkering. Smart. Okay, triggers are set.

00:05:29.769 --> 00:05:32.329
Now, fetching the news. Right. You need a data

00:05:32.329 --> 00:05:35.870
gatherer. For RSS feeds, there's an RSS read

00:05:35.870 --> 00:05:39.240
node. You just point it at a feed URL, like a

00:05:39.240 --> 00:05:41.660
bleeping computer's feed, for example. Just paste

00:05:41.660 --> 00:05:44.100
the URL in? Pretty much. Then you run just that

00:05:44.100 --> 00:05:46.699
node and bam, that's the aha moment. What happens?

00:05:46.980 --> 00:05:49.319
The output panel just lights up. Suddenly you

00:05:49.319 --> 00:05:51.920
see all the structured data titles, links, authors,

00:05:52.240 --> 00:05:55.360
dates, the content snippets, all pulled neatly

00:05:55.360 --> 00:05:58.120
from the feed. Ah, okay. So you see the raw data

00:05:58.120 --> 00:06:00.620
grabbed. Exactly. And you realize, okay, this

00:06:00.620 --> 00:06:02.160
isn't just clicking buttons. This is actually

00:06:02.160 --> 00:06:05.360
commanding information. So what's the core concept

00:06:05.360 --> 00:06:07.779
that makes... these workflows so flexible then?

00:06:07.920 --> 00:06:10.959
I'd say it's about chaining those specific function

00:06:10.959 --> 00:06:14.019
nodes like Lego blocks to build complex processes

00:06:14.019 --> 00:06:16.500
step by step. Precisely. OK, so we have the news

00:06:16.500 --> 00:06:20.139
data, but data trapped inside NANN isn't very

00:06:20.139 --> 00:06:22.939
useful, is it? No, you need to get it out. And

00:06:22.939 --> 00:06:26.149
you mentioned Discord. Like a private channel

00:06:26.149 --> 00:06:28.410
as a command center. Yeah, exactly. Pipe that

00:06:28.410 --> 00:06:30.189
curated news right into a place you already check.

00:06:30.370 --> 00:06:33.050
So you add a Discord node after the RSS node,

00:06:33.230 --> 00:06:35.910
set its operation to send message. And for connection,

00:06:36.110 --> 00:06:38.290
you use something called a webhook. Webhook.

00:06:38.389 --> 00:06:40.550
Sounds technical. It's just a special private

00:06:40.550 --> 00:06:43.230
URL. Think of it like a dedicated phone number

00:06:43.230 --> 00:06:45.629
for automated messages to that specific Discord

00:06:45.629 --> 00:06:47.670
channel. You grab it from your Discord channel

00:06:47.670 --> 00:06:50.129
settings under integrations. Gotcha. Copy paste

00:06:50.129 --> 00:06:53.850
the URL. Then what? Then the fun part. crafting

00:06:53.850 --> 00:06:57.550
the message. Instead of just new post, you use

00:06:57.550 --> 00:07:00.170
NAN's expressions, little snippets of code that

00:07:00.170 --> 00:07:02.589
pull data dynamically. Ah, so you can say like

00:07:02.589 --> 00:07:05.170
title .title and it fills in the actual title.

00:07:05.269 --> 00:07:07.569
Exactly. Title, author, link, date, dot, format

00:07:07.569 --> 00:07:11.529
it nicely. But when you first test this. Let

00:07:11.529 --> 00:07:16.769
me guess. Spam. A dozen messages? Yep. Because

00:07:16.769 --> 00:07:19.550
N810 runs that Discord node for every single

00:07:19.550 --> 00:07:22.220
item it got from the RSS feed. Right. You're

00:07:22.220 --> 00:07:24.819
going to tame that beast. So you slot in a limit

00:07:24.819 --> 00:07:27.300
node right between the RSS reader and Discord.

00:07:27.560 --> 00:07:30.519
Tell it only let three articles through or maybe

00:07:30.519 --> 00:07:32.120
five. Okay, that makes sense. Limit the flow.

00:07:32.240 --> 00:07:34.379
Test again. Perfect. Just the top few articles.

00:07:34.740 --> 00:07:37.240
And here's that pro tip again. Pin your data.

00:07:37.860 --> 00:07:40.379
After you run the RSS node and get good data,

00:07:40.540 --> 00:07:42.879
click the little pin icon on its output. Pin

00:07:42.879 --> 00:07:46.639
the data. Why? It saves that specific test data.

00:07:46.779 --> 00:07:48.899
So when you're tweaking the Discord message or

00:07:48.899 --> 00:07:51.120
adding filters later, you don't have to rerun

00:07:51.120 --> 00:07:53.180
the RSS node and fetch the news all over again

00:07:53.180 --> 00:07:55.980
every single time. Saves time, saves API calls

00:07:55.980 --> 00:07:57.839
if the source was something else. It's huge.

00:07:58.139 --> 00:08:01.319
Ah, okay. So why is pinning data such a pro tip

00:08:01.319 --> 00:08:03.860
then for building these workflows? Simply put,

00:08:04.000 --> 00:08:06.699
it prevents refetching data constantly, speeding

00:08:06.699 --> 00:08:10.019
up your building process and saving costs. Sponsor.

00:08:10.410 --> 00:08:12.850
All right. Buckle up. Time to unlock some real

00:08:12.850 --> 00:08:16.350
power. This next step is kind of why NAN feels

00:08:16.350 --> 00:08:18.709
like it's in a different league. We're going

00:08:18.709 --> 00:08:22.709
to add command line execution directly into the

00:08:22.709 --> 00:08:25.930
workflow. Command line? Like Linux terminal commands?

00:08:26.149 --> 00:08:28.529
Exactly. It's like being handed the admin password

00:08:28.529 --> 00:08:30.810
to the server NAN is running on. You're taking

00:08:30.810 --> 00:08:33.710
the safety locks off. Okay. This sounds potentially

00:08:33.710 --> 00:08:37.149
dangerous, but powerful. How do you do it? You

00:08:37.149 --> 00:08:39.149
just add an execute command node, maybe branch

00:08:39.149 --> 00:08:40.990
off your main flow. In the command field, you

00:08:40.990 --> 00:08:43.529
could start simple, type ping 1 .1 1 .1 money

00:08:43.529 --> 00:08:46.750
C3. Ping Cloudflare's DNS from inside the workflow.

00:08:47.029 --> 00:08:49.570
Yeah, run it, and boom, real terminal output

00:08:49.570 --> 00:08:52.129
appears in the results panel. Whoa. Mind blown,

00:08:52.230 --> 00:08:54.049
right? What this actually means is you just ran

00:08:54.049 --> 00:08:55.629
an arbitrary command on the server's operating

00:08:55.629 --> 00:08:57.350
system. Anything you could type in a terminal,

00:08:57.470 --> 00:09:00.970
LS, Doi Clea, Docker OA, custom scripts, anything.

00:09:01.309 --> 00:09:03.450
Whoa. Okay, wait. So you could have an automated

00:09:03.450 --> 00:09:06.259
check on your Docker containers? Docker WA runs

00:09:06.259 --> 00:09:10.200
every hour. Or check disk space with DFTT. Precisely.

00:09:10.320 --> 00:09:14.700
Monitor system health, free DSM, run your own

00:09:14.700 --> 00:09:17.879
Python or bash security scripts on a schedule.

00:09:18.139 --> 00:09:21.220
Maybe even carefully automate server updates

00:09:21.220 --> 00:09:23.960
with apt -get update. The possibilities there

00:09:23.960 --> 00:09:27.259
are staggering. Imagine an assistant checking

00:09:27.259 --> 00:09:30.120
server health automatically. Wow. And to bring

00:09:30.120 --> 00:09:32.059
it all together, you use a merge node. Put it

00:09:32.059 --> 00:09:33.879
right before your Discord node. Merge. Yeah.

00:09:33.940 --> 00:09:35.960
You connect the output from your news filtering

00:09:35.960 --> 00:09:38.419
to one input and the output from your command

00:09:38.419 --> 00:09:40.419
execution like the ping results to the other

00:09:40.419 --> 00:09:43.340
input. Set the mode to append. Append. So it

00:09:43.340 --> 00:09:45.480
just sticks them together. Exactly. Combines

00:09:45.480 --> 00:09:47.899
the two streams of data. So your Discord message

00:09:47.899 --> 00:09:50.480
now has both the news and the server status report.

00:09:51.120 --> 00:09:54.179
One single pane of glass. That level of direct

00:09:54.179 --> 00:09:57.379
system access fused with web data, that's pretty

00:09:57.379 --> 00:09:59.000
unique. Okay. So what's the biggest difference

00:09:59.000 --> 00:10:01.220
this direct command line access really offers

00:10:01.220 --> 00:10:03.659
them? Freedom. Pure freedom. You're not limited

00:10:03.659 --> 00:10:05.919
by pre -built integrations anymore. You can make

00:10:05.919 --> 00:10:08.559
your systems do anything. Freedom. Got it. Okay.

00:10:08.659 --> 00:10:10.419
We have data. We have system access. Now we need

00:10:10.419 --> 00:10:12.889
the intelligence part, right? The brain. Make

00:10:12.889 --> 00:10:16.110
it feel like. J -A -R -V -I -S. Exactly. Time

00:10:16.110 --> 00:10:19.269
to add the J -A -R -V -I -S layer. We do this

00:10:19.269 --> 00:10:22.730
with AI, specifically large language models or

00:10:22.730 --> 00:10:25.269
LLMs. Okay. How do we plug that in? You add a

00:10:25.269 --> 00:10:28.919
node called basic LLM chain. You place it, say,

00:10:29.080 --> 00:10:31.120
after you filter the news articles, but before

00:10:31.120 --> 00:10:33.559
they get merged for Discord? LLM chain. Okay.

00:10:33.659 --> 00:10:35.460
And so you connect it to your AI model of choice.

00:10:36.259 --> 00:10:39.980
OpenAI is GPT -4, Anthropix Cloud, maybe even

00:10:39.980 --> 00:10:42.200
a local Alama model if you're running one. Right.

00:10:42.259 --> 00:10:44.230
And then you tell it what to do. The prompt.

00:10:44.549 --> 00:10:46.870
Precisely. And the prompt is everything. You

00:10:46.870 --> 00:10:48.750
can't just say, summarize this. You need to be

00:10:48.750 --> 00:10:51.710
specific. Like what? You are a world -class intelligence

00:10:51.710 --> 00:10:55.250
analyst briefing a tech CEO. Summarize the following

00:10:55.250 --> 00:10:58.190
article in exactly two sentences. Your summary

00:10:58.190 --> 00:11:00.610
must be engaging and directly state why this

00:11:00.610 --> 00:11:02.429
news is important for a tech professional to

00:11:02.429 --> 00:11:05.029
know. Here's the article content. And then you

00:11:05.029 --> 00:11:07.190
dynamically insert the article content from the

00:11:07.190 --> 00:11:10.409
previous note. Ah, okay. Give it a role, a specific

00:11:10.409 --> 00:11:13.639
task, length constraints, the audience. Very

00:11:13.639 --> 00:11:16.980
detailed. Super detailed. Pro tips, be specific,

00:11:17.340 --> 00:11:20.600
two sentences, give context for a tech professional,

00:11:20.799 --> 00:11:23.639
and definitely test different models. GPT -4

00:11:23.639 --> 00:11:26.600
often gives much better, more nuanced summaries,

00:11:26.600 --> 00:11:29.659
usually worth the cost. Makes sense. And you

00:11:29.659 --> 00:11:32.139
mentioned AI for the ping results too. Yeah.

00:11:32.570 --> 00:11:35.129
You could add another LLM node after the execute

00:11:35.129 --> 00:11:37.070
command node. Give it a different personality

00:11:37.070 --> 00:11:39.710
in the prompt. You are a laid back network admin

00:11:39.710 --> 00:11:42.690
with a sense of humor. Analyze this ping output.

00:11:43.009 --> 00:11:45.289
If it's all good, tell me in a funny, reassuring

00:11:45.289 --> 00:11:47.590
way the internet is fine. If there are errors

00:11:47.590 --> 00:11:50.570
or packet loss, be serious and flag it. Huh.

00:11:51.080 --> 00:11:53.159
That's brilliant. So you get AI checking your

00:11:53.159 --> 00:11:55.659
network status with personality. Exactly. And

00:11:55.659 --> 00:11:57.980
sometimes getting the prompt just right. I still

00:11:57.980 --> 00:12:00.000
wrestle with prompt drift myself, you know. Yeah.

00:12:00.259 --> 00:12:02.840
Trying to get the AI to follow instructions exactly

00:12:02.840 --> 00:12:05.720
every time. But when it works, the power is undeniable.

00:12:05.940 --> 00:12:07.940
Yeah, I can imagine. So the daily briefing goes

00:12:07.940 --> 00:12:10.919
from just raw data to actual insight, AI summaries,

00:12:10.940 --> 00:12:13.539
AI analysis of system checks. Yeah. So what's

00:12:13.539 --> 00:12:15.460
the secret to getting those really useful AI

00:12:15.460 --> 00:12:18.799
summaries? It really boils down to this. Precise,

00:12:18.799 --> 00:12:21.379
contextualized prompts make. make all the difference

00:12:21.379 --> 00:12:25.419
got it precision and the prompt okay that news

00:12:25.419 --> 00:12:27.620
aggregator is already pretty powerful yeah but

00:12:27.620 --> 00:12:30.279
you mentioned monitoring multiple sources like

00:12:30.279 --> 00:12:32.340
YouTube channels that sounds like a step up in

00:12:32.340 --> 00:12:35.159
complexity it is but it's totally doable we've

00:12:35.159 --> 00:12:37.860
handled one stream of data now we build a system

00:12:37.860 --> 00:12:39.899
that monitors multiple sources loops through

00:12:39.899 --> 00:12:42.340
them and applies smart filtering the mission

00:12:42.340 --> 00:12:45.799
build that personal Scout for your favorite YouTube

00:12:45.799 --> 00:12:48.370
tech channels Okay, how do you even get YouTube

00:12:48.370 --> 00:12:50.690
updates without opening YouTube? Is there an

00:12:50.690 --> 00:12:53.590
API? There is, but there's a simpler way. The

00:12:53.590 --> 00:12:57.529
secret YouTube RSS hack. RSS. For YouTube. Yep.

00:12:57.649 --> 00:12:59.850
Every single YouTube channel has a hidden RSS

00:12:59.850 --> 00:13:02.230
feed. It just lists their latest videos. It's

00:13:02.230 --> 00:13:05.309
like a secret backdoor. No API keys needed. Wow,

00:13:05.429 --> 00:13:07.830
okay. That's handy. So how do you build the monitor

00:13:07.830 --> 00:13:09.389
with that? It's kind of a three -step process.

00:13:09.669 --> 00:13:12.129
First, create your watch list. You use a node

00:13:12.129 --> 00:13:14.889
called set field to just create a list, an array

00:13:14.889 --> 00:13:17.429
of the YouTube channel IDs you care about. Okay.

00:13:17.470 --> 00:13:20.309
A list of IDs. Then you need the one -by -one

00:13:20.309 --> 00:13:22.929
machine. There's a node called split out. It

00:13:22.929 --> 00:13:25.350
takes that list and processes each channel ID

00:13:25.350 --> 00:13:27.889
individually. It basically loops through your

00:13:27.889 --> 00:13:30.269
list. So it handles the looping for you. Clever.

00:13:30.330 --> 00:13:34.049
Exactly. And third, you use the RSS read node

00:13:34.049 --> 00:13:37.250
again, but this time the URL isn't fixed. It

00:13:37.250 --> 00:13:39.570
dynamically uses the channel ID that the split

00:13:39.570 --> 00:13:41.730
out node is currently processing. So it fetches

00:13:41.730 --> 00:13:44.409
the feed for each channel in your list, one after

00:13:44.409 --> 00:13:45.850
the other. Okay, fetch feed for channel one,

00:13:45.889 --> 00:13:47.850
then channel two, etc. But wouldn't that pull

00:13:47.850 --> 00:13:50.970
old videos too? It would. By default, it grabs

00:13:50.970 --> 00:13:53.710
the last 10 or 15 videos, old or new, which is

00:13:53.710 --> 00:13:56.590
noisy. So we add a filter node right after the

00:13:56.590 --> 00:13:59.879
RSS read. Filter based on what? Date. Precisely.

00:13:59.899 --> 00:14:02.200
We filter based on date logic. The filter's job

00:14:02.200 --> 00:14:04.679
is simple. Check each video's publication date

00:14:04.679 --> 00:14:06.379
and only let it pass if it meets our condition.

00:14:06.600 --> 00:14:09.279
Like, is this video new? And that involves those

00:14:09.279 --> 00:14:11.879
scary date expressions you mentioned. It can

00:14:11.879 --> 00:14:13.720
look intimidating, yeah. You'll see things like

00:14:13.720 --> 00:14:17.580
jcsun .isodate .towermat compared to something

00:14:17.580 --> 00:14:21.440
like nasaday .minus .format uiyy -mndd. Okay,

00:14:21.559 --> 00:14:23.399
yeah, that looks a bit much. But break it down.

00:14:23.940 --> 00:14:26.639
The first part just grabs the video's date. make

00:14:26.639 --> 00:14:29.159
sure it's treated as a date and formats it consistently

00:14:29.159 --> 00:14:32.820
the second part gets today's date now subtracts

00:14:32.820 --> 00:14:35.399
three days and formats that the filter just checks

00:14:35.399 --> 00:14:37.899
if the video date is after three days ago so

00:14:37.899 --> 00:14:40.080
it's just saying only show me videos from the

00:14:40.080 --> 00:14:42.620
last three days exactly much simpler when you

00:14:42.620 --> 00:14:45.639
translate it and honestly Don't feel you need

00:14:45.639 --> 00:14:48.379
to memorize this stuff. Use ChatGPT. Totally.

00:14:48.480 --> 00:14:51.259
Ask your favorite LLM to be your AI code translator.

00:14:51.500 --> 00:14:53.860
Describe what you want. I need to filter for

00:14:53.860 --> 00:14:55.840
videos newer than three days, and it'll often

00:14:55.840 --> 00:14:58.779
spit out the exact expression you need. Works

00:14:58.779 --> 00:15:01.659
surprisingly well. Nice tip. So why is that split

00:15:01.659 --> 00:15:03.779
-out node, the looping one, so essential for

00:15:03.779 --> 00:15:05.960
this kind of monitor? Because it lets you process

00:15:05.960 --> 00:15:08.539
a list of items individually, making the whole

00:15:08.539 --> 00:15:11.159
thing scalable to many channels. Okay, everything

00:15:11.159 --> 00:15:13.779
we've built so far. Powerful automation, yes.

00:15:14.039 --> 00:15:16.679
Scripting on steroids. But this next part, it's

00:15:16.679 --> 00:15:18.320
different. We're giving the machine a brain.

00:15:18.639 --> 00:15:21.779
Welcome to AI agents. AI agents. How are they

00:15:21.779 --> 00:15:23.919
different from just an AI node in a workflow?

00:15:24.299 --> 00:15:26.559
A regular workflow follows a fixed script, right?

00:15:26.879 --> 00:15:30.080
Trigger, fetch data, filter, summarize, notify,

00:15:30.519 --> 00:15:35.059
done. An AI agent, it can think, it can plan,

00:15:35.120 --> 00:15:37.679
it can use tools to achieve a goal you give it.

00:15:37.870 --> 00:15:40.909
Think dot plan. Use tools. Okay, that sounds

00:15:40.909 --> 00:15:42.929
like a big leap. It is. Think of the difference

00:15:42.929 --> 00:15:45.169
between an old video game character stuck on

00:15:45.169 --> 00:15:48.769
rails and a modern NPC in a game like Red Dead

00:15:48.769 --> 00:15:52.230
Redemption 2. That MTC has goals, perceives the

00:15:52.230 --> 00:15:54.690
world, makes decisions. That's kind of the leap

00:15:54.690 --> 00:15:57.269
from a workflow to an agent. Script versus mind.

00:15:57.549 --> 00:15:59.389
Okay, I get the concept. How do you build one

00:15:59.389 --> 00:16:02.250
in NAN, the J -A -R -V -I -S blueprint? It's

00:16:02.250 --> 00:16:04.210
surprisingly straightforward. The core is the

00:16:04.210 --> 00:16:07.490
AI agent node itself. That's the brain. a chat

00:16:07.490 --> 00:16:09.509
trigger node so you can talk to it. And you hook

00:16:09.509 --> 00:16:11.889
it up to a powerful AI model, GPT -4, Claw 3

00:16:11.889 --> 00:16:14.190
Opus, something good at reasoning. Right. Brain

00:16:14.190 --> 00:16:16.549
chat interface, powerful model. But you said

00:16:16.549 --> 00:16:18.929
tools. Yes. An agent needs superpowers, right?

00:16:19.090 --> 00:16:22.129
Tools. And in ADN, tools are just other nodes

00:16:22.129 --> 00:16:23.870
or even entire workflows you've already built.

00:16:24.070 --> 00:16:26.289
Oh. So the ping command we made earlier could

00:16:26.289 --> 00:16:29.389
be a tool. Exactly. You define it as a tool for

00:16:29.389 --> 00:16:32.669
the agent. You give it the command, ping 1 .1

00:16:32.669 --> 00:16:37.659
.1 .1 IC4. And crucially... A description. This

00:16:37.659 --> 00:16:39.840
is vital. Why is the description so important?

00:16:40.120 --> 00:16:42.059
Because that's how the AI brain knows when to

00:16:42.059 --> 00:16:44.179
use the tool. For the ping tool, the description

00:16:44.179 --> 00:16:47.379
might be. Use this to check if a public website

00:16:47.379 --> 00:16:49.820
is up and responding. This is for testing the

00:16:49.820 --> 00:16:52.120
general internet connection. Clear and specific.

00:16:52.440 --> 00:16:55.379
Okay. So you could have another tool. Maybe pinging

00:16:55.379 --> 00:16:57.940
a local server. Yep. A server health tool. Command

00:16:57.940 --> 00:17:04.140
ping 192 .168 .1 .1SE3. Description. Use this

00:17:04.140 --> 00:17:06.599
to check if the main local file server is responding.

00:17:06.880 --> 00:17:09.880
The server's host name is mainframe. Got it.

00:17:09.940 --> 00:17:12.059
Tools are nodes with good descriptions. And then?

00:17:12.140 --> 00:17:14.500
Then the magic moment. You open the chat interface

00:17:14.500 --> 00:17:16.619
connected to your agent, and you just talk to

00:17:16.619 --> 00:17:18.819
it. Like, is the internet working? Exactly. And

00:17:18.819 --> 00:17:21.180
the agent receives that. Its AI brain thinks,

00:17:21.240 --> 00:17:23.059
okay, user wants to know about internet status.

00:17:23.700 --> 00:17:25.940
Aha, I have a tool for checking public websites.

00:17:26.019 --> 00:17:27.579
It runs the website ping tool automatically.

00:17:27.980 --> 00:17:29.539
Wow. Then it gets the result and responds to

00:17:29.539 --> 00:17:31.200
you, yes, the internet connection seems stable

00:17:31.200 --> 00:17:33.900
based on the ping test. And if I ask, check if

00:17:33.900 --> 00:17:36.240
the mainframe is up. It uses the other tool,

00:17:36.359 --> 00:17:38.759
the server health tool. And if you ask something

00:17:38.759 --> 00:17:41.619
complex, like give me a full network status report.

00:17:41.960 --> 00:17:45.410
It might use. Both tools. It might. If it reasons,

00:17:45.549 --> 00:17:47.529
that's the best way to answer. It could run both

00:17:47.529 --> 00:17:50.509
pings, then synthesize the results into one response

00:17:50.509 --> 00:17:53.450
for you. That's genuinely powerful, having a

00:17:53.450 --> 00:17:55.289
conversation with your infrastructure. And this

00:17:55.289 --> 00:17:57.869
is just scratching the surface. Imagine giving

00:17:57.869 --> 00:18:00.769
it a server medic tool belt tools to check disk

00:18:00.769 --> 00:18:03.369
space, find large files, maybe even clear logs.

00:18:03.690 --> 00:18:06.369
You could ask servers slow, find out why. Or

00:18:06.369 --> 00:18:08.789
a cybersecurity analyst agent, checking firewall

00:18:08.789 --> 00:18:11.480
rules. running network scans. The possibilities

00:18:11.480 --> 00:18:13.619
just explode once you start thinking in terms

00:18:13.619 --> 00:18:16.480
of agents and tools. It's a completely different

00:18:16.480 --> 00:18:18.819
way of interacting with your systems. Okay, so

00:18:18.819 --> 00:18:21.140
what's the single most important element when

00:18:21.140 --> 00:18:24.400
giving an AI agent one of these superpower tools?

00:18:24.720 --> 00:18:27.980
Without a doubt, the tool's clear, precise description.

00:18:28.670 --> 00:18:30.730
That's what guides the AI's decision -making

00:18:30.730 --> 00:18:33.450
process. Now, as you build more of these, whether

00:18:33.450 --> 00:18:36.349
simple workflows or complex agents, you'll want

00:18:36.349 --> 00:18:39.349
some best practices and automators code, if you

00:18:39.349 --> 00:18:42.009
will. Okay, lay it on me. First, save early,

00:18:42.130 --> 00:18:46.089
save often. Just Shreetrol plus S, CMD plus S

00:18:46.089 --> 00:18:49.250
all the time. Seriously, workflows can get complex

00:18:49.250 --> 00:18:52.660
fast. Good habit. What else? Pin your test data.

00:18:52.799 --> 00:18:55.200
We talked about this. Saves so much time, saves

00:18:55.200 --> 00:18:57.619
API costs, especially when tuning AI prompts.

00:18:57.819 --> 00:19:00.200
Just pin the input data to the AI node and you

00:19:00.200 --> 00:19:02.779
can tweak the prompt over and over without new

00:19:02.779 --> 00:19:05.720
API calls. Right. The pinning tip. Crucial. Also,

00:19:05.819 --> 00:19:08.400
duplicate for experimentation. Before you try

00:19:08.400 --> 00:19:10.480
something major, just duplicate the whole workflow.

00:19:10.599 --> 00:19:12.880
It's your safe sandbox, like saving your game

00:19:12.880 --> 00:19:14.460
before a boss fight. Makes sense. Don't break

00:19:14.460 --> 00:19:16.779
the working version. And related to AI, watch

00:19:16.779 --> 00:19:19.500
your AI tokens. Refining pumps with pin data

00:19:19.500 --> 00:19:21.920
helps, but be mindful of how much you're asking

00:19:21.920 --> 00:19:24.220
the AI to process, especially with expensive

00:19:24.220 --> 00:19:29.099
models. Got it. Save, pin, duplicate, watch tokens.

00:19:29.480 --> 00:19:32.680
So once you master these basics, what's the next

00:19:32.680 --> 00:19:34.900
quest? What other cool things could you build?

00:19:35.160 --> 00:19:38.019
Oh, man, where to start? You could build AI that

00:19:38.019 --> 00:19:41.079
rates news articles from 110 based on your specific

00:19:41.079 --> 00:19:45.000
interests or an AI that summarizes YouTube transcripts

00:19:45.000 --> 00:19:46.880
to tell you if a video is actually worth watching.

00:19:47.400 --> 00:19:49.460
Transcript summary. I like that. For the home

00:19:49.460 --> 00:19:52.079
lab folks, build that master health check agent

00:19:52.079 --> 00:19:54.380
we talked about or a chat bot. You can just ask

00:19:54.380 --> 00:19:56.200
questions about your infrastructure, integrate

00:19:56.200 --> 00:19:59.359
with security cameras, maybe use AI object detection,

00:19:59.559 --> 00:20:02.000
automate social media posting. OK, lots of ideas.

00:20:02.140 --> 00:20:04.880
What about when things go wrong? Common problems.

00:20:05.140 --> 00:20:07.599
Good question. Quick troubleshooter. Connection

00:20:07.599 --> 00:20:09.980
failed. Almost always check your credentials

00:20:09.980 --> 00:20:12.579
or maybe an IP block on the server side. Workflow

00:20:12.579 --> 00:20:15.000
is not triggering. Double check the active toggle

00:20:15.000 --> 00:20:17.599
is on and look at the executions log for errors.

00:20:17.819 --> 00:20:21.559
What if the AI responses are just... Weird. 99

00:20:21.559 --> 00:20:24.359
% of the time, it's a prompt problem. Go back,

00:20:24.400 --> 00:20:26.680
refine your instructions, check the raw JSON

00:20:26.680 --> 00:20:29.720
view of the output. Sometimes the AI adds weird

00:20:29.720 --> 00:20:31.700
formatting. And getting too many notifications.

00:20:32.099 --> 00:20:36.420
More limit and filter nodes. Be aggressive. Automation

00:20:36.420 --> 00:20:39.819
should reduce noise, not add to it. Right. Okay,

00:20:39.900 --> 00:20:41.720
so beyond all the technical stuff, what's the

00:20:41.720 --> 00:20:44.279
mindset shift someone needs to really embrace

00:20:44.279 --> 00:20:47.289
this kind of automation power? I think it's starting

00:20:47.289 --> 00:20:50.829
to see the digital world less as a series of

00:20:50.829 --> 00:20:54.089
websites and apps and more like a giant Lego

00:20:54.089 --> 00:20:56.609
set. Everything's potentially connectable, ready

00:20:56.609 --> 00:20:59.170
for your creative connections. A giant Lego set.

00:20:59.329 --> 00:21:01.569
I like that. So thinking back on what we covered,

00:21:01.710 --> 00:21:04.680
it feels like a significant journey. You start

00:21:04.680 --> 00:21:07.940
with maybe feeling overwhelmed. And you end up

00:21:07.940 --> 00:21:09.940
deploying your own private automation engine,

00:21:10.019 --> 00:21:12.440
not just using a service. You have control. You

00:21:12.440 --> 00:21:14.920
built an AI intelligence agent analyzing the

00:21:14.920 --> 00:21:17.259
world for you. You gave your workflow direct

00:21:17.259 --> 00:21:20.740
OS access, maybe most profound. You gave an AI

00:21:20.740 --> 00:21:23.000
a brain and tools to think. It really is like

00:21:23.000 --> 00:21:25.220
that moment in The Matrix, you know, where Neo

00:21:25.220 --> 00:21:27.279
stops seeing the bullets. And starts seeing the

00:21:27.279 --> 00:21:31.400
code. Exactly. APIs, servers. Data streams, they

00:21:31.400 --> 00:21:33.960
stop looking like chores and start looking like

00:21:33.960 --> 00:21:37.180
interconnected systems, a vast play where that's

00:21:37.180 --> 00:21:39.259
your new superpower, understanding the code,

00:21:39.420 --> 00:21:41.259
making the connection. And it feels like the

00:21:41.259 --> 00:21:44.740
potential is just huge. You mentioned over 400

00:21:44.740 --> 00:21:48.160
pre -built integrations, plus building your own.

00:21:48.599 --> 00:21:50.720
It's not just endless possibilities, it feels

00:21:50.720 --> 00:21:53.640
like. Yeah. Like exploring this vast archipelago,

00:21:53.779 --> 00:21:56.119
maybe Ha Long Bay with all its islands. Each

00:21:56.119 --> 00:21:58.420
island is a new idea, a new connection waiting.

00:21:59.099 --> 00:22:00.940
That's a beautiful way to put it. And it leads

00:22:00.940 --> 00:22:02.880
to the real question, doesn't it? It's no longer

00:22:02.880 --> 00:22:05.059
if you can automate something. Right. That's

00:22:05.059 --> 00:22:06.960
simply what you will choose to automate first.

00:22:07.140 --> 00:22:09.900
A powerful question indeed. Well, thank you for

00:22:09.900 --> 00:22:11.779
joining us on this deep dive today. We encourage

00:22:11.779 --> 00:22:14.400
everyone listening. Keep exploring. Keep building.

00:22:14.619 --> 00:22:16.619
Absolutely. And always embrace that curiosity

00:22:16.619 --> 00:22:19.279
that drives this whole journey forward. Outro

00:22:19.279 --> 00:22:19.500
music.
