New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

Austin Griffith I Building Onchain in the Age of Agency With BuidlGuidl I Agentic Ethereum 2025

ETHGlobalThu, Oct 9, 2025, 12:00 AM

Join Austin Griffith from the BuidlGuidl for a hands-on exploration of Scaffold-ETH—the ultimate developer framework for on-chain dApp creation. Learn how to quickly build, test, and deploy smart contracts in an AI-driven era, where tools like Cursor can help generate Solidity code and front-end interfaces. Discover how to integrate Scaffold-ETH for rapid prototyping, handle complex interactions (e.g., bonding curves, share ownership), and move from local testing to production with ease. Whether you’re prototyping a DeFi market or experimenting with AI agent protocols, Scaffold-ETH’s flexible approach empowers you to tinker, iterate, and bring your next Ethereum idea to life. 00:00 Introduction & BuidlGuidl Overview 00:45 Scaffold-ETH Basics 01:25 Deploying Locally & Debugging 03:16 Tinkering with Solidity Examples 06:29 Using AI Tools (Cursor/Claude) 07:44 Avoiding Common Solidity Pitfalls 09:58 Building a Simple Bonding Curve 14:22 Front-End Integration with Scaffold-ETH 19:18 Prompting the AI for More Features 22:40 Deploying Contracts & Shipping Apps 28:56 Final Tips & Closing Remarks _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 🤖 *Agentic Ethereum* Agentic Ethereum is an online, async hackathon that runs from Jan. 31 to Feb. 12, 2025. With over $175,000 USD in prizes, Agentic Ethereum is a great way to dive into the world of autonomous AI agents and explore how they can revolutionize projects on Ethereum. Start the year with groundbreaking innovation! Watch the full playlist: https://youtube.com/playlist?list=PLXzKMXK2aHh7jxP_flgRf5nZ_WDgFpBy3&si=RZozbd9C5KrG6Bf3 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ✅ Follow Austin Griffith X: https://x.com/austingriffith YouTube: https://www.youtube.com/@austingriffith3550/playlists ✅ Follow BuidlGuidl X: https://x.com/buidlguidl Website: https://buidlguidl.com ✅ *Follow ETHGlobal* X: https://x.com/ETHGlobal​ Warpcast: https://warpcast.com/ethglobal Website: https://ethglobal.com YouTube: https://www.youtube.com/c/ETHGlobal _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _Are you interested in Ethereum development and entrepreneurship?_ 👉 Sign up for the next ETHGlobal event: https://ethglobal.com/events 🎁 Get exclusive access and perks with ETHGlobal Plus! https://ethglobal.com/plus 📣 Want us to throw an event in your city? Tell us where! https://ethglobal.com/city _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Transcript

