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

Loading player…

Build 8004 Agents with Oasis I Bernhard Ruf

ETHGlobalTue, Dec 9, 2025, 12:00 AM

Join Bernhard Ruf for a workshop titled "Build 8004 Agents with Oasis", featured at ETHGlobal Buenos Aires 2025! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 🇦🇷 *ETHGlobal Buenos Aires* This workshop is specifically for ETHGlobal Buenos Aires, a 3-day hackathon held November 21-23 at the Centro de Convenciones Buenos Aires, 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 New Delhi 2025 playlist here: https://www.youtube.com/playlist?list=PLXzKMXK2aHh76O7FfAHPJkZcqTIfYpoyf _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ✅ *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

I'm a burn from Oasis. Um, and I will present you a workshop about Oasis and building 8004 agent with Oasis. Uh, who here is already familiar with Oasis? Who is familiar with 8004? Okay, less people.

Um, yeah. Uh, I will quickly recap what is Oasis, um, Sapphire and Ruffle. I will talk about 8004 quickly to um, have L1 on board. Then about how you can uh, use 8004 with Oasis. Uh we have a special startup image which will make it very easy to actually use 8004 uh with raffle.

Um we have built an uh validator agent Twitter which I will quickly explain and then uh go on like what you can build with that um like also like for your hacker. So quick to the Oasis architecture. We are own layer one. Uh we have a small consensus layer uh for for staking and the consensus where we have then multiple compute layers on top of it. Uh the most interesting part what we also mostly use uh is the sapphire EVM and raffle apps which are built on top of this.

Uh what do UV use? Uh as what what is special about our blockchain? Uh we run actually our nodes in TEES means trusted execution environments. Um this will bring you especially uh confidentiality and integrity which is uh important for uh verifiable code and for verifiable and trustless agents. What is Oasis Sapphire?

Um or as a Sapphire is a confidential EVM. So you can build confidential smart contracts. Uh what you can do for example build on adtec you can build with normal solidity uh on Oasis Sapphire and uh that's what brings it for you is like that you have an encrypted uh storage um for the smart contracts you have encrypted transactions uh where you can use our libraries for that. And we have special pre-ompiles which le which leverage uh our uh tees to have randomness on chain. You can create private keys with that.

You have encryption and decryption and you can also sign onchain. Um if you want to know more about Sapphire itself like if you want to build like uh private smart contracts I recommend you also look into um my other workshops I did in Khan or like um we have other workshops which go more in depth about Sapphire. Um I will not go too deep uh here in this workshop into that because yeah Sephora itself is um like you have be only on the Sephora blockchain but like if you want to build crosschain stuff or like more stuff which is faster not limited only to blockchain data uh you want to use maybe raffle. Ruffle is our um runtime offchain logic which means like you have valid verifiable code which runs uh in TEES. Uh basically yeah it's it's a framework uh where you can run docker like containers or also single executable apps um uh in a in a TE.

This gives you um privacy integrity through Intel SGX and TDX and a full audible history of their attestations. Um it is also kind of uncensorable registration because like uh you can just uh register onchain and pay also onchain for your nodes. It means like you don't need a credit card. You don't need to go to some KYC and means even like u an agent or like your app can actually pay itself for running We have additionally in raw we have a key manager key management service uh for um storing your app secrets also for secure um generating deriving keys within the tees. This is especially helpful for agents uh where you can actually create agent keys for it.

Um and everything from raffle is actually integrated with Oasis Sapphire. That means like you can leverage uh the smart contracts from Sapphire the privacy with raffle. There is a special also um pre-ompile where you can or sub call where you can verify that some calls came from a specific raffle app. Uh but additionally also like you can use it for for lightweight storage for maybe like more heavy storage where you want to have a database like you want to integrate with other services but like for for lightweight storage you can have an private storage onchain. How does this look like more in a in a easier uh way in in a diagram like you have on the right side you see the Sephora EVM chain.

