Rubber Duck Thursday: Agentic Loops and Context Engineering
GitHub
5:09 Hello.
5:12 Let's see how we can do this.
5:21 I'm going to wait to make sure
5:23 that I am streaming correctly on the different platforms.
5:28 Hi everyone.
5:29 How are you doing this morning?
5:35 Hang on.
5:36 Hang on.
5:40 [snorts] It might take a second.
5:43 I'm going to just give it a couple of minutes.
5:50 Okay.
5:55 Can everyone see me?
5:59 I'm going to give it like a second or so.
6:03 Perfect.
6:08 Okay, I think it is starting.
6:11 And I think you can see me now.
6:17 [laughter] Hi.
6:16 I see a lot of people in the chat.
6:20 Someone from Nigeria.
6:22 Hi Salome from Nigeria.
6:24 Nice to see you.
6:26 Um, where's everyone calling in from?
6:30 I saw someone from Brazil.
6:32 I'll share that.
6:33 Hello from Brazil.
6:36 Where's everyone watching?
6:38 Uh, no.
6:39 I'm not from Nigeria.
6:41 I am in London right now.
6:45 This is where I am calling from today.
6:48 And hi.
6:50 Oh, wow.
6:50 We have someone from Afghanistan.
6:53 Nice to see you.
6:55 Just let me know where everyone is calling in from.
6:59 Good to see you.
7:01 Wow.
7:02 Someone from Ukraine.
7:06 Amazing.
7:07 I love this.
7:08 Someone says, "Hi, I'm a first-timer.
7:11 What's this about?" Um, this is Hello everyone.
7:17 This is Rubber Duck Thursdays.
7:19 This is If you are someone that's new, um, welcome.
7:24 This is just a stream where we're going to chat about programming.
7:31 We're going to chat about open source.
7:33 We're going to chat about AI.
7:35 So, this is going to be a very relaxed stream today.
7:39 My name is Marlene and, um, yeah.
7:43 Oh, wow.
7:43 I'm seeing so many people joining in right now.
7:46 Someone from the Netherlands.
7:48 Hi from the Netherlands.
7:50 Someone from Pakistan.
7:52 I love that.
7:53 Someone from Dubai.
7:55 The weather must be amazing in Dubai.
7:58 Hello from Turkey.
7:59 Wow, I love that.
8:01 Denmark.
8:03 Hi.
8:03 Hi.
8:03 Denmark is really close to where I am.
8:06 Someone from Peru.
8:07 Hi Carlos from Peru.
8:11 And Middlesbrough, UK.
8:14 I am actually in London right now.
8:17 So, and hi everyone from Brazil.
8:19 Okay.
8:20 So, today today my stream is really going to be pretty relaxed.
8:25 I am just going to be showing you some things I have been working on recently.
8:31 Oh, wow.
8:31 I see someone from Nepal.
8:33 I just had to shout out Nepal because I've I've never been there before.
8:37 It's somewhere Hi.
8:39 I I would like to go there one of these days.
8:41 So, it's nice to see you on the stream.
8:44 I am going to also put my screen on the stage.
8:50 Um, and oh, okay.
8:52 One more.
8:53 Hello everyone from India.
8:55 There's a couple of people joining us from India.
8:57 Where are you joining us from?
9:00 I have been to India, by the way.
9:01 I love Goa.
9:03 I was there by the beach and I really liked it.
9:07 So, okay.
9:08 Let's start out with the stream.
9:10 So, today my goal today with this stream is going to be to just walk us through,
9:20 um, some things that I've been thinking about.
9:22 So, what we have on the screen right now is something called an agentic loop.
9:27 And this is a you know, this is pretty common uh, in tech.
9:34 And whoop, I'm going to try to whoop.
9:39 I'm going to make try and make it a little bit bigger,
9:41 but I feel like that's probably Okay, this is probably fine.
9:47 And we are going to be talking about how to how this agentic loop works.
9:54 So, I don't know how many of you are using coding agents.
9:58 So, if you're watching this right now,
10:00 you'll probably know that we have GitHub Copilot that is very popular.
10:07 Of course, we provided in VS Code and there's multiple different
10:11 ways for you to use coding agents AI agents in your work.
10:16 And so, there's lots of different surfaces.
10:20 You can use a coding agent in your IDE.
10:23 You can use one in your CLI, so we have Copilot CLI.
10:26 You can use one on the web and you can also build out custom coding agents.
10:32 And [snorts] one of the things that's really nice is that the coding
10:35 agents all tend to work the same way under the hood.
10:39 So, how they actually work and how they're created is very similar.
10:45 And I think today we're going to talk about what that looks like.
10:49 I feel for me and I'm not sure about everyone else,
10:53 but it I can do a better job when I'm using things
10:58 like coding agents if I feel like I understand how they work.
11:03 So, I would like for us to go over what AI agents are and then we are going
11:09 to actually walk through the first step of the coding
11:13 or the agentic something called the agentic loop.
11:16 So, what exactly is an AI agent?
11:19 Hopefully you've heard of this definition before,
11:21 but an AI agent is an LLM that calls tools in a loop to achieve a goal.
11:28 So, that is a good description I would say of what an AI agent is.
11:34 And then this this this loop that you can see on the screen,
11:38 I think is like such an important loop.
11:41 This loop is basically what powers most agentic or most coding agent.
11:48 It's called the agentic loop.
11:50 And I actually got this from Claude like a blog post that Anthropic put
11:55 put out a while ago called about how Claude code works under the hood.
12:00 And this is a similar thing to how, you know,
12:02 Copilot GitHub Copilot would work under the hood as well if you're using Copilot
12:07 in the CLI or if you're using it in your IDE in VS Code.
12:11 And the main things that happen is that the first thing we do is as a user,
12:16 you're going to send a prompt to the agent.
12:19 And the agent is going to gather the context it needs and then it's
12:23 going to take action with some tools and then it's going to verify the result.
12:27 And I would say if you're a software engineer right now,
12:30 your goal needs to be able to improve the chances
12:35 of your coding agent doing well at each one of these steps.
12:40 So, the first step that we're going
12:42 to look at today is the gathering context step.
12:46 So, if you are using VS Code, how many of us are using VS Code right now?
12:52 I'm actually in VS Code and I'm just using simple browser for the the slides,
13:00 but if I go like this we will
13:04 focus right now on this step about gathering context.
13:08 So, if you how many of us on the stream, let me know if you're a fan of VS Code,
13:15 but if you are, one of the things that you'll probably
13:19 already know is that you can click on this tool link.
13:25 And this link is going to Oh, actually no, no, no.
13:28 Let's talk about this plus sign here.
13:31 So, one of the things if you're using VS Code Copilot
13:33 in VS Code is that you're going to have this plus sign.
13:37 And that plus sign is a great way for you to be able to add context.
13:42 So, if you are using repo and you click
13:45 on this, so for example, I have this repo.
13:48 I don't actually have any GitHub issues,
13:50 but if I had any GitHub issues, they would immediately show here.
13:55 So, okay, I see Ben in the chat
13:59 is saying Ben uses Copilot CLI GitHub Copilot CLI, which I think is amazing.
14:07 I can definitely recommend Copilot CLI if you aren't using it yet.
14:12 I'll actually show you just now and I also see here
14:16 we have Ali who's saying day and night I'm in VS Code.
14:20 This is my thing.
14:22 I don't know like let's discuss in the chat.
14:26 Do we prefer to work in an IDE or do we prefer the CLI?
14:32 That's the thing that I'm fighting with people
14:35 about because I personally love to see my code.
14:40 So, but then a lot of people love the IDE
14:43 and so they want to actually like Ben has said here, he's using GitHub CLI.
14:49 So, let's actually go to take a look.
14:54 This is an example Oh, I'll show you.
14:56 I'm going to just control C.
14:58 I'm just going to pull this over cuz I have it on a different monitor.
15:02 But I'm going to pull this over for us
15:04 to take a look at what the CLI looks like.
15:07 Oh, how do I pull this over onto my my onto
15:10 my other machine so you can see what I'm talking about.
15:15 Okay, let's do this.
15:18 Oh, oh, no, there we go.
15:20 There we go.
15:20 Okay, great.
15:21 And so if I pull this over and then I run in case you haven't heard about it,
15:26 I can just run Copilot dash dash banner just to show
15:31 the banner banner and then I like to also do yolo.
15:34 And if I run that that gets GitHub Copilot CLI started.
15:40 And I just want to point out that I
15:43 think it's so magical the little banner that comes up, so I always love that.
15:47 And I think Copilot CLI is fantastic.
15:49 You can use it for a lot of different tasks.
15:52 Like recently, I don't know how many of you have been trying out GPT 5.
15:58 Like the newer models that have come out.
16:00 And one thing I've really liked for example is
16:02 testing out the models and asking for example here,
16:07 if I just click model, I have access to a couple of different models.
16:10 Right now my favorite is GPT 5.5,
16:13 but you can also use the Claude models as well.
16:17 4.7 is really good.
16:19 And for me, I like GPT 5.5 in medium and I've been asking
16:25 Copilot CLI for example when I've been trying to compare the different models,
16:30 I'll just ask it, can you generate an SVG image of a pelican riding a bike?
16:35 And this is like a actually a very popular test that people do.
16:41 And let me see.
16:42 Let me go back to the chat in case anyone has Okay, okay.
16:47 I do see Ben saying, I love it, but I'm old school.
16:51 A lot of people Yeah, this is my this is my thing.
16:54 I think that one of the things that I
16:58 love about Copilot CLI is that it's really cool.
17:01 You can get fa- stuff done faster and that's really nice,
17:06 but at the same time I also kind of struggle
17:10 because I can't see the changes in front of me.
17:13 So, some people will like have Copilot CLI open and then also have
17:19 VS Code open in another terminal and that will work better for them.
17:24 I can see Yes, 100%.
17:27 It's so it's so magical.
17:30 Like I don't think enough people are using the CLI because it has magical vibes.
17:35 And by the way by the way Copilot CLI when we are using it blinks.
17:43 Like is it blinking right now?
17:44 It's not blinking right now, but every now and then it's going to blink.
17:50 [laughter] And I think that's my favorite part of it like
17:52 the banner animation and then the is is so fun.
17:57 I can definitely recommend using it in the command line.
18:00 So, one of the ways that I've liked to Someone's saying as well,
18:06 I'm going to take a look.
18:07 Someone is saying is Copilot CLI function finally functional in bash?
18:14 It is.
18:14 I think it's really good.
18:16 I've heard a lot of people saying they haven't used CLI at all
18:21 or they haven't heard about it and I think it's actually very good.
18:25 And you can see right now on my screen it's already saying here
18:30 that it's created this pelican SVG of a pelican riding on a bike.
18:36 I'm going to open this like one thing that I don't love Okay.
18:43 Okay, okay.
18:44 Let me let me switch over to some comments.
18:49 Julia, hi Julia, who's my co-worker.
18:52 Julia says, I thought I preferred IDE until I
18:54 started enjoying working on the terminal a little too much.
18:58 I love the terminal.
18:59 I love it, but I think the only issue for me is I can't see the files.
19:03 I have to actually have the terminal open
19:06 and then I also have to see like have VS
19:09 Code open to also see the files cuz that's
19:11 my main thing is that I I can't see it.
19:14 I know um Ben is saying, ask it that deep question.
19:20 I want to wash my car and the car wash is only 50 m away.
19:23 Should I drive or walk?
19:25 This is a good question.
19:26 Should I ask this question?
19:28 Let me ask this question.
19:29 How do I copy and paste it?
19:30 Let's let's let's ask this question from Ben
19:33 to Copilot CLI and see how it works.
19:36 So, the question Ben said is,
19:39 I want to wash my car and the car wash is only 50 m away.
19:51 Should I drive or walk?
19:55 So, obviously this is like This is a really good question because it's
20:00 like the model needs to know that I want to get If there's oh [laughter]
20:07 This is so funny.
20:08 Oh my gosh.
20:09 This is such a good question from Ben.
20:12 Do we see the answer here?
20:13 This is so so funny.
20:15 Because it's a bit of a trick question, right?
20:18 Because the model The question is I want to wash
20:21 my car and the car wash is 50 m away.
20:23 Should I drive my drive or walk?
20:26 And then the model is saying you should walk.
20:28 It says walk if the car wash is only 50 m away,
20:32 driving is probably more hassle than it's worth.
20:34 Unless you need to move the car through the automatic wash.
20:40 So, actually this is really funny because it should have said for us to go ahead
20:45 and drive the car because we want to actually get it washed at the car wash.
20:49 But it is saying that you want to move the car through a wash bay.
20:54 If you're washing it yourself there, walk over with the car only if the car
20:58 itself needs to be physically at the station.
21:00 Otherwise for safety, don't drive.
21:02 Don't drive such short distances.
21:05 So, I don't know.
21:07 Mixed reviews there from the model.
21:10 I think that's really interesting.
21:12 So, great question there.
21:14 Um And then I was seeing let's see.
21:20 Let's see.
21:20 Let's see.
21:21 Uh some people are saying they're new.
21:24 Um to the stream.
21:27 Sorry, guys.
21:28 I can see I can see Sebastian is saying he's full-on vibing.
21:34 No more IDEs.
21:36 That's fair.
21:37 Uh a lot of people are vibe coding and using this CLI and not using IDEs.
21:42 So, that's totally fine.
21:44 Um let's see.
21:46 Do do do.
21:48 Okay.
21:51 Um and GPT Okay.
21:53 GPT it really depends.
21:54 It depends what you are going to say.
21:58 All right.
21:58 Anyway.
22:01 Okay.
22:01 I'm going to now move on to what I was showing you earlier on before.
22:07 So, here one of the things that we could do
22:11 I like I showed you was use the Copilot CLI.
22:15 But I wanted to mention for those of us that are just joining,
22:19 we are talking about the agentic
22:21 loop and trying to understand everything Copilot,
22:26 GitHub Copilot, Copilot CLI, Copilot in the IDE,
22:30 all of those things are coding agents.
22:32 So, these are agents that kind of all work in the same way and some
22:37 of you might have heard about You
22:40 may have heard about something called a harness.
22:42 So, sometimes people call these coding agents
22:46 or the things that surround the model like GitHub Copilot,
22:49 they call them a harness.
22:51 And so, I think it's really important to understand how these agents work
22:56 for us to be able to get the most out of those agents.
22:59 So, one thing that we could do like I mentioned before is you could go here
23:04 and the first thing you want to do if you're trying to use your coding agent,
23:07 you want to make sure that your agent has the context that it has.
23:11 So, one of the things people have told me
23:13 in the past is that they have maybe had a coding agent.
23:17 So, for example, I have this file in my folder called simple agent.
23:24 [clears throat]
23:23 And then this is like the ideal way in it is some code with Copilot CLI.
23:30 And if you are using Copilot CLI,
23:33 this is to me the simplest way to get started with Copilot CLI.
23:39 And this Generally the Copilot SDK Sorry, not CLI, SDK.
23:45 The SDK in Python.
23:47 And generally the easiest way for you to get started with the SDK
23:51 is to just start out a session and it's only these lines of code,
23:56 very few lines of code.
23:58 But this past week I've been testing out many different models and trying
24:02 to get them to generate a very simple agent like with the SDK.
24:07 So, I'll show you what happens if we have the simple agent.
24:12 How many of us are Pythonistas here in the chat?
24:15 Let me know if you're a Pythonista or if you use another programming language.
24:20 But you'll see here that I can just go here.
24:25 And if you want to use the SDK,
24:28 I'll show you um you want to install GitHub Copilot SDK.
24:33 And then you want to import uh Copilot from the Copilot client.
24:39 And then you're going to start a session.
24:41 And so, when you run this command, it's going to be just the same as you would
24:46 uh start a session in Copilot CLI or in the IDE.
24:51 So, this is the code.
24:52 Let me put this to the side.
24:55 And here you can see if I want to actually then send the code to GitHub
25:00 Copilot here I have to actually send
25:03 in the prompt by where it says session.send_and_wait.
25:07 So, what I do want to do is I want to show you if I run this script So,
25:14 this is just a simple Python script.
25:17 And if I run this script it's going to send hello Copilot to GPT 5.3 the 5.2,
25:25 which is the model that I've chosen.
25:27 And it's going to say, "Hi,
25:28 I'm Marlene's AI assistant for Rubber Duck Thursdays.
25:31 How can I help?" So, one of the things to notice right away is
25:36 that first of all we are creating just like
25:42 this Copilot client is going to work just like
25:45 Copilot does in our IDE in the chat here.
25:50 But it's in code.
25:51 And another thing I want to point out is that I'm just saying hello Copilot,
25:55 but it knows that I'm streaming right now.
25:58 You're watching me right now on LinkedIn
26:00 or YouTube or wherever you're watching me and you can see that I'm It
26:05 says I'm Marlene's assistant for Rubber Duck Thursdays.
26:09 And actually if I go here to Copilot and I just say, "Hello,
26:14 Copilot." in the chat and never mind I I had I had attached this as well.
26:22 It says, "Hi, I'm Marlene's assistant for Rubber Duck Thursdays.
26:25 How can I help?" The reason it knows this is
26:28 because I've already defined this in the Copilot instructions.
26:32 So, I can go over to dot GitHub.
26:35 And in my Copilot instructions, I can define how I want the agent to behave.
26:41 So, all of this is part of this context layer.
26:45 So, when we're talking about that agentic loop I mentioned earlier [snorts]
26:51 this context layer defines, you know, how your agent is going to behave.
26:57 So, the difference between you using for example,
27:02 you using GitHub Copilot CLI and GitHub Copilot
27:07 in the IDE and liking one versus another is usually
27:11 going to be the context Part of that is
27:12 going to be the context that you give your agent.
27:15 And so, one of the things that I mentioned
27:17 is that I like to give my agent access to a file that will have a simple version
27:25 of code and an ideal version of a code of code.
27:28 And I'll say, "Use this file to write a new
27:33 version of this code or like write this application,
27:37 but use this as an example file." So, that's one thing I will do.
27:40 And so, if you are using coding agents
27:45 like I mentioned before with this agentic loop,
27:49 the first thing you want to do is you want
27:50 to make sure that the context that your agent has.
27:54 So, when you give your your agent a task,
27:57 it's going to it's actually going to gather
28:00 the context that it needs to complete that task.
28:03 And so, part of your job needs to be giving the agent all
28:07 of the correct context that it needs to be able to actually complete that task.
28:12 I'm going to go back to the chat to see if we have some questions.
28:16 I did see Sebastian saying,
28:19 "Does Copilot support loads the more
28:21 agents.md automatically, too?" Yes, it does.
28:25 So, if for example here I actually have a an agents folder.
28:33 And in that agents folder I have this reviewer.agent.md file.
28:38 And if we actually click here you'll see that I
28:43 already have the reviewer agent uh as part of it.
28:46 If I click to reviewer and I'm actually going to not select it there.
28:52 So, that it's not using that.
28:54 But let's select Copilot instructions.
28:57 So, you'll see.
28:58 But if you store an an agent in your agent.md
29:04 file here and you also store it under an agents folder,
29:08 it's going to automatically appear in this list of your custom agents.
29:12 So, if I say, "Hi." And again, I'm just going to switch to a different file
29:17 so that it doesn't look like it's using the reviewer.
29:21 It's using this I'm going to say,
29:23 "Hello." And what you'll see here is that it's now saying,
29:29 "Hi, I'm Marlene's reviewer agent." And I
29:32 act as a specialist agent for reviewing code.
29:34 How can I help?" So, initially it was just using the Copilot instructions.
29:40 So, if you Copilot instructions are that repo
29:43 level of instructions when you're working with GitHub.
29:46 So, it's going to work at all levels, but if you want to use your agent.md,
29:52 you then need to go ahead and you need
29:54 to select it manually from the list of custom agents.
29:57 And this is really nice if you want to define specific workflows.
30:01 Let me go back to see other questions.
30:09 [snorts]
30:08 Uh, da da da Okay, someone is saying, what are we saying?
30:15 What were we saying?
30:15 We're saying Uh, does I mean agents.md versus Copilot instructions.
30:24 Yes, it does support agents.md.
30:28 The Copilot instructions is usually the thing that it
30:33 will automatically detect if you're using the SDK, for example.
30:37 With the agents, you can also put it, I think,
30:41 in the root of .github and it should still work, I believe.
30:45 But for if you're using the IDE like VS Code,
30:50 you probably want to create an agents folder
30:53 and that's where you're going to define those specific agents.
30:57 I don't know if you want to set Sebastian,
31:00 I'm not sure if you want to set like the agents.md so
31:04 it controls it's detected at all levels or if Copilot instructions is fine.
31:10 Um, but typically I would say using both is a good idea.
31:14 So, this is what I would I would recommend.
31:17 There's someone else saying,
31:19 are there a difference between the IDE and the CLI part for the vibe?
31:25 I You tell me.
31:27 How What does everyone think about um about the CLI versus the IDE?
31:33 Do we like What's the vibe?
31:36 Do we prefer the IDE?
31:38 Do we prefer the CLI?
31:40 I'd love to know like vibe coding-wise, what are we preferring?
31:45 For me, I think Like, let me go back.
31:49 Let me go back.
31:50 Let's go back to the Let's Let's pull it up and see.
31:57 This is I would say, if you are still going to use the CLI,
32:02 I like to have both of them open just so I could
32:07 see both because I feel like if I can't see the code,
32:12 sometimes I just feel like I'm not I just don't feel great.
32:16 And for example, earlier today I asked it
32:19 to generate a pelican on the bike and I
32:22 felt like I couldn't see what the pelican
32:24 on the bike looks like that it generated, but then if I actually then open up VS
32:29 Code and the file that I asked it to generate, we can actually see the pelican.
32:35 And it's been really fun because I've been testing out different models
32:39 in terms of like which model generates the best pelican and in VS Code,
32:45 I can actually see and compare the different pelicans.
32:48 So, this pelican was generated by GPT 5.5.
32:53 This one was generated by Anthropic.
32:55 I'm not sure it was generated by Claude Opus 4.7.
33:00 Which one as well do we prefer?
33:03 I feel like I can't choose between the two.
33:07 I I generated two.
33:08 This is the one I just generated just now.
33:10 I don't think it's as nice as this one.
33:13 But it's okay.
33:14 It's pretty good.
33:16 But um in terms of which one I prefer I don't know.
33:22 I think I right now, I like both.
33:26 So, I will like I like opening having both open side by side.
33:30 So, even if I'm using the CLI because I feel like with the CLI sometimes you
33:35 can just do things faster and I can
33:38 have like multiple agents running at the same time.
33:41 But then with the IDE, I can see exactly what my agent has created.
33:46 Like we asked this earlier today.
33:48 We said, can you generate the pelican on the bike?
33:51 And this is what it generated for us.
33:54 So, it really depends on what you prefer.
33:58 Uh, let's see.
34:00 Someone is saying Someone is saying GPT 5.5 is great.
34:06 I think that's I agree.
34:09 I really like GPT 5 uh 5.5.
34:12 I think it's probably the best It's definitely
34:15 the best model Open AI has put out for coding.
34:18 I'm not sure if other people have tried it out.
34:22 Someone else is saying Anthropic for sure.
34:25 I do like Anthro I I mean, how many of us are using Opus?
34:29 Like Opus 4.7.
34:31 This was the This is the one on the screen right now
34:34 is the one that I I talked about from uh from GPT.
34:41 This is Anthropic's version from you know Opus 4.7.
34:47 Which one do we prefer?
34:49 I feel like I like I don't I'm not sure which one.
34:54 But I like both and I do think that Okay,
34:58 someone Meta Chief is saying Gemini 3.1 and Nano Banana.
35:05 How many of us are using Gemini models?
35:06 I actually haven't heard a lot of people using Gemini.
35:11 I'm not really sure though and I I'd be
35:14 open to feedback on the Gemini side of things,
35:17 but I haven't really used them a ton.
35:20 We could Let's ask it right now.
35:22 We're going to ask Gemini right now.
35:24 So, if we go here and let's try Gemini 3.1 on this side here.
35:31 I just have a lot of sessions open.
35:35 Let's see if I have this session Let's see.
35:39 Uh-uh.
35:40 Yeah.
35:41 Did I Hmm.
35:45 Ooh, okay.
35:45 Okay.
35:46 Anyway, let me go back and copy I want to use the exact same prompt um to say,
35:53 can you generate an SVG of a pelican on a bike?
35:59 Let's go back to the other one.
36:03 And this time, let's say name it pelican
36:10 Gemini and don't look at the other pelican images.
36:18 Okay.
36:19 So, this time we're going to ask live to see Here we're
36:24 using um We're using Gemini 3.1 just because I haven't used it before.
36:31 And okay, I see Ina is also saying she uses Gemini.
36:38 Um I can I can also see Ankit says Opus 4.6 versus GPT 5.5.
36:47 Yeah.
36:48 Yeah, 100%.
36:50 Um I see Sebastian saying Opus is still my daily driver, better personality.
36:57 I do think Opus has a great personality.
37:00 I think Opus is fantastic for coding.
37:03 Let's go back.
37:04 I'm just going to put Meta Chief's comment
37:06 on because we just generated the new pelican with Gemini.
37:11 What do you think?
37:12 This is This is the pelican.
37:16 What do you think about Gemini's pelican?
37:17 It will show up here as well.
37:19 It's this one.
37:21 I I don't know.
37:23 Hmm, I don't know.
37:26 What do we think?
37:27 This is the pelican Gemini generated.
37:30 Do we like it?
37:32 How does it compare to to Opus and and to the other ones?
37:37 Do we prefer it over Opus?
37:40 Okay, Meta Chief is saying amazing.
37:43 What are the votes, chat?
37:45 Do we like Gemini better than the other ones?
37:50 [laughter] It is goofy.
37:50 I think it it is goofy.
37:52 And Abdel says that Nano Banana is really great for image generation.
37:58 I'd agree.
37:59 I would say like hmm I think if I am to compare Like,
38:07 let's go back and just compare the different models.
38:11 Like I actually think they all kind of have the personality of the models.
38:17 Like this is feels very ChatGPT to me.
38:21 I don't know why.
38:22 And then Anthropic's one Opus seems Like,
38:26 doesn't it Does anyone know what I'm talking about?
38:30 Do you Do you get Do you get what I'm saying?
38:32 Like this is the models that we are comparing.
38:36 And [snorts] I feel like this is just giving Anthropic.
38:40 It's giving Opus for me right now when
38:42 I look at this just because their design style,
38:46 the branding is just like that and I just feel like it's it's the same.
38:50 So, [laughter] Anyway, these are the We just live generated a pelican
38:58 with uh Gemini and I did think it was okay.
39:03 I thought it did a good job, a decent one.
39:05 I'm not sure if it's my favorite, but it's a it's a decent pelican as well.
39:11 So, let's go back to the idea of context.
39:15 I think we have uh I think we have
39:19 a couple more minutes left to our stream and so
39:23 I I do want to go back to the idea
39:25 of context engineering that we were talking about.
39:30 [snorts] Um Someone was saying, why ChatGPT?
39:34 I feel like I don't like [laughter] I like this one.
39:38 Lincoln is saying he thinks the Gemini pelican looks happier.
39:42 Yeah, I think that's right.
39:44 I think it looks [laughter]
39:46 Uh and kids says Gemini 3.1's physique is better than every model.
39:52 Maybe.
39:53 I I really I'm not sure.
39:55 Someone is saying, "Can you try Grok?" I don't have Grok in VS Code,
40:00 but you can use bring your own key, by the way.
40:04 VS Code now uses you bring your own key,
40:06 so that is something that if you wanted to try Grok,
40:10 you can get it from Microsoft Foundry and then try it there.
40:15 Favor is asking which one is my favorite.
40:17 Um For me right now, honestly, I I still really like the Opus models.
40:24 I actually think my daily driver in my work right now is Opus
40:30 uh 4.6 and I also sometimes I've recently been using Gemini 5.5 a lot.
40:36 So, I do like both of those models and I think they're really good.
40:40 So, it really just depends on you,
40:43 but I I personally like the Opus models the most
40:47 and then I feel like Gemini 5.5 does a good job, you know, pretty recently now.
40:52 Another test that I've been liking to do to test the models is this one.
40:58 So, let's put con- Okay, next week we're going to do more context stuff
41:04 because I wanted to show you a little bit more,
41:06 but this week let's let's do something else.
41:08 I Something I like to do is I like to um I like to test the models tool use
41:17 and a test that I've been giving the models is
41:20 I've been saying uh let me try and find it.
41:24 Uh no, no, no.
41:26 Okay, let me go back to my other VS Code and see if it'll show up there.
41:33 Okay.
41:35 Let's see.
41:37 Um da da da.
41:40 Uh no, no, no.
41:41 There.
41:42 Yeah, yeah, yeah.
41:42 Okay.
41:43 So, you know, we've established that the models
41:47 are are Someone saying Gemini 5.5.
41:51 I don't have Gemini 5.5 unfortunately on my machine.
41:55 I don't know why.
41:56 So, we'll see.
41:58 Opus is really good.
41:59 I like Opus's style.
42:01 I think it's very minimal, which is great.
42:04 Um Okay, I'm going to go back.
42:09 I'm going to go back.
42:10 I'm going to go back because I want to take a look at this.
42:13 So, one thing that I have liked doing in when I want
42:18 to test a model is I like to ask it about tool use.
42:22 So, we want to see that the model can do stuff
42:26 on its own and if you have been using the VS Code,
42:31 for example, or even in the CLI,
42:34 you'll know that like the coding agents come with a couple of built-in tools.
42:39 And so, most of the coding agents, regardless of how powerful the model is,
42:44 the built-in tools, it will do a fantastic job.
42:47 But, I want the model to use a new tool.
42:50 So, here I wanted to use Excalidraw and Excalidraw
42:54 has a read me tool and a create view tool.
42:57 So, it has a tool that will give it context
43:00 and a tool that will allow the LLM to draw an image.
43:04 So, I've been liking to ask the model I've been saying,
43:07 "Can you use the Excalidraw MCP server to explain MCP to me?" And so,
43:13 for example, let's test out Opus 4.7 and see
43:17 if it we like the image it generates.
43:20 So, you can see that right away it's going to call the MCP server.
43:28 So, I'm using the Excalidraw MCP server and when it runs this read me tool,
43:35 the read me tool is going to grab context from Excalidraw,
43:39 which will give it all of the tools that it needs to be
43:41 able to actually know how to use Excalidraw to generate a diagram.
43:46 And then, after reading all of the notes on how to use it,
43:50 the model should then generate an image.
43:52 This is really nice.
43:53 What do we think, chat?
43:56 Can Can you see this?
43:57 This is so nice.
43:58 Like I don't know if you can see it.
44:01 But, this is a a model and we can actually open it up then in Excalidraw.
44:07 It will take us there.
44:09 Let me just pull it so that you can see it on my screen here.
44:15 Oh, no.
44:16 Okay, okay.
44:17 Yeah, let's do this.
44:19 So, you see the full diagram it generated.
44:24 I'm going to pull it over here.
44:27 And I really like this.
44:31 So, do you see what I'm talking about is that we give the model
44:35 a tool and the model is able to use MCP to find out information about Okay,
44:42 how do I use this tool?
44:44 What do I use Excalidraw for?
44:46 And then, it will then take the context from Excalidraw
44:51 and then use that to actually generate a diagram.
44:55 So, this diagram is showing us how to use MCP.
44:58 So, it has the host is here.
45:01 The host like VS Code, for example,
45:03 the user is going to send a prompt to the agent.
45:06 The agent will then send it to the MCP client,
45:09 which is GitHub Copilot, by the way.
45:11 And then, this is going to connect to the MCP
45:15 server and the different tools available to it.
45:18 And so, I think this is a really great way
45:20 to also see whether or not models are capable of using tools
45:25 like MCP because that's one of the major ways that we
45:29 use tools and I think this is a really good example.
45:32 So, we could also Another thing,
45:35 I'm not sure if other people have been trying out some of the open models.
45:41 So, I did plug in the other day Kimmy K 2.6 cuz a lot of people have been
45:47 and I wanted to I'm going to send it the same exact prompt that I did to Opus.
45:55 [snorts] And a lot of people have been saying that, you know,
45:57 the price of the price of the of of the models is going up and so,
46:04 we need alternatives.
46:05 And so, one of the things I've been
46:07 liking doing is also testing out some open models.
46:10 So, Kimmy 2.6 is one of the more popular models that we also want to try.
46:16 And so, I'm going to see how it also works and responds.
46:20 So, it says it's also done in the similar thing.
46:24 We can see here it was able to connect to the server.
46:31 And here is the diagram.
46:33 So, with Kimmy, it also did a good job.
46:37 It did a good job as well.
46:38 I would only say that it has confused uh the wording is a bit weird.
46:45 You know what I mean?
46:46 Like I feel like it's also really good, but it's a little bit like slightly off.
46:51 Like here, it's it's confusing a couple of things.
46:55 Um but, it was also able to use the tools.
46:58 So, one thing I like to encourage people is you can use bring your own
47:03 key in VS Code and you can switch out which models that you're using.
47:08 Um so, you can use the open models like Kimmy and it does a decent job as well.
47:13 I can see this person saying MCP is basically a better way for an AI
47:18 model to get or query data outside of if it's local of its local context.
47:24 AKA, instead of searching web,
47:26 it has MCP as a tool to get data from source more directly.
47:30 Absolutely.
47:31 MCP is fantastic for giving the model context,
47:34 giving the model tools to know how to then use that context to do something.
47:39 Like in this example here,
47:40 I used the Excalidraw MCP server um and and that was really good.
47:46 Um I see here someone is saying Meta Chief is saying
47:51 I have I have seven different models connected to my VS Code.
47:54 I have a lot of models connected to VS Code right now.
47:57 Like it's a lot.
47:58 Let's Let's go back to my VS Code.
48:01 Let's see how many I have a lot of models.
48:03 They don't all show here, you know,
48:06 um and I also have like a custom model, for example, that I was testing out.
48:11 But, you have a lot of models and I think that's really nice.
48:14 Um Let's see what else people are saying.
48:19 Um Ena is saying Claude has so many MCPs.
48:24 Exactly.
48:25 It's very MCP coded cuz I mean, Anthropic is the is the MCP creator.
48:32 Amit says VS Code brings everything, by the way.
48:35 And yes, Claude Opus model.
48:37 I love Opus.
48:39 Come on, guy.
48:40 Please, everyone, who else is using Opus?
48:43 Sebastian said he was using Opus earlier and that's who I can relate to.
48:48 I'm using Opus is the main model.
48:51 Is the main thing.
48:53 Someone says, "What do your generated images
48:55 look really awesome." 100% try it out.
48:57 I can recommend in VS Code, you can go to this.
49:03 I wonder if it's there.
49:06 Let's see.
49:06 So, in VS Code, you can type in MCP
49:09 and that will bring up a bunch of different MCP servers.
49:12 Let's see if Excalidraw has theirs here.
49:15 Oh, you don't.
49:18 [laughter] Ideally, it would be here in this list
49:19 of MCP servers and we would get the Excalidraw one,
49:23 but you can also go to GitHub to their repository.
49:27 So, what I did was I went to the repository.
49:33 And I went Excalidraw.
49:38 Don't what?
49:39 Don't look at the news.
49:42 But I went to the Excalidraw MCP server GitHub repository and it has
49:47 information there about how to connect to VS Code or whatever it is
49:53 to be able to use that and I think that's like it's such
49:56 a fun tool and and you should definitely use it more for MCP.
50:00 I can definitely recommend that.
50:02 Um Someone is asking what is an MCP server?
50:07 I think we answered a little bit about
50:09 that, but an MCP server is basically it was created
50:13 by it's an open protocol and basically what it does
50:17 it is allows a a a a a a company.
50:20 So for example in my uh in VS Code right now we have
50:26 a couple of MCP servers that you can see that I've loaded onto the screen.
50:31 I want them to show correctly.
50:35 But I don't know why it's not showing there nicely.
50:39 Hang on.
50:41 If we type at MCP you'll see it
50:45 all of these various MCP servers that are available.
50:49 So a company say for example Microsoft has a market
50:53 down MCP server and you'll take this API that we've
50:58 had in the past and basically we want to give
51:01 the context that we had from that API to the model.
51:05 So like what we saw with Excalidraw in the first example
51:09 I think it was really clear where Opus talked to the MCP
51:14 server and the MCP server Opus will have a description so
51:18 it'll know it'll see there's a read me tool from Excalidraw.
51:22 So actually if we go here and we go to the Excalidraw
51:26 MCP server that we installed you'll see that there are two tools.
51:31 There's a read me tool which is returns the Excalidraw
51:34 element format reference with color palette examples and tips.
51:37 Call this before using create view for the first time.
51:41 So the model is going to read that description
51:44 and I've told the model use this Excalidraw MCP
51:46 server so it knows immediately where it needs to go
51:50 to get the information to actually use this server.
51:53 So it's going to call that and then when
51:56 it called the read me function from the server it
51:59 got back this information which is just context
52:02 from that that the model can use to use this tool.
52:06 So basically your MCP servers are going to be whatever
52:10 they're going to be from a company that wants to allow
52:14 you to use its tools and give that context
52:16 to your your model to be able to use those tools.
52:19 So hopefully that's helpful.
52:20 Again like I said in VS Code you can type at MCP and it'll install
52:26 all of the MCP it'll have lots of MCP servers for you and to install.
52:30 Also in the CLI in the CLI here we can also type
52:37 in MCP and that will show all of the MCP servers that you have.
52:43 For example I have Playwright installed, I have Work IQ installed,
52:48 I have a computer use so the agent can
52:51 use computer use um Azure Foundry MCP server as well.
52:56 And so you can connect these directly as well to your um CLI and actually when
53:02 the CLI boots it loads and lets you
53:05 know which MCP servers are available for you there.
53:08 I really liked using the Playwright MCP server in the CLI.
53:12 I've really thought that's been very helpful.
53:16 Let's take a look at what we are saying in the chat.
53:20 Um okay.
53:25 Um there is someone saying no problem
53:30 they're no longer unlimited GitHub Copilot subscription.
53:33 You can read a blog post about the subscription changes.
53:37 I'm not going to comment too much on it,
53:39 but I would definitely recommend reading a blog post on this because
53:44 there are changes if you haven't heard to our subscription model,
53:47 but there's it's still a fantastic option
53:50 and there's lots of different models you can use.
53:53 Uh I did see Pavan say asking about SpecKit
53:58 and I think SpecKit is part of this spec driven development.
54:04 Um which is a different way of approaching development with AI.
54:09 I like it, but I would say I'm more so into test driven development.
54:15 Uh let me show you another I'm going
54:18 to show you another slide I have in VS Code.
54:21 So let's go back to our IDE and I want to show you
54:27 the slide I made for a different talk I did and here Okay.
54:36 In this slide it's kind of similar
54:39 to how people would approach strict spec driven development,
54:43 but it's test driven development and it's red TD TDD.
54:47 So uh as a user if you're going to be using um a coding agent
54:54 for example and you want to develop features
54:56 that you want to be very sure about.
54:59 The first thing you want to start off with is validating that you want to be
55:03 pretty sure that when the model generates code
55:06 it's going to be generating the correct code.
55:09 And so if you get a feature request
55:11 the first thing to start with is to write tests.
55:14 So get the model to work with you to write behavioral tests
55:18 where the test is directly linked to some sort of a behavior.
55:23 So maybe it's like we want to make sure that this page
55:27 works and the search bar feature is working on this page.
55:31 So your AI agent can actually work with you.
55:33 I've been using Playwright.
55:35 So having the agent generate some Playwright tests that the that we
55:39 can use as a starting point and having those tests failing,
55:43 but you have clearly in the code a way for you
55:47 to see whether or not something the agent's code is correct.
55:50 Then after that you quickly get the agent
55:53 to generate code to make those tests pass and then
55:55 I would say the last fact part of this loop
55:58 would be refactoring the code the agent has generated.
56:02 So I really like test driven development as compared to um
56:07 I have some different slides about Playwright and I can recommend
56:12 taking a look at that and I would prefer that over
56:15 spec driven just because it's more code first it's more code heavy.
56:19 Um this is for a talk that I did recently and I thought you know
56:25 I focused quite a lot on test driven development and I'll you know I'll do that.
56:28 I'll talk about that maybe the next time I'm on here.
56:32 Um we have a few minutes left.
56:35 I think we have four minutes left so um Great there's a question here.
56:41 Is there recommended tutorial learning path on MS Learn
56:44 to follow on MCP workup and workflow on sample solution?
56:49 Yes there is.
56:50 Let me go to GitHub.
56:54 Uh there on the Microsoft let's go to GitHub.
56:58 Let me go to GitHub.
56:59 I mean I'm not showing it on my screen cuz I'm
57:01 going to just navigate there and then share it with you.
57:04 But if you go to the Microsoft
57:05 repo Microsoft um repository There's so many repositories.
57:14 This is the thing with Microsoft.
57:16 I I just want the one Hang on.
57:19 Hang on.
57:20 I I'm looking for the Microsoft repository and in that repository there
57:25 is a um there is going to be a uh a tutorial I
57:34 actually worked on Microsoft um that I will share here for you
57:40 to try to get to learn a little bit more about what MCP does.
57:45 So let me share that.
57:48 MCP um and then I also want to share Yeah.
57:55 Um there's an MCP for beginners tutorial.
57:58 Um Here it is.
58:02 I'm going to paste this in the chat for us to take
58:06 a look at if you would like to Oh oh I don't know.
58:12 I don't know why there was like another link there,
58:14 but this is the link that I shared.
58:17 It's a Microsoft course that we have called MCP for beginners.
58:21 And then I also want to say that the next time I will
58:25 be If you haven't yet tried out I showed it a little bit.
58:28 I will recommend trying out the Copilot SDK.
58:34 And then I also want to recommend trying out this is the SDK.
58:39 And then I also want to recommend trying out
58:41 the CLI as well if you haven't tried that out.
58:43 So I would say trying out Copilot SDK, trying out Copilot CLI.
58:49 If you can try both of those I can recommend them.
58:53 Um I'm going to see if I can find Microsoft Copilot CLI GitHub.
59:02 Uh those are the two that I would recommend
59:05 the three things that I would recommend looking into this week.
59:09 And then next time I'm here I will also share
59:12 some more resources on agentic coding and stuff like that.
59:16 I think this is something that I'm very interested in right now
59:21 and would I'm going to come back to talk more about this agentic loop,
59:27 but I think I'm out of time.
59:29 Thank you everyone for joining today.
59:32 This was so fun.
59:35 I really had a good time.
59:36 Someone says TDD is a solid framework.
59:39 Been using it for years.
59:41 Um I completely agree.
59:45 Fantastic.
59:46 Thank you everyone.
59:48 I've had a great time chatting to you.
59:50 I don't want to go because this has been so fun.
59:54 Uh good to go.
59:55 Much appreciated.
59:56 Thanks everyone.
59:57 I appreciate you joining the stream and yeah, let me know if you enjoyed it.
1:00:02 What would you like us to talk about next time, but I will see you uh later.
1:00:08 So, thanks everyone.
1:00:10 We'll play the outro now.
1:00:14 I don't know how to do that.
1:00:15 [laughter] Actually, let's do that as a Okay.
1:00:20 Bye.
1:00:21 We'll see if I can change to the screen.
1:00:25 Anyway, yeah.