WEBVTT

00:00:00.080 --> 00:00:04.059
So we have our little chat session here,
and

00:00:04.120 --> 00:00:07.860
we could now build up on that in plan
or agent mode, but I'll

00:00:07.900 --> 00:00:11.780
instead start a new session,
which we can do by clicking this plus,

00:00:11.800 --> 00:00:14.960
uh,
button here or using the appropriate

00:00:15.000 --> 00:00:18.960
You can also use the dropdown here to
start a

00:00:19.000 --> 00:00:22.720
chat in a separate window
or in the editor area, as I showed you

00:00:22.760 --> 00:00:26.060
before,
or to use different kinds of agents,

00:00:26.120 --> 00:00:30.010
later.
You also have various configuration

00:00:30.040 --> 00:00:33.800
explore later. For now,
I'll just start a new session.

00:00:33.840 --> 00:00:35.720
Now, I then see my old session here.

00:00:35.780 --> 00:00:39.720
Again, I could archive it, or
if you don't want to see it up here,

00:00:39.760 --> 00:00:42.910
this button to have it at the side.
That's another option.

00:00:42.940 --> 00:00:46.010
So then you see all your chat sessions
here, and you can go back to them

00:00:46.060 --> 00:00:49.800
anytime,
but you can go back to your new session

00:00:49.820 --> 00:00:53.760
side. So now I want to build
that CLI program

00:00:53.860 --> 00:00:57.780
I mentioned. For that,
I'll go to plan mode here actually,

00:00:57.840 --> 00:01:01.620
typically a good idea to use plan mode
if you're tackling a more

00:01:01.700 --> 00:01:05.220
complex feature because you can think of
plan mode as a

00:01:05.319 --> 00:01:09.200
prompt improvement mode.
You give the AI some prompts, some

00:01:09.300 --> 00:01:13.100
task,
and the plan mode then tries to refine

00:01:13.140 --> 00:01:16.530
tries to increase your chances of getting
a good result.

00:01:16.540 --> 00:01:20.240
You don't need it for simple changes,
but for more complex changes,

00:01:20.280 --> 00:01:24.120
idea. So here I'll say,
"I want to build a CLI tool

00:01:24.200 --> 00:01:27.950
user data." Again,
we could have just built up on

00:01:27.960 --> 00:01:30.220
but here, we'll start from scratch.

00:01:30.260 --> 00:01:34.080
Now, I'll use a different model here,
and before I hit

00:01:34.120 --> 00:01:37.940
enter or press this button,
please notice that there is this settings

00:01:38.020 --> 00:01:41.900
icon here. You can tweak this mode, this

00:01:41.920 --> 00:01:44.680
plan mode, and the same
is true for other modes.

00:01:44.700 --> 00:01:48.400
To be precise, you can tweak
which tools are available to this mode

00:01:48.500 --> 00:01:52.460
because all these chats,
all these agents here in

00:01:52.520 --> 00:01:56.380
the chat mode,
have access to various tools they

00:01:56.440 --> 00:01:59.120
can use to provide better results.

00:01:59.280 --> 00:02:02.200
For example,
a read tool to read files in your

00:02:02.240 --> 00:02:05.860
workspace,
and you can expand this to have more

00:02:05.900 --> 00:02:09.810
fine-tuned access to subtools
or the specific tools that are

00:02:09.840 --> 00:02:13.420
available here to check for errors,
to read a file,

00:02:13.500 --> 00:02:16.810
to see your last commands in terminal
and so on.

00:02:16.820 --> 00:02:20.760
And you see which tools your agent,
the plan agent in this case,

00:02:20.800 --> 00:02:24.420
has access to. And, of course,
you can change these tools too,

00:02:24.500 --> 00:02:28.480
noting that, for example,
this plan agent does not have access to

00:02:28.540 --> 00:02:32.260
tool to edit files.
The ask agent we used before also

00:02:32.320 --> 00:02:36.200
doesn't have this access.
It can't create files,

00:02:36.260 --> 00:02:39.040
can't create directories.
It can do none of that.

00:02:39.080 --> 00:02:42.300
It can search, for example, in your code

00:02:42.340 --> 00:02:45.780
base to find relevant context, for

00:02:45.820 --> 00:02:49.769
example. It can also do web search to find

00:02:49.820 --> 00:02:53.520
documentation, for example,
and therefore it has some tools that

00:02:54.060 --> 00:02:57.480
help it be a useful planning agent in the

00:02:57.540 --> 00:03:01.420
end.
You could also enable Python-specific