So this is this is like an other normal chain. And then you have the ruffle nodes. Uh ruffle nodes are additional um nodes uh which run right um which run alongside the sapphire nodes and they have a light client. They have addestations automatically which get published on sapphire. Um and they're running containers inside this raffle nodes like these are your containers like uh you run your docker container in this raw node and with that like it can also communicate with the web two services you can make um calls to llms you can make calls to any API um and like is very flexible with that.

So like you can really build you are not limited to blockchain data you um can build everything a quick way for people who never like used Ruffle. Um there's like kind of five simple steps but like the basic what you should know you should have your app running in a Docker container. Uh you should have this Docker container publicly available in a container registry and you need some test tokens on test net to actually deploy this and then like the best way is to use our CLI. Okay, the CLI is available via brew. So like on Mac or like Linux, you can easily install our CLI.

Um you will need to create an account there or better uh import a metam mask account directly in the CLI and then you will initialize your ruffle project which will gives you um a raffle yaml file which has then all the data in for for the raffle deployment. Uh you will register this app onchain with the create command. For that you need um 100 test token. That's we have our faucet. It should give you enough test token to actually do that.

Um then you actually build the the bundle from from your docker container and give it actually an enclave ID. This is the the identifier for the um that this is uh verifiable later. You put this enclave ID uh and any secrets via the update command onchain and then at the end you actually deploy the app onchain and you deploy this uh we have a marketplace kind of thing where we have different providers. Uh the main provider is our default provider which is run by us uh and you pay kind of a a rental fee like you would do with other kind of cloud uh uh services. Now to uh the second part of the workshop here is like how to combine 8004 with raffle oracle with Oasis.

Um for people who are not familiar with the 8004 um this is a new standard for uh registries for trustless agents. There are three different uh registries as you can see on the top right. There's an identity registry, a reputation registry, and a validation registry. The identity registry is kind of an NFT registry where you register your agent and you get the agent ID and you have like reputation and validation registries which enhance like for uh the thing for trustlessness. Uh and like as you register your agent as an NFT, you have like a agent card to it.

Uh which will be put in the resource URL and like there are free providers like Filecon and IPFS lets you actually and Pinata 2 lets you host like the agent card actually for free. Um so yeah, use this. The goal of 8004 is that wallets, UIs and other agents can discover, compare and like also read how trustworthy are other agents. As I said like three registries we will actually use the identity registry and the validation registry um going forward. Uh the reputation registry I will let out for the now.

Uh but yeah for hacking um you can easily kind of integrate that. So why would you you would use 8004 with Oasis? Um, if you just use 8004 and let your agent run on an AWS or like any other background like service, cloud service, you users can uh not be sure that actually the code like it says is it runs actually runs on the servers. And like with the Oasis raffle, you have a way to have a verifiable way to run code. So like users can check that actually the code you claim is is running is is running on the server.

Um so yeah going back like raffle gives you a confidential scalable verifiable execution in tees. Um the ERC804 gives you the registry for discoverability and like um validation and together the raw app runs on Sapphire. So like you your apps are like and at the stations are live on sapphire. The registries can be on every chain and we have invalidator agents which actually bridges the two together means uh it will read the meta data from sapphire and actually pushes them then into the validation registry where then people can check um if this was all verified. The result is that you have trusters agents which can create their own keys because like you can create also in our raffle you can create keys via TE randomness and can validate and make them discoverable via the standard registry we built to make everything even easier.

We have built up a startup image and like the startup image is a kind of sidecar which you can use in your compose uh YAML file. So like uh this you have your normal uh service and then you also use our image on the side of it. What does the image do? it on start collects um metadata and fetches the app ID to revive an extra agent key and like waits then uh that this agent key actually gets funded. Um so like the way is that the uh agent itself can register like itself.

So makes it even more trustless that there's not an external owner but like only the app itself owns its own NFT. And we use uh the agent zero SDK from consensus uh to mint this identity uh registry NFT. At the same time, it will also restore the agent ID back in the um raffle meta data means that it is easier uh find finds it again if the app restarts that it doesn't have to register re-register again. And the final step of the startup image is that it makes automatically a validation request. So like it requests itself that it gets validated that all atestations are on chain and you can be sure uh that the image which uh set to be run is really running.

