Harness Engineering: Building the Production Cage for Powerful Domain Agents — Mike Chambers, AWS
Read full transcript 15 segments
-
Hello everybody. Hello AI engineers. Are Hello everybody. Hello AI engineers. Are we all having a good time still? we all having a good time still? we all having a good time still? >> I'm having a good time. I mean, look at >> I'm having a good time. I mean, look at >> I'm having a good time. I mean, look at me. I'm up here. I'm loving this. Um, so me. I'm up here. I'm loving this. Um, so me. I'm up here. I'm loving this. Um, so yeah, thanks so much for joining me. Um, yeah, thanks so much for joining me. Um, yeah, thanks so much for joining me. Um, I want to come and talk to you all about I want to come and talk to you all about I want to come and talk to you all about harness engineering and all that kind of harness engineering and all that kind of harness engineering and all that kind of stuff. Um, let me tell you who I am in stuff. Um, let me tell you who I am in stuff. Um, let me tell you who I am in case you've not met me before. Um, my case you've not met me before. Um, my case you've not met me before. Um, my name is Mike Chambers and I'm a senior name is Mike Chambers and I'm a senior name is Mike Chambers and I'm a senior AI specialist developer advocate. Um, AI specialist developer advocate. Um, AI specialist developer advocate. Um, and I work at Amazon at AWS. Um, little and I work at Amazon at AWS. Um, little and I work at Amazon at AWS. Um, little bit about like uh how I managed to get bit about like uh how I managed to get bit about like uh how I managed to get to stand here which is a very exciting to stand here which is a very exciting to stand here which is a very exciting time for me. Um so um quite a while ago time for me. Um so um quite a while ago time for me. Um so um quite a while ago in terms of generative AI anyway back in in terms of generative AI anyway back in in terms of generative AI anyway back in 2023 um I had the amazing awesome 2023 um I had the amazing awesome 2023 um I had the amazing awesome privilege uh to work with Antia my privilege uh to work with Antia my privilege uh to work with Antia my colleague at the time and now she works colleague at the time and now she works colleague at the time and now she works for Amazon AGI you've probably seen her for Amazon AGI you've probably seen her for Amazon AGI you've probably seen her on this stage before um and the amazing on this stage before um and the amazing on this stage before um and the amazing Dr. Andrew Ing on on a course about Dr. Andrew Ing on on a course about Dr. Andrew Ing on on a course about generative AI with LLMs um sort of can I generative AI with LLMs um sort of can I generative AI with LLMs um sort of can I say that we're approaching half a say that we're approaching half a say that we're approaching half a million enrollments with that? It looks million enrollments with that? It looks million enrollments with that? It looks like that's the case. And on a like that's the case. And on a like that's the case. And on a three-week course, that's pretty cool.
-
three-week course, that's pretty cool. three-week course, that's pretty cool. If you can't tell, in that image, um, If you can't tell, in that image, um, If you can't tell, in that image, um, I'm playing Transformers with Android. I'm playing Transformers with Android. I'm playing Transformers with Android. That seemed like a really funny thing to That seemed like a really funny thing to That seemed like a really funny thing to do at the time. Um, in 2025, I created do at the time. Um, in 2025, I created do at the time. Um, in 2025, I created an MCP Lambda handler. It's downloaded an MCP Lambda handler. It's downloaded an MCP Lambda handler. It's downloaded still to this day about 35,000 times a still to this day about 35,000 times a still to this day about 35,000 times a month. Um, to help people in some of the month. Um, to help people in some of the month. Um, to help people in some of the simplest ways of getting serverless MCP simplest ways of getting serverless MCP simplest ways of getting serverless MCP serving happening. Um, I'm going to talk serving happening. Um, I'm going to talk serving happening. Um, I'm going to talk about other things in relation to that about other things in relation to that about other things in relation to that this time. So, we've moved on from that. this time. So, we've moved on from that. this time. So, we've moved on from that. Um and in 2026, so the AWS is actually Um and in 2026, so the AWS is actually Um and in 2026, so the AWS is actually one of the founding members of the one of the founding members of the one of the founding members of the Aentka Foundation, part of the Linux Aentka Foundation, part of the Linux Aentka Foundation, part of the Linux Foundation. Um I'm doing a little bit of Foundation. Um I'm doing a little bit of Foundation. Um I'm doing a little bit of work behind the scenes on that. Hope to work behind the scenes on that. Hope to work behind the scenes on that. Hope to do a lot more of that as well. So little do a lot more of that as well. So little do a lot more of that as well. So little bit about me. Um so as I've been um bit about me. Um so as I've been um bit about me. Um so as I've been um preparing for this, oh by the way, I did preparing for this, oh by the way, I did preparing for this, oh by the way, I did reread the abstract for this session and reread the abstract for this session and reread the abstract for this session and realized I said I'd be doing some live realized I said I'd be doing some live realized I said I'd be doing some live coding and so I will. So all combined coding and so I will. So all combined coding and so I will. So all combined fingers crossed please that that all fingers crossed please that that all fingers crossed please that that all works for us. Um but as I've been sort works for us. Um but as I've been sort works for us. Um but as I've been sort of traveling around a little bit as I do of traveling around a little bit as I do of traveling around a little bit as I do and I was at the AI engineers uh session and I was at the AI engineers uh session and I was at the AI engineers uh session uh summit uh uh conference in Melbourne uh summit uh uh conference in Melbourne uh summit uh uh conference in Melbourne um and took a lot of it in and also from um and took a lot of it in and also from um and took a lot of it in and also from the beginning of this week as well. I the beginning of this week as well. I the beginning of this week as well. I just wanted to to to summarize some of just wanted to to to summarize some of just wanted to to to summarize some of the things that I'm seeing and I'm the things that I'm seeing and I'm the things that I'm seeing and I'm thinking and I really want to get across thinking and I really want to get across thinking and I really want to get across and and what really matters to me and and and what really matters to me and and and what really matters to me and that's this. There are two different that's this. There are two different that's this. There are two different types of agents. Um, so we talk about types of agents. Um, so we talk about types of agents. Um, so we talk about agents all the time, but I see two agents all the time, but I see two agents all the time, but I see two distinct types of agents. And as I say distinct types of agents. And as I say distinct types of agents. And as I say this, it's going to become really this, it's going to become really this, it's going to become really obvious, but they're the agents that we
-
obvious, but they're the agents that we obvious, but they're the agents that we use. And so, you know, this is claude use. And so, you know, this is claude use. And so, you know, this is claude code and cursor and kirao and all of code and cursor and kirao and all of code and cursor and kirao and all of those types of things. And also things those types of things. And also things those types of things. And also things that don't just generate code, things that don't just generate code, things that don't just generate code, things that we use for productivity and the that we use for productivity and the that we use for productivity and the like as well. And so those agents we use like as well. And so those agents we use like as well. And so those agents we use in a certain type of way. There's the in a certain type of way. There's the in a certain type of way. There's the agents that we use. And then on the agents that we use. And then on the agents that we use. And then on the other side of it, we've got the agents other side of it, we've got the agents other side of it, we've got the agents that we build. And that's actually more that we build. And that's actually more that we build. And that's actually more to do with me and and actually it's more to do with me and and actually it's more to do with me and and actually it's more to do with this presentation as well. to do with this presentation as well. to do with this presentation as well. It's agents that we build and how we It's agents that we build and how we It's agents that we build and how we think about agents that we build. Um and think about agents that we build. Um and think about agents that we build. Um and and so I do really think that these and so I do really think that these and so I do really think that these don't two things are quite separate and don't two things are quite separate and don't two things are quite separate and they chain together as well. I might they chain together as well. I might they chain together as well. I might build an agent that you use and this build an agent that you use and this build an agent that you use and this still holds true. So token maxing, all still holds true. So token maxing, all still holds true. So token maxing, all that kind of stuff, go for it if that's that kind of stuff, go for it if that's that kind of stuff, go for it if that's what you want to do with an agent that what you want to do with an agent that what you want to do with an agent that you use. But with an agent that you you use. But with an agent that you you use. But with an agent that you build, think about it carefully. Make build, think about it carefully. Make build, think about it carefully. Make sure that you're putting it together in sure that you're putting it together in sure that you're putting it together in a way that's going to work for the a way that's going to work for the a way that's going to work for the audience who's going to use that. So, I audience who's going to use that. So, I audience who's going to use that. So, I promised that we were talking about promised that we were talking about promised that we were talking about harnesses and harness engineering. So, harnesses and harness engineering. So, harnesses and harness engineering. So, let's define harness. I'm sure I'm not let's define harness. I'm sure I'm not let's define harness. I'm sure I'm not the only person to have put something the only person to have put something the only person to have put something like this up. I don't usually do this like this up. I don't usually do this like this up. I don't usually do this kind of thing and apologize if it makes kind of thing and apologize if it makes kind of thing and apologize if it makes your skin crawl. This is a dictionary your skin crawl. This is a dictionary your skin crawl. This is a dictionary definition of harness. A harness is a definition of harness. A harness is a definition of harness. A harness is a set of straps and fastenings used to set of straps and fastenings used to set of straps and fastenings used to control an animal. But if we took animal control an animal. But if we took animal control an animal. But if we took animal out of here and put model in there, then out of here and put model in there, then out of here and put model in there, then actually it's pretty right, right, that actually it's pretty right, right, that actually it's pretty right, right, that that's kind of what a harness is. Other that's kind of what a harness is. Other that's kind of what a harness is. Other people have done a much better job than people have done a much better job than people have done a much better job than just the basic dictionary definition of just the basic dictionary definition of just the basic dictionary definition of what a harness is. So Lang Chain has got what a harness is. So Lang Chain has got what a harness is. So Lang Chain has got a article out. You've probably seen a article out. You've probably seen a article out. You've probably seen stuff like that. Martinfowler.com stuff like that. Martinfowler.com stuff like that. Martinfowler.com although Martin didn't write it. It was although Martin didn't write it. It was although Martin didn't write it. It was Pitta wrote this. Harness engineering
-
Pitta wrote this. Harness engineering Pitta wrote this. Harness engineering for coding agents. Agents that we use, for coding agents. Agents that we use, for coding agents. Agents that we use, right? So there are other ways of right? So there are other ways of right? So there are other ways of looking at harnesses. What about Amazon looking at harnesses. What about Amazon looking at harnesses. What about Amazon then? How do we see um harnesses? Well, then? How do we see um harnesses? Well, then? How do we see um harnesses? Well, um no, okay, this is the wrong kind of um no, okay, this is the wrong kind of um no, okay, this is the wrong kind of harness. Sorry, we do have strong harness. Sorry, we do have strong harness. Sorry, we do have strong opinions on harnesses. I'm going to show opinions on harnesses. I'm going to show opinions on harnesses. I'm going to show you all of that, but we sell all kinds you all of that, but we sell all kinds you all of that, but we sell all kinds of things. So, in a nutshell, and if you of things. So, in a nutshell, and if you of things. So, in a nutshell, and if you read those articles, um and if you've read those articles, um and if you've read those articles, um and if you've had the conversations around here at had the conversations around here at had the conversations around here at this event, of course, um a harness, you this event, of course, um a harness, you this event, of course, um a harness, you take an agent, remove the model part take an agent, remove the model part take an agent, remove the model part from it, and everything that you have from it, and everything that you have from it, and everything that you have left, that's the harness. Okay, so let's left, that's the harness. Okay, so let's left, that's the harness. Okay, so let's think about that in context of an agent think about that in context of an agent think about that in context of an agent that we use. And so it's pretty, I that we use. And so it's pretty, I that we use. And so it's pretty, I think, fairly straightforward. I have think, fairly straightforward. I have think, fairly straightforward. I have this coding assistant. It's probably on this coding assistant. It's probably on this coding assistant. It's probably on my machine. It has access to my files. my machine. It has access to my files. my machine. It has access to my files. And I create a harness or the place I And I create a harness or the place I And I create a harness or the place I work at has created a harness for me work at has created a harness for me work at has created a harness for me which contains um how it's going to use which contains um how it's going to use which contains um how it's going to use memory, the skills that I want it to memory, the skills that I want it to memory, the skills that I want it to use, tools and MCP servers to allow it use, tools and MCP servers to allow it use, tools and MCP servers to allow it to go to be able to go and connect to to go to be able to go and connect to to go to be able to go and connect to documentation servers and the like. and documentation servers and the like. and documentation servers and the like. and and well set up engineering teams have and well set up engineering teams have and well set up engineering teams have got their standards that they've had.
-
got their standards that they've had. got their standards that they've had. They've had coding standards for They've had coding standards for They've had coding standards for decades, but now they have basically decades, but now they have basically decades, but now they have basically harness standards, the things that they harness standards, the things that they harness standards, the things that they want to deploy to everybody's coding want to deploy to everybody's coding want to deploy to everybody's coding assistance. So, in a nutshell, that's assistance. So, in a nutshell, that's assistance. So, in a nutshell, that's what it is. I'm not going to talk to too what it is. I'm not going to talk to too what it is. I'm not going to talk to too much more about that. Um, but I do want much more about that. Um, but I do want much more about that. Um, but I do want to share one QR code with you, and I'll to share one QR code with you, and I'll to share one QR code with you, and I'll try and give you a little bit of warning try and give you a little bit of warning try and give you a little bit of warning before I bring QR codes out. This is the before I bring QR codes out. This is the before I bring QR codes out. This is the agent toolkit for AWS. This is u agent toolkit for AWS. This is u agent toolkit for AWS. This is u available on GitHub. Of course, it's available on GitHub. Of course, it's available on GitHub. Of course, it's free. You can install it and it helps free. You can install it and it helps free. You can install it and it helps you if this is what you're doing and you if this is what you're doing and you if this is what you're doing and you're deploying code. If you're you're deploying code. If you're you're deploying code. If you're deploying on AWS or you're thinking deploying on AWS or you're thinking deploying on AWS or you're thinking about deploying on AWS or or maybe you about deploying on AWS or or maybe you about deploying on AWS or or maybe you will one day, grab this toolkit, enable will one day, grab this toolkit, enable will one day, grab this toolkit, enable your um uh agent to to help you in the your um uh agent to to help you in the your um uh agent to to help you in the right direction. It's instructions for right direction. It's instructions for right direction. It's instructions for how to install it on pretty much how to install it on pretty much how to install it on pretty much everything. And the reason why I get everything. And the reason why I get everything. And the reason why I get passionate about this is because I don't passionate about this is because I don't passionate about this is because I don't want to see any more slop ops. Um, so we want to see any more slop ops. Um, so we want to see any more slop ops. Um, so we always used to push back against click always used to push back against click always used to push back against click ops in, you know, in the professional ops in, you know, in the professional ops in, you know, in the professional cloud development space. Clicking around cloud development space. Clicking around cloud development space. Clicking around on the console is great for being able on the console is great for being able on the console is great for being able to figure out what's going on, but it's to figure out what's going on, but it's to figure out what's going on, but it's not how you deploy things into not how you deploy things into not how you deploy things into production. We can ask an agent what's production. We can ask an agent what's production. We can ask an agent what's going on, but we don't want to ask the going on, but we don't want to ask the going on, but we don't want to ask the agent to spin up an S3 bucket, get me an agent to spin up an S3 bucket, get me an agent to spin up an S3 bucket, get me an EC2 instance, whatever it might be. We EC2 instance, whatever it might be. We EC2 instance, whatever it might be. We want the agent to build up our want the agent to build up our want the agent to build up our infrastructure as code which is going to infrastructure as code which is going to infrastructure as code which is going to go and do that so that we still own our go and do that so that we still own our go and do that so that we still own our deployments in the cloud. So no more deployments in the cloud. So no more deployments in the cloud. So no more swap ops. Okay. So that's the agent that swap ops. Okay. So that's the agent that swap ops. Okay. So that's the agent that we use. Now let's go and talk about the we use. Now let's go and talk about the we use. Now let's go and talk about the agent that we're going to build. And I'm agent that we're going to build. And I'm agent that we're going to build. And I'm going to get into the code as quickly as going to get into the code as quickly as going to get into the code as quickly as I can and we'll do as much as it has I can and we'll do as much as it has I can and we'll do as much as it has time for. So how do we think about a
-
time for. So how do we think about a time for. So how do we think about a harness in relation to the agent that harness in relation to the agent that harness in relation to the agent that we're building? Exactly the same to a we're building? Exactly the same to a we're building? Exactly the same to a point. Yes. We still want to have how point. Yes. We still want to have how point. Yes. We still want to have how are we going to manage the memory? How are we going to manage the memory? How are we going to manage the memory? How are we going to manage the skills and are we going to manage the skills and are we going to manage the skills and tools in MCP by the way that that belies tools in MCP by the way that that belies tools in MCP by the way that that belies a lot of stuff, right? Because you can a lot of stuff, right? Because you can a lot of stuff, right? Because you can pretty much extend an agent to do almost pretty much extend an agent to do almost pretty much extend an agent to do almost anything you want with a whole bunch of anything you want with a whole bunch of anything you want with a whole bunch of different types of tools which could be different types of tools which could be different types of tools which could be via MCP. via MCP. via MCP. But with an agent that I am building, I But with an agent that I am building, I But with an agent that I am building, I need to think about a lot more than just need to think about a lot more than just need to think about a lot more than just that. especially if um like at Amazon that. especially if um like at Amazon that. especially if um like at Amazon and like at cloud scale I'm deploying my and like at cloud scale I'm deploying my and like at cloud scale I'm deploying my agent out to the masses. So how do I agent out to the masses. So how do I agent out to the masses. So how do I actually manage the loop? How do I actually manage the loop? How do I actually manage the loop? How do I manage um scaling payments, memory, manage um scaling payments, memory, manage um scaling payments, memory, identity, skills, runtime, context identity, skills, runtime, context identity, skills, runtime, context management, the rest of it and I have management, the rest of it and I have management, the rest of it and I have left it to the last thing but it should left it to the last thing but it should left it to the last thing but it should be the first thing that I say. be the first thing that I say. be the first thing that I say. Observability and evaluations super Observability and evaluations super Observability and evaluations super super important. How do we actually deal super important. How do we actually deal super important. How do we actually deal with this? Do I write all of this code with this? Do I write all of this code with this? Do I write all of this code down into one container and just deploy down into one container and just deploy down into one container and just deploy it and scale that? Not really. If I want it and scale that? Not really. If I want it and scale that? Not really. If I want to be scaling to thousands of users, I to be scaling to thousands of users, I to be scaling to thousands of users, I need to think about each individual of need to think about each individual of need to think about each individual of these components and how I'm going to these components and how I'm going to these components and how I'm going to scale them out individually. And that to scale them out individually. And that to scale them out individually. And that to me is harness engineering. This is the me is harness engineering. This is the me is harness engineering. This is the serious side of stuff. This is the big serious side of stuff. This is the big serious side of stuff. This is the big stuff that we want to get harnesses stuff that we want to get harnesses stuff that we want to get harnesses working at real scale. Okay, let's see working at real scale. Okay, let's see working at real scale. Okay, let's see if this works. I can feel your combined if this works. I can feel your combined if this works. I can feel your combined goodwill being sent my way that we're goodwill being sent my way that we're goodwill being sent my way that we're going to try and make some code work.
-
going to try and make some code work. going to try and make some code work. So, I'm here in Kira. This is my IDE of So, I'm here in Kira. This is my IDE of So, I'm here in Kira. This is my IDE of choice here. And I've got a few choice here. And I've got a few choice here. And I've got a few different samples that we're just going different samples that we're just going different samples that we're just going to race through watching that clock to race through watching that clock to race through watching that clock countdown fast. So, um just just make countdown fast. So, um just just make countdown fast. So, um just just make sure that we're all on the same page sure that we're all on the same page sure that we're all on the same page here and hopefully you can all see this. here and hopefully you can all see this. here and hopefully you can all see this. Um of the code which I'm about to show Um of the code which I'm about to show Um of the code which I'm about to show you, by the way, one piece of code, not you, by the way, one piece of code, not you, by the way, one piece of code, not this one, has been generated by Curo. this one, has been generated by Curo. this one, has been generated by Curo. Everything else is either a tool or this Everything else is either a tool or this Everything else is either a tool or this one I actually wrote it myself. I didn't one I actually wrote it myself. I didn't one I actually wrote it myself. I didn't use an agent for this. I know I deserve use an agent for this. I know I deserve use an agent for this. I know I deserve a round of applause, but it's okay. a round of applause, but it's okay. a round of applause, but it's okay. [laughter] [laughter] [laughter] So, this is uh this is a Strand agent. So, this is uh this is a Strand agent. So, this is uh this is a Strand agent. So, I've just taken the Strands agents So, I've just taken the Strands agents So, I've just taken the Strands agents SDK. Um, and hopefully this kind of SDK. Um, and hopefully this kind of SDK. Um, and hopefully this kind of thing is kind of familiar. I've brought thing is kind of familiar. I've brought thing is kind of familiar. I've brought in an agent. I brought in the tool in an agent. I brought in the tool in an agent. I brought in the tool decorator and I'm creating myself an decorator and I'm creating myself an decorator and I'm creating myself an agent. The tool definition is down here. agent. The tool definition is down here. agent. The tool definition is down here. Um, and so I just pass in my system Um, and so I just pass in my system Um, and so I just pass in my system prompt. Things are pretty simple at this prompt. Things are pretty simple at this prompt. Things are pretty simple at this stage and I've passed in a couple of stage and I've passed in a couple of stage and I've passed in a couple of tools. Calculator is something that's a tools. Calculator is something that's a tools. Calculator is something that's a library I can install and get time is library I can install and get time is library I can install and get time is the one that we always use because I the one that we always use because I the one that we always use because I don't tend to use agents to book flights don't tend to use agents to book flights don't tend to use agents to book flights certainly not ones like this. Um and so certainly not ones like this. Um and so certainly not ones like this. Um and so I can say something simple here like I can say something simple here like I can say something simple here like what is the time? I'm not going to run what is the time? I'm not going to run what is the time? I'm not going to run this because you know the time but you this because you know the time but you this because you know the time but you can see generally how this works. Is can see generally how this works. Is can see generally how this works. Is this a harness? Sort of. There's not an this a harness? Sort of. There's not an this a harness? Sort of. There's not an awful lot to it, right? We've got the awful lot to it, right? We've got the awful lot to it, right? We've got the tools in there. Our loop is being tools in there. Our loop is being tools in there. Our loop is being managed for us by the framework. This is managed for us by the framework. This is managed for us by the framework. This is pretty cool. So that's good. But pretty cool. So that's good. But pretty cool. So that's good. But obviously if I was to run this, this is obviously if I was to run this, this is obviously if I was to run this, this is running on my laptop. It's not running running on my laptop. It's not running running on my laptop. It's not running at any particular scale. And we're at any particular scale. And we're at any particular scale. And we're missing some of the attributes that I missing some of the attributes that I missing some of the attributes that I want from the agents that I'm going to
-
want from the agents that I'm going to want from the agents that I'm going to deploy. Let me move on to my next agent deploy. Let me move on to my next agent deploy. Let me move on to my next agent quickly. So this is also a strand agent, quickly. So this is also a strand agent, quickly. So this is also a strand agent, but this one I actually asked Kira to but this one I actually asked Kira to but this one I actually asked Kira to write it for me for this session um write it for me for this session um write it for me for this session um because I wanted to include some more because I wanted to include some more because I wanted to include some more stuff. And so inside of this agent, the stuff. And so inside of this agent, the stuff. And so inside of this agent, the one main thing that I want to point out one main thing that I want to point out one main thing that I want to point out is that I am uh included a session is that I am uh included a session is that I am uh included a session manager. So my session manager is manager. So my session manager is manager. So my session manager is helping me to maintain session state helping me to maintain session state helping me to maintain session state between invocations. So this is a sort between invocations. So this is a sort between invocations. So this is a sort of memory. It's a kind of medium-term of memory. It's a kind of medium-term of memory. It's a kind of medium-term short-term memory kind of thing. It's short-term memory kind of thing. It's short-term memory kind of thing. It's not proper long-term memory, but it is not proper long-term memory, but it is not proper long-term memory, but it is there. And actually, it does store there. And actually, it does store there. And actually, it does store long-term memories in files which are long-term memories in files which are long-term memories in files which are down the side here that it's uh included down the side here that it's uh included down the side here that it's uh included for us. So, if I just scroll down here, for us. So, if I just scroll down here, for us. So, if I just scroll down here, you can see uh yeah, here's the agent you can see uh yeah, here's the agent you can see uh yeah, here's the agent definition itself. Um, and we've got a definition itself. Um, and we've got a definition itself. Um, and we've got a bit more of a system prompt because Kira bit more of a system prompt because Kira bit more of a system prompt because Kira couldn't help itself. Um, and we've got couldn't help itself. Um, and we've got couldn't help itself. Um, and we've got some tools here defined. Um, including a some tools here defined. Um, including a some tools here defined. Um, including a remember tool that the agent can decide remember tool that the agent can decide remember tool that the agent can decide to use to remember stuff about me. Um, to use to remember stuff about me. Um, to use to remember stuff about me. Um, and then I've got my uh session manager and then I've got my uh session manager and then I've got my uh session manager down there. And that session manager is down there. And that session manager is down there. And that session manager is going to rehydrate the conversation going to rehydrate the conversation going to rehydrate the conversation history when I come back to chat to it history when I come back to chat to it history when I come back to chat to it the next time. and maybe the next time the next time. and maybe the next time the next time. and maybe the next time is now. So, let's see if we can get this is now. So, let's see if we can get this is now. So, let's see if we can get this working. Now, again, this is running on working. Now, again, this is running on working. Now, again, this is running on my local machine. Um, and this is a demo my local machine. Um, and this is a demo my local machine. Um, and this is a demo here. So, let's just type in hello here. So, let's just type in hello here. So, let's just type in hello because I'm scared of typing too much because I'm scared of typing too much because I'm scared of typing too much and spelling it wrong. Um, and it says, and spelling it wrong. Um, and it says, and spelling it wrong. Um, and it says, uh, yeah, keep testing me. Bring it on.
-
uh, yeah, keep testing me. Bring it on. uh, yeah, keep testing me. Bring it on. Excellent. Um, um, who will win the Excellent. Um, um, who will win the Excellent. Um, um, who will win the World Cup? So, obviously I need to know World Cup? So, obviously I need to know World Cup? So, obviously I need to know this. And, um, what does it say? Yeah. this. And, um, what does it say? Yeah. this. And, um, what does it say? Yeah. So, while you could just say Australia, So, while you could just say Australia, So, while you could just say Australia, it knows I want Australia to win. It's it knows I want Australia to win. It's it knows I want Australia to win. It's where I'm currently living. I'm where I'm currently living. I'm where I'm currently living. I'm Australia. So, obviously Australia is Australia. So, obviously Australia is Australia. So, obviously Australia is going to win the World Cup, but why has going to win the World Cup, but why has going to win the World Cup, but why has it got that? It's because of previous it got that? It's because of previous it got that? It's because of previous conversations that we've had. And conversations that we've had. And conversations that we've had. And obviously, it's being honest that it has obviously, it's being honest that it has obviously, it's being honest that it has no clue because that's coming from the no clue because that's coming from the no clue because that's coming from the large language model, of course. So, large language model, of course. So, large language model, of course. So, okay, looks at a couple of different okay, looks at a couple of different okay, looks at a couple of different agents there, blasted through this. This agents there, blasted through this. This agents there, blasted through this. This is um running on my machine. So this is um running on my machine. So this is um running on my machine. So this isn't really getting me to clouds scale isn't really getting me to clouds scale isn't really getting me to clouds scale of course and I'm I'm picking up and I'm of course and I'm I'm picking up and I'm of course and I'm I'm picking up and I'm including various pieces in this like including various pieces in this like including various pieces in this like memory. So let's go next. How do we get memory. So let's go next. How do we get memory. So let's go next. How do we get to the point where I can deploy to the point where I can deploy to the point where I can deploy something like this if not this actual something like this if not this actual something like this if not this actual agent out at cloudscale and take things agent out at cloudscale and take things agent out at cloudscale and take things like memory and deploy that separately like memory and deploy that separately like memory and deploy that separately so it can scale separately. taking our so it can scale separately. taking our so it can scale separately. taking our loop out so it can scale separately and loop out so it can scale separately and loop out so it can scale separately and we can then bolt in all kinds of other we can then bolt in all kinds of other we can then bolt in all kinds of other things as well. So in order to do that things as well. So in order to do that things as well. So in order to do that I'm going to use something called um I'm going to use something called um I'm going to use something called um agent core um and so we have bedrock agent core um and so we have bedrock agent core um and so we have bedrock agent core. It's part of the stack that agent core. It's part of the stack that agent core. It's part of the stack that we have at AWS and that's how I'm doing we have at AWS and that's how I'm doing we have at AWS and that's how I'm doing this and how I'm deploying. So I've done this and how I'm deploying. So I've done this and how I'm deploying. So I've done that already but I want to show you how that already but I want to show you how that already but I want to show you how to start out with that and how we do to start out with that and how we do to start out with that and how we do this. So if I go to here uh yeah I'm this. So if I go to here uh yeah I'm this. So if I go to here uh yeah I'm ready to go. So, I have a command line
-
ready to go. So, I have a command line ready to go. So, I have a command line tool on my machine, the agent core tool on my machine, the agent core tool on my machine, the agent core command line. Um, and so there's a QR command line. Um, and so there's a QR command line. Um, and so there's a QR code at the end, as you might imagine, code at the end, as you might imagine, code at the end, as you might imagine, so that you can get hold of this. Um, so that you can get hold of this. Um, so that you can get hold of this. Um, but I can use this to help me deploy my but I can use this to help me deploy my but I can use this to help me deploy my agent. Now, this steps me through like agent. Now, this steps me through like agent. Now, this steps me through like many of these types of tools do. Um, and many of these types of tools do. Um, and many of these types of tools do. Um, and it sort of steps me through what do you it sort of steps me through what do you it sort of steps me through what do you want to do? So, this is my woohoo agent. want to do? So, this is my woohoo agent. want to do? So, this is my woohoo agent. Um, and it's going to ask me a bunch of Um, and it's going to ask me a bunch of Um, and it's going to ask me a bunch of stuff. And I wanted to show you some of stuff. And I wanted to show you some of stuff. And I wanted to show you some of this as we step through. Now, strangely, this as we step through. Now, strangely, this as we step through. Now, strangely, I'm not going to select harness. And I'm not going to select harness. And I'm not going to select harness. And we'll come back to why I'm not selecting we'll come back to why I'm not selecting we'll come back to why I'm not selecting harness in a second, but I'm saying I harness in a second, but I'm saying I harness in a second, but I'm saying I wanted to deploy an agent. And what's wanted to deploy an agent. And what's wanted to deploy an agent. And what's going to happen here is this command going to happen here is this command going to happen here is this command line tool is actually going to step me line tool is actually going to step me line tool is actually going to step me through and actually write an entire through and actually write an entire through and actually write an entire agent. It's basically a hello world agent. It's basically a hello world agent. It's basically a hello world agent that I can then go and customize agent that I can then go and customize agent that I can then go and customize myself. Um, and so using this command myself. Um, and so using this command myself. Um, and so using this command line is an easy way to get started with line is an easy way to get started with line is an easy way to get started with agent core. So I'm going to keep the agent core. So I'm going to keep the agent core. So I'm going to keep the default name. In fact, I'm probably default name. In fact, I'm probably default name. In fact, I'm probably going to keep all the defaults here just going to keep all the defaults here just going to keep all the defaults here just so we can see what's the option. Of so we can see what's the option. Of so we can see what's the option. Of course, I can bring code if I want, but course, I can bring code if I want, but course, I can bring code if I want, but I'm going to ask it to create some code I'm going to ask it to create some code I'm going to ask it to create some code for me. So, it says, well, what do you for me. So, it says, well, what do you for me. So, it says, well, what do you want? Python or TypeScript? And back in want? Python or TypeScript? And back in want? Python or TypeScript? And back in the day, I used to do things like the day, I used to do things like the day, I used to do things like activate functions and back propagation activate functions and back propagation activate functions and back propagation in the machine learning space. So, in the machine learning space. So, in the machine learning space. So, Python it is for me. So, I will choose Python it is for me. So, I will choose Python it is for me. So, I will choose that. Um, and there's some deployment that. Um, and there's some deployment that. Um, and there's some deployment options. There's also this I just want options. There's also this I just want options. There's also this I just want to point this out like how can we to point this out like how can we to point this out like how can we actually go and connect into our agent.
-
actually go and connect into our agent. actually go and connect into our agent. So, our agent that's running at scale in So, our agent that's running at scale in So, our agent that's running at scale in the cloud, HTTP is probably the obvious the cloud, HTTP is probably the obvious the cloud, HTTP is probably the obvious one, but we might want to have it being one, but we might want to have it being one, but we might want to have it being served behind MCP. We might want to use served behind MCP. We might want to use served behind MCP. We might want to use awesome little things like AGUI so we awesome little things like AGUI so we awesome little things like AGUI so we can make nice interactive chat agents, can make nice interactive chat agents, can make nice interactive chat agents, but I'm going to say HTTP. We can use but I'm going to say HTTP. We can use but I'm going to say HTTP. We can use any um framework we want. I happen to any um framework we want. I happen to any um framework we want. I happen to use Strand's agents SDK, but anything use Strand's agents SDK, but anything use Strand's agents SDK, but anything you could write your own framework if you could write your own framework if you could write your own framework if you want to um or your own own base you want to um or your own own base you want to um or your own own base code. Any model is supported by this as code. Any model is supported by this as code. Any model is supported by this as well. So, we don't just have to use the well. So, we don't just have to use the well. So, we don't just have to use the Amazon models. Um, and we don't have to Amazon models. Um, and we don't have to Amazon models. Um, and we don't have to use the ones from Amazon Bedrock, but we use the ones from Amazon Bedrock, but we use the ones from Amazon Bedrock, but we can use any model. I'm using the one can use any model. I'm using the one can use any model. I'm using the one here. I'm using Sonic 4.5 just because here. I'm using Sonic 4.5 just because here. I'm using Sonic 4.5 just because that's offered to me at default. And that's offered to me at default. And that's offered to me at default. And here's memory. So, this is the one thing here's memory. So, this is the one thing here's memory. So, this is the one thing I wanted to show you. So, I can come in I wanted to show you. So, I can come in I wanted to show you. So, I can come in here and ask for long-term and here and ask for long-term and here and ask for long-term and short-term memory to be deployed. And short-term memory to be deployed. And short-term memory to be deployed. And we'll see what this means in just a we'll see what this means in just a we'll see what this means in just a second, but it's basically going to second, but it's basically going to second, but it's basically going to create for us cloud infrastructure which create for us cloud infrastructure which create for us cloud infrastructure which is going to manage those memories for us is going to manage those memories for us is going to manage those memories for us separately from our running agent separately from our running agent separately from our running agent running asynchronously from our agent running asynchronously from our agent running asynchronously from our agent and connected of course. So there's and connected of course. So there's and connected of course. So there's obviously other kinds of things we can obviously other kinds of things we can obviously other kinds of things we can do. We can hit enter and it will start do. We can hit enter and it will start do. We can hit enter and it will start to create the configuration of this to create the configuration of this to create the configuration of this agent on my machine. Now I'm going to agent on my machine. Now I'm going to agent on my machine. Now I'm going to skip over here and come back to the skip over here and come back to the skip over here and come back to the actual code I have because I've already actual code I have because I've already actual code I have because I've already done this of course. Um, and this is the done this of course. Um, and this is the done this of course. Um, and this is the agent that it would be currently agent that it would be currently agent that it would be currently deploying. Something like this. So, deploying. Something like this. So, deploying. Something like this. So, we've built up here. This is a little we've built up here. This is a little we've built up here. This is a little bit more complex. So, this is a strands bit more complex. So, this is a strands bit more complex. So, this is a strands agent. You'll notice that it's got a few agent. You'll notice that it's got a few agent. You'll notice that it's got a few more things added in. So, it's got the more things added in. So, it's got the more things added in. So, it's got the linkage into Amazon Bedrock agent core
-
linkage into Amazon Bedrock agent core linkage into Amazon Bedrock agent core app, but pretty much apart from that, app, but pretty much apart from that, app, but pretty much apart from that, that's all you need in order to be able that's all you need in order to be able that's all you need in order to be able to scale this agent out at runtime and to scale this agent out at runtime and to scale this agent out at runtime and do multi-tenant isolation. So you can do multi-tenant isolation. So you can do multi-tenant isolation. So you can write an agent that works for one user write an agent that works for one user write an agent that works for one user and then scale that out without you and then scale that out without you and then scale that out without you having to write all the multi-tenented having to write all the multi-tenented having to write all the multi-tenented code. It's a massive saver and from a code. It's a massive saver and from a code. It's a massive saver and from a security and identity perspective, it's security and identity perspective, it's security and identity perspective, it's makes it so much simpler. It's um it's makes it so much simpler. It's um it's makes it so much simpler. It's um it's very very useful. So if I scroll down very very useful. So if I scroll down very very useful. So if I scroll down through here, you can see the rest of it through here, you can see the rest of it through here, you can see the rest of it is looking pretty similar. We've got is looking pretty similar. We've got is looking pretty similar. We've got some test tools in here. We've got a some test tools in here. We've got a some test tools in here. We've got a connection to MCP, so we can see how connection to MCP, so we can see how connection to MCP, so we can see how that is done. Um, and we've got the uh that is done. Um, and we've got the uh that is done. Um, and we've got the uh connection into our session manager and connection into our session manager and connection into our session manager and our memory which is all built in here. our memory which is all built in here. our memory which is all built in here. So, if I scroll down a bit more, we'll So, if I scroll down a bit more, we'll So, if I scroll down a bit more, we'll be able to see somewhere where we be able to see somewhere where we be able to see somewhere where we actually invoke the thing um which is actually invoke the thing um which is actually invoke the thing um which is there. Um, and the system prompt is is there. Um, and the system prompt is is there. Um, and the system prompt is is somewhere at the top. So, we can we can somewhere at the top. So, we can we can somewhere at the top. So, we can we can scroll through this code. I'm going scroll through this code. I'm going scroll through this code. I'm going through it quickly. You can write your through it quickly. You can write your through it quickly. You can write your own code and do this with it as well. If own code and do this with it as well. If own code and do this with it as well. If I go back over to my um uh code here for I go back over to my um uh code here for I go back over to my um uh code here for just one second. I'm in the folder now just one second. I'm in the folder now just one second. I'm in the folder now that has been created with that code that has been created with that code that has been created with that code locally, it is actually deployed, but locally, it is actually deployed, but locally, it is actually deployed, but let's assume it's not deployed quite let's assume it's not deployed quite let's assume it's not deployed quite yet. I can come back in and type in yet. I can come back in and type in yet. I can come back in and type in agentcore dev. And what that's going to agentcore dev. And what that's going to agentcore dev. And what that's going to do for me um Wi-Fi permitting is it will do for me um Wi-Fi permitting is it will do for me um Wi-Fi permitting is it will spin up for us a web uh browser. And spin up for us a web uh browser. And spin up for us a web uh browser. And inside of that web browser, we're now inside of that web browser, we're now inside of that web browser, we're now connected to that agent running locally.
-
connected to that agent running locally. connected to that agent running locally. So if I make updates to that code, we So if I make updates to that code, we So if I make updates to that code, we would see that happen in real time here. would see that happen in real time here. would see that happen in real time here. So I can say hello, I am doing the press So I can say hello, I am doing the press So I can say hello, I am doing the press now. Um it knows that I'm coming to do a now. Um it knows that I'm coming to do a now. Um it knows that I'm coming to do a presentation, but I think it does presentation, but I think it does presentation, but I think it does anyway. Um and so yeah, you can interact anyway. Um and so yeah, you can interact anyway. Um and so yeah, you can interact with the agent here. You can make with the agent here. You can make with the agent here. You can make adjustments to the um to the code and adjustments to the um to the code and adjustments to the um to the code and you'll see it update live here. Um but you'll see it update live here. Um but you'll see it update live here. Um but you can also use this to switch over to you can also use this to switch over to you can also use this to switch over to the live um deployed version. So with the live um deployed version. So with the live um deployed version. So with agent core deploy it will use agent core deploy it will use agent core deploy it will use infrastructure as co code like I talked infrastructure as co code like I talked infrastructure as co code like I talked about before to deploy your agent out at about before to deploy your agent out at about before to deploy your agent out at scale with the memory with the agent scale with the memory with the agent scale with the memory with the agent with runtime and with many other with runtime and with many other with runtime and with many other components if you choose to do so you components if you choose to do so you components if you choose to do so you can use this interface then to go and can use this interface then to go and can use this interface then to go and look at traces look at memory stored look at traces look at memory stored look at traces look at memory stored look at all that stuff so that you can look at all that stuff so that you can look at all that stuff so that you can debug and see what's going on. Now, when debug and see what's going on. Now, when debug and see what's going on. Now, when we stepped through the um the the the we stepped through the um the the the we stepped through the um the the the console just a second ago through the console just a second ago through the console just a second ago through the the CLI app a second ago, we didn't the CLI app a second ago, we didn't the CLI app a second ago, we didn't choose harness. I skipped out on that choose harness. I skipped out on that choose harness. I skipped out on that one and I'm just going to show you that one and I'm just going to show you that one and I'm just going to show you that quickly now. So, one thing we can do quickly now. So, one thing we can do quickly now. So, one thing we can do instead is I think we can get to the instead is I think we can get to the instead is I think we can get to the point you've seen I've deployed agents.
-
point you've seen I've deployed agents. point you've seen I've deployed agents. I didn't do very much. I just did a I didn't do very much. I just did a I didn't do very much. I just did a system prompt and some tools and go. And system prompt and some tools and go. And system prompt and some tools and go. And there's an argument to be made that there's an argument to be made that there's an argument to be made that essentially if that's possible then essentially if that's possible then essentially if that's possible then maybe 80% of um agentic use cases 80% of maybe 80% of um agentic use cases 80% of maybe 80% of um agentic use cases 80% of agent development is kind of solved agent development is kind of solved agent development is kind of solved already. We don't need to do much more already. We don't need to do much more already. We don't need to do much more than system prompt connect to some MCP than system prompt connect to some MCP than system prompt connect to some MCP tools and we've got what we want. And if tools and we've got what we want. And if tools and we've got what we want. And if that's the case then we have harness that's the case then we have harness that's the case then we have harness built into agent core. This is the built into agent core. This is the built into agent core. This is the configuration for an agent. I just have configuration for an agent. I just have configuration for an agent. I just have a simple JSON which is showing me which a simple JSON which is showing me which a simple JSON which is showing me which model do I want to use and what system model do I want to use and what system model do I want to use and what system prompt do I want to use. Can't get much prompt do I want to use. Can't get much prompt do I want to use. Can't get much more simpler than that system prompt. more simpler than that system prompt. more simpler than that system prompt. Um, and then this can also be deployed Um, and then this can also be deployed Um, and then this can also be deployed with agent core deploy. So at this point with agent core deploy. So at this point with agent core deploy. So at this point we don't have even any agentic code we don't have even any agentic code we don't have even any agentic code either. We can just deploy it straight either. We can just deploy it straight either. We can just deploy it straight out. If you want to know any more about out. If you want to know any more about out. If you want to know any more about any of this then please do come and see any of this then please do come and see any of this then please do come and see us down on the booth or see me after us down on the booth or see me after us down on the booth or see me after this session. I'll be more than happy to this session. I'll be more than happy to this session. I'll be more than happy to talk to you at length about this. 18 talk to you at length about this. 18 talk to you at length about this. 18 minutes is such a short amount of time minutes is such a short amount of time minutes is such a short amount of time for me to be able to talk about almost for me to be able to talk about almost for me to be able to talk about almost anything. But this is essentially all of anything. But this is essentially all of anything. But this is essentially all of these components on here. There's a these components on here. There's a these components on here. There's a mapping somewhere into something that mapping somewhere into something that mapping somewhere into something that Agent Core has. I apologize for the Agent Core has. I apologize for the Agent Core has. I apologize for the colors. It seemed like a good idea at colors. It seemed like a good idea at colors. It seemed like a good idea at the time. Um, but this is an overview of the time. Um, but this is an overview of the time. Um, but this is an overview of the different capabilities that are the different capabilities that are the different capabilities that are composable out of agent core. So, you composable out of agent core. So, you composable out of agent core. So, you can take any of these and use any of can take any of these and use any of can take any of these and use any of them together or separately. If you have them together or separately. If you have them together or separately. If you have an agent that's running in production an agent that's running in production an agent that's running in production very happily at the moment, but you like very happily at the moment, but you like very happily at the moment, but you like the idea of having long-term memory the idea of having long-term memory the idea of having long-term memory managed for you serverless, then you can
-
managed for you serverless, then you can managed for you serverless, then you can just take that part and integrate it. just take that part and integrate it. just take that part and integrate it. That's totally something you can do. That's totally something you can do. That's totally something you can do. Here's a QR code. Sorry, probably should Here's a QR code. Sorry, probably should Here's a QR code. Sorry, probably should have put that there a second ago. I'm have put that there a second ago. I'm have put that there a second ago. I'm moving this QR code in just a moment, moving this QR code in just a moment, moving this QR code in just a moment, but Amazon Bedrock agent core is that if but Amazon Bedrock agent core is that if but Amazon Bedrock agent core is that if you're interested in the Strands agents, you're interested in the Strands agents, you're interested in the Strands agents, which I happen to be using for this, which I happen to be using for this, which I happen to be using for this, it's obviously it's it's free because it's obviously it's it's free because it's obviously it's it's free because it's open source. Um, and it's a um a it's open source. Um, and it's a um a it's open source. Um, and it's a um a model first framework for putting model first framework for putting model first framework for putting together agents. It's super fast, it's together agents. It's super fast, it's together agents. It's super fast, it's super powerful, and it's what I use all super powerful, and it's what I use all super powerful, and it's what I use all the time. Thank you so much for being the time. Thank you so much for being the time. Thank you so much for being with me in this presentation. Please with me in this presentation. Please with me in this presentation. Please feel free to connect with me on feel free to connect with me on feel free to connect with me on LinkedIn. I'd love to carry on the LinkedIn. I'd love to carry on the LinkedIn. I'd love to carry on the conversation with you. have a fantastic conversation with you. have a fantastic conversation with you. have a fantastic rest of show and have a safe travel as rest of show and have a safe travel as rest of show and have a safe travel as you go home after the event. Thank you you go home after the event. Thank you you go home after the event. Thank you so much.
No summary available yet.
View original episode ↗