00:03:01.440 --> 00:03:05.320
from my Python extension or MCP tools,
which we'll also explore

00:03:05.340 --> 00:03:09.079
later. Now, I won't change any tools here,
but it's worth noting that you can

00:03:09.120 --> 00:03:13.030
configure those tools that
are available to the agent,

00:03:13.060 --> 00:03:16.430
configure custom agents means.
You can build your own agents with

00:03:16.460 --> 00:03:19.520
exactly the tools you want it to have.

00:03:19.560 --> 00:03:22.160
So let's now hit enter and start planning.

00:03:22.180 --> 00:03:24.940
Now, as you see,
during the planning phase,

00:03:25.000 --> 00:03:28.980
It gathers relevant context,
and you can click on each of these steps

00:03:29.020 --> 00:03:32.990
details.
You see it found some files it wants to

00:03:33.040 --> 00:03:36.180
look at to understand
which Python version we're, for example,

00:03:36.260 --> 00:03:39.960
using and whether certain third-party
libraries are

00:03:39.980 --> 00:03:43.820
available,
and then it generates this plan.

00:03:43.860 --> 00:03:47.140
So here,
it wants to start by adding some

00:03:47.300 --> 00:03:51.100
third-party packages it wants to use,
and then edit my file

00:03:51.120 --> 00:03:54.340
to, well, implement this program.

00:03:54.360 --> 00:03:58.280
Now, as you see,
it asks me some questions here,

00:03:58.340 --> 00:04:02.120
questions,
but depending on the task you gave the AI,

00:04:02.180 --> 00:04:05.940
mode,
you might get some because the whole idea

00:04:05.980 --> 00:04:09.700
build a solid plan, and
if you did not provide enough information

00:04:09.740 --> 00:04:12.900
initial prompt,
it might ask for clarification.

00:04:12.960 --> 00:04:15.600
So here, I'll provide these answers.

00:04:15.680 --> 00:04:19.399
I wanna use argpars,
only have basic fields, and

00:04:19.540 --> 00:04:23.340
I'm fine with using standard output, uh,
and this output

00:04:23.440 --> 00:04:27.140
flag for file export. So I'll send
that response so that it

00:04:27.200 --> 00:04:30.940
can refine the plan based on my responses,

00:04:31.010 --> 00:04:35.000
and I should now get that final plan,
which is the same plan as before with

00:04:35.060 --> 00:04:38.140
my responses incorporated. Now,
it has a follow-up

00:04:38.200 --> 00:04:41.490
question,
if I wanna support different languages

00:04:41.640 --> 00:04:45.240
I don't need that, so I'll answer
that as well, and you can go back

00:04:45.280 --> 00:04:47.440
sometimes until it has that final

00:04:47.480 --> 00:04:50.880
plan. But now it's ready for

00:04:50.960 --> 00:04:54.260
implementation, and now there
are a couple of options.

00:04:54.320 --> 00:04:58.040
You could switch to agent mode because
remember, in plan mode, it can't

00:04:58.060 --> 00:05:01.920
edit anything,
so you need to switch to a mode where it

00:05:01.930 --> 00:05:04.990
files, and agent mode
is the most powerful mode regarding

00:05:05.020 --> 00:05:08.460
that. But you don't have to. There
is this start

00:05:08.560 --> 00:05:12.260
implementation button,
which you can press to automatically

00:05:12.320 --> 00:05:16.260
agent mode and start the plan.
If you wanna do it manually,

00:05:16.300 --> 00:05:19.980
say, "Do it," or something like this, eh,
but alternatively,

00:05:20.320 --> 00:05:24.040
you can click start implementation,
or you could switch to a different

00:05:24.100 --> 00:05:26.710
agent that should execute it,
but we'll ignore that for now.

00:05:26.800 --> 00:05:29.240
I'll just start implementation like this.

00:05:29.260 --> 00:05:32.880
Well, and technically here,
I then still have to hit enter.

00:05:32.920 --> 00:05:36.710
You can also do that
if it still has a question for you,

00:05:36.800 --> 00:05:40.650
still give you some result,
but the result might then not be perfect

00:05:40.680 --> 00:05:44.540
as good as possible because you didn't
answer all questions, but you can

00:05:44.620 --> 00:05:47.210
start implementing at any point in time.

00:05:47.220 --> 00:05:51.020
But now in agent mode, which is
that third and arguably most

00:05:51.040 --> 00:05:54.210
important mode, it goes ahead
and edits the project.

00:05:54.240 --> 00:05:58.170
It adds files and edits files.
It can do all these

00:05:58.200 --> 00:05:59.740
things.
