Get the Monday email →
Loading player…

Let the Agent Cook: Building AI-Native Developer Workflows

DevconThu, Nov 12, 2026, 04:00 PM

In this hands-on workshop, explore how to build powerful developer workflows using [AGENTS.md](http://AGENTS.md), reusable skills, MCP servers, memory, and multi-agent systems. Through live demos, learn how to leverage these capabilities for open-source contributions and Web3 development, building workflows that are reusable, reliable, and safe. Speakers: Arnav Angarkar Track: [CLS] - OTS

Transcript

[music] I pretty much know the answer. But still, how many of you are using AI agents in your day-to-day development? Exactly. All of us. So, uh that is a domain that not everyone knows a lot about.

I mean, uh we know there's this uh provider or there's this uh coding agent and they're all good. I mean they can all very they can code very fast much faster than a human much efficient and way better code than most of the humans. But then again is it something we can trust blindly? Definitely not. But we can definitely make our workflows much easier.

There are a set of work uh instructions that we can follow. maybe some rule sets, some skills that we can give our agents and how we want them to work. Have you guys heard about harnesses? Yes, that's good. Maybe not.

Then we'll still show it here, man. So, I'm like working my projects and then I use an AI agent. It pumps up so many PRs but there's a lot of tests a lot of comments and it's just like ah do I have to sort it up again or am I wasting my tokens tokens optimization is a really big thing now guys because so much work we need to do and only so less tokens so let us start the workshop now I'll hand over to an

yeah so good afternoon everyone here and hope you're having a good time at the open tech summit and uh so let's begin. So so let's have a raise of hands for whoever uses claude here. Anybody uses cloud? Yeah. So many of us use uh cloud.

And how about uh you know Codex? Is it more of Codex people? We have more of cloud people or we have Google fans here. Do we have anti-gravity users? Yeah.

So I think it's a mix of crowd here. So it let's uh this this uh is you know a bit more customized with cloud as I use a lot of cloud but uh it you know works is the it the code it works the same everywhere right. So so why don't uh we quickly you know since it's a workshop it we'll just do it hands-on. So if you guys can clone the you know uh this repository uh github.com/noballin code/letthe agent cookook we can you know do a quick hands-on you know session uh especially if you guys use cloud.

So how do we turn the code into a reliable workflow? We just don't want to you know keep you know prompting cloud code because uh giving in you know the era where we used to you know have a different uh we used to paste what we want into chat GPT get the prompt and paste into cloud it's now over so it's all you have to get it all together use it at one place get the entire thing you know uh we need to stop being uh the prompter and we don't need to become an agent oursel so we need So let the agent run himself. You don't. So just a second. Some issue.

Okay. So where slides? Yeah. So today like as I said prompt code hope like it's it we'll go to a better workflow like let's let's see how we can do it. Yeah.

So like the repo which you guys cloned. So it's it's basically uh a place where like you know why like uh so we try to divide you know 100 rupees into three different people. It's 33.33 33.33 33.

33 and you know the 0.1 is lost somewhere. So there is a I've planted a bug inside the repo which uh has this issue. So like one you know to convert it into Indian terms one pesa is lost somewhere. So yeah so the tip jar is uh you know it's an in the NodeJS project where uh we use the same thing with ETH.

So yeah, so the sample project tip jar if you guys have cloned it, you can you know uh ask cloud about this bug and maybe Yeah. So let's go through it. Yeah. So yeah. So uh an uh agent is uh an entire uh loop.

It's not just a single model where we uh you know ask a question. So it's like you give the system prompt. We have different we have cloud.mmd we have agents.mmd we have specific uh MD files we have different skills we have uh you know separate memory and we have like uh context and it's a it's a lot of stuff so uh the model is the chef so everything else is like a kitchen so what it can see what it can touch and how you can you know cook the dish so let's cook the dish yeah so there are uh seven main ingredients of our kitchen so like the First one is instructions.

So every session uh needs an instruction and like basically the instructions are a rule which you know is always applied. Then we have skills. So the skills are specific files which you only want for specific tasks and these are not uh tasks which are you know just a one-time task. These are tasks which uh you do over and over again and they are very specific and you follow that particular format. For example, if uh anyone reviews a lot of PRs, for example, we me we vanch try to you know review a lot of PRs.

We maintain some repositories at foria. So we use a PR review skill, right? Then we have MCP server. So like the we can MCP server is um uh to get particular context from

so basically I mean are you guys familiar with MCP servers? Yes. So just uh if someone is not I'll just sum it down really quick just in layman's term. You know an API already. I mean of course just think of it that the agent or the model is writing APIs on the go.

You don't really have to do it. You don't really have to write it by your own hand but it still gets the work done. That is majorly what MCP servers are about and that's how we'll be uh proceeding on. Uh

yes. Moving on uh to the fourth ingredient now plans. So I mean there are several modes as well uh you guys already would be aware of. Now planning mode.

Yeah. So so like plan modes are like when you need to be build some real big features. So you don't want to keep on you know iterating through with it. You know it should be a sync task. You have to you can just plan with uh the your agent initially and you leave it to it.

It keeps on iterating. It does the entire loop and then you have the product instead of I have the feature instead of you know you telling it to build uh you build a fix or build a feature and then it uh gives you some output you tell it to change. So we need to automate this entire process so that it uh goes through with it completely on itself. We don't need to you know uh it should be a sync process and you can build multiple features simultaneously. So we'll be going through each of these ingredients in detail with the workshop.

So this is a short summary. We have automemory. So we need to give a project context and we need to also have a separate clawed memory for a project as well as for your local. So yeah we'll be going in detail. We have sub aents and we have different hooks.

So as we have the pre-commit hooks uh you might be aware of pre-commit hooks. So we have hooks like this for claude as well for AI agents as well. So um first comes the repository instructions. So like uh we tell so repository instructions are a basics a basic agents.mmd.

So what does what do you keep in your agents.mmd. So agents.md is a a config that we give is a common config for most of the providers recently even claude shifted to start using agents.mmd.

Initially claude used to use its own claude.mmd now it uses the agents.mmd. So we tell all the basic stuff uh basic context which is needed for each and every prompt and we try to keep it uh short and not very long. So the standard is that we try to keep it around 200 lines long and not more than that and we give it some like basic commands which are necessary for almost all the um all all the all the uh prompts you do.

So it tries to follow like for example if we have a NodeJS project here we tell them to do the npm test npm run check docs and like for uh like people into web 3 we can you know force the tests and stuff so where it lives it lives in the like earlier there used to be cloud.md now it's agents.mmd and so there are two types of uh instructions here so it's either your uh agents.mmd which the repository any repository which uses a lot of you know AI now all the repositories everyone uses AI so there is a general agents.mmd and there is one which you have for your own personal use so you keep your own local uh which is always there in the g ignore so it it uh is in the you know tcloud you keep it for your own personal use so this is one and the other one is which is common for everyone I think So exactly what I was saying.

So what when is which agents.m MD loaded and when is which clause MD loaded and how does it work? Yeah. So the initial uh this the which is inside your root. So this is your own custom uh local uh file which is has the instructions and the one at the repository route like the tip jar sandbox/cloud.

mmd this is the one which uh is a general use. So these are uh written by the repository maintainers to give context to all the different agents. Yeah. And then there are particular uh cloudmd for particular folders. For example, we have a front end, we have a cloud.

mmd for the front end and we have a separate one for the back end. Yeah. So this is a general structure for that. So now let's uh move on to skill files ra uh after instructions. So what are skill files?

So for example, we do a lot of PR triaging. So the skills uh there are a particular format. So if you actually search skills.mmd you'll get onto an official website where they you know explain it in very much detail about the entire YAML format. So the format goes like there's a name you have the description the license of the skill the owner of the skill and then you go around with the skill and you give it context right for the particular skill.

Then there is uh for example there are conventions that the name has to be lower case with hyphens. It has to be lesser than 64 characters. So these are some things the which you need to use. So to keep it uh perfectly relevant and you make sure that it uh sticks with it and it at the same time we also talk next about how we optimize this uh with the tokens so that it doesn't you know uh take up all of your context. So exactly so it's uh loaded only when it's needed.

So how do we make sure it's loaded? The skill files are loaded only when it's needed and is not always loaded and it doesn't take up all your context. So the name plus description uh it usually takes up around 100 tokens which is like very less and we so this is get gets indexed every time we write in the prompt and it crossverifies that is is this skill going to be picked up based on the name and description. So that is why the YAML format format with of the name plus description is uh very much necessary. We give them so each skill uh has references scripts and assets.

So all the skills uh when they when they are uh picked up the all the to the references scripts and assets are later on put into context. So for example, this is uh I uh there is T3 code. So it's a open source project uh T3 code which you know if if you use multiple providers like uh in the middle uh I used to use open code, I use cloud code, I used to use codeex, I used to use anti-gravity. So how do we you know use all of this together but we don't miss out on the context. So if you are using multiple agents together, how do we don't miss out on the context?

So something uh this is one of a very tool we can use and how how uh how how exactly are the tokens calculated and you know uh if you use a pay as you go subscription or you want to you know uh reduce your usage and you don't want you know to it to get uh bloated on tokens which are not even used. So there are mainly four types of tokens. So there is there is uncashed input, there is cash right, there is cash read and there is the output. So when you input anything into the cloud into the prompt or anything uh it it usually does uh write into the cache. So uh and then uh this this cache is not always used.

So it is referenced based on your prompt. So based on it, it uses the uncashed input. Then if it it decides that it needs to use the cache, it does the cache read and it does the output. So ho how do you you know uh make sure that it doesn't use all the context and all the tokens every time. So to make sure that it doesn't do it all the time you the f like uh we can it depends on like you can see over here it depends on how you you know write your skills how you write your agents.

mmd the prefixes of your files how you know how it's done usually. So yeah, so you know to keep the you know to optimize it we uh scope the task the issue we keep the path relevant like we keep we follow the structure we tr and we make sure that the output doesn't have you know irrelevant stuff we uh we try to compact the conver conversation we have with the agent and you know so context is something which is uh very expensive and it consumes a lot of tokens. So we try to you know compact it using a cheaper model instead of you know so if you if you use cloud in general and let's say you're using opus 5.5 and uh it's a very expensive model right so you want to use it for actually using the fix and you know building instead of you know using it for compacting your tokens or something so you need to you know keep the context and structure of your entire conversation you need to keep looking at it and you need to use or you you write a skill or you write a hook so that uh While like you can write a hook for you know before it compacts uh it usually switches the model or uses a sub agent to you know squash the context. Yeah.

So nowadays you don't even need to manually write your own skill files. You let the repository write its own skills. So once you have a base scaffold repo it already knows its workflows. it already knows you know the tests the CI and the contributor docs. So we ask the agent to find these docs and based on them it writes its own skills.

So yeah we let's go how we can do that. So we we tell it to you know initially the agent inspects the readme contributing agents MD it spots different patterns based on these patterns uh it proposes like with a reason why we should do it. Then it asks you, you approve the flow and we generate the skill files, verify it and we iterate through it, keep on changing. Yeah. So for example, this is one of the prompt to generate skills.

So we we we'll go through this shortly how we can actually do it with claude. So so maybe maybe let's let's go through uh example. Yeah. So the so basically where do all these uh live and you know how where is all this you know cast and stuff so we can you know uh so for example we can you know always uh when you do the slashmemory you can see what all uh is there inside your memory for example we have the include we have the for this repository we have the agents.mmd we We have user instructions, we have the project instructions and yeah this and then there is something called as automemory which we can toggle.

So cloud itself writes its own memory based on you know if it needs to uh which I I usually keep on for my projects. So it keeps on updating its memory based on what it needs.

Oh and actually you can uh manipulate that as well. That is very handy. I assure you whenever it writes something you can just uh maybe ask it to change some things because it ultimately has to suit your workflow.

So maybe I just don't want as much tests. It's just my own repo or you're writing way too much comments man. You can change it and then you can also take this file from one project to other. That is really good. I mean you can have a centralized memory file or a centralized context file and then you can just switch it between your projects.

That is something really nice uh we can do now.

Yeah. So sorry. Yeah. So like these are different skills. So we can maybe walk through some of the skills in uh a repository.

So for example we have uh some skill files in this repository. For example, the PR triage we have for every skill we have the skill.md. So the skill.md has obviously in the yl format is the name, description, it has the license, it has the origin, it has scope and like some more information about the details.

So yeah this is a example and you give it references like uh you give review check for example it has a checklist which every PR tri should follow. So for example, I had was trying to develop a web 3 plug-in. So it has like a it reviews the smart contract. I had a smart contract uh like a solidity review checklist. So for example, I can have it you know check the like for example the bug I had planted here was a big in issue.

So I gave it some context related to that. Yeah. So where were we? Yeah. Uh I can so h how do we you know make uh skill you know portable and not only just for uh claude and you know for more providers and you don't keep it you know very uh specific to uh just this and we make sure that you know it's doesn't inject any uh wrongful things into your pres into your skills so that you know the agent doesn't mess anything up.

So we we there are like some set of skills like there are it's one of the very famous known skills is like mattp uh skills. So many people actually use that it's one of the most used skills. So uh they are open source and like each project has their own skills. So we already talked about you know where these different skills live. So maybe we can you know move on to uh plugins and like how you can integrate different plugins with uh claude or you know will be talking about how we can integrate them with anti-gravity and you know so like there is anthropic has its own uh you know plug-in marketplace.

So for example, if I actually go to cloud and I I you know I say so I can you know check so these are some plugins which I already have installed like you know the agent plugins or you know the PR authoring privacy plugins and we have the you know plug-in marketplace so to give it more different plugins for different So maybe Om can talk a bit about how he uses plugins with anti-ravity. Yeah. So for plugins, what we what I mostly use is a ponytail plug-in. What is a ponytail plug-in is it is a maybe you just understand what problem does it solve? AI agents basically uh draw up a lot of code that is not useful.

the double code like use not useful code. So what ponytail plug-in does is it follows yagny pattern you aren't going to need it. Okay. So for what does you aren't going to need it means that for every decision agent processes makes yagni pro uh ponytail plug-in just attempts to just ask a simple question. Do you going to need it or not?

Or maybe there is there a better way to do it or not? Right? See, basically why was it named ponytail? Because u there's always a guy in a big tech team with a big ponytail who knows a lot and can solve a billion uh like a full 100 line code in a one line itself. You understand my point?

So like this is one of the plugins which I use. Uh the other plug-in which I also use is context 7. Okay. So basically AI agent is agent running LLM. Okay.

LLM are like trained right. So they are not having the latest documentation info. Context 7 brings that to light. Contact 7 is basically uh a latest documentation for uh anything you are going to process. You're building a project in React.

React has a latest docs, you can use it. It brought something new. You can use it. But context 7 bring uh brings that part to uh to the AI agent. Also, uh you you can combine two or more more plugins to just uh make uh your life easier and uh and don't let a AI do all the processing.

You should understand what it writes, right? Yeah. So, thank you Om for that. So, so like uh I can see like many contributors from Vox. So why not let's you know use an agent to you know make your first PR or you know like make a fix.

So let's let's find an issue and try to solve it using you know an agent. So for example let's try to find an So you can always go to a repository and try to find a good first issue label. Uh yeah so like there are some issues with you know the good first issue labels. So most of them already have a lot of PRC that we can we replace CSS classes with 20 for 20 plus templates. So maybe this is one of the issues you guys could pick up or let's so let let's try to you know in uh inspect the skills which this repository already has and let's see how we can actually use it and let's also try to configure the uh GitHub MCP so that the agent can get all the context of your particular issue.

Okay. So So like let me just give you an example of uh MCP how we configure it. For example, the GitHub MCP. Where did it go? Yeah, for example, if uh how like this is an example configuration of uh like you can have your own MCP server with your own application or you can have it like for example you can have a GitHub MCP for so that your agent can get the all the context of a particular issue.

So let's actually add the GitHub MCP for this. should be. So like I hope all of you already know how it works. So like before we actually do it, I'll just quickly go through how it works. So basically what the MCP does is it gets all the context of that particular uh like the MCP client can be for your own project or it can be for you know uh it can be for like for example we'll do it with GitHub it can be for you know some database or it can be for maybe for walks or event we can configure the MCP for a particular project so that your AI agent gets all the context from that.

So for example this is the an MCP which we can you know so we can go here we can do claude we can exit claude here we can say claude MCP so you can see the MCP is configured here uh - list okay it's just cloud MCP list so I I have not uh added any MCPS over here. So, let's add the GitHub MCP go MCP DH. Oh, okay. I just I had the command somewhere. Wait, do you have Can you check it out once?

So like uh we need a personal access token particularly like we can configure it through like uh an MCB configuration for example the one I showed it to you over here. So we can add the uh GitHub URL and you can add your PAT token over here for a particular GitHub MCP and uh so you can like uh give it only read only access or you can give it edit access and based on what your requirements you can configure it. So, so like you you need to uh So, yeah, let's let's actually add or or nowadays we we you don't even really need to configure the MCP yourself. You can have uh Claude do it for you. So, why why don't we try that out?

Yeah. So I can, you know, have uh this GitHub MCP for

All right. So while Ernov is uh guiding you through adding a GitHub MCP, shall we talk about token optimization a bit? I mean, isn't that uh the next big thing about AI? Tokens are very expensive, man. And it's not like everyone got lazy.

It's like we just get more done with AI. Or maybe I can call it another way of being lazy. I I don't know. I'm just kidding. So ANAV already talked about some of the points.

We configure skills. We use sub agents for a fresh set of eyes and uh we have a specific rule set some hooks. The hooks one is really good like you can really use a much less expensive model for compacting your conversation but then it also depends do you want to lose even slightest of context in the summary as well. I mean it is completely uh suited according to your use case. How are you planning to use it and a very good technique for optimizing this is teach claude how are any AI agent in that sense how actually do you want it to perform because at the end of the day it's your credentials that it's using to pump out the code.

It's your name your reputation on the line and if something's break and you don't know it. Oh man, let's not get in trouble. Maybe it's not as big of a trouble, but uh doesn't really look good, right? If we just let AI handle all the code, it pushes anything. We do not really want that.

So, we need to understand, but then if I'm reading every second line of code, every line of code, then what is exactly the point of AI agents? Or I would like to rephrase it as if I'm checking every line of code with extreme focus. Does it really make sense using it? Obviously it does. I mean that was kind of a trick question but it's still faster this way but we can make it more efficient.

So we will teach it how actually I'm supposed to work. For example, if I talk about me, I don't want a lot of comments. Okay.

Yeah. Yeah.

I don't actually write a lot of comments because uh sometimes it's not really necessary. I mean we write short comments wherever they're needed but the variable names themselves are pretty much explanatory.

Yeah. Yeah. So uh the internet here is really flaky. So I'm not able to you know connect uh the GitHub MCP with or am I the let me change the yeah so I'm not really able to connect the GitHub MCP over here because the internet is really flaky not able to connect with the it's not able to connect with GitHub but uh like here's uh the example configuration you can replace it with your GitHub pad token and this is a like it is uh it can help you find you know uh good first issues or you know the your first PR to contribute using this MCP configuration. Um so other than that we can you know let's get back to the presentation.

So this is uh how it actually works. So for example, you tell it to try the first issue. Uh the claude code uh will generally you know it will it will use the GitHub MCP to connect with uh the GitHub API to get the issue. Once it get the issue, it again gives uh like it's it's a JSON response. It gives the context back to cloud code and then it has the context of that particular issue.

So yeah, that's how it usually works. So like there are uh five did we go back? Yeah. So we already talked about you know the different kinds of uh context which we have. So we can uh also add like different kinds of uh scripts inside the configuration.

For example, I have I use uh like sandbox script for you know testing particular PRs because if I am already working on something uh I don't want the agent to you know uh keep creating different work trees and you know mess up all my entire setup. So usually if people want to have multiple you know setups done they usually have a work tree but again if you want to test it on the work tree or for example the box project it uses a docker setup. So you cannot test it multiple times in the same thing. You cannot have the agent iterate and actually have it on test data. So for stuff like that we can create different uh you know sandboxes.

So for example, this is a script which I use for you know creating sandboxes and I let the uh agent like I let cloud code cloud code pay play with data in this sandbox. It iterates over uh till it builds the feature and then finally I can check it out in uh my local or in my uh work tree to test it up. So you can have a uh different scripts uh for different purposes when you can add these scripts in the hooks. So I'll give you an example of some of the hooks which uh so for example after making uh a change you know cloud code formats the code in a different way than I usually do. So for uh for example it uses rough or uses black black or and uh what if my repository is a bit old and I don't want to you know format the entire code and I don't want my PR to have just 10,000 changes of uh the formatting issues.

So for example uh we can have a hook for before test after edit. So after every edit we can have a hook which can trigger a particular script to you know test it uh and make sure that it is uh not messing it up. So like this is a example configuration. So after it edits or write we can we can have the hook to run a particular script. So like after po for pre-tool use and we have post tool use inside the hook.

So based on your thing we can you know change it. So like we have some prompts as well. For example we want to uh connect the MCP like uh we have some internet issues here. So instead of actually connecting it, I'll just walk you through or you can uh cloner for this repo and you could actually use uh to you know connect your own MCP or if you have your own project you can configure your own project MCP for example. These are some uh prompt which we can you know give and it will uh connect the MCP for you know GitHub.

This is a good example for that. [snorts] So coming back to the presentation. So sub agents now h how does how do we you know make sure that uh while doing one task it it doesn't you know just stop at that particular task and you can have it do multiple tasks at the same time and you know you can at at the same time ask it different questions. So in uh uh you you don't want to use cloud opus 5.5 for even you know the formatting stuff and you know you don't want to use it for that but at the same time it's building the feature so we can configure different sub aents ourself flow cloud code itself automatically tries to like it it does use sub aents but it's not very accurate you know claude uh also uses like instead of using haiku it might use set which is also a very heavy model which you don't want to use and you know burn your tokens on So we can configure uh the sub agents for a particular like skill.

So when it uses that skill we have the sub agent perform particular tasks instead of the agent actually you know assigning its own sub aent. So we can define the sub aents for the subtasks which it is going to use from the start itself. So yeah, so for example, after he's done with the changes to review the PR himself, you I usually have a hook uh so it triggers the sub agent to do it and we can assign which sub agent it should delegate the task to. So this is a good example of how we can configure sub agents. Yeah.

So for example, this is the hooks which we saw. We can you know uh make sure like hooks uh we can block the protected files instead of like uh changing any files which are not to be changed. We can make sure we can have a hook to trigger and make sure that these files are not edited. So and yeah so for example we have the you know uh plan mode which is uh a really good thing inside cloud. So you can use cloud you can use hyphen - permission mode plan.

So there is something also called as planotator which I have recently started using. So we can keep on iterate like when you use the plan mode we can keep on iterating over and over with cloud before you know letting it do its task with its agent sub agents and the entire configuration. So I I tried to you know cloud isn't working due to the Wi-Fi here. So I actually tried to run it there but uh I don't have a good Wi-Fi connection to uh we actually you know iterate through cloud and make a basic issue. So this is the flow we yeah next slide.

So for example uh if you try out the uh fix on uh end to end fix with claude we can actually this is the when I was going through this uh same issue I was trying to fix it using cloud for this workshop so like this it supposed to work out like this but we cannot go through it due to the Wi-Fi thing so let's do the so to sum up the entire thing uh what is for what? So we have instructions, we have skills, MCV, plan mode, we have automemory, sub agents, hooks and then we have test plus your final human review. So I hope that you know this uh does make sense and you can you know optimize your agentic workflow to for wipe coding much better.

So uh I'd like to add on something about token optimization. It will be a short 30 secondond thing. It's a personal insight. So like uh create one file uh that sums up how you do anything you do and then just read it very carefully. place it in a folder and give your uh AI agent access to those folders and uh instructions set that you can just copy that uh whenever you start a new project or you sets up a new session then uh you say okay so these this is the folder that you really have to uh refer to for the general rules and after

so it's basically like your local uh claude file your local agents.mmd which is uh you know common for all your cloud uh sessions but it's not you know for It follows your own instructions. Yeah. So the basic

Exactly. So it's almost uh like a rule set that you're creating

and uh it is going to suit your workflow.

Yeah.

So you don't have to waste your tokens on trivial things like there are a lot of comments and it's across 20 files. You have to remove them.

If you do it manually, it will take time. This actually saves time and you can put your energy and your time in the tasks that you really need to be delving into. Now handing back over to Anav.

Yeah. So I hope this helped and um unfortunately we could not you know go through it with you know actually using cloud we didn't have a good connection. So you could actually uh try this yourself. We the you can scan this QR code you can check out the uh skills the prompts the hooks and the MCP configuration. So this is a this setup is actually very useful for uh different projects and it uh will reduce your token cost a lot.

So for example a lot of companies have a very limited cap for tokens which you can use in the month. So I think this can you know really optimize the number of dollars you spend on you know cooking your project. So uh thank you for [music]

Automatic transcript — names and jargon may be misspelled.