How does the basic validation flow for the validator agent looks like? As said before uh you will create your raw app then it will uh be registered in the identity registry. If you use our startup image this will uh be done automatically. Um then your app should store the public agent key also in the agent registry and also publish that in the metadata from your roof app. And at the end you would do a validation request as it is done with our startup image.

And then there's a another agent which is not the same as your uh raw agent which will fetch automatically the metadata and uh validates that um your key and the metadata on chain are correct and will then itself push to the validation registry a validation response. And like this flow is actually really abstracted away with our startup image. And like yeah with that you can make it very easy. You don't need to actually implement the agent zero SDK yourself. Uh you can just um use our sidecar and it will automatically register that and we'll make a validation.

Obviously if you want to do more like with a reputation registry or make more validation you would put this on top of our image. Um what does the validator agent do? I said a bit before um at the end like it is another agent uh which has its own agent key. So we can also like validate like the agent signs it correctly. Um at the end it just loops over validation requests on the validation registry.

um makes the calls to queries the meta data of the raffle app and checks also that the um agent is correctly registered in the identity registry and puts then response back uh to the validation registry. Um at the moment we have just a very simple validation means the basic validation is that uh the app is running and is not expired means like you can actually in ruffle you can kind of create your app but like as it is like like a cloud you have to always pay to keep it running and if it runs out um the validation logic will also say like it will not run anymore. One thing you also have to think about like this is like the validation report is done um on startup. It means like if the app is not running anymore like there's at the moment not the constant validation requests done like this is at the moment only on the startup. If you want to maybe have like for every request validation request, you would need to build this on top of what you already provide.

Like if you want to know that uh if you make if you build your agent and he does some uh scoring on some tokens like a um a research or something and you want to know like that this research was really done in a TE, you really want to kind of implement also that after every request uh it will do again make a validation um request. Um yeah to the hackathon ideas as I said like uh you want to like extend the validator, you want to maybe integrate the reputation registry for feedback. Uh you want to build direct dashboards and marketplaces for special um 804 plus Oasis agents. You want to do um X42 integrations. We have also demo apps for that actually.

And you want especially also do multi-chain agents and crosschain validation like uh as people also asked before like Oasis has a own blockchain with Oasis Sapphire which is special uh for um for privacy apps but like with Oasis Ruffle you can really do build multi-chain apps you can build multi-chain wallets as you are not bound to only write to Sapphire but you can make RPC calls or actually build light clients and call use light clients to actually call crosschain stuff and yeah quick to our oss track um I um presented here a way for 8004 agents but this is not the track that you have to build 8004 agents we're still looking for every privacy app crosschain apps which all use our Oasis stack means like use the Oasis raffle or Asus Sapphire and like we're looking for privacy apps agents crosschain stuff. Um please uh the only thing is like please come and present at our booth after you um hacked. Uh this will help especially visibility to see what you have built. And yeah, I'm nearly done with the 20 minutes. Uh but uh yeah, here's a maybe cool quick QR code which uh will actually direct you to our cheat sheet where we have more information on it.

And then maybe there's time for one or two questions. What?

Okay. Um, you you know I I've used raffle before but I don't remember. Can I run uh like TypeScript code or it has to be Python only?

You can run any Docker container you want. uh we have some special libraries to make it easier to call uh some ruffle functions for Python and Typescript at the moment but at the end you can you can run uh whatever code runs in a docker you can run on a ruffle

perfect thank you

and yeah for for other people who hacked with us before like it should really be more stable uh you also have now uh direct proxies like before like maybe had some problems with with port opening that you have access to your app. Uh but this should be now automatically done should be also visible in DC.

Okay, I think there's no other question. Um yeah, thanks for coming and like come to our booth to get your crocs and uh more help if you want.

Automatic transcript — names and jargon may be misspelled.