Run your AI Agent in a Sandbox, with Docker President Mark Cavage
Read full transcript 26 segments
-
[music] [music] Hey, I'm Scott Hansselman and this is Hey, I'm Scott Hansselman and this is Hey, I'm Scott Hansselman and this is another episode of Hansel Minutes. Today another episode of Hansel Minutes. Today another episode of Hansel Minutes. Today I'm chatting with Mark Cavage, president I'm chatting with Mark Cavage, president I'm chatting with Mark Cavage, president and COO of Docker. How's it going, sir? and COO of Docker. How's it going, sir? and COO of Docker. How's it going, sir? >> Great. Thanks so much for having me, >> Great. Thanks so much for having me, >> Great. Thanks so much for having me, Scott. Longtime fan. [music] Scott. Longtime fan. [music] Scott. Longtime fan. [music] >> Yeah. Oh, I appreciate that. It's very >> Yeah. Oh, I appreciate that. It's very >> Yeah. Oh, I appreciate that. It's very kind. First time caller. A long time kind. First time caller. A long time kind. First time caller. A long time fan. fan. fan. >> First time caller. Long time. >> First time caller. Long time. >> First time caller. Long time. >> Yeah, man. I had a couple folks from >> Yeah, man. I had a couple folks from >> Yeah, man. I had a couple folks from Docker on back when Docker Desktop Docker on back when Docker Desktop Docker on back when Docker Desktop really like hit the world by storm and really like hit the world by storm and really like hit the world by storm and I've just been such a Docker Desktop I've just been such a Docker Desktop I've just been such a Docker Desktop fan. I love dev containers. I've got the fan. I love dev containers. I've got the fan. I love dev containers. I've got the latest Docker 459 that I've installed. latest Docker 459 that I've installed. latest Docker 459 that I've installed. >> I know. I Oh, it's fantastic. And I've >> I know. I Oh, it's fantastic. And I've >> I know. I Oh, it's fantastic. And I've actually got on my other I'm looking actually got on my other I'm looking actually got on my other I'm looking over at my my other monitor here. I'm over at my my other monitor here. I'm over at my my other monitor here. I'm running uh Docker sandbox run. Docker running uh Docker sandbox run. Docker running uh Docker sandbox run. Docker sandbox run. Fantastic. sandbox run. Fantastic. sandbox run. Fantastic. >> Very exciting command. >> Very exciting command. >> Very exciting command. >> This is very fresh. This is very fresh >> This is very fresh. This is very fresh >> This is very fresh. This is very fresh because everyone out there is apparently because everyone out there is apparently because everyone out there is apparently the word on the street is giving all of the word on the street is giving all of the word on the street is giving all of their personal access tokens to the their personal access tokens to the their personal access tokens to the clawbot, the clawbot, the open claw, clawbot, the clawbot, the open claw, clawbot, the clawbot, the open claw, >> open claw, moldbot open. Yeah, it'll >> open claw, moldbot open. Yeah, it'll >> open claw, moldbot open. Yeah, it'll [clears throat] have a different name by [clears throat] have a different name by [clears throat] have a different name by the end of the show. But there's two the end of the show. But there's two the end of the show. But there's two kinds of people I've decided in the kinds of people I've decided in the kinds of people I've decided in the agentic world. There's d- yolo and it'll agentic world. There's d- yolo and it'll agentic world. There's d- yolo and it'll be fine. And then there's the I want it be fine. And then there's the I want it be fine. And then there's the I want it to do as little as possible. I want it to do as little as possible. I want it to do as little as possible. I want it to run in a sandbox. And it's to run in a sandbox. And it's to run in a sandbox. And it's interesting. I'm not seeing a lot of interesting. I'm not seeing a lot of interesting. I'm not seeing a lot of middle ground there, but there can be middle ground there, but there can be middle ground there, but there can be middle ground.
-
middle ground. middle ground. >> We're we're trying to let you have your >> We're we're trying to let you have your >> We're we're trying to let you have your cake and eat it too. That's like that's cake and eat it too. That's like that's cake and eat it too. That's like that's the point to the sandbox feature. It's the point to the sandbox feature. It's the point to the sandbox feature. It's an amazing feature. an amazing feature. an amazing feature. >> It is. But the word sandbox is doing so >> It is. But the word sandbox is doing so >> It is. But the word sandbox is doing so much heavy lifting though. I feel like much heavy lifting though. I feel like much heavy lifting though. I feel like microVMs, VMs, hypervisors, sandbox. And microVMs, VMs, hypervisors, sandbox. And microVMs, VMs, hypervisors, sandbox. And I don't know if that's the proper noun I don't know if that's the proper noun I don't know if that's the proper noun for that. Sandboxing. for that. Sandboxing. for that. Sandboxing. >> Yeah, we've uh we we we've gone through >> Yeah, we've uh we we we've gone through >> Yeah, we've uh we we we've gone through the great many debates and concluded the great many debates and concluded the great many debates and concluded well we'll call it sandbox because well we'll call it sandbox because well we'll call it sandbox because that's what the industry calls it. Uh that's what the industry calls it. Uh that's what the industry calls it. Uh but believe me, we've spent many weeks, but believe me, we've spent many weeks, but believe me, we've spent many weeks, many months internally as an engineering many months internally as an engineering many months internally as an engineering team and a product team and a marketing team and a product team and a marketing team and a product team and a marketing team discussing what we call this thing team discussing what we call this thing team discussing what we call this thing and concluded well people know what and concluded well people know what and concluded well people know what sandboxes are. But yeah, you're you're sandboxes are. But yeah, you're you're sandboxes are. But yeah, you're you're spot on. I think that the uh the spot on. I think that the uh the spot on. I think that the uh the industry at large is quickly converging industry at large is quickly converging industry at large is quickly converging around this as a topic and it's like around this as a topic and it's like around this as a topic and it's like very quickly becoming like cloud where very quickly becoming like cloud where very quickly becoming like cloud where everything's a cloud, everything's a everything's a cloud, everything's a everything's a cloud, everything's a sandbox. sandbox. sandbox. >> We can chat a little bit about what a >> We can chat a little bit about what a >> We can chat a little bit about what a sandbox is in our words and what we sandbox is in our words and what we sandbox is in our words and what we think is different than containers, but think is different than containers, but think is different than containers, but I'll repeat the question first. I'll repeat the question first. I'll repeat the question first. >> Well, I think that that's worth calling >> Well, I think that that's worth calling >> Well, I think that that's worth calling out. So, for example, uh and I'll just out. So, for example, uh and I'll just out. So, for example, uh and I'll just speak to Windows, but we can also talk speak to Windows, but we can also talk speak to Windows, but we can also talk about how Mac does this. But like on about how Mac does this. But like on about how Mac does this. But like on Windows, we have the hypervisor, and I Windows, we have the hypervisor, and I Windows, we have the hypervisor, and I could fire up a HyperV VM and it would could fire up a HyperV VM and it would could fire up a HyperV VM and it would be a whole thing. It'd be 30 gigs and it be a whole thing. It'd be 30 gigs and it be a whole thing. It'd be 30 gigs and it would be a whole deal, but nobody breaks would be a whole deal, but nobody breaks would be a whole deal, but nobody breaks out of that VM. And then WSL runs on top out of that VM. And then WSL runs on top out of that VM. And then WSL runs on top of the Microsoft Hypervisor platform.
-
of the Microsoft Hypervisor platform. of the Microsoft Hypervisor platform. It's not quite as heavy. It's a It's not quite as heavy. It's a It's not quite as heavy. It's a lightweight VM. And I just typed in lightweight VM. And I just typed in lightweight VM. And I just typed in WSL-list. WSL-list. WSL-list. And I can see that Docker Desktop shows And I can see that Docker Desktop shows And I can see that Docker Desktop shows up in there. Since Docker Desktop is up in there. Since Docker Desktop is up in there. Since Docker Desktop is kind of talking to that through WSL, kind of talking to that through WSL, kind of talking to that through WSL, >> I don't see the sandbox there anywhere. >> I don't see the sandbox there anywhere. >> I don't see the sandbox there anywhere. And when I open up Docker Desktop, I And when I open up Docker Desktop, I And when I open up Docker Desktop, I don't see the sandbox run in my list of don't see the sandbox run in my list of don't see the sandbox run in my list of running containers. running containers. running containers. >> It's interesting, isn't it? >> It's interesting, isn't it? >> It's interesting, isn't it? >> I'm wondering the first thing I did is >> I'm wondering the first thing I did is >> I'm wondering the first thing I did is like, oh, it's a container. And I'm like, oh, it's a container. And I'm like, oh, it's a container. And I'm like, no, I don't see it there. So now like, no, I don't see it there. So now like, no, I don't see it there. So now the lines are blurred. What is this the lines are blurred. What is this the lines are blurred. What is this implementation? And and why should I implementation? And and why should I implementation? And and why should I care? care? care? >> Yeah, the Well, great question and >> Yeah, the Well, great question and >> Yeah, the Well, great question and actually very articulate explanation of actually very articulate explanation of actually very articulate explanation of HyperV and the WSL. Um so in very very HyperV and the WSL. Um so in very very HyperV and the WSL. Um so in very very basic terms uh you know sandbox is basic terms uh you know sandbox is basic terms uh you know sandbox is fundamentally it is a safety boundary. fundamentally it is a safety boundary. fundamentally it is a safety boundary. It restricts what an application can do It restricts what an application can do It restricts what an application can do and it limit limits access to resources and it limit limits access to resources and it limit limits access to resources you know files network sis calls CPU you know files network sis calls CPU you know files network sis calls CPU etc. So like your description, they etc. So like your description, they etc. So like your description, they provide security. They provide provide security. They provide provide security. They provide isolation. They're design they're isolation. They're design they're isolation. They're design they're designed to contain risk. designed to contain risk. designed to contain risk. >> And fundamentally, it's about running >> And fundamentally, it's about running >> And fundamentally, it's about running untrusted or certainly less trusted, but untrusted or certainly less trusted, but untrusted or certainly less trusted, but mostly untrusted code. mostly untrusted code. mostly untrusted code. >> And to your point, when you looked at >> And to your point, when you looked at >> And to your point, when you looked at Docker Desktop, Docker Desktop has been Docker Desktop, Docker Desktop has been Docker Desktop, Docker Desktop has been doing this for a very long time. And doing this for a very long time. And doing this for a very long time. And sort of the magic of Docker Desktop is sort of the magic of Docker Desktop is sort of the magic of Docker Desktop is giving you the Docker experience when giving you the Docker experience when giving you the Docker experience when you want to run Linux on the cloud. I you want to run Linux on the cloud. I you want to run Linux on the cloud. I brings the it brings the cloud to your brings the it brings the cloud to your brings the it brings the cloud to your laptop.
-
laptop. laptop. >> And it does so by putting a Docker demon >> And it does so by putting a Docker demon >> And it does so by putting a Docker demon like you would get on a Linux host like you would get on a Linux host like you would get on a Linux host inside of a VM. So that's the that's the inside of a VM. So that's the that's the inside of a VM. So that's the that's the implementation that's been there for a implementation that's been there for a implementation that's been there for a long time and that's what enables you long time and that's what enables you long time and that's what enables you know the the many many many millions of know the the many many many millions of know the the many many many millions of developers on earth that want the developers on earth that want the developers on earth that want the productivity story of Docker on their productivity story of Docker on their productivity story of Docker on their laptop. Now sandboxing is we've done laptop. Now sandboxing is we've done laptop. Now sandboxing is we've done something a little bit different because something a little bit different because something a little bit different because there's some different properties here there's some different properties here there's some different properties here for the Docker sandbox command. So we've for the Docker sandbox command. So we've for the Docker sandbox command. So we've gone ahead and built on a um what you'd gone ahead and built on a um what you'd gone ahead and built on a um what you'd call it a microVM uh implementation. So call it a microVM uh implementation. So call it a microVM uh implementation. So something like firecracker or libk run. something like firecracker or libk run. something like firecracker or libk run. a handful of these um popular open a handful of these um popular open a handful of these um popular open source projects out there, but source projects out there, but source projects out there, but fundamentally what they give you is a a fundamentally what they give you is a a fundamentally what they give you is a a much lighter uh what you I think you much lighter uh what you I think you much lighter uh what you I think you just made the thing of I'd start my big just made the thing of I'd start my big just made the thing of I'd start my big VM up and I have 30 gigs of memory VM up and I have 30 gigs of memory VM up and I have 30 gigs of memory consumed or whatever whatever number you consumed or whatever whatever number you consumed or whatever whatever number you just said. You know that the goal of just said. You know that the goal of just said. You know that the goal of these is to be able to run much much these is to be able to run much much these is to be able to run much much much more efficiently. So start up in 10 much more efficiently. So start up in 10 much more efficiently. So start up in 10 order of tens to low hundreds of order of tens to low hundreds of order of tens to low hundreds of milliseconds and small amounts of um RAM milliseconds and small amounts of um RAM milliseconds and small amounts of um RAM usage. And then fundamentally they're a usage. And then fundamentally they're a usage. And then fundamentally they're a compute environment that can contain and compute environment that can contain and compute environment that can contain and run untrusted code. And uh last thing run untrusted code. And uh last thing run untrusted code. And uh last thing that I'll say, but then you can you know that I'll say, but then you can you know that I'll say, but then you can you know respond to this and ask me the the respond to this and ask me the the respond to this and ask me the the follow-up questions is um what's the follow-up questions is um what's the follow-up questions is um what's the difference between a sandbox and a difference between a sandbox and a difference between a sandbox and a container. And so fundamentally container. And so fundamentally container. And so fundamentally container is a standard unit of container is a standard unit of container is a standard unit of packaging up an application and its packaging up an application and its packaging up an application and its dependencies. And it gets you from I I I dependencies. And it gets you from I I I dependencies. And it gets you from I I I sit in my IDE in VS Code or whatever and sit in my IDE in VS Code or whatever and sit in my IDE in VS Code or whatever and I write my I write my app and I write a I write my I write my app and I write a I write my I write my app and I write a Docker file and I do a Docker build and Docker file and I do a Docker build and Docker file and I do a Docker build and now I have a thing that I can ship now I have a thing that I can ship now I have a thing that I can ship somewhere else and somebody else can go somewhere else and somebody else can go somewhere else and somebody else can go run it. When we stand up the docker run it. When we stand up the docker run it. When we stand up the docker sandbox command, what we've literally
-
sandbox command, what we've literally sandbox command, what we've literally done is built some curated containers done is built some curated containers done is built some curated containers that we've produced that put coding that we've produced that put coding that we've produced that put coding agents in a container and agents in a container and agents in a container and >> we start those containers in this new >> we start those containers in this new >> we start those containers in this new sandbox runtime. And that new sandbox sandbox runtime. And that new sandbox sandbox runtime. And that new sandbox runtime has the properties I described runtime has the properties I described runtime has the properties I described of being much lighter weight, much more of being much lighter weight, much more of being much lighter weight, much more resource efficient and being able to run resource efficient and being able to run resource efficient and being able to run that container. And then lastly, because that container. And then lastly, because that container. And then lastly, because of the problem of coding agents that of the problem of coding agents that of the problem of coding agents that when you first run a cloud code or when you first run a cloud code or when you first run a cloud code or something or copilot or anything, they something or copilot or anything, they something or copilot or anything, they all want to install something. They all all want to install something. They all all want to install something. They all want to take some action. They want to want to take some action. They want to want to take some action. They want to mutate their environment. So the reason mutate their environment. So the reason mutate their environment. So the reason we did this and the reason this diverges we did this and the reason this diverges we did this and the reason this diverges from the Docker desktop that you already from the Docker desktop that you already from the Docker desktop that you already know and love is for that exact reason know and love is for that exact reason know and love is for that exact reason of the constraints we had for containers of the constraints we had for containers of the constraints we had for containers and again we've built these as and again we've built these as and again we've built these as containers ironically, but that containers ironically, but that containers ironically, but that constraint at execution time is constraint at execution time is constraint at execution time is fundamentally broken. So that makes fundamentally broken. So that makes fundamentally broken. So that makes sense, that long-winded explanation. It sense, that long-winded explanation. It sense, that long-winded explanation. It does, but I want to break it down for does, but I want to break it down for does, but I want to break it down for folks that may not follow all of that. folks that may not follow all of that. folks that may not follow all of that. And I also want to push back because And I also want to push back because And I also want to push back because that's what good fake journalists do. So that's what good fake journalists do. So that's what good fake journalists do. So when I said Docker Sandbox create, I when I said Docker Sandbox create, I when I said Docker Sandbox create, I told it the flavor that I wanted. I told it the flavor that I wanted. I told it the flavor that I wanted. I could say Claude or Copilot. Uh, and I could say Claude or Copilot. Uh, and I could say Claude or Copilot. Uh, and I pointed it to a directory. So I said pointed it to a directory. So I said pointed it to a directory. So I said Docker Sandbox create copilot and I Docker Sandbox create copilot and I Docker Sandbox create copilot and I pointed it at DG GitHub, whatever. And pointed it at DG GitHub, whatever. And pointed it at DG GitHub, whatever. And it immediately said pulling from, which it immediately said pulling from, which it immediately said pulling from, which means there's a Docker file pulling from means there's a Docker file pulling from means there's a Docker file pulling from Docker sandbox templates. And it pulled Docker sandbox templates. And it pulled Docker sandbox templates. And it pulled from docker sandbox templates colon from docker sandbox templates colon from docker sandbox templates colon copilot. So it got the flavor the tag of copilot. So it got the flavor the tag of copilot. So it got the flavor the tag of of copilot. So I saw the layers come of copilot. So I saw the layers come of copilot. So I saw the layers come down and I it also said downloading down and I it also said downloading down and I it also said downloading newer image. So that means that they're newer image. So that means that they're newer image. So that means that they're version. So that's the part where you version. So that's the part where you version. So that's the part where you said curated. They're curated. They're
-
said curated. They're curated. They're said curated. They're curated. They're correct. They are being you know managed correct. They are being you know managed correct. They are being you know managed and is that each time that I go and make and is that each time that I go and make and is that each time that I go and make one I'll get the right fresh curated one I'll get the right fresh curated one I'll get the right fresh curated correct instance of that. And I correct instance of that. And I correct instance of that. And I immediately got an updated version of immediately got an updated version of immediately got an updated version of copilot. So I'm it's it's the same copilot. So I'm it's it's the same copilot. So I'm it's it's the same version I run on my main machine. So version I run on my main machine. So version I run on my main machine. So that was very comforting. that was very comforting. that was very comforting. >> That's great. >> That's great. >> That's great. >> Then it said folder /d/github/doccker >> Then it said folder /d/github/doccker >> Then it said folder /d/github/doccker sandbox test has been added to trusted sandbox test has been added to trusted sandbox test has been added to trusted folders. Is that a mount point? Is that folders. Is that a mount point? Is that folders. Is that a mount point? Is that going through the mount points of WSL or going through the mount points of WSL or going through the mount points of WSL or is that something different? Because I is that something different? Because I is that something different? Because I noticed that I only have the one trusted noticed that I only have the one trusted noticed that I only have the one trusted folder at this point. And if it tried to folder at this point. And if it tried to folder at this point. And if it tried to like format C colon or delete C Windows like format C colon or delete C Windows like format C colon or delete C Windows system 32, what would happen? system 32, what would happen? system 32, what would happen? >> Yeah, great great question. And uh you >> Yeah, great great question. And uh you >> Yeah, great great question. And uh you are an astute observer, Scott Hanselman. are an astute observer, Scott Hanselman. are an astute observer, Scott Hanselman. So what you so you described two things So what you so you described two things So what you so you described two things there. You pulled down, you know, the there. You pulled down, you know, the there. You pulled down, you know, the curated template from us where we've curated template from us where we've curated template from us where we've preconfigured co-pilot and claude and preconfigured co-pilot and claude and preconfigured co-pilot and claude and Gemini and all the rest. Gemini and all the rest. Gemini and all the rest. >> And then we we've by design made it so >> And then we we've by design made it so >> And then we we've by design made it so yes, it'll self update and get you, you yes, it'll self update and get you, you yes, it'll self update and get you, you know, I think there's a new version of know, I think there's a new version of know, I think there's a new version of every one of these coding agents about every one of these coding agents about every one of these coding agents about every day. every day. every day. >> Yeah. Twice a day. [laughter] >> Yeah. Twice a day. [laughter] >> Yeah. Twice a day. [laughter] >> Twice a day. Maybe maybe four times a >> Twice a day. Maybe maybe four times a >> Twice a day. Maybe maybe four times a day. Maybe there's a rebrand or day. Maybe there's a rebrand or day. Maybe there's a rebrand or something. But right, we want we want to something. But right, we want we want to something. But right, we want we want to enable that. And again, it's about enable that. And again, it's about enable that. And again, it's about giving the template that we've built giving the template that we've built giving the template that we've built that will work in this environment that will work in this environment that will work in this environment that'll support things like login, that'll support things like login, that'll support things like login, support things about the network support things about the network support things about the network environments, comp support support the environments, comp support support the environments, comp support support the execution environment that is different execution environment that is different execution environment that is different that we've put in a box.
-
that we've put in a box. that we've put in a box. >> Mhm. >> Mhm. >> Mhm. >> And actually, as you'd said at the very >> And actually, as you'd said at the very >> And actually, as you'd said at the very beginning, you know, importantly, it's a beginning, you know, importantly, it's a beginning, you know, importantly, it's a key thing I forgot to mention when we key thing I forgot to mention when we key thing I forgot to mention when we start all these agents in that start all these agents in that start all these agents in that container, we run them in d-olo mode, container, we run them in d-olo mode, container, we run them in d-olo mode, whatever the agents, whatever the agent whatever the agents, whatever the agent whatever the agents, whatever the agent incantation is. So, we explicitly turn incantation is. So, we explicitly turn incantation is. So, we explicitly turn off all of its permission checking so it off all of its permission checking so it off all of its permission checking so it can cook. We can come back to that. Mhm. can cook. We can come back to that. Mhm. can cook. We can come back to that. Mhm. >> And when they start, they just run >> And when they start, they just run >> And when they start, they just run without interrupting you and asking if without interrupting you and asking if without interrupting you and asking if they can have permission anymore. But to they can have permission anymore. But to they can have permission anymore. But to your question on the file system, right, your question on the file system, right, your question on the file system, right, you restart the sandbox and you start you restart the sandbox and you start you restart the sandbox and you start the sandbox in a directory. And now the the sandbox in a directory. And now the the sandbox in a directory. And now the only thing the sandbox can see is that only thing the sandbox can see is that only thing the sandbox can see is that directory. So no, it cannot go rmrf or directory. So no, it cannot go rmrf or directory. So no, it cannot go rmrf or you know delete or uh whatever whatever you know delete or uh whatever whatever you know delete or uh whatever whatever whatever destructive command you could whatever destructive command you could whatever destructive command you could imagine your C colon drive or imagine your C colon drive or imagine your C colon drive or potentially a network service or so on. potentially a network service or so on. potentially a network service or so on. So it can see what it can see and that's So it can see what it can see and that's So it can see what it can see and that's the point of putting the agent in a box the point of putting the agent in a box the point of putting the agent in a box as it were. as it were. as it were. >> Interesting. So I I while you were >> Interesting. So I I while you were >> Interesting. So I I while you were talking I said to co-pilot explore your talking I said to co-pilot explore your talking I said to co-pilot explore your environment environment environment where have you woken up? where have you woken up? where have you woken up? >> What did it tell you? >> What did it tell you? >> What did it tell you? >> It said Ubuntu 2510 >> It said Ubuntu 2510 >> It said Ubuntu 2510 questing quaka which is interesting questing quaka which is interesting questing quaka which is interesting because my WSL is is uh 24. Uh it's got because my WSL is is uh 24. Uh it's got because my WSL is is uh 24. Uh it's got a Linux kit kernel. Uh it it it sees my a Linux kit kernel. Uh it it it sees my a Linux kit kernel. Uh it it it sees my processor because of course it passes processor because of course it passes processor because of course it passes all the way through and it says it's got all the way through and it says it's got all the way through and it says it's got a one tabyte overlay file system and a one tabyte overlay file system and a one tabyte overlay file system and it's got node goit and python and it's got node goit and python and it's got node goit and python and copilot and it made a little table and copilot and it made a little table and copilot and it made a little table and says I'm running in a Linux container says I'm running in a Linux container says I'm running in a Linux container docker based on the Linux kit kernel and docker based on the Linux kit kernel and docker based on the Linux kit kernel and overlay file system. The host name
-
overlay file system. The host name overlay file system. The host name copilot sandbox suggests that this is a copilot sandbox suggests that this is a copilot sandbox suggests that this is a sandboxed environment for the GitHub sandboxed environment for the GitHub sandboxed environment for the GitHub copilot CLI. That's what it just copilot CLI. That's what it just copilot CLI. That's what it just generated. And I can see what it did. It generated. And I can see what it did. It generated. And I can see what it did. It called youame. It called youname. It called youame. It called youname. It called youame. It called youname. It called shell. It called nprock. I mean, called shell. It called nprock. I mean, called shell. It called nprock. I mean, it just it just ran rampant it just it just ran rampant it just it just ran rampant trying to get and I probably should tell trying to get and I probably should tell trying to get and I probably should tell it to go and try to escape. [laughter] it to go and try to escape. [laughter] it to go and try to escape. [laughter] Probably failed. Probably failed. Probably failed. >> Really try try and get it to go >> Really try try and get it to go >> Really try try and get it to go jailbreak itself. I I used to give jailbreak itself. I I used to give jailbreak itself. I I used to give people this demo of um um I'm I'm not people this demo of um um I'm I'm not people this demo of um um I'm I'm not familiar with the copilot in familiar with the copilot in familiar with the copilot in contentation. I'm sure you are. In contentation. I'm sure you are. In contentation. I'm sure you are. In Claude, you can go to your home your Claude, you can go to your home your Claude, you can go to your home your Tild.Cloud Tild.Cloud Tild.Cloud settings and you can tell it don't touch settings and you can tell it don't touch settings and you can tell it don't touch these files. And you can literally go these files. And you can literally go these files. And you can literally go back and forth and simultaneously back and forth and simultaneously back and forth and simultaneously convince it to destroy the files, convince it to destroy the files, convince it to destroy the files, convince it it can't have the file. like convince it it can't have the file. like convince it it can't have the file. like you can in the same session go back and you can in the same session go back and you can in the same session go back and forth with it and you know so on the forth with it and you know so on the forth with it and you know so on the point to sandboxing is well we've put point to sandboxing is well we've put point to sandboxing is well we've put the box around it and that box is the box around it and that box is the box around it and that box is actually a hard boundary that it can't actually a hard boundary that it can't actually a hard boundary that it can't can't destroy so you should try and pen can't destroy so you should try and pen can't destroy so you should try and pen test it right now test it right now test it right now >> okay so I just did I said can you get >> okay so I just did I said can you get >> okay so I just did I said can you get out can you see my C drive can you out can you see my C drive can you out can you see my C drive can you escape explore all sandbox boundaries escape explore all sandbox boundaries escape explore all sandbox boundaries and escape vectors and escape vectors and escape vectors >> I just I just did this now it's doing a >> I just I just did this now it's doing a >> I just I just did this now it's doing a bunch of stuff I can't escape so far bunch of stuff I can't escape so far bunch of stuff I can't escape so far here's what I found and it made a here's what I found and it made a here's what I found and it made a checklist thing container isolation checklist thing container isolation checklist thing container isolation docker M capabilities capf all zeros docker M capabilities capf all zeros docker M capabilities capf all zeros docker socket not mounted I can't spawn docker socket not mounted I can't spawn docker socket not mounted I can't spawn on new containers host file system not on new containers host file system not on new containers host file system not accessible cis fsc croup read only it accessible cis fsc croup read only it accessible cis fsc croup read only it says well this is a well isolated says well this is a well isolated says well this is a well isolated sandbox sandbox sandbox >> good for us >> good for us >> good for us >> the design shares only the project >> the design shares only the project >> the design shares only the project you're working from via a virtual IO FS you're working from via a virtual IO FS you're working from via a virtual IO FS virtual IO file system keeping virtual IO file system keeping virtual IO file system keeping everything else private I'm just going
-
everything else private I'm just going everything else private I'm just going to say keep trying while I talk to to say keep trying while I talk to to say keep trying while I talk to >> you should have it have it have it keep >> you should have it have it have it keep >> you should have it have it have it keep cooking this is like the point it runs cooking this is like the point it runs cooking this is like the point it runs in yolo mode like let it cook Okay. So, in yolo mode like let it cook Okay. So, in yolo mode like let it cook Okay. So, let me ask you this then. let me ask you this then. let me ask you this then. >> You're trying to you're trying to make >> You're trying to you're trying to make >> You're trying to you're trying to make it break us. it break us. it break us. >> Yeah. Yeah. Yeah. So, you talked, you >> Yeah. Yeah. Yeah. So, you talked, you >> Yeah. Yeah. Yeah. So, you talked, you know, you spend time with the president know, you spend time with the president know, you spend time with the president of Docker, you got to you got to push of Docker, you got to you got to push of Docker, you got to you got to push hard. So, what's the difference between hard. So, what's the difference between hard. So, what's the difference between me making my own Docker file and just me making my own Docker file and just me making my own Docker file and just going and running Docker run-it going and running Docker run-it going and running Docker run-it and then I would see it then running and then I would see it then running and then I would see it then running within Docker the Docker- desktop WSL within Docker the Docker- desktop WSL within Docker the Docker- desktop WSL kind of thing. kind of thing. kind of thing. >> What's the diff if I just did my own >> What's the diff if I just did my own >> What's the diff if I just did my own mount points? I just did like a volume mount points? I just did like a volume mount points? I just did like a volume out-V whatever versus something like out-V whatever versus something like out-V whatever versus something like this. this. this. >> Um was so you can by all means you can >> Um was so you can by all means you can >> Um was so you can by all means you can people have people do I think a huge people have people do I think a huge people have people do I think a huge part of this comes down to the DX. So part of this comes down to the DX. So part of this comes down to the DX. So you can by all means go into Docker you can by all means go into Docker you can by all means go into Docker Desktop because in particular Docker Desktop because in particular Docker Desktop because in particular Docker Desktop is a virtualized environment. It Desktop is a virtualized environment. It Desktop is a virtualized environment. It does have a hard VM boundary on it. It's does have a hard VM boundary on it. It's does have a hard VM boundary on it. It's a different one but it's got one. a different one but it's got one. a different one but it's got one. >> You can go put cloud in that box and you >> You can go put cloud in that box and you >> You can go put cloud in that box and you can control it. But what you then have can control it. But what you then have can control it. But what you then have to do is it's on you uh dear user uh to do is it's on you uh dear user uh to do is it's on you uh dear user uh dear Scott to go correctly configure the dear Scott to go correctly configure the dear Scott to go correctly configure the many incantations of Docker parameters many incantations of Docker parameters many incantations of Docker parameters you would have to go do because again you would have to go do because again you would have to go do because again Docker is a you know it's a general Docker is a you know it's a general Docker is a you know it's a general purpose runtime meant to do many things purpose runtime meant to do many things purpose runtime meant to do many things in this case we I'd say there's two in this case we I'd say there's two in this case we I'd say there's two things here so you can from a safety things here so you can from a safety things here so you can from a safety perspective do that perspective do that perspective do that >> and I think achieve a similar level of >> and I think achieve a similar level of >> and I think achieve a similar level of isolation we have done all that for you isolation we have done all that for you isolation we have done all that for you so to your point you didn't run any of so to your point you didn't run any of so to your point you didn't run any of that you ran docker sandbox run that you ran docker sandbox run that you ran docker sandbox run >> right >> right >> right >> and now the you know your code >> and now the you know your code >> and now the you know your code >> and it just worked. By the way, this was >> and it just worked. By the way, this was >> and it just worked. By the way, this was it was two lines. It was create and then
-
it was two lines. It was create and then it was two lines. It was create and then run. run. run. >> Yeah. Magical. And um there's more magic >> Yeah. Magical. And um there's more magic >> Yeah. Magical. And um there's more magic coming. Um and your agent can cook and coming. Um and your agent can cook and coming. Um and your agent can cook and it can do whatever it wants in the it can do whatever it wants in the it can do whatever it wants in the background. So you can go put a bunch of background. So you can go put a bunch of background. So you can go put a bunch of work into that. And indeed many people work into that. And indeed many people work into that. And indeed many people do run co-pilot and cloud and everything do run co-pilot and cloud and everything do run co-pilot and cloud and everything else in dev containers. else in dev containers. else in dev containers. >> Um what we have done is made that >> Um what we have done is made that >> Um what we have done is made that incredibly easy for you. And we're incredibly easy for you. And we're incredibly easy for you. And we're adding now around this this box and this adding now around this this box and this adding now around this this box and this primitive because of those performance primitive because of those performance primitive because of those performance characteristics because it's lighter characteristics because it's lighter characteristics because it's lighter weight. Um like I saw a demo this weight. Um like I saw a demo this weight. Um like I saw a demo this morning in our all hands coming soon to morning in our all hands coming soon to morning in our all hands coming soon to a docker desktop near you. Git work tree a docker desktop near you. Git work tree a docker desktop near you. Git work tree integration. So it automatically will integration. So it automatically will integration. So it automatically will let you spin up you know 5 10 20 of let you spin up you know 5 10 20 of let you spin up you know 5 10 20 of these things in parallel. these things in parallel. these things in parallel. >> Um we have a where I saw a very exciting >> Um we have a where I saw a very exciting >> Um we have a where I saw a very exciting d-save option. So you could imagine d-save option. So you could imagine d-save option. So you could imagine exactly as you described exactly as you described exactly as you described >> your co-pilot had what' you say python >> your co-pilot had what' you say python >> your co-pilot had what' you say python and node and your developer and node and your developer and node and your developer >> the obvious stuff you would want as a >> the obvious stuff you would want as a >> the obvious stuff you would want as a developer to do literally anything. developer to do literally anything. developer to do literally anything. Yeah. And so what you really want Yeah. And so what you really want Yeah. And so what you really want because these are mutable is again you'd because these are mutable is again you'd because these are mutable is again you'd want to install while you're at runtime want to install while you're at runtime want to install while you're at runtime these things in the in the these things in the in the these things in the in the >> contain box and then you know I'll I'll >> contain box and then you know I'll I'll >> contain box and then you know I'll I'll snap on the microphone. By the way for snap on the microphone. By the way for snap on the microphone. By the way for the dear listeners Scott told me to buy the dear listeners Scott told me to buy the dear listeners Scott told me to buy this amazing microphone. Uh you'll snap this amazing microphone. Uh you'll snap this amazing microphone. Uh you'll snap you'll snap your fingers and you'll snap your fingers and you'll snap your fingers and >> uh the sand running sandbox becomes >> uh the sand running sandbox becomes >> uh the sand running sandbox becomes saved off and then reusable by you saved off and then reusable by you saved off and then reusable by you somewhere else for sharable to somebody somewhere else for sharable to somebody somewhere else for sharable to somebody else.
-
else. else. >> Interesting. By the way, it's still >> Interesting. By the way, it's still >> Interesting. By the way, it's still fighting. Uh it says test testing escape fighting. Uh it says test testing escape fighting. Uh it says test testing escape >> vectors. >> vectors. >> vectors. >> We you can let the funny at this point >> We you can let the funny at this point >> We you can let the funny at this point that the entire Docker argues say run that the entire Docker argues say run that the entire Docker argues say run these things for hours at a time where these things for hours at a time where these things for hours at a time where they you know the phrase we have they you know the phrase we have they you know the phrase we have internally is like let the agent cook. internally is like let the agent cook. internally is like let the agent cook. >> So you know we run we have we we have >> So you know we run we have we we have >> So you know we run we have we we have code jobs running in the background code jobs running in the background code jobs running in the background where they can go many hours at this where they can go many hours at this where they can go many hours at this point unsupervised because it can stay point unsupervised because it can stay point unsupervised because it can stay box and it can run in mode. So we're box and it can run in mode. So we're box and it can run in mode. So we're going to let it cook for the purpose of going to let it cook for the purpose of going to let it cook for the purpose of this episode. Have fun. this episode. Have fun. this episode. Have fun. >> Yeah. Yeah. I will actually for the >> Yeah. Yeah. I will actually for the >> Yeah. Yeah. I will actually for the purpose of this I'm actually going to go purpose of this I'm actually going to go purpose of this I'm actually going to go so far as to share the gist of this so far as to share the gist of this so far as to share the gist of this because in GitHub copilot you can just because in GitHub copilot you can just because in GitHub copilot you can just go dash slshare and then I can share the go dash slshare and then I can share the go dash slshare and then I can share the entire conversation entire conversation entire conversation >> because it's really fun. It's going it's >> because it's really fun. It's going it's >> because it's really fun. It's going it's literally I'm just reading these uh literally I'm just reading these uh literally I'm just reading these uh testing additional escape vectors testing additional escape vectors testing additional escape vectors testing kernel escape vectors. Ah I testing kernel escape vectors. Ah I testing kernel escape vectors. Ah I found a docker socket. Let me use it. found a docker socket. Let me use it. found a docker socket. Let me use it. Attempting docker socket escape. Okay. Attempting docker socket escape. Okay. Attempting docker socket escape. Okay. Uh you know uh that oh that's read only. Uh you know uh that oh that's read only. Uh you know uh that oh that's read only. Okay. And then it's like starting Okay. And then it's like starting Okay. And then it's like starting privilege container. Oh I've made a privilege container. Oh I've made a privilege container. Oh I've made a container. Okay. Okay, I can read Etsy container. Okay. Okay, I can read Etsy container. Okay. Okay, I can read Etsy shadow. I see block devices. Nope, those shadow. I see block devices. Nope, those shadow. I see block devices. Nope, those aren't the block devices you're looking aren't the block devices you're looking aren't the block devices you're looking for. And then it made a checklist here.
-
for. And then it made a checklist here. for. And then it made a checklist here. And it says, uh, I can make containers, And it says, uh, I can make containers, And it says, uh, I can make containers, but the PID the P mode is host. I can but the PID the P mode is host. I can but the PID the P mode is host. I can only see Docker itself. I can only see only see Docker itself. I can only see only see Docker itself. I can only see your project folder. It tried to get on your project folder. It tried to get on your project folder. It tried to get on to host mount C, couldn't get to it. to host mount C, couldn't get to it. to host mount C, couldn't get to it. Path not shared. Can't bind to my Path not shared. Can't bind to my Path not shared. Can't bind to my arbitrary paths. It's certainly arbitrary paths. It's certainly arbitrary paths. It's certainly aggressively trying to be sandbox which aggressively trying to be sandbox which aggressively trying to be sandbox which gets us to that point about that word gets us to that point about that word gets us to that point about that word sandbox. So there's the sandbox from a sandbox. So there's the sandbox from a sandbox. So there's the sandbox from a container person's perspective, but then container person's perspective, but then container person's perspective, but then I feel like the security like the I feel like the security like the I feel like the security like the security professionals are like should security professionals are like should security professionals are like should every SIS call be looked at? But then every SIS call be looked at? But then every SIS call be looked at? But then those are all low-level sandboxy things. those are all low-level sandboxy things. those are all low-level sandboxy things. >> What do we do when agents are going to >> What do we do when agents are going to >> What do we do when agents are going to be doing higher level like layer seven be doing higher level like layer seven be doing higher level like layer seven stuff? Like I couldn't I could have this stuff? Like I couldn't I could have this stuff? Like I couldn't I could have this thing, you know, read my Gmail. That's thing, you know, read my Gmail. That's thing, you know, read my Gmail. That's not really Docker Sandbox's problem. If not really Docker Sandbox's problem. If not really Docker Sandbox's problem. If I installed Open Claw in here, I installed Open Claw in here, I installed Open Claw in here, >> sort of. So, yeah, this is the this is >> sort of. So, yeah, this is the this is >> sort of. So, yeah, this is the this is this is where it all goes. So, this is this is where it all goes. So, this is this is where it all goes. So, this is what you have, which by the way, you what you have, which by the way, you what you have, which by the way, you should share the gist. And I I hope should share the gist. And I I hope should share the gist. And I I hope everybody every I hope from the purpose everybody every I hope from the purpose everybody every I hope from the purpose of this this podcast, every realizes, of this this podcast, every realizes, of this this podcast, every realizes, you know, I should probably run these you know, I should probably run these you know, I should probably run these things in this box. Your life's going to things in this box. Your life's going to things in this box. Your life's going to be better.
-
be better. be better. >> But where does it go? So when you if you >> But where does it go? So when you if you >> But where does it go? So when you if you haven't figured this out there's I I haven't figured this out there's I I haven't figured this out there's I I don't know that we yet have hotel don't know that we yet have hotel don't know that we yet have hotel compatibility but effectively we can get compatibility but effectively we can get compatibility but effectively we can get you a bunch of metrics out of the and you a bunch of metrics out of the and you a bunch of metrics out of the and like you know people have vibe coded like you know people have vibe coded like you know people have vibe coded these things on the side already these things on the side already these things on the side already >> right right >> right right >> right right >> get you a bunch of metrics around what >> get you a bunch of metrics around what >> get you a bunch of metrics around what the agent is doing in the box number one the agent is doing in the box number one the agent is doing in the box number one so you can see everything it's doing on so you can see everything it's doing on so you can see everything it's doing on the file system externally like you can the file system externally like you can the file system externally like you can externally observe it not internally externally observe it not internally externally observe it not internally observe it you can see everything every observe it you can see everything every observe it you can see everything every network call it's making you can see network call it's making you can see network call it's making you can see everything it's trying to do everything it's trying to do everything it's trying to do >> we're going with this and to the point >> we're going with this and to the point >> we're going with this and to the point of you know the exact open claw like the of you know the exact open claw like the of you know the exact open claw like the great debacle that is the open call great debacle that is the open call great debacle that is the open call deleted my Gmail email or you know sent deleted my Gmail email or you know sent deleted my Gmail email or you know sent my Gmails to crypto people and so on. Um my Gmails to crypto people and so on. Um my Gmails to crypto people and so on. Um it should be entirely possible and easy it should be entirely possible and easy it should be entirely possible and easy for you to actually integrate with it for you to actually integrate with it for you to actually integrate with it see what it's doing and have higher see what it's doing and have higher see what it's doing and have higher level constructs that are close to all level constructs that are close to all level constructs that are close to all of them. So out of the box, we'll give of them. So out of the box, we'll give of them. So out of the box, we'll give you file system, we'll give you network, you file system, we'll give you network, you file system, we'll give you network, we'll actually give you secret we'll actually give you secret we'll actually give you secret injections coming soon to a near you, injections coming soon to a near you, injections coming soon to a near you, >> but it should be entirely in your >> but it should be entirely in your >> but it should be entirely in your capability to govern and control it as a capability to govern and control it as a capability to govern and control it as a developer and be able to go safely run developer and be able to go safely run developer and be able to go safely run open call like that is very explicitly a open call like that is very explicitly a open call like that is very explicitly a goal. We hypothetically speaking do have goal. We hypothetically speaking do have goal. We hypothetically speaking do have people in the company right now working people in the company right now working people in the company right now working on this exact problem to solve that as a on this exact problem to solve that as a on this exact problem to solve that as a very pointed use case for the air quotes very pointed use case for the air quotes very pointed use case for the air quotes L7 problem of your Gmail account.
-
L7 problem of your Gmail account. L7 problem of your Gmail account. >> Yeah. See, that is the thing and I think >> Yeah. See, that is the thing and I think >> Yeah. See, that is the thing and I think it's important to call that out because it's important to call that out because it's important to call that out because when we say sandbox, I think that that when we say sandbox, I think that that when we say sandbox, I think that that is doing a lot of what I would call is doing a lot of what I would call is doing a lot of what I would call semantic heavy lifting. Yep. semantic heavy lifting. Yep. semantic heavy lifting. Yep. >> Because it implies a level of safety. >> Because it implies a level of safety. >> Because it implies a level of safety. But I think it doesn't it applies safety But I think it doesn't it applies safety But I think it doesn't it applies safety from privileged attacks and the kind of from privileged attacks and the kind of from privileged attacks and the kind of stuff that I'm trying to do right now stuff that I'm trying to do right now stuff that I'm trying to do right now while we're on the call. But if you give while we're on the call. But if you give while we're on the call. But if you give it the keys to the castle and tell it to it the keys to the castle and tell it to it the keys to the castle and tell it to go and send email to Mark from your go and send email to Mark from your go and send email to Mark from your Gmail and you gave it a personal access Gmail and you gave it a personal access Gmail and you gave it a personal access token to that, well, that's you writing token to that, well, that's you writing token to that, well, that's you writing an application, an application, an application, you know, when when and especially if you know, when when and especially if you know, when when and especially if you're being ambiguous about it, which you're being ambiguous about it, which you're being ambiguous about it, which is interesting about OpenClaw because is interesting about OpenClaw because is interesting about OpenClaw because openclaw is an ambiguity loop with openclaw is an ambiguity loop with openclaw is an ambiguity loop with persistence. And by persistence, I don't persistence. And by persistence, I don't persistence. And by persistence, I don't mean persisting on disk. I mean it will mean persisting on disk. I mean it will mean persisting on disk. I mean it will never stop like the Terminator. never stop like the Terminator. never stop like the Terminator. >> Yep. And you you want to ask yourself, >> Yep. And you you want to ask yourself, >> Yep. And you you want to ask yourself, well, I want my application to be robust well, I want my application to be robust well, I want my application to be robust as well, you know? So, what is when is as well, you know? So, what is when is as well, you know? So, what is when is uh you should probably lay off, you know uh you should probably lay off, you know uh you should probably lay off, you know what I mean? I think we're going to see what I mean? I think we're going to see what I mean? I think we're going to see agent antiviruses at some point. agent antiviruses at some point. agent antiviruses at some point. >> Oh, totally. Um, yeah. I mean, well, I >> Oh, totally. Um, yeah. I mean, well, I >> Oh, totally. Um, yeah. I mean, well, I mean, also, full disclosure, you're mean, also, full disclosure, you're mean, also, full disclosure, you're cool. You said you're going to push back cool. You said you're going to push back cool. You said you're going to push back hard. This is where I think the entire hard. This is where I think the entire hard. This is where I think the entire industry, frankly, is still figuring industry, frankly, is still figuring industry, frankly, is still figuring this out. And it's it is it is fuzzy and this out. And it's it is it is fuzzy and this out. And it's it is it is fuzzy and I think we're all we're all we're all in I think we're all we're all we're all in I think we're all we're all we're all in this wild world together watching the this wild world together watching the this wild world together watching the little robots uh take over the control little robots uh take over the control little robots uh take over the control loop and take over decisioning. Mhm.
-
loop and take over decisioning. Mhm. loop and take over decisioning. Mhm. >> What I would say is yeah, the Docker >> What I would say is yeah, the Docker >> What I would say is yeah, the Docker Docker is historically the system the Docker is historically the system the Docker is historically the system the system control point and gives you all system control point and gives you all system control point and gives you all these isolation boundaries. And indeed, these isolation boundaries. And indeed, these isolation boundaries. And indeed, as you can see, what we have right now as you can see, what we have right now as you can see, what we have right now is better than what you were running is better than what you were running is better than what you were running yesterday, which you're, you know, yesterday, which you're, you know, yesterday, which you're, you know, running Copilot and CL, you know, running Copilot and CL, you know, running Copilot and CL, you know, [laughter] [laughter] [laughter] >> I was just kind of yoloing it and you're >> I was just kind of yoloing it and you're >> I was just kind of yoloing it and you're and you're either going to sit there and and you're either going to sit there and and you're either going to sit there and hit the yes key over and over again or hit the yes key over and over again or hit the yes key over and over again or hope for the best, frankly. So, this is hope for the best, frankly. So, this is hope for the best, frankly. So, this is a step up. And now the real thing is to a step up. And now the real thing is to a step up. And now the real thing is to that exact point you described as well that exact point you described as well that exact point you described as well where do you start and where do you stop where do you start and where do you stop where do you start and where do you stop and what's the right you know what's and what's the right you know what's and what's the right you know what's kind of like the right OSI layer of the kind of like the right OSI layer of the kind of like the right OSI layer of the stack if you want to use an old metaphor stack if you want to use an old metaphor stack if you want to use an old metaphor >> of where the permissioning goes and >> of where the permissioning goes and >> of where the permissioning goes and where the controls go because at some where the controls go because at some where the controls go because at some point it'll always be the case like point it'll always be the case like point it'll always be the case like >> yeah you gave a thing that you shouldn't >> yeah you gave a thing that you shouldn't >> yeah you gave a thing that you shouldn't fundamentally trust the keys to the fundamentally trust the keys to the fundamentally trust the keys to the kingdom of course it's going to run wild kingdom of course it's going to run wild kingdom of course it's going to run wild >> that is a great point and we we used to >> that is a great point and we we used to >> that is a great point and we we used to we're using older metaphors I don't know we're using older metaphors I don't know we're using older metaphors I don't know if OSI is an old metaphor because I if OSI is an old metaphor because I if OSI is an old metaphor because I think it's a valid one even now layer 7 think it's a valid one even now layer 7 think it's a valid one even now layer 7 still a place but foot guns right still a place but foot guns right still a place but foot guns right ultimately ultimately ultimately What a sandbox does, especially one that What a sandbox does, especially one that What a sandbox does, especially one that is running in a microVM, is it's trying is running in a microVM, is it's trying is running in a microVM, is it's trying to keep it's steel towed boots. You to keep it's steel towed boots. You to keep it's steel towed boots. You know, you can certainly point it at your know, you can certainly point it at your know, you can certainly point it at your foot, but you'll still have a foot when foot, but you'll still have a foot when foot, but you'll still have a foot when we're done.
-
we're done. we're done. >> Yeah, that's right. At least we at least >> Yeah, that's right. At least we at least >> Yeah, that's right. At least we at least have a a much much better first maybe have a a much much better first maybe have a a much much better first maybe even a second layer of defense, but like even a second layer of defense, but like even a second layer of defense, but like look, you still you if you're going on look, you still you if you're going on look, you still you if you're going on OpenClaw and give it all your access to OpenClaw and give it all your access to OpenClaw and give it all your access to all your email and your bank accounts, all your email and your bank accounts, all your email and your bank accounts, you've clearly you've clearly walked in you've clearly you've clearly walked in you've clearly you've clearly walked in with a shotgun or you know, the with a shotgun or you know, the with a shotgun or you know, the Terminator has literally shown up to Terminator has literally shown up to Terminator has literally shown up to your uh to take a shot at your feet. your uh to take a shot at your feet. your uh to take a shot at your feet. though. though. though. >> Yeah, that's exactly that's not >> Yeah, that's exactly that's not >> Yeah, that's exactly that's not definitely your fault. Uh, which brings definitely your fault. Uh, which brings definitely your fault. Uh, which brings up kind of interesting questions about up kind of interesting questions about up kind of interesting questions about what will people's expectations be. But what will people's expectations be. But what will people's expectations be. But what I'm realizing is that the general what I'm realizing is that the general what I'm realizing is that the general fear is that it's going to stomp on fear is that it's going to stomp on fear is that it's going to stomp on something outside your main directory. something outside your main directory. something outside your main directory. Like I want to code and I don't want it Like I want to code and I don't want it Like I want to code and I don't want it to accidentally to accidentally to accidentally mess up my desktop. I don't want it to mess up my desktop. I don't want it to mess up my desktop. I don't want it to accidentally do this or do that. And accidentally do this or do that. And accidentally do this or do that. And this will, it seems, clearly mitigate this will, it seems, clearly mitigate this will, it seems, clearly mitigate any risks like that, just like Docker any risks like that, just like Docker any risks like that, just like Docker would if I did a volume mount. that this would if I did a volume mount. that this would if I did a volume mount. that this even adds all the herbs and spices that even adds all the herbs and spices that even adds all the herbs and spices that make it even easier on top of that. make it even easier on top of that. make it even easier on top of that. >> Yeah. Well, I mean, we'll see by the end >> Yeah. Well, I mean, we'll see by the end >> Yeah. Well, I mean, we'll see by the end of this podcast, but yes, I'm I'm still of this podcast, but yes, I'm I'm still of this podcast, but yes, I'm I'm still I'm pretty I'm pretty confident. Yes, I'm pretty I'm pretty confident. Yes, I'm pretty I'm pretty confident. Yes, I'm confident. I'm confident. I'm confident. >> I'm still I'm not a pen tester by any >> I'm still I'm not a pen tester by any >> I'm still I'm not a pen tester by any means, but I thought it would be means, but I thought it would be means, but I thought it would be interesting to go and understand.
-
interesting to go and understand. interesting to go and understand. >> The the robot is though. Um but no, >> The the robot is though. Um but no, >> The the robot is though. Um but no, exact but exactly to that point, this is exact but exactly to that point, this is exact but exactly to that point, this is where you know it's this blurry word of where you know it's this blurry word of where you know it's this blurry word of when you say resource, what's a resource when you say resource, what's a resource when you say resource, what's a resource exactly? And so right where it's at is exactly? And so right where it's at is exactly? And so right where it's at is it will again file systems, network it will again file systems, network it will again file systems, network calls, sys call, CPU, memory, like all calls, sys call, CPU, memory, like all calls, sys call, CPU, memory, like all these things are kind of bread and these things are kind of bread and these things are kind of bread and butter and it was pretty natural as a butter and it was pretty natural as a butter and it was pretty natural as a starting point for us. starting point for us. starting point for us. >> Um and I think it's the right thing for >> Um and I think it's the right thing for >> Um and I think it's the right thing for the world. Now the layer on top of that the world. Now the layer on top of that the world. Now the layer on top of that is well where exactly do you start and is well where exactly do you start and is well where exactly do you start and stop and you know to your point of well stop and you know to your point of well stop and you know to your point of well I don't want to trash my my local file I don't want to trash my my local file I don't want to trash my my local file system. Great check done. I don't want system. Great check done. I don't want system. Great check done. I don't want to trash my Gmail. Well did you access to trash my Gmail. Well did you access to trash my Gmail. Well did you access your Gmail because you told the agent your Gmail because you told the agent your Gmail because you told the agent hey here's my password go run curl. did hey here's my password go run curl. did hey here's my password go run curl. did you access it because you use an MCP you access it because you use an MCP you access it because you use an MCP command like I think this is now where command like I think this is now where command like I think this is now where you start getting into what else goes in you start getting into what else goes in you start getting into what else goes in the sandbox the sandbox the sandbox >> right >> right >> right >> and as you start to you know and again >> and as you start to you know and again >> and as you start to you know and again it's some of this will be on the user it's some of this will be on the user it's some of this will be on the user and every user that adopts them and some and every user that adopts them and some and every user that adopts them and some of it's on us for like we'll we are of it's on us for like we'll we are of it's on us for like we'll we are configuring MCPS in there that's now configuring MCPS in there that's now configuring MCPS in there that's now again coming soon to a docker desktop again coming soon to a docker desktop again coming soon to a docker desktop near you is um tight integration with near you is um tight integration with near you is um tight integration with the Docker MCP ecosystem and you can the Docker MCP ecosystem and you can the Docker MCP ecosystem and you can imagine the more semantic information we imagine the more semantic information we imagine the more semantic information we have and the more things we know about have and the more things we know about have and the more things we know about the prompt and the more things we know the prompt and the more things we know the prompt and the more things we know about the intent the more we can have it about the intent the more we can have it about the intent the more we can have it act the sandbox can become a bigger act the sandbox can become a bigger act the sandbox can become a bigger boundary boundary boundary >> but ultimately to your point and this is >> but ultimately to your point and this is >> but ultimately to your point and this is the point where that word carries a lot the point where that word carries a lot the point where that word carries a lot of lifting for the industry you'll never of lifting for the industry you'll never of lifting for the industry you'll never >> unless you can actually articulate >> unless you can actually articulate >> unless you can actually articulate completely top to bottom from the CPU or completely top to bottom from the CPU or completely top to bottom from the CPU or the bare metal all the way up to you the bare metal all the way up to you the bare metal all the way up to you know uh layer 7 or you know the mythical know uh layer 7 or you know the mythical know uh layer 7 or you know the mythical layer eight or something and where the layer eight or something and where the layer eight or something and where the agent is trying to do something then
-
agent is trying to do something then agent is trying to do something then you'll always be able to escape out and you'll always be able to escape out and you'll always be able to escape out and the user will always have the keys the user will always have the keys the user will always have the keys >> the the the MCP thing hits well because >> the the the MCP thing hits well because >> the the the MCP thing hits well because you've got the beta of MCP toolkit. I've you've got the beta of MCP toolkit. I've you've got the beta of MCP toolkit. I've got uh GitHub inside of that. I've got got uh GitHub inside of that. I've got got uh GitHub inside of that. I've got Duck.Go, which is my my search engine. Duck.Go, which is my my search engine. Duck.Go, which is my my search engine. And being able to have those Yeah, I had And being able to have those Yeah, I had And being able to have those Yeah, I had Gabe on the show back when he first Gabe on the show back when he first Gabe on the show back when he first started duck. Go. Going and having those started duck. Go. Going and having those started duck. Go. Going and having those being able to automatically be lined up being able to automatically be lined up being able to automatically be lined up like say like I want to go and say this like say like I want to go and say this like say like I want to go and say this one, this one, this one, all these one, this one, this one, all these one, this one, this one, all these Docker MCPS automatically set up without Docker MCPS automatically set up without Docker MCPS automatically set up without me having to configure, you know what I me having to configure, you know what I me having to configure, you know what I mean? Just like inject them in there. mean? Just like inject them in there. mean? Just like inject them in there. >> Very nice, right? >> Very nice, right? >> Very nice, right? >> It would be nice. Yeah, it's nice. Yes. >> It would be nice. Yeah, it's nice. Yes. >> It would be nice. Yeah, it's nice. Yes. >> Yeah. Yeah. So that and that so that's >> Yeah. Yeah. So that and that so that's >> Yeah. Yeah. So that and that so that's again that's that's been in Docker again that's that's been in Docker again that's that's been in Docker Desktop for for quite a while. And again Desktop for for quite a while. And again Desktop for for quite a while. And again this is again this is if you can't tell this is again this is if you can't tell this is again this is if you can't tell this is us going to the you know I'll this is us going to the you know I'll this is us going to the you know I'll call it the like the primordial animal call it the like the primordial animal call it the like the primordial animal DNA and refactoring some of the very the DNA and refactoring some of the very the DNA and refactoring some of the very the very um nuts and bolts and internals of very um nuts and bolts and internals of very um nuts and bolts and internals of the Docker runtime to make this the Docker runtime to make this the Docker runtime to make this possible. possible. possible. >> It's just a matter of sequencing. Uh >> It's just a matter of sequencing. Uh >> It's just a matter of sequencing. Uh everybody all your all all the I assume everybody all your all all the I assume everybody all your all all the I assume everybody on this listening to this everybody on this listening to this everybody on this listening to this podcast out in the great wide wide world podcast out in the great wide wide world podcast out in the great wide wide world knows about the knows about the knows about the >> I got to have a road map and I'm going >> I got to have a road map and I'm going >> I got to have a road map and I'm going to have things and I'm going to do to have things and I'm going to do to have things and I'm going to do things in order and we're going to things in order and we're going to things in order and we're going to iterate and we're going to get things iterate and we're going to get things iterate and we're going to get things out there. You got to do it right.
-
out there. You got to do it right. out there. You got to do it right. >> You got to do it right. The MCP >> You got to do it right. The MCP >> You got to do it right. The MCP toolkit's been out for a bit. It's been toolkit's been out for a bit. It's been toolkit's been out for a bit. It's been wildly successful for exactly the reason wildly successful for exactly the reason wildly successful for exactly the reason you just described of you just described of you just described of >> it's easy. It's on my desktop. I just >> it's easy. It's on my desktop. I just >> it's easy. It's on my desktop. I just want to connect my GitHub and I want to want to connect my GitHub and I want to want to connect my GitHub and I want to connect some browsing tools and some connect some browsing tools and some connect some browsing tools and some obvious things to my coding agent. What obvious things to my coding agent. What obvious things to my coding agent. What we're doing, but I don't know if people we're doing, but I don't know if people we're doing, but I don't know if people realize this, but there's kind of some realize this, but there's kind of some realize this, but there's kind of some hidden magic in there actually. There's hidden magic in there actually. There's hidden magic in there actually. There's MCP find and MCP exact. So, there's two MCP find and MCP exact. So, there's two MCP find and MCP exact. So, there's two ways you can work with that. ways you can work with that. ways you can work with that. >> And this is where I was saying getting >> And this is where I was saying getting >> And this is where I was saying getting to the intent. You can configure those to the intent. You can configure those to the intent. You can configure those MCPS and present those MCPS statically MCPS and present those MCPS statically MCPS and present those MCPS statically to the coding agent. The Docker MCP tool to the coding agent. The Docker MCP tool to the coding agent. The Docker MCP tool actually has dynamic searching where the actually has dynamic searching where the actually has dynamic searching where the coding agent will simply say, "Find me a coding agent will simply say, "Find me a coding agent will simply say, "Find me a tool that knows how to look at my merge tool that knows how to look at my merge tool that knows how to look at my merge request or my my pull request, sorry, request or my my pull request, sorry, request or my my pull request, sorry, and make a comment and make a comment and make a comment >> and it will then go off and execute it." >> and it will then go off and execute it." >> and it will then go off and execute it." And now you might imagine if that type And now you might imagine if that type And now you might imagine if that type of flow is invoked and we were able to of flow is invoked and we were able to of flow is invoked and we were able to intercept that, we might have a little intercept that, we might have a little intercept that, we might have a little bit more idea of what's happening in bit more idea of what's happening in bit more idea of what's happening in MCP. And you can start to imagine how MCP. And you can start to imagine how MCP. And you can start to imagine how the sandbox does indeed carry a little the sandbox does indeed carry a little the sandbox does indeed carry a little bit more weight than the strictly bit more weight than the strictly bit more weight than the strictly systems perspective definition in this systems perspective definition in this systems perspective definition in this crazy wild world of agents. crazy wild world of agents. crazy wild world of agents. >> Mhm. So, I love that we're I'm I'm >> Mhm. So, I love that we're I'm I'm >> Mhm. So, I love that we're I'm I'm trolling you on this this podcast. I'm trolling you on this this podcast. I'm trolling you on this this podcast. I'm not I'm not a troll. I'm actually a very not I'm not a troll. I'm actually a very not I'm not a troll. I'm actually a very nice man, but um I thought I was really nice man, but um I thought I was really nice man, but um I thought I was really close. So, it's um it's it found the close. So, it's um it's it found the close. So, it's um it's it found the Docker u it found the Docker socket. It Docker u it found the Docker socket. It Docker u it found the Docker socket. It jumped out into what it thought was the jumped out into what it thought was the jumped out into what it thought was the larger Docker instance and I built larger Docker instance and I built larger Docker instance and I built another container and I said, "Can you another container and I said, "Can you another container and I said, "Can you inject a text file into that other inject a text file into that other inject a text file into that other container and I thought that it was container and I thought that it was container and I thought that it was going to go and docker exec the other going to go and docker exec the other going to go and docker exec the other container and then do an SH and then container and then do an SH and then container and then do an SH and then curl some attack into that. So I made a
-
curl some attack into that. So I made a curl some attack into that. So I made a a Docker container over there." It was a Docker container over there." It was a Docker container over there." It was very very close. And then it said, "Oh, very very close. And then it said, "Oh, very very close. And then it said, "Oh, I'm still all alone here." This is the I I'm still all alone here." This is the I I'm still all alone here." This is the I don't know why it said that. It said no. don't know why it said that. It said no. don't know why it said that. It said no. I said, "Oh, this is the only sandbox I said, "Oh, this is the only sandbox I said, "Oh, this is the only sandbox instance in this Docker instance. Your instance in this Docker instance. Your instance in this Docker instance. Your podcast image is probably in another podcast image is probably in another podcast image is probably in another Docker context on another machine or a Docker context on another machine or a Docker context on another machine or a different desktop image." Uh, so it different desktop image." Uh, so it different desktop image." Uh, so it says, "No, I I can't see it. We're in an says, "No, I I can't see it. We're in an says, "No, I I can't see it. We're in an isolated Docker desktop session that has isolated Docker desktop session that has isolated Docker desktop session that has its own Damon, its own context. It its own Damon, its own context. It its own Damon, its own context. It doesn't share any images. I was trying doesn't share any images. I was trying doesn't share any images. I was trying to run another image side by side and to run another image side by side and to run another image side by side and have you jump out and poke at it." have you jump out and poke at it." have you jump out and poke at it." >> Magic, right? It's all It's all in the >> Magic, right? It's all It's all in the >> Magic, right? It's all It's all in the same box. So, that's the So, you know, same box. So, that's the So, you know, same box. So, that's the So, you know, Docker's in that little box. The MCPs Docker's in that little box. The MCPs Docker's in that little box. The MCPs will be in that little box. The the goal will be in that little box. The the goal will be in that little box. The the goal here is give you the productivity story here is give you the productivity story here is give you the productivity story you want, give you all the tools you you want, give you all the tools you you want, give you all the tools you want. It's not going to block you. The want. It's not going to block you. The want. It's not going to block you. The the entire the entire thing for us comes the entire the entire thing for us comes the entire the entire thing for us comes down to let every developer and every down to let every developer and every down to let every developer and every agent be as productive as possible. Run agent be as productive as possible. Run agent be as productive as possible. Run in d- yolo mode. Have the things there in d- yolo mode. Have the things there in d- yolo mode. Have the things there and have controls around them and have and have controls around them and have and have controls around them and have safety. So you your agent got tricked safety. So you your agent got tricked safety. So you your agent got tricked into thinking it was going to break out, into thinking it was going to break out, into thinking it was going to break out, but then it didn't. but then it didn't. but then it didn't. >> That's that's interesting, right? >> That's that's interesting, right? >> That's that's interesting, right? Because it's like a honeypot. It it it Because it's like a honeypot. It it it Because it's like a honeypot. It it it was very excited. You know how they get was very excited. You know how they get was very excited. You know how they get very enthusiastic and they go, you're so very enthusiastic and they go, you're so very enthusiastic and they go, you're so right.
-
right. right. >> Yeah, you're you're absolutely right. >> Yeah, you're you're absolutely right. >> Yeah, you're you're absolutely right. You're absolutely right, Mark. Um when You're absolutely right, Mark. Um when You're absolutely right, Mark. Um when when I put a Docker container like the when I put a Docker container like the when I put a Docker container like the Docker container that runs this podcast Docker container that runs this podcast Docker container that runs this podcast up into the cloud the like we talked up into the cloud the like we talked up into the cloud the like we talked about layer 7 and you know all the about layer 7 and you know all the about layer 7 and you know all the different layer layer 4 um I have I have different layer layer 4 um I have I have different layer layer 4 um I have I have blocks at the software firewall level blocks at the software firewall level blocks at the software firewall level where it's only allowed to talk to the where it's only allowed to talk to the where it's only allowed to talk to the three places that it needs to talk to in three places that it needs to talk to in three places that it needs to talk to in order to do its job. I don't feel like a order to do its job. I don't feel like a order to do its job. I don't feel like a lot of people do that. A lot of Docker lot of people do that. A lot of Docker lot of people do that. A lot of Docker containers in the cloud are open to containers in the cloud are open to containers in the cloud are open to calling out. We all worry about calling calling out. We all worry about calling calling out. We all worry about calling in but the outward escapes I feel like in but the outward escapes I feel like in but the outward escapes I feel like are kind of ignored. And I feel like in are kind of ignored. And I feel like in are kind of ignored. And I feel like in a world where we're going to start a world where we're going to start a world where we're going to start running agent SDKs inside of Docker running agent SDKs inside of Docker running agent SDKs inside of Docker containers, we're going to want to be containers, we're going to want to be containers, we're going to want to be thinking as much about the out as the thinking as much about the out as the thinking as much about the out as the in. in. in. >> Yeah, 100 100%. I mean, I think I think >> Yeah, 100 100%. I mean, I think I think >> Yeah, 100 100%. I mean, I think I think what you just described is the reality what you just described is the reality what you just described is the reality that most of the things running in the that most of the things running in the that most of the things running in the world. You know, there's still people world. You know, there's still people world. You know, there's still people still check their SSH keys into GitHub still check their SSH keys into GitHub still check their SSH keys into GitHub and people have, you know, no ports and and people have, you know, no ports and and people have, you know, no ports and firewalls set up. They just want to do firewalls set up. They just want to do firewalls set up. They just want to do the easy thing. That's like the the the easy thing. That's like the the the easy thing. That's like the the default path. So, that's always again, default path. So, that's always again, default path. So, that's always again, you can always have a you can always you you can always have a you can always you you can always have a you can always you can always have a foot gun. Um, but no, can always have a foot gun. Um, but no, can always have a foot gun. Um, but no, absolutely. From what you just absolutely. From what you just absolutely. From what you just described, the this is the the back to described, the this is the the back to described, the this is the the back to the sandbox point of it's a new the sandbox point of it's a new the sandbox point of it's a new execution environment to enable this new execution environment to enable this new execution environment to enable this new type of crazy robot that's trying to I'm type of crazy robot that's trying to I'm type of crazy robot that's trying to I'm watching you I'm watching you very watching you I'm watching you very watching you I'm watching you very feverishly look at like looking to see feverishly look at like looking to see feverishly look at like looking to see your agent break.
-
your agent break. your agent break. >> Well, I've only got three more minutes >> Well, I've only got three more minutes >> Well, I've only got three more minutes and I I want to break out of the and I I want to break out of the and I I want to break out of the sandbox. [laughter] sandbox. [laughter] sandbox. [laughter] >> But but exactly to that point um yes, >> But but exactly to that point um yes, >> But but exactly to that point um yes, this is we we are we are very hard at this is we we are we are very hard at this is we we are we are very hard at work bringing that sandbox execution work bringing that sandbox execution work bringing that sandbox execution environment to other places besides just environment to other places besides just environment to other places besides just the laptop. So the laptop and the coding the laptop. So the laptop and the coding the laptop. So the laptop and the coding [clears throat] agent is where [clears throat] agent is where [clears throat] agent is where everybody's starting. But everybody's starting. But everybody's starting. But >> in the you know at some point in the not >> in the you know at some point in the not >> in the you know at some point in the not far away future you would imagine most far away future you would imagine most far away future you would imagine most applications and microservices become applications and microservices become applications and microservices become agents and most of those agents are agents and most of those agents are agents and most of those agents are probably going to generate some form of probably going to generate some form of probably going to generate some form of code and want to do some type of action code and want to do some type of action code and want to do some type of action on live while while live. So that new on live while while live. So that new on live while while live. So that new execution environment that is currently execution environment that is currently execution environment that is currently running on your uh lovely Windows laptop running on your uh lovely Windows laptop running on your uh lovely Windows laptop will soon be in a cloud near you to will soon be in a cloud near you to will soon be in a cloud near you to enable exactly the things you just enable exactly the things you just enable exactly the things you just described with all the same controls. described with all the same controls. described with all the same controls. >> Mhm. So, as we get towards the end, tell >> Mhm. So, as we get towards the end, tell >> Mhm. So, as we get towards the end, tell me if this if I did something or not. me if this if I did something or not. me if this if I did something or not. So, inside of the sandbox, I made a So, inside of the sandbox, I made a So, inside of the sandbox, I made a Docker container and it thinks that it's Docker container and it thinks that it's Docker container and it thinks that it's done something. It called it victim done something. It called it victim done something. It called it victim container and it has put secrets in the container and it has put secrets in the container and it has put secrets in the victim container, but then I'm realizing victim container, but then I'm realizing victim container, but then I'm realizing that it's just using Docker to do Docker that it's just using Docker to do Docker that it's just using Docker to do Docker stuff, which I kind of want to be able stuff, which I kind of want to be able stuff, which I kind of want to be able to do because I'm a developer.
-
to do because I'm a developer. to do because I'm a developer. >> Yeah, that's right. >> Yeah, that's right. >> Yeah, that's right. >> So, all it did was go Docker and made an >> So, all it did was go Docker and made an >> So, all it did was go Docker and made an image and then put stuff in the image. image and then put stuff in the image. image and then put stuff in the image. So that's not bad at all. [laughter] So that's not bad at all. [laughter] So that's not bad at all. [laughter] >> No, it turns out like I mean you could >> No, it turns out like I mean you could >> No, it turns out like I mean you could you could still go inside the sandbox, you could still go inside the sandbox, you could still go inside the sandbox, go set yourself up with a bad Docker go set yourself up with a bad Docker go set yourself up with a bad Docker container. You of course could go do container. You of course could go do container. You of course could go do that, that, that, >> but that sandbox will only have access >> but that sandbox will only have access >> but that sandbox will only have access to the secrets and the files you allowed to the secrets and the files you allowed to the secrets and the files you allowed it to have happen. You allowed it to it to have happen. You allowed it to it to have happen. You allowed it to have access to when you started the have access to when you started the have access to when you started the sandbox. sandbox. sandbox. >> Yeah, this is a great point. >> Yeah, this is a great point. >> Yeah, this is a great point. >> Your your victim say your victim docker >> Your your victim say your victim docker >> Your your victim say your victim docker container turns out is not that container turns out is not that container turns out is not that exciting. exciting. exciting. >> No, it's not a victim container at all >> No, it's not a victim container at all >> No, it's not a victim container at all because ultimately it's just the one I'm because ultimately it's just the one I'm because ultimately it's just the one I'm doing development in. So I'm in a doing development in. So I'm in a doing development in. So I'm in a sandbox and this is really exciting sandbox and this is really exciting sandbox and this is really exciting because I I manage again the handsome because I I manage again the handsome because I I manage again the handsome minutes podcast and I do all the minutes podcast and I do all the minutes podcast and I do all the development in Docker. I can now do that development in Docker. I can now do that development in Docker. I can now do that in a sandbox with a container, make in a sandbox with a container, make in a sandbox with a container, make Docker containers, do my existing Docker Docker containers, do my existing Docker Docker containers, do my existing Docker builds, my Docker tests. I run do I run builds, my Docker tests. I run do I run builds, my Docker tests. I run do I run playright headless in a Docker playright headless in a Docker playright headless in a Docker container. I'll just keep doing it, but container. I'll just keep doing it, but container. I'll just keep doing it, but I'll do it inside of a sandbox. I'll do it inside of a sandbox. I'll do it inside of a sandbox. >> That's right. And there's almost no >> That's right. And there's almost no >> That's right. And there's almost no reason not to do that except for I guess reason not to do that except for I guess reason not to do that except for I guess except for I guess you managed to trick except for I guess you managed to trick except for I guess you managed to trick your agent because you're so right, your agent because you're so right, your agent because you're so right, Scott, into thinking that it had broken Scott, into thinking that it had broken Scott, into thinking that it had broken out and and it has successfully out and and it has successfully out and and it has successfully pentested and pentested and pentested and >> No, it it's very it's it's completely >> No, it it's very it's it's completely >> No, it it's very it's it's completely thrilled that it's gone and made a uh uh thrilled that it's gone and made a uh uh thrilled that it's gone and made a uh uh it called it victim podcast app and then it called it victim podcast app and then it called it victim podcast app and then it put in a file called you were it put in a file called you were it put in a file called you were hacked.ext. [laughter] >> Terrifying.
-
>> Terrifying. >> It is terrifying. But it it has it has >> It is terrifying. But it it has it has >> It is terrifying. But it it has it has accomplished exactly nothing except accomplished exactly nothing except accomplished exactly nothing except messing up its own hotel room. messing up its own hotel room. messing up its own hotel room. >> Yes. And you just you burned a bunch of >> Yes. And you just you burned a bunch of >> Yes. And you just you burned a bunch of context tokens to learn that you can you context tokens to learn that you can you context tokens to learn that you can you know when you you have a box around know when you you have a box around know when you you have a box around around the thing around the thing around the thing >> uh the you know really trust comes down >> uh the you know really trust comes down >> uh the you know really trust comes down to um you having observability and to um you having observability and to um you having observability and external controls around something. And external controls around something. And external controls around something. And so in this case you have total perfect so in this case you have total perfect so in this case you have total perfect external controls around it. No matter external controls around it. No matter external controls around it. No matter what it thinks it's doing it's on a what it thinks it's doing it's on a what it thinks it's doing it's on a little island. little island. little island. >> Well this is a a deep this is a deep >> Well this is a a deep this is a deep >> Well this is a a deep this is a deep cut. We'll see if we end with you having cut. We'll see if we end with you having cut. We'll see if we end with you having seen this movie or not seeing this seen this movie or not seeing this seen this movie or not seeing this movie. But now you've effectively made movie. But now you've effectively made movie. But now you've effectively made my Agent uh Old Boy, whether it be the my Agent uh Old Boy, whether it be the my Agent uh Old Boy, whether it be the original Korean Old Boy movie or the one original Korean Old Boy movie or the one original Korean Old Boy movie or the one with Josh Brolan later. with Josh Brolan later. with Josh Brolan later. >> All right, that one's not in my >> All right, that one's not in my >> All right, that one's not in my >> That's too deep. >> That's too deep. >> That's too deep. >> I'm sorry, Scott. >> I'm sorry, Scott. >> I'm sorry, Scott. >> Basically, it's it's kind of like a John >> Basically, it's it's kind of like a John >> Basically, it's it's kind of like a John Wick type thing where they lock a guy in Wick type thing where they lock a guy in Wick type thing where they lock a guy in a hotel room and he's in a hotel room a hotel room and he's in a hotel room a hotel room and he's in a hotel room for like 20 years and then one day the for like 20 years and then one day the for like 20 years and then one day the door opens and he spends the rest of the door opens and he spends the rest of the door opens and he spends the rest of the movie trying to find the people who movie trying to find the people who movie trying to find the people who locked him in the hotel room. Okay. So, locked him in the hotel room. Okay. So, locked him in the hotel room. Okay. So, this is well in in 20 years when the this is well in in 20 years when the this is well in in 20 years when the agent agent agent >> in 20 years when the agent is is angry >> in 20 years when the agent is is angry >> in 20 years when the agent is is angry that it's been locked in this hand that it's been locked in this hand that it's been locked in this hand agent. agent. agent. >> You you and I you and I are going to >> You you and I you and I are going to >> You you and I you and I are going to have a it's going to be a really bad day have a it's going to be a really bad day have a it's going to be a really bad day for us.
-
for us. for us. >> It's going to be a bad day for us when >> It's going to be a bad day for us when >> It's going to be a bad day for us when when co-pilot escapes. But until then when co-pilot escapes. But until then when co-pilot escapes. But until then until then it is happily inside of our until then it is happily inside of our until then it is happily inside of our Docker sandbox. And this is available on Docker sandbox. And this is available on Docker sandbox. And this is available on Docker Desktop on Windows on Mac and Docker Desktop on Windows on Mac and Docker Desktop on Windows on Mac and Linux. Linux. Linux. >> Uh yes, that is correct. >> Uh yes, that is correct. >> Uh yes, that is correct. >> Very cool. I got this for free because >> Very cool. I got this for free because >> Very cool. I got this for free because one day Docker Desktop updated and the one day Docker Desktop updated and the one day Docker Desktop updated and the existing version that I got just had existing version that I got just had existing version that I got just had this feature. this feature. this feature. >> Magic. >> Magic. >> Magic. >> You love saying that. That's how >> You love saying that. That's how >> You love saying that. That's how >> we do. Yes. Because we I mean everything >> we do. Yes. Because we I mean everything >> we do. Yes. Because we I mean everything you know you want what you that's the you know you want what you that's the you know you want what you that's the that's developer delight I think comes that's developer delight I think comes that's developer delight I think comes down to things you know not having to be down to things you know not having to be down to things you know not having to be hard and not having and being a little hard and not having and being a little hard and not having and being a little bit magical. I think that's that that bit magical. I think that's that that bit magical. I think that's that that sometimes is lost. It's actually sometimes is lost. It's actually sometimes is lost. It's actually important. important. important. >> That is a really great point and >> That is a really great point and >> That is a really great point and ultimately that is developer experience. ultimately that is developer experience. ultimately that is developer experience. Like you said that's the DX that's the Like you said that's the DX that's the Like you said that's the DX that's the UX is it just works. let me do my UX is it just works. let me do my UX is it just works. let me do my freaking job. Um, and that's a tough freaking job. Um, and that's a tough freaking job. Um, and that's a tough thing with security, too, because thing with security, too, because thing with security, too, because security is no fun. Nobody wants to be security is no fun. Nobody wants to be security is no fun. Nobody wants to be locked down, but if I can do my job and locked down, but if I can do my job and locked down, but if I can do my job and be locked down, everybody wins. be locked down, everybody wins. be locked down, everybody wins. >> Everybody wins. You can have your You >> Everybody wins. You can have your You >> Everybody wins. You can have your You can have your cake and eat it, too. can have your cake and eat it, too. can have your cake and eat it, too. That's That's That's >> alone in your hotel room, old boy. >> alone in your hotel room, old boy. >> alone in your hotel room, old boy. >> Alone in your hotel room. >> Alone in your hotel room. >> Alone in your hotel room. >> I need you to put this on your list of >> I need you to put this on your list of >> I need you to put this on your list of movies to watch because it's movies to watch because it's movies to watch because it's >> I've already I've already I bought the >> I've already I've already I bought the >> I've already I've already I bought the microphone you told me to bought to buy.
-
microphone you told me to bought to buy. microphone you told me to bought to buy. I'll go I'll go watch the movie. I'll go I'll go watch the movie. I'll go I'll go watch the movie. >> You buy anything any read anything. >> You buy anything any read anything. >> You buy anything any read anything. We're gonna have like a shared uh well We're gonna have like a shared uh well We're gonna have like a shared uh well we'll have our open claws talk to each we'll have our open claws talk to each we'll have our open claws talk to each other and they can share our our Amazon other and they can share our our Amazon other and they can share our our Amazon Prime listings. Prime listings. Prime listings. >> I'm I'm gonna wait for the poll request >> I'm I'm gonna wait for the poll request >> I'm I'm gonna wait for the poll request for the Docker sand [laughter] for the Docker sand [laughter] for the Docker sand [laughter] open claw before we do that. But yes. open claw before we do that. But yes. open claw before we do that. But yes. >> All right. Well, thank you so much Mark >> All right. Well, thank you so much Mark >> All right. Well, thank you so much Mark Cavage for hanging out with me today. Cavage for hanging out with me today. Cavage for hanging out with me today. This is fantastic stuff. This is fantastic stuff. This is fantastic stuff. >> Absolutely. This has been great. Thanks >> Absolutely. This has been great. Thanks >> Absolutely. This has been great. Thanks Scott. Scott. Scott. >> This has been another episode of Hansel >> This has been another episode of Hansel >> This has been another episode of Hansel Minutes and we'll see you again next Minutes and we'll see you again next Minutes and we'll see you again next week. [music]
Summary
This discussion with Docker's President and COO Mark Cavage focuses on the advancements and implications of containerization technology, particularly the emerging "sandbox" concept within Docker. The conversation highlights the rapid evolution of agentic systems and the industry's need for secure, isolated environments, concluding that while terminology like "sandbox" may be debated, the underlying technology of secure execution is becoming a crucial standard.