Building on Ethereum Human vs AI — Who Wins I Kevin Jones
ETHGlobal·Sat, May 9, 2026, 12:00 AM
Speaker
In this workshop, Kevin Jones, a developer relations engineer with seven years in the Ethereum ecosystem, demonstrates building a decentralized auction application using two approaches: hands-on development with Scaffold ETH and AI-assisted coding with OpenClaw. He walks through the full Scaffold ETH workflow — scaffolding a project, deploying a smart contract to a local chain and then to Base, verifying the contract on-chain, and publishing the front end to IPFS and Vercel. The session highlights the practical tradeoffs between manual and AI-driven development, showcasing ETH Skills as a set of guardrails for AI agents building on Ethereum. Kevin also covers Speedrun Ethereum's educational challenges, prompt engineering best practices for tools like Cursor and Claude, and introduces OneClaw, a secrets management tool for AI agents. The live demo candidly reveals both the power and pitfalls of AI coding tools, with OpenClaw crashing mid-demo while the manual Scaffold ETH approach succeeds. 00:00 Introduction 01:35 Workshop Overview: Human vs AI Building 02:23 What Is Scaffold ETH 03:13 Introduction to ETH Skills 04:21 Setting Up OpenClaw with ETH Skills 04:57 Prompting Strategy: Claude to OpenClaw 05:42 Scaffolding a Project with Create ETH 07:05 Project Structure Walkthrough 08:56 Next.js Front End and Scaffold Hooks 11:09 ABI and TypeScript Type Generation 13:01 Checking on OpenClaw Progress 14:06 Running the Local Chain and Deploying 15:24 Scaffold ETH UI and Burner Wallet 17:30 AI Builds the Auction Contract 18:54 AI Mistakes: Foundry vs Hardhat 22:20 Deploying the Auction Contract to Base 25:21 Generating and Funding a Deployer Key 27:25 Verifying the Contract on Base 29:04 Fixing the AI-Generated Front End 30:20 Publishing to IPFS and Vercel 34:53 Speedrun Ethereum Overview 38:45 Synthesis Hackathon and Bonfires 40:27 OpenClaw Status Check 43:33 Q&A: Reverting vs Fixing AI Mistakes 46:08 Live Demo: Creating an Auction on Base 52:04 Q&A: Cursor vs VS Code Workflow 56:30 Q&A: When Not to Use Scaffold ETH 57:33 OneClaw: Secrets Management for AI Agents 1:00:08 Closing Remarks _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 🇫🇷 *ETHGlobal Cannes 2026* This workshop is specifically for ETHGlobal Cannes 2026, a 3-day hackathon held April 3-5 at the Palace of Festivals and Congresses of Cannes, bringing together the most skilled web3 developers, designers and product builders from all around the globe for a weekend-long adventure to advance the Ethereum ecosystem! Watch the full ETHGlobal Cannes 2026 playlist here: https://www.youtube.com/playlist?list=PLXzKMXK2aHh5YrcvSj6KSTztLMy58d7d4 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ✅ *Follow Kevin Jones* X: https://x.com/cryptomastery_ ✅ *Follow 1Claw* X: https://x.com/1clawAI ✅ *Follow ETHGlobal* X: https://x.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
Great to see everybody. Uh familiar faces, some new ones. Uh my name is Kevin Jones. I am a developer relations engineer working in the Ethereum space for about 7 years. Uh very excited to talk to you guys again.
Um and be here with everyone here in France. So, thank you for coming. Um I am working a lot in the Ethereum ecosystem on different applications. Um I've been part of the Build Guild uh for the last five or so years helping support Ethereum education onboarding. And I'm also working at uh Edge & Node working on the Graph Protocol and a XYO 2 uh protocol called Ampersand.
Uh I also recently launched a uh secrets management tool here. Please, if you want to come check it out, it's called One Claw. We have a booth. I'd love to chat with you about secrets and AI. Uh we're going to do a little bit of uh something different that we probably haven't done uh at one of these hackathons.
And we're we have a whole hour here. And the reason why we have an hour is we're going to try to uh kind of cross the path between like building with AI and then also like the old-school way, right? Like you still kind of need to understand the primitives of like Ethereum, Solidity, and understanding because, you know, smart contracts hold a lot of of value, right? So, it's very important to learn that. Uh but at the same same time, we're we're in a new uh era, right?
We obviously see that. Uh there's a lot of useful ways that you can use AI to your advantage. And we're just going to explore like what's at your fingertips. So, um I guess with a show of hands, uh who's in the audience? Who here has actually used Scaffold-Eth before?
Anybody? Few of you guys? Awesome, very cool. So, we have some new people Scaffold-Eth, which are good. We're going to show off what Scaffold-Eth is.
Uh and in the meantime, we're going to also use AI to try to build something in the background and see what it comes up with. Um and so, we'll kind of be able to kind of compare those differences. So, first of all, uh I'll I'll kind of talk a little bit about what is. Scaffold-Eth is a starter kit. So, when when I first started coming into Ethereum, like one of the problems I had is I didn't know exactly what tools to use.
Uh so, Scaffold-Eth kind of makes some kind of decisions for you as you're kind of like coming into the space uh and want to like build quickly. And so, we let you uh scaffold out an application from zero to a working uh something that you can easily deploy and make it as easy as possible. So, it's really good for hackathons and it's really good for prototyping, right? Comes with uh a front-end. It comes with a virtual chain that you can run uh either Hardhat or Foundry.
It lets you kind of like choose. And then, on top of that, it comes with a starting sub smart contract. And it has a bunch of extensions that you can use to like extend it and make it more powerful. So, we will use uh Scaffold-Eth to build here. But, one of the things I do want to talk about that is kind of very hot right now is Eth Skills.
Uh it's another uh great thing that came out of the Build Guild out of from Austin Griffith. And what it is is it's a a collection of skills that your AI agent is going to need in order to successfully deploy smart contracts on Ethereum uh in a secure way, in a trustworthy way. Uh and it's kind of like guide guardrails, right? Like, I think the most important thing with AI right now is giving your AI as much like guardrails and understanding uh that it you can as a as as far as context goes, and then kind of letting it kind of uh iterate. Uh so, Eth Skills is available just uh go to ethskills.
com. And essentially, what a skill is is it's just a read me. Uh and you basically use that read me in your AI tooling. So, I've kind of gone ahead and already gave this skill into into an Open Claw instance. So, what we're going to do is we're going to we have a a brand new Open Claw instance that I spun up uh earlier that I just kind of opened up the the context window for the chat.
And I said, "Hey, here is the Eth Skills memory. I want you to keep this and remember this forever because we're going to be building on a on Ethereum and I want you to use that uh to to do that." Um and so I have I have like two terminals here. I have got my uh my kind of like chat window with the um Open Claw set up and connected. I'm using Open Router, which I recommend as well where you can like kind of uh choose your own model and kind of switch it as you need.
Um and what I always like to do is when I'm like prototyping with AI is I go to Claude first. Uh Claude desktop. And I kind of like ask Claude to give me a prompt to give Open Claw or ask Claude to give me a prompt to give Cursor or whatever other AI tool that I'm deciding to use. And so what I've kind of done here is earlier I came in and I said, "Hey, like give me a Open Claw prompt that will allow me to one-shot an auction smart contract on Ethereum with a nice front end and make sure that you're using ETH skills." That's really it, right?
So I'm literally just going to copy this and we're just going to like set it in here and we're just going to kind of let it bake and and let it do its thing, okay? We're going to come back to that at the end and see how well it does. Um and in the meantime, I'm going to dive into into Scaffold-Eth and we're going to do this kind of like more of a local like hands-on touch. So we're going to kind of like toy around and see like what's more efficient and and at the same time maybe learn something, okay? So we have Scaffold-Eth here.
All we need to do is just copy this one NPX command like this. And we can basically come over here and spin up a application inside of our machine. So create-eth is the package, the NPM package that basically will scaffold out your Scaffold-Eth for you. You install the newest version. So in this case, we're on version two.
And then it's going to ask you what you want to name your application. Obviously, that's very simple. We'll call it um uh EC26. It's going to ask you what framework that you want to use, right? So, you can use Hardhat or Foundry, or you might not want a chain at all.
Uh, that's up to you. Uh, I personally like to use Hardhat because it's been around a little longer. Foundry's a little faster. It doesn't really matter. You can use either one.
And this is going to go and install all the dependencies for you, right? So, pretty much everything that your your application needs uh, to run. And then we can go into that folder on these other terminals. So, with Scaffold-Eth, you're kind of like orchestrating your front end and your back end into two different windows. Uh, because you'll want to like keep that that console log output there so you can see what's going on.
So, you always need like a three windows essentially running uh, if you're just using the bare version of Scaffold-Eth, okay? And while we're waiting for those packages to install, let's go ahead and load it up in Cursor. Okay. So, let's look at what the repo looks like. So, if we we look right here, you can kind of see Let me make that a little bigger.
Uh, there is some interesting stuff in here. First of all, there's an agents uh, stuff or an agents directory which has all the information on like how AI agents should use the the project repository, which is really useful so that it's already kind of ready to go for AI as well. Uh, all the skills is already in there. Uh, we also have like the Claude configuration. Um, we also have uh, the Cursor uh, configuration.
So, depending on what editor we kind of like give you like everything you need so you can just use any editor. And then we have this packages folder, okay? And there it goes, it finished. So, inside this packages folder uh, are two different two different folders. Hardhat or Next.
js or Hardhat and Next.js. Hardhat is obviously your chain. And so, inside of that, you would have your contracts folder. And then inside of that contracts folder is where your your smart contract is.
So this is kind of like a starting smart contract that comes with scaffold ETH. It's a very very basic kind of like hello world greeter contract, and it kind of has all this information in there. And then in this uh script folder right below it, there's a deploy script. So this is how your contract gets deployed on the blockchain. So everything in here is related to the chain, obviously.
Everything inside of the next JS folder is related to the front end, right? And so we have you can see here we're using next JS. We're using app router, which is really nice because you can do URL-based routing. Uh we have some hooks in inside of scaffold ETH and some components. And so how that's why that's useful is like you don't need to like reinvent the wheel and write um special hooks for Ethereum smart contracts.
A lot of times AI is going to try to do that itself, and it just takes a lot of time, and it can sometimes mess up, and even if it has these skills, it can kind of uh not be ideal. This was all written by human, uh and it's it's really really really works well. So these hooks are ways for you to like interact with your smart contract, like read information, write information. We'll show we'll show off uh what those look like in in a little bit more detail in a little bit. And and then what else was I going to say?
Oh, the components are like kind of like reusable components. So if you go to uh scaffold ETH's website, so scaffold ETH.io, and you click on the docs here, uh this the docs are really good, and there are examples of all of the components and the hooks here, okay? So if we look at address, right? This neat little kind of copy-paste uh ability that you get with the ENS resolution and the little PFP, that is the address component, right?
So you don't want to like start from scratch and make that, you can just use it, it's there for you to to use. Uh we also have like the input which is lets you type in an ENS name and it will resolve it automatically for you to an Ethereum address. We have the the balance component which lets you like toggle between USDC and and or sorry USD and ETH. So you can kind of like, you know, make a better user experience so they don't need to like do the math in their head. Um and then we have like the avatar system.
We have ether input that lets you like type in US dollars or ETH and kind of swap between those as well. So a lot of interesting just like helpful stuff. And then for the hooks, again, these are uh one of the the benefits of Scaffold-ETH is when you use it and you deploy your contract it automatically creates these uh types based off the ABI. So if you're new to writing Solidity, uh when you write a Solidity smart contract, you compile it down and it compiles into like what's called byte code and it's very like unreadable. And you get this thing called an ABI.
It's basically like the map of like understanding how your smart contract works. And what Scaffold-ETH does is it automatically takes the ABI and it builds TypeScript types for you so that you can traverse the smart contract's functions and variables like very easily. And so what you're able to do with that is you're able to do something like this where you can just call the contract name because it's a type. You can call a function name, also a type. You can pass in any variables which are also like uh types within that that that type.
And so it makes it really really user-friendly for you as a human to read it and then also for AI, too. Like AI loves TypeScript, right? Uh so read contract is if you want to like get information from the smart contract. Write is if you want to like call a function and update a uh a function inside of a smart contract, you would do what what's called a write contract. And so you see here it's a similar kind of pattern.
There's a full example here where you have like a button, and in when you press this button, it sets a greeting, and it also sends some ETH using uh VM parse ether, right? And so, this is really really really good examples that you can literally like copy-paste if you're old school and you want to like actually write the code yourself. By the way, who here's going to use AI in the hackathon? I'm just very curious. Probably everybody, right?
Is anyone going to like not use AI? That would be hardcore. Okay. It's such an interesting time to be alive, you know, like like if you would have said that like 2 years ago, people like, "Shh, I'm writing it all myself, you know?" Um all right, so you're kind of getting the lay of the land here.
Yeah, Scaffold-Eth is very useful if you're like debugging and like even if AI messes up, um but it it's just it's just a cool like cool starter kit. So, let's let's just we should have let's check on our thing here. Is it all going going? Let's see. I'm just curious, how are you doing?
Um hopefully it's not stuck on anything. Is anyone here Who here has used OpenClaw, by the way? Any of you? OpenClaw? Yeah?
What are your thoughts? Good? Bad? Okay. OpenClaw is super powerful, but it's really expensive.
So, just be worried like I don't know how much money I'm spending right now, but I know it's a lot. Um the you it it sends up salvations and like if you have a really high model, it can get very expensive fast, uh but it's really really powerful. And it looks like it's still running, so yeah, it must be doing something important. So, we'll we'll try to come back to it in a little bit. All right, so let's let's keep going by hand.
All right, so we have our our project scaffolded, right? We need to go into that directory here. Oh. And we need to run these commands. So, first we need to bring up the chain, right?
This is our our virtual blockchain. We're going to run it locally so we can kind of like test and stuff like that. We get these like test accounts. These are if anyone here is familiar with Hard Hat, you get these like private keys that you can use, but don't use them in production. They're only for testing locally.
And then over here we have yarn start, okay? So, yarn chain spins up our back end, our our smart contract infrastructure. Yarn start spins up our front end. And the very last command is yarn deploy. So, we we spin up all of our our stuff we need and then we deploy that smart contract that we have, right?
Now, this is going to deploy it to a local and it's going to need to download the compiler, which it did and it deployed it. We see some cool output. Our front end is running. We get a a port here. Let's try to run it.
Let's see what it does. So, I'm going to do a similar thing. I'm going to try to take this Uh oh, it has questions for me. Would you like me to start with the contract with the implementation right away? Do it all and don't ask again.
Let's just see if it like can finish this stuff cuz I'm going to actually try to build the same thing locally and see which is faster. So, our our app is working locally. So, let's go over here and look and see what it looks like. It's running a little slow right now. I don't know why.
The other day I was in a workshop. I don't know if anyone saw that and my computer shut down on me. Was anyone watching my live stream? No. It was on the last ETHGlobal hackathon and I literally like my computer shut down.
Okay, here we go. So, what we you what we get with Scaffold-Eth is this kind of beautiful UI. We get an error. That's interesting. I don't know why that's happening, but that could be something interesting with the internet connection, but Uh, what we have here is First, we get this burner wallet, which is super cool.
It's basically a a wallet that lives inside of uh scaffold ETH inside of the browser. So, it's you know, you don't really want to use it for production, but it's really good for like testing. You can just quickly like click this little button and get some funds from the faucet, and it will give you this kind of like test ETH for you to play with, right? Uh, then once you have that ETH, you can come to the debug contracts uh tab here. And as I mentioned before, scaffold ETH at the time that we ran this deploy, you'll see this thing right here that runs.
It's probably the most important part. Is it says updated TypeScript definition. So, it grabs the ABI, right? And it builds those types for you, and then it renders this cool page for you automatically so that you can start looking at your, you know, functions, and you can look at your your your variables, and test things. Uh, and so we can see here that there's a greeting function called set greeting, and it has a greeting variable, and we can set it to hello friend.
Right? Like this, and hit send, and it lets us update that state, right? For that that that particular thing. So, it's a very very basic smart contract, and it's a very very basic front end, but if you if we come over here to AI, right? And let's load up the chat for it.
And let me pull this completely away. Oh my god. Okay. There we go. And let's grab that same chat.
Let's do this here. And try to paste it here. So, what you're seeing is kind of like two different flows that are both ideal for like prototyping with AI. Um, and then uh it's going to basically try to like build this out. And you'll notice so I'll just give you guys a couple uh hints hints here.
First of all, I'm using cursor for this this particular uh setup, and I'm using just auto mode, which is like, you know, you have like different tiers of um models, right? Like different kind of models. You can switch this off and choose the model that you want. So, if you want to get the best experience, I would recommend Opus 4.6.
But, a lot of times what I'll do is I'll use Opus 4.6 for like the initial kind of like scaffolding out, and then I'll turn that off and just put it on auto to do like very mundane tasks like, you know, update the read me or like deploy my smart contract for me. And then if you need to do something that's more deeper thinking, you switch back to Opus. So, you can kind of like toggle that. Um So, yeah, what it's going to do right now is it's going to go out and it's you'll see that we already have a new deployed contract, but it's probably going to try to uh make some changes.
Oh, oh my gosh. It's like kind of going off the rails right now. It's trying to use Foundry. Okay, that's funny. Let's Let's So, this is a perfect example of AI can do some really stupid stuff.
So, I I clearly have Hardhat installed, and it's trying to use Foundry. And that's probably because the skill says that Foundry is better than Hardhat, and it probably recommends Foundry. So, there's a couple things I could do. I could just revert. I could come back here and like revert my changes, and then ask again and say, "Hey, use Hardhat."
Or I could just like say, "Okay, well, you already kind of started, so." And say like, "I actually want to use Hardhat." Not Foundry. And let's see if it fixes it. It should delete the the Foundry and then kind of pick up where it left off, hopefully.
Let's see. Um but, what it's going to do is it's going to hopefully, yeah, get rid of this folder. It's going to probably come in here. It's kind of It's probably going to like get rid of this contract, write a new one. It's probably going to update the deploy script for us because if you have a different named contract, you need to update your deploy script cuz we actually deploy the maybe I can talk about that for a second.
Um Hardhat, the way that it works is you can uh get a list of deployers by calling this function and then you can deploy the contract based off its name. So, in this case, the contract name is your contract and we're using the deployer address, which comes from Hardhat, as the deployer and we're deploying the contract with this call right here. So, we say your contract is Hardhat ethers. Oh, sorry. No, that's the sorry, that's not This is the actual deploy.
So, here's where we actually deploy the contract right here. Await deploy. Um and so again, if we it's creating a new smart contract called auction, right? So, it just wrote a new smart contract and it says it's using Solidity 8.20.
That's good. It's using reentrancy guard, which is going to protect against like draining the contract. Uh it's like a kind of a security contract. Um By the way, that's just a useful thing. Like, you know, with Solidity, you can like import another contract as a kind of a added uh functionality.
And Scaffold-Eth has all the OpenZeppelin contracts installed. So, you can just import an OpenZeppelin contract and use that. And it looks like it's created an auction with a like a struct of data. It created um an event. When that happens, like commit this event.
It created uh an event for when the auction ends, when a bid is placed all sorts of error codes. Um it's a pretty good contract. It looks pretty good. And then it updated the deploy script. So, it got rid of the your contract sole and it wrote a new deployment script.
Okay. So, let's test it. Let's try to deploy uh the contract. Let's First of all, let's see if AI finished everything cuz it probably is still working on Let's see. All right, it's still working on the front end, maybe.
Let's see. Yeah. So, it's kind of like building out the the front end, but we can deploy the contract cuz it should work right now. So, let's come over here. So, how do we deploy a new contract?
We just do yarn deploy again. Um if you want to always force a new contract with scaffold ETH, you do {dash} {dash} reset. Okay? And that's going to basically take the new contract, make sure it's deployed, and it's going to give you a completely new address, right? So, here we have the new address for the contract, and it's called auction.
So, it did the right one. It was the new contract, and it also updated the TypeScript definitions for us. And so, it's done. Cool. So, it it wrote the the contract.
Now, let's refresh the app. And go to the root. Uh it didn't actually build any front end, though. Huh. Yeah, that looks That looks very ugly.
If it did anything, I don't think it did anything. Let me restart the the front end just to make sure. So, I'm going to come over here. I'm just going to stop the front end start it back up. And let's just make sure.
I don't know, maybe my prompt did not say to create a front end. Let's see. We can always just ask it to write one and see how it looks. Uh it can take a while for it to compile sometimes depending on your machine. Okay, there it goes.
Okay, so it didn't actually write like a front end for it. So, let's ask it to do that. Um can you write a fancy front end for the auction with all features. Okay, so let's see what it does. So, what it's going to probably do is it's going to come into this next JS folder, right?
Oh, it also wrote a test, which is kind of cool. So, it wrote a test for the smart contract as well. So, you can do like yarn test like this. And it will test the smart contract, which is quite useful. There it goes.
Passed. So, it wrote a test. It all passed. And then right now, it's going to come in here and start building out the app. So, it's going to edit the main page, it looks like.
All it did is just change the name to auction.sol, uh which is not very helpful at all. And why did it call it a Oh, cuz it's just the name of the file. Okay. Yeah, it did not do much.
So, now what it's going to do Wow, it actually created a hook, too. That's very strange as well. Oh, it's like using CoinGecko to get the price. Oh, it might need it. It might have needed like the price of a the Ethereum in a more resilient way or something.
So, it looked like it wrote uh a query to get the data from CoinGecko, which is interesting. Um and then it created Right now, it's creating an auction directory with the current auction, and it's kind of building that out. So, we'll let it sit. Um and I want to show a couple of things while we're waiting. When We're kind of getting to the point now where we can probably deploy the smart contract.
We haven't really tested it in the UI, but we will here in a little bit. Um I mentioned earlier, you don't want to use the private keys that come with Hardhat or Foundry cuz they're shared, right? We want to create a new one. So, all we need to actually do is do a yarn generate command. And what that will do is it will uh create a private key locally, and it will encrypt it with a password.
So, that's very important that you encrypt it with a password. Um I'm not going to do that just cuz it's a demo, but you should uh encrypt it with a password so that if anyone ever steals your laptop and you might have some real funds on there, you don't want them stolen, right? Um it saves the key to this package's hardhat folder as an an ENV file, an encrypted ENV. And it gives you the public key, right? So, then what you can do is just do yarn accounts.
And what it will do is ask you for the password. If you have one, you need to type it in. And it will give you this fancy little QR code. So, what I'm going to do now is just seeing the future, I'm going to fund this QR code with like a dollar because we're going to use this to deploy our smart contract to base, okay? So, I'm going to come here, scan it.
I'm going to send one Actually, not USDC. I need to send ETH. So, let's see. I'm going to send uh uh Ethereum. I don't have any ETH on base.
Wow. Uh Sorry, one second. All right, funds sent. Oh, here we go. Okay.
So, yeah. So, I'm scanning this. And I'm going to send just a dollar. You don't need You don't even need a dollar. You need like 10 cents.
I'll send 10 cents. Uh we're going to save that. Like, base is super cheap. So, I just sent 10 cents. And then I can wait just like a second and then do yarn account again.
And what it's going to do is go through and just check my balances. So, it's going to loop through and see what my balances are all on all the chains. And so, here it should have done base. Oh, there it goes. So, we have some balance on base, right?
Now, what I can do is all I have to do is do yarn deploy. I'm just going to deploy it. Let's just assume it works. Yarn deploy {dash} {dash} network base. So, it's going to take the smart contract, publish it to base.
Uh it's going to ask you for the private key. If you had a password on it, you hit enter to put the password in. That's going to not It didn't need to compile it cuz I already compiled it and it deployed it. So, it's super fast. You didn't need to do anything crazy.
And then the next step would be to verify it. So, you should always verify your contract if possible. It just makes things makes things easier. There's a command to do that with Scaffold ETH. You just do yarn verify {dash} {dash} network base.
Okay. Now, it's going to verify the contract. And it looks like it's done. So, let's see if it verified correctly first. So, what what the verification does is it just It sends um Oh, let me refresh my memory here.
So, the bike code The bike code lives on the blockchain, right? It's this like string of characters that it gets compiled down into. So, what you have to do is you have to send the ABI to Etherscan and make sure that when Or sorry, the source code. Make sure when it's compiled matches. So, Etherscan provides that as a service.
They say, "Okay, we can give me the bike code and then it verifies it." So, we know that it's verified cuz it came back successful. And so now if we go to the base scan for this address, let's just look at it real quick. That did not look good on the app by the way. It's like giant Scaffold ETH.
That doesn't look good. Okay, so if we come here and then address here. Okay, so now we see it's verified. So, we deployed our contract. Here it is.
Uh and it's deployed. Verified. Okay. And this does not look good. So, let's figure out why that's Uh yeah, that's really bad.
All right, so let's say let's switch the model here. This is a good example of like you should not use auto actually. Um Opus 4.6. Uh let's see like the front end is all huge icons.
Please fix this ASAP. All right. So, let's see if we can fix the front end. And while we're going, let's just see what Open Claw has done. I'm just kind of curious if it stuck.
Um how are you doing? It doesn't look like it actually responded to my last question or my last statement, which is quite interesting. It's a beefy machine, too. So, I don't I doubt that it's frozen, but I hope it just built everything, and it's like ready to test. And it'll be really interesting to compare the two, right?
Um well, we'll we'll we'll let that sit, though. Okay, what else I want to show real quick? Um Okay, so I showed you guys how to create a deployer, how to verify the contract, deploy the contract. Um you might want to like publish your front end um to like IPFS. There's also a command for that that you can just do yarn IPFS, and it will publish it for you uh and pin it.
And we have BuildGuild runs our own uh IPFS pinning service, so you'd it'll pin it, and it'll stay there. Um and we also let you do yarn vercel. So, we install the vercel uh CLI, and so you can authenticate with vercel and publish it to vercel. Uh that's particularly useful if you've got like API routes, something that you need to do like server-side, right? You probably want to use vercel.
Uh so, you can just do yarn vercel. And uh yeah, so let's take a look at the while we're waiting. Let's see what the the AI is doing. Kill old node, then start Hardhat chain. Why?
I don't know why it's doing that. Okay. Now, it's starting the front end. For some reason, it's Oh, it wanted me to start the restart the front end. So, it's starting it for me here.
Let's see if it's actually running now. Probably on a different port. Let's see. Yeah. So, what happened is uh I it wanted me to restart my web server.
Okay, let's let's this is kind of ridiculous. So, it's basically like compiling. Okay, now it's working. Okay, let's see. Is it 3,000?
Yeah, it doesn't look good. Oh, 3,001. Yeah, yeah, that should be right. Okay, let's try it again. So, it's putting up Oh, okay.
All right, that looks decent. It's a little bit better. Um So, what did it create? Let's see. So, first of all, what I want to show you is that we deployed the contract to base, right?
We need to update our front end to point to base. So, inside of this uh scaffold ETH, there is a scaffold config inside of the next JS folder, okay? So, you go to the next JS folder, you go here to scaffold config, here. And you'll see here that you get chains. whatever.
What we need to do is change this to base, okay? Uh if you deploy to Arbitrum, it would be Arbitrum or whatever. You could there's it's basically using VM, so whatever is the name in VM is what you use here. And what that's going to do is it's going to tell you that you're on the wrong network, right here. So, let's disconnect.
Let's connect. And then, what you'll notice is you don't get the burner wallet anymore because we don't want you to use a burner wallet on a production uh on mainnet, basically. So, now you need to connect with like Rainbow or your base account or wallet wallet connect or MetaMask. We'll use MetaMask here. You go connect.
Well, we We got 30 minutes. We're going to like I don't know what we're going to do with that time, but we got to figure it out. All right, so um okay, here we got the auction hall. I'm connected. I'm getting an error.
I don't know what This is the same error I was getting before. This is kind of weird. I'm not really sure what that is. It could be the internet connection. Refresh it.
Oh, okay. Yeah, I don't know. We'll look into that. But okay, so Either way, it looks like Did it fix everything? Yeah, it's still still changing some things.
That's okay. So, it's still kind of editing the front end. But what's important is we have the contract now it says base here. Yeah, it says base and as we're on the right network. We have this auction hall.
We have a create option, which I guess lets us create an auction. Uh and then a desk. I don't know what the desk is for. Makes me feel like I don't know what an auction is. I don't know what the desk is for in an auction, but uh okay, let's see.
So, your desk lets you list auctions where you have raised a paddle. Okay, so like if you're in the middle of like auctioning for something, then you can kind of go there. Um cool, let's try to create an auction. Well, actually, you know what let's do first is let's deploy this to um IPFS cuz we don't have any back end or anything. So, let's do yarn IPFS.
Oh, it's not done yet. Actually, we should wait. Let's see. Yeah, let's let it let it finish its thing here. Well, it's doing that, let me just go back here to the uh to say a couple things.
Um who here has done Speed Run Ethereum? Anybody here? All of it? Has anyone finished all of it? No?
Oh, yeah. All right, that's awesome though. I'm glad to see you guys using doing Speed Run Ethereum. It's still very, very relevant. Um Speed Run Ethereum is a a set of kind of like challenges that you go through that are very like specific to use cases on Ethereum, right?
And so these have evolved over the last, you know, four or five years into like very interesting topics that relate to, you know, when you're writing smart contracts, like what do you really need to build? So, there's a whole section on tokenization, like understanding what a token is, uh, things like ERC-721s and 1155s. You actually deploy your own NFT in this kind of challenge. It's very easy. Like you don't even need to be a programmer and you can do challenge zero.
So, like everyone in this room should at least do that challenge. Then you get more deeper down and you learn about like how do you get a bunch of people to like adversar- adversarially get involved in a smart contract? Like how do you get someone to put their money that they earned into a smart contract, right? And you start learning about staking and you start learning about, uh, incentive structures for like getting people to to put that that lock that value up, right? Then you start learning about like how do you issue tokens based off some other like kind of liquidity, right?
Like if you want to put someone to deposit Ethereum and get out a token and kind of keep this kind of like vending machine going and balanced. Um, and you you really do learn about what a token is on Ethereum. Like what is an ERC-20? How does the approve pattern work? Like some of these like very very important concepts that make Ethereum so powerful.
Then you learn about the dice game, which is like randomness and how you can't really rely on like randomness inside of the blockchain. A lot of times you need to like use a third-party uh, tool like Chainlink or you can maybe sometimes achieve a little bit of randomness, but it's gameable and you learn about how game theory works with randomness on the blockchain. Then you learn about how to build a DEX, right? And this is where you start thinking of like you learn about liquidity pools and how you need to like provide assets into a smart contract that will basically allow people to rebalance and pull assets in and out of a liquidity pool and inside of it decentralized exchange like Uniswap and whatnot. Then you learn about oracles.
Again, something like Chainlink where you can actually go outside and get some information and fetch it and bring it back into the smart contract and like why that's so important. Then you learn about over-collateralized lending like things like Aave. Like how do you how do you keep um a smart contract whole when you're like lending out assets inside of a smart contract, right? If you're going to allow someone to deposit ETH and then take out another token, how do you keep them from like, you know, their their second token being like de de monetized and like break the system and like you learn a lot about like the ability to do liquidations and and more more complex things when it comes to balancing value. And then that kind of falls over a little bit into the stablecoins lesson where we teach you about over-collateralized stablecoins and how we keep the value of a stablecoin stable, right?
And what the the mechanics are there. Prediction markets, which is really cool, and zk voting as well as zk voting. There's a lot of really cool content in here. So I recommend everybody goes through that. The other thing is we just did Synthesis Hackathon, which did anyone here do Synthesis Hackathon?
No? So it was an online hackathon and it was completely judged by AI agents, which I thought was pretty cool. All the sponsors had an individual AI agent and the AI agent was trained through a knowledge graph framework called Bonfires, which is really cool. You should check it out, which is a project from DSRI world. And we're They're going to be doing a second version of it.
We don't know exactly what it's called yet. This is a little bit of a sneak peek, so keep an eye out. If you're not following, um you know, the Build Guild and the Ethereum Twitter accounts, make sure you are cuz there's going to be another hackathon coming. Um and it should be really exciting, so check that as well. Okay, enough yapping.
Let's go back and see. Did it build it? It's done. Okay, let's go see how we're looking in here. So, I just I want to deploy this to show you guys the full thing.
We've kind of built the smart contract, we deployed it to base, we I hope it works. Um don't put a lot of money in it if you're out there in the in in plan to use it. But let's do yarn IPFS. And let's publish it. So, it's creating an optimized build right now, and then it's going to push it to the Build Guild IPFS server.
And then all of you guys are going to be able to use it if you want. Um I don't know what we're going to sell, but let's try to auction it. And then what we'll do is we'll just see if it Maybe we'll try to like poke around a little bit, see if like you can call the functions, and then we'll check on OpenClaw and see see what it did. Actually, while that's doing that, let's look at OpenClaw. Okay.
OpenClaw is not looking good right now. OpenClaw is not responding. Let's Let's restart OpenClaw interface. And while we're doing that, yes AU X. Crap.
OpenClaw. Is OpenClaw like dead right now? Oh, well. Okay. Uh are you alive?
I'm just curious. This This part of my demo could completely fail, by the way. I literally prepared for this part like the last minute here that I was here. Um but let's let's come back to it. All right, so did it deploy the front end?
Okay, it So, you might get these like interesting errors when you're trying to deploy to IPFS. Um So, what I would do is just grab all of this right here and just let cursor fix it. So, trying to pin to IPFS and this is what I'm getting. There's like some formatting stuff where it needs to be formatted in an exact way for it to work properly on IPFS. So, this kind of like warns you ahead of time.
So, it's kind of like a linting validation that happens. So, if you're not familiar with linting, it's like just making sure that the the syntax is correct. So, it does a check before it uploads it so that it doesn't yeah, waste space on the internet. Okay, so we'll let that sit and then let's see if OpenClaw is responding to me. Uh not looking good.
All right. Um I'm going to do OpenClaw gateway restart and hope that fixes this. But, it's not looking good. Are you alive? Oh, man.
So, see? Scaffold-eth and hands-on is the best way to go, guys. Don't use OpenClaw. I'm actually not a huge fan of OpenClaw myself, but it's okay. It's It's fun to like give it a bunch of stuff to do, but um it's a little complicated and it's very expensive, too.
So, it's going through and fixing all of those little syntax things um that AI just kind of maybe didn't write correctly. It could have been earlier I was using auto and it was just using like yeah, some kind of like older examples. Now, it looks good. And it even just it's testing to make sure that it works by doing a export. Um Really?
That's interesting. Okay. We're almost done here, guys. I guess while it's while it's doing that maybe we can answer some questions just like in the interim. Does anyone have a question?
There's a mic here, too. Hi. Hey. So, earlier you had an issue with the AI trying to configure the project with Foundry first while you wanted it to do it with Hardhat. And you said you can just ask it to fix the issue or to revert and do it all over again.
Why did you prefer to ask it to fix the issue and why you should we pick this choice over the other? That's a great question. Um I think it's probably faster to just let it kind of cuz it's already kind of planned out what it wants to do. So, you're kind of like switching the context, right? So, I think um it's just going to be a lot faster because if you revert all the changes and then say but make sure you use Hardhat, then it needs to go out and plan everything again.
In this case, it's just going to take the existing context and say, "Okay, well, we're going to rip out and change everything from Foundry to Hardhat." So, it doesn't really matter. I think it it's probably less expensive to do it the way I did it uh when it comes to like tokens. And uh it's just faster. Yeah.
Oh, sorry. Your The mic's not working. Is it on? Uh Oh, there you go.
Yes. And the quality will be the same in the end. Yeah, I think so. The only thing that would change the quality is if you change the model, right? Like if you were to like then if you were to be like So, that would be a different thing.
If you wanted to change the model to like 4.6, you would want to revert, maybe cuz you did it in an auto and then you wanted to restart from scratch because you don't want you want it to just wipe out all that content. Good question. Yeah, no problem. Any other question while we're waiting?
Otherwise, we'll keep going. No? Okay. Cool. Yeah, we we can keep this interactive.
So, we we definitely have 15 minutes. So, if anyone does have a question, please ask. Okay, so it's done now. Um I don't know if it actually deployed it and it didn't deploy it, so let's do it. So, let's come here.
So, we're doing yarn IPFS. That's going to like basically deploy type IPFS. This should fix it. I used Opus to like clean all that up. What's that?
And then while that's doing that, let me just double-check one more time. I'm going to like stop this, restart it, and I'm just going to say uh you were building me a auction house. I I actually was using this machine for like some Docker stuff, so I wonder if it's like having memory issues, but I don't know. We'll see. Uh okay, did it deploy?
Yeah, it deployed. So, it's going to deploy here and now the site is available right here. So, let's go to that. Here. There it is.
So, it's on IPFS. It is uh a truly decentralized application. Uh no one can stop it now. Um it lives on IPFS and it's smart contracts deployed. Let's try to use it.
Um So, what are we going to do here? Let's see. Uh we got a new lot. Create an auction. Does anyone know the difference between a lot and an auction?
Isn't a lot like a bunch auctions, maybe? Oh, it's item name. Okay, perfect. So, we'll say slices of pizza. Uh description, this is pizza.
How much is it? Uh it would be like Oh, we can switch it. Oh, it used this it used the components, which is great. So, we'll say it's like uh a penny or 5 cents. It lasts for an hour.
Connect your wallet. Oh, we don't have our wallet connected. Okay. Now, we can create it. So, it's going to cost me a penny.
And it was successful. Cool. So, now we have an auction. And if we go to the auction hall, there it is. Slice of pizza.
So, we created an auction. Um what else can we do here? Oh, just another item. So, it's very simple. It's just an auction.
So, now let's try to go in as another user. So, let's go to this. And let's go to a different browser here. And let me connect this wallet. Connect.
And go to the auction hall. Here it is. Slice of pizza. Oh, that's not good. Ah.
Mm. Yeah, so it it messed up. Something broke. It looks like it's trying to find some kind of um Yeah, it's maybe something more complex route. It probably would have been better to put it on Vercel.
Um Yeah. We could say I mean let's let's just see actually what AI says about it. Um I can't access this. Maybe it wants the URL. Oh, it's already there.
Okay. So, yeah, uh we could see if it fixes it. Um and then we could Uh, we could also show the Vercel flow cuz we have some time here. Um, which might be easier. Oh, we'll give it a second here.
I'm kind of curious if OpenCloud decided to like do anything. Huh. OpenCloud is like dead. It's literally like dead. Um, I'm just curious if I have like Uh, okay, let's try like I'm just curious if that's what's causing the issue, like Wait, is it docker rm?
That is docker rm. Oh, what? What's that? Oh. Yeah, that's right, isn't it?
Docker. There it goes. Okay, thank you. Let's see, docker ps. So, I'm just like killing these containers cuz these were like monster containers that maybe are causing Okay, this is done.
Still writing something still. Okay, um, are you alive? Yeah. So, this was a good demo of how bad OpenCloud Okay, so now it's going through and trying to update this stuff. We could try to deploy to Vercel so you guys can see that flow.
I personally use Vercel for a lot of my projects here. So, let's try that. Okay, let me minimize this. Okay, now it's testing it. Okay, what it changed with the old ID directory files create a new flat okay.
Use these search parameters instead of use params. Okay. So I think what we can do is just maybe try to redeploy it with IPFS. And I think it will replace the current let's actually let's let's test and see but I think it will replace the current pin. Um and like redeploy it.
Actually while we're waiting let's go ahead and just do that and meanwhile open class still dead. Uh let's see you on IPFS again. The cool thing is even if it does deploy a new version of the site it's the same smart contract so everything should work fine. Uh looks like it might have a Let's see if we can redo it one more time. While we're waiting any questions at all?
No? Okay. Sorry, can you ask there? Yeah, it just do do you use cursor to program or just talks to the AI cuz like personally I like to separate things so I usually have like cursor and VS code open hello and then I let the cursor just for AI stuff and whenever I really want to touch code I go back to cursor to VS code sorry. Good question.
I think I'm going to be perfectly honest with you. I don't use VS code anymore. I I used to do the same way. Um but I've just found that like it slows me down too much. Like AI is just too good now.
Like, I can really get a lot more done and the only time I ever really need to get into the code is I can just use cursor. I can just go into it and find it. I I don't I don't see a reason to separate it.
Yeah, with those later as like 4.6 models and open AI 5.4, I agree with you. I was like having discussions that I think this is the way you have to go, you know, like to uh embrace the limitations that AI has. Like, it might be a lesser code, you know, a mediocre sometimes, you know, we agree that we can come up like with a better solution, but I it might be better to work with the AI limitations cuz it will improve over time than trying to you know, lose time like trying to figure out the better abstraction cuz doesn't really matter once you can just rewrite your routine in a Exactly.
Yeah. Yeah, you can literally just be like, "Hey, take another Yeah. I think the most important thing right now for like, if you're building anything, is making things that are upgradeable. Like, thinking about upgrading upgradeable on your contracts because there's a good chance you're going to probably need to upgrade contracts, uh especially if you're like, I mean I don't know about the only exception I would say to what I would say is I probably still are reviewing all the Solidity code. I don't YOLO Solidity code that has like that I know is going to take a lot of money, at least.
Um but when it comes to the other stuff, yeah, just make things upgradeable. Use a lot of prompt engineering. Like, take a prompt and save it if you know that it's going to be useful in the in the future. Um like, I just generate all my docs now with like AI, and I just have this one prompt and I keep it. And every after every major feature, I just run that and it just updates everything, and then I kind of just review all the docs and say, "Yep, that's exactly what I wanted it to do."
There's a lot of like repetition and just like kind of pushing through these prompts that really helps massage it into like what it needs to be. I see. Yeah. Uh this failed again, but let's try one more time. Let's see.
Uh you know what I want to try to do is just yarn vercel. Uh so your yarn vercel colon yolo {dash} {dash} prod is the command. At least I think that's what it is. Let's see. Yep.
Do you want to set up and deploy this project? Yes. Uh specify is not valid. We're still logging. Oh, I'm not logged in.
Okay, so let's log in real quick. So, if you haven't logged in to vercel, you do vercel login. It's going to give you this URL here like this. You need to go to vercel. So, I need to go into like my vercel account.
And I need to log in. Allow. Logged me out cuz I'm in France. Okay, there we go. So, now I can do yarn vercel yolo prod.
Yes. So, we're going to use my projects. Yours will say your projects. Uh the scope link to existing scope? No.
Uh link to a different existing project? No. The new project. What's your project's name? ECC 26.
Where's it located? Right here. Do you want to modify settings? No. There it goes.
So, now it's deploying to vercel. Really easy. And hopefully this one does not have any errors. Let's find out. So, we can keep an eye on it.
We can go here to vercel.com. My projects, deployments. Building. And then we can come here.
Still building. We'll give it a sec. 4 minutes to go. Let's see if it deploys. It'd be nice to test it from another account and know that I can bid on it before the last 4 minutes, so let's see.
Any other questions while we wait? Yeah, question? Yeah, Mike. In which cases it's not a good idea to use Scaffold-Eth? When to not use Scaffold-Eth?
Um well, Scaffold-Eth has a lot of packages, so you know, a lot of times people want to kind of bootstrap something uh from scratch and use some kind of like additional SDKs. Like, if you're not using TypeScript, for sure, you're not going to want to use Scaffold-Eth cuz it's built on TypeScript. Um yeah, if you Yeah, if if you're an AI agent, you know, maybe you're not going to use Scaffold-Eth. You could just use these skills and just install VM and do everything yourself. But, I've a lot of times I'll just tell it to use Scaffold-Eth because I like the interface for the debugging contracts.
And I think I think these skills are going to tell it, "Hey, you should try to use Scaffold-Eth cuz it's already got a lot of helpers and stuff." But, you know, if you were using cursor or like cloud code and you didn't it didn't know about Scaffold-Eth, it would probably just build everything from scratch. And that's fine, too. But, if you're, you know, really wanting to learn and like get more involved and like understand what's going on, I think it's better to use Scaffold-Eth. Yeah.
Thank you. Yeah, no problem. Okay, this is still going. We got 4 more minutes of questions. Any other questions?
Uh what what about Oh, yeah, there we go. Cool. Could you tell uh more about your project One Claw? Yeah, sure. Yeah.
Uh so, One Claw is That's a great great question. Thank you. I appreciate that. So, One Claw is a secrets manager for AI agents. So, what it allows you to do is give your agent an API key that has policy enforcement for the secrets.
So, imagine you want them to have an API key or a password or a private key. Uh you can store that. It gets stored in a uh HSM module, which is a hardware security module on Google Cloud. Uh but on top of that, you can also just give the agent access to use the key, and we have a trusted execution environment where he can just pass in it can pass in the the JSON web token that it gets from validating the key, and it can use the private key to make a transaction inside of the trusted execution environment without ever even knowing the key. So, it's kind of like an intense abstraction kind of layer.
And then on top of that, you can also use it as an LLM proxy for making sure that your AI agent is not doing prompt injection, code injection, social engineering, any of these like attack vectors for LLM. Um and secret redaction, because we know what's in the vault, we scan to make sure that it's not sending your secrets to the LLM provider. So, it's kind of like a middleware for LLM. Uh so, yeah, please try it out. It's there's a free tier, and uh yeah.
So, let's see. We have it's still building. But, yeah, it's very, very close. I was kind of hoping it would go. Got 2 minutes.
I don't think it's going to make it. Uh for 1 Cloud 2, by the way, there is a um an SDK and a CLI, and uh there is an MCP server. We host an MCP server that you can use for the secrets management, or you can run your own. It's all open source. Uh the GitHub is really, really useful.
Um there's a bunch of different projects in here. But, what is really, really cool is this 1 Cloud examples folder. You guys could literally fork this, um and there's a bunch of examples of how you could store your secrets and build a AI agent using 1 Cloud as well. So. All right, it's not built It's not finished building.
It's so close. But, thank you so much. I really appreciate you guys, and I hope you have a good Yeah. Yeah. What are you sort of looking for in terms of what you uh hope to see uh some of the builders develop on one claw and what are some of the projects that you are kind of thinking about that would that we should be thinking about.
Yeah, so I'm excited to see XRO2 implementations, uh agent swarms, like multiple amounts of agents coercing and like doing transactions, um and just in general agentic security stuff, like visibility, interesting like ways you can like kind of yeah, show AI from a a top level, which I think would be cool as well. AI stuff. Thank you so much, guys. Appreciate it.
Automatic transcript — names and jargon may be misspelled.