[Music] so I am Austin Griffith I uh work for ethereum at the build Guild the build Guild is a dow that's focusing on developer education and tooling and building cool stuff on Shain uh our main curriculum after today after you learn how to get started uh definitely head over to speed oops what am I doing definitely head over to speedrun ethereum speedrun ethereum is a great curriculum that will help you get started building on chain and build a bunch of things that will expose you to a bunch of Concepts that will get you ready to ship but today we're going to look at scaffold eth and we're going to look at it through the lens of this growing AI Trend that is really changing a lot in the developer space at least so scaffold eth is a tool that helps you build apps but it has this debugging feature built in that will help you to test your assumptions and try things and sort of not know everything going into it but have the ability to try things and learn how to test your assumptions so let's just jump uh right into that I've done this already I've run this npx create eth latest over here and and then we brought up our local blockchain with an e or yarn chain and then we brought up our local run end with yarn start all of these instructions are right there at scaffold e. if you get into the docs and follow along or get into the repo and follow the the repo it's all uh right down here I kind of did this MPX create eth then I did a yarn chain then I did a yarn deploy and a yarn start and all of these things will get you ready to go let's just do that yarn deploy right there that's going to deploy our example contract and then we can go dink around with it and that's kind of the the heart or the starting piece of scaffold eth is you have your contract here and let me zoom in just a little bit and then you have this interface where you can try things right over here okay let's let's get into it and try a few things so in particular there's this debug contract so this is kind of the starter kit for making an actual app and this is really cool because you can Tinker around and kind of just be learning and feeling things out and then once you get it figured out you're like you're very close to just like shipping an app to production if you want you can kind of push this to to uh versel and push your contract to a live chain and voila you've got a live app so let's look at the heart of it the heart of it is being able to talk to your smart contract and try some things Tinker around right this is also a familiar Loop you might find in remix so scaffold eth and remix are very similar in that they can help you Tinker with uh solidity and get a footing but also like deploy contracts while while you're at it and in this case also deploy a front end uh so the the thing that I really want to get and we had a session I think Thursday or Friday and the thing that I really push there is tinkering and I want to show this one more time real quick so if you don't know solidity yet very well if you're a coder you'll pick up the syntax pretty easily and you can go to solidity by example and just go through these Concepts pick a concept and go learn it and what you can do with tinkering is just kind of grab let's say we're going to learn mappings and we're going to figure out what this mapping is and look what this G and this set is right we can just copy these right into our contract okay and just hit paste and hit save and hit deploy and then go Tinker with him right so what we what we added there was some new mapping that should show up yeah right here here's my map right and it takes in an address so I can pass in an address and read the value and maybe we want to do something like set the my map for some address right here let's let's just set it in the Constructor it'd be my map uh not message. sender let's say owner just to show that this works and set that to 42 and deploy it right so you have the ability to really Tinker with stuff this is all on Local Host this is just you messing around trying things out but now what happens if I like grab oh whoops it's going to be the owner's address hopefully this is 42 whoops I went to the block Explorer really nice block Explorer built in to scaffold e did you see that but there we go we're able to you know set the mapping for this guy the the the key piece that I'm trying to show you here is that you can learn solidity very quickly by going to solidity by example or grabbing the docs bringing something uh some New Concept in that you find into your contract and then kind of just tinkering around with it whether you're using remix or scaffold e you make a change to your contract and then you see it in the front end and you can dink around with it and make sure it does what it needs to do uh for instance in the session that we had uh last week we did this thing where we had an owner of the thing and then we just made sure that only the owner could call a certain function and we did that by calling the function here and then creating an incognito window which actually creates a different burner wallet this is kind of this account here we're using burner wallets which are really nice for local Dev and every time you create a new incognito window you're actually getting a completely new wallet which is really nice because then you can have all these characters that you can kind of attack your contract with okay but we did that already let's say that you got the syntax down um you may not even need to have the syntax down which I think is the cool thing that we want to like lead into here when we're talking about this age of agency you need to kind of be able to think algorithmically a little bit about what you're trying to build but you can prompt cursor and it will do a pretty good job of writing your smart contracts for you you which is kind of scary and kind of cool all at the same time but this creates a new Agency for humans also you at at home can now think more at a little bit higher level instead of thinking of exactly what this solidity needs to look like I need to start thinking of what I want my protocol to do right and so if if we kind of like follow that let's pull that thread a little bit and go through it as we uh dink around here with scaffold e but I'm going to be thinking less and less about the syntax of solidity and more and more about what I want this thing to do and prompting uh chat or prompting uh cursor who will probably prompt Claude uh to to help me with that code and I still need to know you know the ins and outs there's some small details about solidity that you have to be careful with uh for instance sending sending ether if you were to just prompt cursor to send some ether they're probably going to not use quite the right function they'll probably use transfer and that's good that's okay but what happens is this transfer function happens to be limited to 2,300 gas and so if you happen to be transferring to a Smart contract that has a fallback function that's going to burn some extra gas to do some extra things this transfer might fail so the sort of way to make sure you like don't have that problem is you use call and you send your value using call and and so sometimes GPT or Claude does this wrong and this is an example of maybe four or five little things that you need to watch out for but this is one of them and you just need to be like yo not not like that like this and maybe we'll do a little bit of that here too uh but let's uh dig in and look at how we might go about building a protocol uh thinking thinking through what we want to do so let's get rid of this map we don't need this mapping anymore and really I could clean out a bunch of stuff in here there's a lot of examples here just like fallback functions and uh you know owned withdraw functions and it's a greeter that you set the greeting and you see if you send in some money it's payable and you send in some money it flips a bit just kind of like a lot of really good examples uh but let's just kind of think through uh what we want to show what we want to do here so let's say it's the age of agency and I have an old laptop laying around with a GPU on it I want to use that laptop as an agent maybe even like an oracle to a system and so what I want to do is think about what part of this system I want to build will live on chain and what does its onchain uh presence look like you really need to think about what has to happen on chain and what happens off chain and that's when you really start figuring out your protocol and what it looks like and then you start kind of building it out so what I'm thinking is I want to make like a GPT like app I want to make a an AI powered app that's on chain right so I want to deploy a contract maybe to like Bas or optimism and I want people to be able to buy in on some question and once that question reaches some critical mass there's a bunch of oracles that can come in and like answer that question right so it's probably going to be a like a struct of a string and maybe some uh votes on it and then maybe there's going to be some struct that is like the answer and this starts to get like it starts to bubble out of control a little bit when I start thinking of it in my head so I almost need to draw it out and sometimes I might just draw out some boxes right like get a mirror board going but what is the simplest possible way I can think of doing this is what if we have like a bonding curve for the question and people can buy into that curve curve and things go up and down so so really what I want to do is we're going to prompt cursor and see how cursor does here and it's kind of weird to be prompting on a live thing but this is this is the method of building a a lot of stuff right now and if you're not using this at some point you're probably uh you're probably like leaving some stuff on the table there's a lot here to learn and this is really powerful and it will 3 to 10x your your output if if you're uh you know an average developer let's let's try it so what what what I think I want to do is I want to track questions as like strings okay so um we want users to be able to buy in on a string so maybe we have a struct with a string and a price and as they buy it goes up and as they sell it goes down and there is always liquidity something like that a bonding curve right it's a bonding curve but uh one at a time no calculus please right I probably did not spell calculous right but let's that's it right this is how we get started we're going to throw something in here and be like what what are we going to do look at that oh there's a struct right okay so we've got a struct with a string let's dive in and see what this thing uh builds for us and we'll play with it right we'll deploy the contract locally and we'll see just how this thing works but what I'd like to have eventually is for someone to be able to come in here and be and say some question like what is the price of oil at this certain time and have maybe like a time stamp and people can in some period oracles can be answering that and somehow it rewards the right oracles like I haven't really thought this out too far I'm still tinkering around and trying to find exactly what I'm trying to build and this is perfect for that so let let's see oh did it die I think it it cancelled I don't know if I've had that let's try it again there we go there we go I'm just going to accept this and we'll go see uh how it looks so yeah it looks like it's going to keep track of this there's some content there's some current price I don't think we want to have an owner uh let's pull that out no please okay buol exists I don't even know what that is for but we'll figure it out as we figure it out so there's some initial price we see how it increments and decrements we probably could just have that as the same but whatever let's just leave it uh how it is oh no no I kind of have to have internet I don't know uh this is uh yeah this is you're you're on your own when your AI dies on you let's see okay so we're gonna have some withdraw balance let's just see uh what happens when we try to deploy this we're g to get some errors we're going to need to clean them up but we're kind of like dinking around here and let's see uh let's see previous owner here oh this is unused local variable that's fine oh okay what we have here here is when we're doing our deployment there's some extra stuff happening here that we don't want to happen anymore and also it looks like we're passing something into the Constructor let's check and see if the Constructor takes in a value yeah it still does okay so we still have this owner this should maybe deploy let's go see okay so our contract is out there uh on Local Host and we can dink around with it right we have our initial price notice eth to we you should have learned the concept of eth verse way uh we we have our price increments we have an owner which isn't really important uh but let's see what can we do there should be there's a buy okay so there's a buy string okay there we go so you pass in whatever string you want to buy okay so we need to come up with a string so uh what is the price of oil and eventually I think what we want to do is have like a time stamp where this is in the future right so we're building some other platform that is somehow building a market around what people think the price of oil is going to be and then we want a whole bunch of oracles to say what they think the price of oil is at some certain time and so we're we're like the market may may say like what will be the price of oil tomorrow or something like that right so what is the price of oil and this probably needs like I said like some kind of Tim stamp in the future like what is the price of oil and we'll say like tomorrow at noon or something like that right and we would we would basically get that from uh this so it's not there we need to find a right so we need to buy okay so we're going to buy what is the price of oil and I believe that will go here and then there's probably some initial price that we're going to pay okay and oh we're GNA need some money from the faucet we got to load our burner wallet up okay I don't know if this is going to work we'll see we're exploring we're trying things we're seeing what's new what is the price of okay we we were able to buy one of what is the price of oil uh is that working let's see how do we even go about oh the price should go up now right uh so now if we ask for what is oh there it is okay so now we can get the string token we can say what is the price of oil check out the new price now if I try to buy another what is the price of oil this should fail yes oh you are you already own this string okay we definitely don't want that okay so we're going to look into the buy string now so it checks to see if that struct exists and then it looks at the price okay we don't want an owner right and we don't want to check to see yeah okay so we're we're gonna have to prompt the GPT it's basically created a single owner for the string and we don't want that we kind of want to say um a single owner to be able to buy in and own a piece of the string something like that let's see what it let's see if it figures that out yeah so no more owner in there and then a new mapping that tells what kinds of things you uh as an owner own just like a ton of code getting written here going quickly uh obviously you don't just like apply this code and ship it straight to production oh this is crazy uh let's see there we go but this should okay so now we check to see okay how many shares you're buying okay cool uh nope all right all right I also want it to only buy one share at a time to make it simple you make it simple only buy one share at a time okay this is close so it'll buy a single share every time it'll always only buy one uh your shares will go up probably uh there's a nice refund this is really nice so if we buy extra it looks like we'll get a refund which is really good because if lots of people are buying against the um if a lot of people are buying against the curve at any moment the price will shift up and a lot of people will get failed transactions and this thing has kind of uh figured that out so our front end will probably send some extra money along with this to make sure there we go to make sure they don't get those failed transactions okay let's see let's see if we can deploy this thing see how it's looking now now of course there's there's so much more to do here once you get your smart contract working and let's just make sure we can like buy and sell shares there's so much more to do but we only have like I think 10 more minutes so uh I want to move on and show frontend stuff once you get your contract where you like it let's uh let's see I haven't really been watching questions sorry y'all oh I see a lot of note takers popping off okay uh let's see can we buy and sell shares that's what we should be looking at so uh we have some question you know what uh oh let's see let's see who who who are the members of the Doge right that's a Hot Topic right now and and maybe it wouldn't be that big of a question but let's buy into it let's say we want to know the answer of it and we'll buy the first share of it probably the way you would work this is you would have someone land on your website and get to type in whatever question they want and they would like deploy and buy the first share all in one go uh but let's make sure we can buy that and then if we come up here we should see the price goes up and if we try to buy another one it should fail oh no it let us buy another one at the same price right uh oh so we gotta go back over here and tell this dude it's not quite working let's see the price should go up and you should pay a higher amount for each share you buy and as used so the price should go down right now I can buy two in a row for the initial price and is wrong something like that right and you're you're prompting you're hopefully we're we're gonna call it good at this moment uh whether AI figures it out or not you will need to spend a lot more time here making sure this is good before you push this out to a live chain there we go now we see the price incrementing that's that's nice okay save that go ahead and deploy that and if we get any error messages I'll probably just copy paste them right over to AI to fix and here we go so let's try uh let's see uh what is oil price oops okay and that's going to be our string and we're we want to know what that is so we're going to buy into that at the initial value of this price okay and that's in way of course uh you could count the zeros and figure this out but it's probably something like that and if I do that again oh no it's still still totally letting me buy that uh it doesn't seem like the price is going up yeah okay so it doesn't seem like ourter is working the AI it seems like the current price let's see what we charge here ah look it it's doing a transfer too exactly what I was talking about this is a no no see that you have to get in there and fix that but we're not going to do that today we only have 30 minutes building a protocol in 30 minutes doesn't make any sense but let's pretend like this is all working and what you want now is for people to go to a website type in their question and buy and sell okay so it's not working that's a bad that's a bad cursor bad claw that's a bad claw let's let's go to the front end though let's start working on our app okay and that will be over in the nextjs section and your app will be this page right here right and so uh let's go to home this page right here right so what we want you know you you got to build out a little AI but or you have to build out a little UI but the AI can help a lot so uh let's let's clean out the UI let's have a text box where they can ask a question let's have a buy and sell button that lets them buy and sell that question uh against our contract okay and let's do a couple other things I'm going to send uh the docs I'm go say hey here is how you read from a contract so I'm going to go to scaffold eth docs here's how you read from a contract right something like this here is how you read from the contract okay boom here is how you write to the contract okay and I'm G to bring that stuff in a lot of times you could put this like in your cursor rule there's probably some AI folks out there that are like Austin you're doing it wrong bro that so last week uh but here we go I'm kind of pasting in some stuff okay and and I don't want it to just have my page I wanted to also have my contract in the context okay I like my instructions here are terrible it's going to do something really weird uh you have to be way more explicit and think through the other things I definitely haven't done that here uh you can do that at home but let's send it oh I didn't mean to hit command enter there it's going to be a costlier call but let's see what it does let's see if it makes us some buttons and some text entry look at that it's reading from the contract it's handling buys it's handling cells I don't necessarily have to know a ton of react here to get this to work I don't necessarily have to know a ton of solidity to get this to work but like yeah it's it's gonna make a mess if I don't like if I get too far into this like prompt blindly loop it's not going to end well for me at the current stage of I uh but that is changing quickly okay let's see what do we got what do we got let's apply this and let's uh see what we have here over on the front end okay I mean that that was kind of what I had in my head to be honest like what is the price of oil and it almost needs to take that question and like look it up and then see if it's a struct that we can buy or not and if we like it we could hit buy wow it actually actually bought the thing from the thing and can I sell it and actually sold it back how does our money work here let's let's pay attention so we have 2,668 we're going to buy one buy two buy three this should go down right okay our money goes down and then let's sell those shares our money goes up okay so it's it's sort of working but not great uh let's let's have let's do one thing where as they type it reads from the contract to see if there is an existing okay here we go as we type it reads from the contract to see if there is an existing struct for that question and tells us the price something like that right we're getting really close to having these buttons wired up so we know exactly the price and someone can type something in and get the price let's see what it does oh you know what it probably needed wait wait let's give it more context it probably needs our contract in there I feel like it's going to do something blindly let's make sure we have our contract in there okay so now what's going to happen is as we type in here hopefully it will go and read from the contract yep yep yep so there's an is scaffold and it's getting the the string token for the given question okay let's see let's see how this works okay reload so what is the price of oil there's nothing here there yet let's buy now it shouldn't be a new question right now if I like just like reload this whole thing and paste this in it's still still showing up as a new question okay so some things are broken uh spend more than a than 30 minutes creating your protocol your AI protocol okay so then the last thing I would need to do is ship this thing to production and the way I would do that if you follow uh the docs uh in scaffold eth you're going to yarn generate and you'll create a deployer account you're going to uh yarn deploy and that will deploy your contract to whatever Network you want say we're going to base and then you need to yarn that's that's putting the contract out there you need to yarn versel and push your app live to versel and then any one can get on and use it and that's basically the loop of scaffold eth and how you can use cursor and AI in this case I would want to write one more script I would want to create a new script that allows an oracle to check in with the smart contract and figure out what the open questions are on the smart contract so basically have an oracle that's reading the Chain Looking to see at some value for some question and then once it reaches some value they get in and answer answer the question or something like that so I would have my front end my back end and also my Oracle code and I would launch all of those together as a this AI platform protocol a lot of work needs to go into how this is actually going to happen I've kind of filled in a lot of the details and glazed over them but that's up to you the Builder the hardest part is not the solidity it's not the tooling it's none of that the hardest part is coming up with a great idea that people will actually use and implementing it and that's up to you at this hackathon go get them go do it Go ship something amazing thank you e Global for putting on this awesome awesome hackathon over and over again we'll be back keep shipping keep going thank you so much uh eth Global I think that's the end of my time though hearts hearts hearts [Music]

Automatic transcript — names and jargon may be misspelled.