Transcript: Your coding agent doesn't always follow your rules — Talha Sheikh, Checkout.com
Source Video
Local Cache
raw/sources/youtube-transcripts/MpZzWMdmQCE.txt- 5,590 words
Transcript
Hello, hello. Um >> Hello, hello. Um Have you ever given a task to Claude Have you ever given a task to Claude Have you ever given a task to Claude code and uh you give it a feature and code and uh you give it a feature and code and uh you give it a feature and you be like, "Okay, cool. Uh can you you be like, "Okay, cool. Uh can you you be like, "Okay, cool. Uh can you build this for me?" And Claude code build this for me?" And Claude code build this for me?" And Claude code starts putting it out into subtasks and starts putting it out into subtasks and starts putting it out into subtasks and you see it very Okay, this is pretty you see it very Okay, this is pretty you see it very Okay, this is pretty cool. You see it running a multiple sub cool. You see it running a multiple sub cool. You see it running a multiple sub agents. They're all right, that's really agents. They're all right, that's really agents. They're all right, that's really cool and you can see like ripping cool and you can see like ripping cool and you can see like ripping through all of your tasks, sub agents through all of your tasks, sub agents through all of your tasks, sub agents being completed and it gives you like a being completed and it gives you like a being completed and it gives you like a final output. final output. final output. Task completed. Like, "Amazing. Great." Task completed. Like, "Amazing. Great." Task completed. Like, "Amazing. Great." But when you actually try to run it, But when you actually try to run it, But when you actually try to run it, actually be like, "Oh, well, it's it's actually be like, "Oh, well, it's it's actually be like, "Oh, well, it's it's not Something else failed. Hey Claude, not Something else failed. Hey Claude, not Something else failed. Hey Claude, can you fix this little bit thing?" Uh can you fix this little bit thing?" Uh can you fix this little bit thing?" Uh well, you just try it again. Okay, it's well, you just try it again. Okay, it's well, you just try it again. Okay, it's fixed. Everything should be working. Oh, fixed. Everything should be working. Oh, fixed. Everything should be working. Oh, no. Actually, there's this tiny little no. Actually, there's this tiny little no. Actually, there's this tiny little thing is just missing. thing is just missing. thing is just missing. So, So, So, and that's and that's what my talk is and that's and that's what my talk is and that's and that's what my talk is about. about. about. All I want to do is play Cyberpunk uh on All I want to do is play Cyberpunk uh on All I want to do is play Cyberpunk uh on my Xbox while I have Claude code do do my Xbox while I have Claude code do do my Xbox while I have Claude code do do some work for me. And what I realized some work for me. And what I realized some work for me. And what I realized was the problem is the problem is that I was the problem is the problem is that I was the problem is the problem is that I kept on uh telling Claude like, "Hey, kept on uh telling Claude like, "Hey, kept on uh telling Claude like, "Hey, fix this, fix that, fix this, fix that." fix this, fix that, fix this, fix that." fix this, fix that, fix this, fix that." Even though if I give it a spec, if I Even though if I give it a spec, if I Even though if I give it a spec, if I give it some instructions, if I give it give it some instructions, if I give it give it some instructions, if I give it little to no instructions, every time little to no instructions, every time little to no instructions, every time there is something that I need to tell there is something that I need to tell there is something that I need to tell it. it. it. So, So, what that means is like I am the what that means is like I am the what that means is like I am the enforcement. I am the enforcement layer. enforcement. I am the enforcement layer. enforcement. I am the enforcement layer. I have to tell Claude on what exactly I have to tell Claude on what exactly I have to tell Claude on what exactly you need to do and how exactly this you need to do and how exactly this you need to do and how exactly this needs to be enforced. needs to be enforced. needs to be enforced. So, the agent says it's done and but you So, the agent says it's done and but you So, the agent says it's done and but you have to check it anyway because have to check it anyway because have to check it anyway because there's nothing else that can check it there's nothing else that can check it there's nothing else that can check it for you. for you. for you. So, what I wanted was something to be So, what I wanted was something to be So, what I wanted was something to be very deterministic. So, when an agent very deterministic. So, when an agent very deterministic. So, when an agent says it's completed, have this says it's completed, have this says it's completed, have this enforcement layer deterministically enforcement layer deterministically enforcement layer deterministically check something like whether it's check something like whether it's check something like whether it's actually been done or not. Actually, the actually been done or not. Actually, the actually been done or not. Actually, the way I wanted it to be done because it way I wanted it to be done because it way I wanted it to be done because it says it is done, but is it the way that says it is done, but is it the way that says it is done, but is it the way that I want it? So, I needed some way I want it? So, I needed some way I want it? So, I needed some way deterministic way to do that. deterministic way to do that. deterministic way to do that. So, So, I tried it. I built my own vector, I I tried it. I built my own vector, I I tried it. I built my own vector, I call it my own product called vector V1, call it my own product called vector V1, call it my own product called vector V1, and it deterministically checks Claude's and it deterministically checks Claude's and it deterministically checks Claude's output. And the way I did that is output. And the way I did that is output. And the way I did that is through using Claude hooks. So, that way through using Claude hooks. So, that way through using Claude hooks. So, that way whenever Claude finishes its its whenever Claude finishes its its whenever Claude finishes its its session, it automatically the hook calls session, it automatically the hook calls session, it automatically the hook calls my vector product or my vector product or my vector product or program, and then it checks it for me. program, and then it checks it for me. program, and then it checks it for me. Cool. And this is how it essentially Cool. And this is how it essentially Cool. And this is how it essentially looks. So, I basically give it a config looks. So, I basically give it a config looks. So, I basically give it a config file, define all of my test cases over file, define all of my test cases over file, define all of my test cases over here, like what I needed it to be here, like what I needed it to be here, like what I needed it to be checked. And if it fails, it can checked. And if it fails, it can checked. And if it fails, it can actually keep on telling Claude like, actually keep on telling Claude like, actually keep on telling Claude like, "Hey, look, this is failing. Try again. "Hey, look, this is failing. Try again. "Hey, look, this is failing. Try again. Try again. Try again." Sorry if it's a Try again. Try again." Sorry if it's a Try again. Try again." Sorry if it's a little bit little bit little bit little. So, you can see one of the test little. So, you can see one of the test little. So, you can see one of the test outputs over here. So, it's like, "Okay, outputs over here. So, it's like, "Okay, outputs over here. So, it's like, "Okay, first the test test passed versus first the test test passed versus first the test test passed versus failed. Then it retries again. Then all failed. Then it retries again. Then all failed. Then it retries again. Then all of the things passed. Okay, cool." So, of the things passed. Okay, cool." So, of the things passed. Okay, cool." So, what that means is it's not about what that means is it's not about what that means is it's not about whether Claude can actually do the task, whether Claude can actually do the task, whether Claude can actually do the task, it's about trust. it's about trust. it's about trust. Can I trust Claude to actually do Can I trust Claude to actually do Can I trust Claude to actually do everything for me? And by the way, when everything for me? And by the way, when everything for me? And by the way, when I say Claude, I'm just talking in I say Claude, I'm just talking in I say Claude, I'm just talking in general about LM agents in general. Is general about LM agents in general. Is general about LM agents in general. Is when I give a task to a coding agent, when I give a task to a coding agent, when I give a task to a coding agent, does it actually complete it? does it actually complete it? does it actually complete it? So, So, yeah. So, yeah. So, yeah. So, and then that's something that and then and then that's something that and then and then that's something that and then and what I started doing was started and what I started doing was started and what I started doing was started telling this about to people about and telling this about to people about and telling this about to people about and going to different events. And it was it going to different events. And it was it going to different events. And it was it was really cool. Like, "Hey, look, what was really cool. Like, "Hey, look, what was really cool. Like, "Hey, look, what about this verification feature that I about this verification feature that I about this verification feature that I built? It was so good. It was so built? It was so good. It was so built? It was so good. It was so amazing." And then I met one of the amazing." And then I met one of the amazing." And then I met one of the Anthropic engineers. And Anthropic engineers. And Anthropic engineers. And he and and they just told me that he and and they just told me that he and and they just told me that "We're not going to need this anymore. "We're not going to need this anymore. "We're not going to need this anymore. Like, we'll have like another agent or Like, we'll have like another agent or Like, we'll have like another agent or another model that will be so smart that another model that will be so smart that another model that will be so smart that you won't need enforcement." you won't need enforcement." you won't need enforcement." Okay. Um Um So, crisis mode. Did I just waste my So, crisis mode. Did I just waste my So, crisis mode. Did I just waste my time? time? time? What did I just like what was what was What did I just like what was what was What did I just like what was what was the point of all of this stuff? But the point of all of this stuff? But the point of all of this stuff? But let's dig in a little bit deeper. And let's dig in a little bit deeper. And let's dig in a little bit deeper. And then also they released this project then also they released this project then also they released this project Claude Swing that shows Project Claude Swing that shows Project Claude Swing that shows Project Methuselah, which is supposed to be so Methuselah, which is supposed to be so Methuselah, which is supposed to be so good that it will solve everything for good that it will solve everything for good that it will solve everything for us. us. us. So, what I saw when I started thinking So, what I saw when I started thinking So, what I saw when I started thinking about it, like, "Okay, what is it that about it, like, "Okay, what is it that about it, like, "Okay, what is it that is actually happening? When a new model is actually happening? When a new model is actually happening? When a new model comes out, comes out, comes out, doesn't it increases in capability, but doesn't it increases in capability, but doesn't it increases in capability, but that's not necessarily the same thing as that's not necessarily the same thing as that's not necessarily the same thing as reliability. Sure, the models make it reliability. Sure, the models make it reliability. Sure, the models make it may become a lot more capable, but are may become a lot more capable, but are may become a lot more capable, but are they more reliable? The other thing is like argument is The other thing is like argument is like, "Oh, well, I can have the best like, "Oh, well, I can have the best like, "Oh, well, I can have the best spec. I can have the best MCP servers. I spec. I can have the best MCP servers. I spec. I can have the best MCP servers. I can have the best sub-agents. I can get can have the best sub-agents. I can get can have the best sub-agents. I can get all the right context to it." Amazing. all the right context to it." Amazing. all the right context to it." Amazing. We should do that. We should do that. We should do that. But, in giving thought instructions is But, in giving thought instructions is But, in giving thought instructions is not the same thing as giving it not the same thing as giving it not the same thing as giving it verification. So, you can give as much verification. So, you can give as much verification. So, you can give as much instructions as you want, very good instructions as you want, very good instructions as you want, very good instructions, very little instructions, instructions, very little instructions, instructions, very little instructions, but you still will need to verify. but you still will need to verify. but you still will need to verify. And what I realized was that just what I And what I realized was that just what I And what I realized was that just what I realized having these small guardrails realized having these small guardrails realized having these small guardrails or having as many guardrails you want, or having as many guardrails you want, or having as many guardrails you want, technically, you can use a smaller model technically, you can use a smaller model technically, you can use a smaller model like a Haiku or even like an open source like a Haiku or even like an open source like a Haiku or even like an open source models because it's got these guardrails models because it's got these guardrails models because it's got these guardrails on, it'll most likely be succinct and on, it'll most likely be succinct and on, it'll most likely be succinct and get you to the output that you want. get you to the output that you want. get you to the output that you want. So, in theory, what it means is that So, in theory, what it means is that So, in theory, what it means is that if you use a frontier model like an Opus if you use a frontier model like an Opus if you use a frontier model like an Opus Opus model that can get you a task, Opus model that can get you a task, Opus model that can get you a task, okay, cool, that will be the most okay, cool, that will be the most okay, cool, that will be the most expensive one. You can have Vector with expensive one. You can have Vector with expensive one. You can have Vector with a little bit of guardrails, but it gets a little bit of guardrails, but it gets a little bit of guardrails, but it gets you a little bit cheaper, but if you put you a little bit cheaper, but if you put you a little bit cheaper, but if you put on more guardrails, that means invest a on more guardrails, that means invest a on more guardrails, that means invest a little bit more time in the harness little bit more time in the harness little bit more time in the harness itself, like you can reduce the cost itself, like you can reduce the cost itself, like you can reduce the cost drastically. drastically. drastically. Or maybe even use like async tasks as Or maybe even use like async tasks as Or maybe even use like async tasks as well. well. well. So, okay, I was feeling I was feeling So, okay, I was feeling I was feeling So, okay, I was feeling I was feeling good and I started talking about it good and I started talking about it good and I started talking about it about Vector again at two different about Vector again at two different about Vector again at two different events. And as as I spoke to more and events. And as as I spoke to more and events. And as as I spoke to more and more people, more people, more people, um What it There is missing something What it There is missing something missing here. missing here. missing here. What it When I spoke to more people, What it When I spoke to more people, What it When I spoke to more people, what I realized was everybody's building what I realized was everybody's building what I realized was everybody's building their own stuff. their own stuff. their own stuff. Anthropic is building their own stuff. Anthropic is building their own stuff. Anthropic is building their own stuff. My company is building their own stuff My company is building their own stuff My company is building their own stuff about enforcement. Facebook is building about enforcement. Facebook is building about enforcement. Facebook is building their own stuff. Meta is every company their own stuff. Meta is every company their own stuff. Meta is every company is building their own thing. So, if I is building their own thing. So, if I is building their own thing. So, if I had built if I built something that is had built if I built something that is had built if I built something that is specific to me, then I can't really specific to me, then I can't really specific to me, then I can't really share it with others because everybody share it with others because everybody share it with others because everybody has their own way of doing it. And what has their own way of doing it. And what has their own way of doing it. And what I enforced I enforced I enforced doesn't necessarily mean that somebody doesn't necessarily mean that somebody doesn't necessarily mean that somebody else would enforce the same thing. So, else would enforce the same thing. So, else would enforce the same thing. So, what that meant was what realized was, what that meant was what realized was, what that meant was what realized was, okay, so it's actually a pattern. So, it okay, so it's actually a pattern. So, it okay, so it's actually a pattern. So, it has to be a pattern that is applicable has to be a pattern that is applicable has to be a pattern that is applicable to everyone. So, what that means is that to everyone. So, what that means is that to everyone. So, what that means is that we can it has to be language agnostic. we can it has to be language agnostic. we can it has to be language agnostic. It has to be something that I can be It has to be something that I can be It has to be something that I can be shared by everybody else, and everybody shared by everybody else, and everybody shared by everybody else, and everybody can bring their own version of can bring their own version of can bring their own version of enforcement to it. enforcement to it. enforcement to it. And that's and and it should run on And that's and and it should run on And that's and and it should run on every level. So, it should start start every level. So, it should start start every level. So, it should start start off with in conversation, when a off with in conversation, when a off with in conversation, when a conversation ends, you can have checks conversation ends, you can have checks conversation ends, you can have checks when uh before committing, you can have when uh before committing, you can have when uh before committing, you can have checks when your part is part of a checks when your part is part of a checks when your part is part of a multi-agent workflow. You can have it on multi-agent workflow. You can have it on multi-agent workflow. You can have it on checks on asynchronous operation or checks on asynchronous operation or checks on asynchronous operation or asynchronous agents, and as well as you asynchronous agents, and as well as you asynchronous agents, and as well as you can have a check that can have a check that can have a check that nondeterministically calls like um LLM nondeterministically calls like um LLM nondeterministically calls like um LLM an LLM as a judge sort of a thing. an LLM as a judge sort of a thing. an LLM as a judge sort of a thing. And it can run on any any different And it can run on any any different And it can run on any any different language on any different code. As long language on any different code. As long language on any different code. As long as there's a capability to run it as there's a capability to run it as there's a capability to run it deterministically, we should we can have deterministically, we should we can have deterministically, we should we can have that. that. that. So, what what I realized was, what we So, what what I realized was, what we So, what what I realized was, what we needed was essentially a contract that needed was essentially a contract that needed was essentially a contract that just says like, "Hey, given this task, I just says like, "Hey, given this task, I just says like, "Hey, given this task, I want you to fulfill this. What is in the want you to fulfill this. What is in the want you to fulfill this. What is in the middle that you can that developers and middle that you can that developers and middle that you can that developers and sales can define." sales can define." sales can define." So, So, this idea is really cool. And it was this idea is really cool. And it was this idea is really cool. And it was like, "Okay, so we're moving towards like, "Okay, so we're moving towards like, "Okay, so we're moving towards where we want verification always." All where we want verification always." All where we want verification always." All right, cool. right, cool. right, cool. Um so, a lot of different companies have Um so, a lot of different companies have Um so, a lot of different companies have actually started doing this as well. So, actually started doing this as well. So, actually started doing this as well. So, Cloud Anthropic has recently released Cloud Anthropic has recently released Cloud Anthropic has recently released their new thing called executed advisor their new thing called executed advisor their new thing called executed advisor pattern, where you've got one agent that pattern, where you've got one agent that pattern, where you've got one agent that actually does the all the code all the actually does the all the code all the actually does the all the code all the code work, and then there's advisor code work, and then there's advisor code work, and then there's advisor that, you know, feeds in essentially that, you know, feeds in essentially that, you know, feeds in essentially creates a feedback loop. creates a feedback loop. creates a feedback loop. Or in other words, verify. Or in other words, verify. Or in other words, verify. Anthropic uh sorry, OpenAI build their Anthropic uh sorry, OpenAI build their Anthropic uh sorry, OpenAI build their own harness engineering, and it's the own harness engineering, and it's the own harness engineering, and it's the same idea like you give an agent a lot same idea like you give an agent a lot same idea like you give an agent a lot of a lot of things to do, but how do you of a lot of things to do, but how do you of a lot of things to do, but how do you verify it to work? You give it different verify it to work? You give it different verify it to work? You give it different tools, you give it different context, tools, you give it different context, tools, you give it different context, and that's essentially what a harness is and that's essentially what a harness is and that's essentially what a harness is for OpenAI. for OpenAI. for OpenAI. There are companies like Cudo who are There are companies like Cudo who are There are companies like Cudo who are who are over here that provide a very who are over here that provide a very who are over here that provide a very comprehensive code reviews. And again, comprehensive code reviews. And again, comprehensive code reviews. And again, it's the same thing. You have the agent it's the same thing. You have the agent it's the same thing. You have the agent has done all of its work, but do you has done all of its work, but do you has done all of its work, but do you trust it? No. trust it? No. trust it? No. So, what do we do? You do a very So, what do we do? You do a very So, what do we do? You do a very comprehensive PR review with all the comprehensive PR review with all the comprehensive PR review with all the different issues and findings and create different issues and findings and create different issues and findings and create this feedback loop. this feedback loop. this feedback loop. Some Some Some something from today as well from work something from today as well from work something from today as well from work OS. So, it says enforce don't instruct. OS. So, it says enforce don't instruct. OS. So, it says enforce don't instruct. So, it is all about like running these So, it is all about like running these So, it is all about like running these checks deterministically. When I say checks deterministically. When I say checks deterministically. When I say checks, it's just about the checks, it's just about the checks, it's just about the verification. Another one, which is my favorite, is Another one, which is my favorite, is one of the favorites like you still have one of the favorites like you still have one of the favorites like you still have to go slow. And the reason for that is to go slow. And the reason for that is to go slow. And the reason for that is not because the the agents themselves not because the the agents themselves not because the the agents themselves are not able to produce code as fast as are not able to produce code as fast as are not able to produce code as fast as they want, but it's because the they want, but it's because the they want, but it's because the verification layer. You need to verify verification layer. You need to verify verification layer. You need to verify that everything is working or not. that everything is working or not. that everything is working or not. And my favorite And my favorite And my favorite >> [laughter] >> [laughter] >> [laughter] >> is is this one in the in our keynote. >> is is this one in the in our keynote. >> is is this one in the in our keynote. It's to slow the slow the hell down. It's to slow the slow the hell down. It's to slow the slow the hell down. So, so what is the shift that we're So, so what is the shift that we're So, so what is the shift that we're seeing here? seeing here? seeing here? Initially, what we thought was like the Initially, what we thought was like the Initially, what we thought was like the value is in the code that we create. value is in the code that we create. value is in the code that we create. But it's actually now in reality is what But it's actually now in reality is what But it's actually now in reality is what we're seeing here is the verification we're seeing here is the verification we're seeing here is the verification that we design. that we design. that we design. So, it's not about can you code, but can So, it's not about can you code, but can So, it's not about can you code, but can you verify? you verify? you verify? So, So, TLDR is work on the harness and not on TLDR is work on the harness and not on TLDR is work on the harness and not on the code. the code. the code. So, you work on the verification system So, you work on the verification system So, you work on the verification system and that it produces a little bit better and that it produces a little bit better and that it produces a little bit better better outputs. better outputs. better outputs. And that's it. Thank you. And that's it. Thank you. And that's it. Thank you. >> [applause] Yep. Yep. >> Does it exist? Is it public? >> Does it exist? Is it public? >> Does it exist? Is it public? >> Yeah. >> Yeah. >> Yeah. Yeah. Yeah. Yes, it is public. Um it's Yeah. Yeah. Yes, it is public. Um it's Yeah. Yeah. Yes, it is public. Um it's called Vector Harness, but if you if you called Vector Harness, but if you if you called Vector Harness, but if you if you send me a message on LinkedIn, I can send me a message on LinkedIn, I can send me a message on LinkedIn, I can share that with you. share that with you. share that with you. >> Can you put the LinkedIn back up? >> Can you put the LinkedIn back up? >> Can you put the LinkedIn back up? >> Oh. >> Oh. >> Oh. There you go. There you go. There you go. >> Thanks. Yep. >> You mentioned that adding the >> You mentioned that adding the >> You mentioned that adding the verification layer allows you to use verification layer allows you to use verification layer allows you to use smaller models. smaller models. smaller models. Uh Uh Uh what do you say to the allegations that what do you say to the allegations that what do you say to the allegations that you're a top token spender at your you're a top token spender at your you're a top token spender at your company. company. company. >> [laughter] >> [laughter] >> I need I need those tokens to build a >> I need I need those tokens to build a >> I need I need those tokens to build a verification layer. verification layer. verification layer. >> [laughter] >> Cool. >> Cool. Um I think that's it.