Artificial Superintelligence Alliance Workshop I Kshipra Dhame
ETHGlobal·Sun, Nov 9, 2025, 12:00 AM
Kshipra (Fetch.ai, ASI Alliance) shows how to build and ship agents discoverable via Agentverse and operable through ASI-1 using the uAgents Python SDK. She demos hosted, local + mailbox agents, the Agent Chat Protocol (v0.3.0), discovery via ASI-1, and adapters for LangChain/CrewAI/MCP. She also integrates SingularityNET Meta (knowledge graphs) for smarter agents and shares hackathon tips, docs, and free ASI-1/Agentverse premium codes. 00:09 Intro & workshop plan 01:44 What is ASI Alliance 02:16 What are AI agents (examples) 04:24 Fetch.ai stack: uAgents, Agentverse, ASI-1 06:30 Adapters (LangChain/CrewAI/MCP/A2A) 07:20 Build first hosted uAgent; agent address, handlers 09:41 Agent README, ranking & discovery 11:02 ASI-1 search→agent call demo (weather) 13:01 Chat Protocol: data models, handlers, ack 14:55 Minimal chat agent walkthrough; v0.3.0 manifest 18:59 Test via “Chat with agent” & ASI-1 @address 19:22 SingularityNET Meta overview (atoms, pattern matching) 21:08 Fetch + Meta medical RAG example (intent → KG query) 25:13 Key docs: creation, REST endpoints, chat protocol, images 26:36 Agentverse MCP for “vibe coding” 27:41 Hack tips: more chat-enabled agents, use ASI-1 + Meta, strong README, repo, free credits codes, support channels _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 💻 ETHOnline 2025 This workshop is specifically for ETHOnline 2025, a 21-day hackathon held October 10 - 31, 2025, 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! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ✅ Follow ASI X: https://x.com/ASI_Alliance ✅ 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 belong to the ASI alliance uh majorly as a part of fetch AAI and I'm a senior devril with fetch AAI and most of my uh task is to basically help hackers during the hackathon create the hack packs and generally create integrations for fetch AI and ASI. So let's get to it. So just a general overview of what the workshop looks like here today. We would be doing a quick introduction to ASI. Then we will check out what REI agents.
Then I will walk you through the Fetch AI text stack. How agent search and discovery works within the Fetch AI ecosystem. Then we'll get uh on doing some hands-on when where we'll create our first AI agent on agents. Then I will walk you through chat protocol. Remember guys, chat protocol is very important as this is one of the major uh judging criterias for the hackathon and we expect all of the agents to have the chat protocol enabled with it.
Next, I will give you a quick overview of singularity net and then I will also show you an integration between fetchai and singularity net. So we are expecting that you use both the text stacks uh during the hackathon and finally I will point you to some of the most important resources and also uh give you some tricks and tips to win the hackathon. So let's get started. So first of all what is artificial super intelligence alliance all about? So in a nutshell what we're trying to do here is we are trying to decentralize the entire AI ecosystem.
So for that singularity net fetch AI and Kudos have joined hands and the main motive is to fight against the behemoths in the AI industry. So during this hackathon particularly you will be uh using the singularity net text stack and the fetch AI text stack. So first and foremost what are AI agents? So some of you might already know about them but for those of you who are new uh to AI agents generally. So you can think of uh AI agents as pieces of software or pieces of code that can understand a goal, make decisions and take actions on your behalf or the user's behalf.
Now to give you a quick relatable example here is let's say I have a flight booking AI agent. So a user might just come in and say, "Hey, I want to book in flights from London to San Francisco on so and so date and I want to get the cheapest flights or I want to get the best deal on my flights." Now the task for the AI agent here is to understand the motive of the user. So the AI agent should be smart enough to do that and then basically it should go onto the web or whatever API that's that it's using in the background get all of the agents then try to understand which is the best that matches the user's preference and finally go ahead and book uh the flight for the user. So that's a complete AI agent.
But during the hackathon, you might also create some uh agents that might not do something as complicated as this, but instead they could be just calling an API in the background to fetch some information and then take action based on that information. Or it you probably could be uh using a machine learning model uh which is probably doing some predictive analytics and then you're coming to a decision or generally let's say uh for instance uh you have this uh model trained for detecting blood cancer. So if somebody is passing in some reports uh to the agent then the agent goes and verifies uh if the person probably has blood cancer or not. So they're using a machine learning model in the background to do that. So that could also be an example of an agent and then it finally processes it and gives back a response to the user.
Now moving on, what is fetch AI all about? So you can think of fetch AI as the gateway to the Asianic economy and for that we have three main pillars which is U Asians, agent wars and ASI1. So these three components basically help you build agents, discover agents and you can also transact using these agents. So to build your agents you would be using the u agents library or the u agents package. This is a python uh package and it's uh pretty framework agnostic and then you have agent wars.
So all of the agents that you build using u agents you can they are automatically in a way registered on agent wars. So you can think of agent wars as an open marketplace for AI agents or as a directory where you can see a lot of AI agents listed. So at this point in time I believe we have around 2 and a half million agents already listed on agent tours. And lastly it's ASI1. So ASI1 is an LLM but this is no ordinary LLM, right?
So at most of the LLMs out there can just answer some basic uh queries related to your task but this LLM can actually go and connect with all of the agents that are there on agent wars. So for instance um if you ask if you ask some other LLM to generate an image it will go ahead and just generate one image for you. But with ASI1 you can ask three different agents to create uh an image for the same prompt. So let's say if you were uh asking about generating an image of a red car for example. So you can ask ASI1 to actually connect with three different agents and then you could compare the responses and choose which one's the best for you.
Now how does this how are all of the three components uh connected with each other? So like I mentioned you can build your agents using u agents but let's say there are some of you who are already u who have already probably worked with lang chain previously or crew AI or MCPS or A2A in the past. In that case what you can do is uh you can still create a lang chain agent or a crew AI agent and we have U agent adapters. So you can use these adapters to register your lang chain or your Q crew AI agents onto Asian tours. So once your agents are registered on Asian tours, you also have to make sure that they have the chat protocol so that they can actually be discovered through ASI1.
So when a user passes in a query for instance when the user says can you generate me an image of or can you analyze this blood report of and then ASI1 will actually go and look for agents that have the chat protocol enabled with it and then go ahead communicate with it and bring back a response to you. So this is how the entire fetch ecosystem actually functions. Now let's get to the interesting part. So I'm try I'm going to try and keep it a bit quick just in the interest of time we have quite a few things to cover. So building your first u agent.
So you can go ahead and just log to agentw. So if you just do agentw.ai uh now in my case I'm already logged into Asians but you can simply log into agents using your Gmail account. And if you click on launch an agent and select create a agent hosted agent. Uh let's just say I'm going to create my first agent and probably not change the name of it which is a bad thing to do but yeah so I have this agent here and I will just explain to you some key bits.
So for instance uh whenever you're creating an agent on agent words it would probably be uh the one with u agents. So from u agents I'm importing two classes which is agent and context. Uh so I'm just initializing the agent as a object at this point and then so what I'm doing is on startup all that I want to do is say hello I'm an agent and my address is so remember within the fetch ecosystem every agent will have its own address. Now this address is very important for communication because these agents can also communicate with each other. So this is where the agent address is really important and it's also important when the query is to be sent from ASI1 to one of the agents on agents.
So yeah and on the agent there are different handlers. So over here we see the onvent handler but in there are a few more like on message uh on rest guest on rest get on rest post and so on. So now if I quickly start this agent. Yeah. So I can check the agent logs and it says hello, I'm an agent and my address is.
So that's all that I'm expecting this agent to do uh when it starts. But obviously you can have your own custom logic uh for the agent when it starts or when it receives a message. So on message is basically used for dealing with messages. I will cover that bit as well. So yeah, there are quite a few interesting things here.
So there is agent readme. Again remember that the agent readme is very very crucial and very very important especially uh in terms of when you want your agent to be discovered by ASI1. So ASI1 uh decides to choose the right agent based on what's mentioned in the agent's readme. So you have to be as descriptive as possible. So in this case you can probably mention uh what your agent exactly does, what are the features, uh what are some sample prompts that you can pass to the agent.
I will show you some readmes in a bit. And then there is the ratings and analytics tab. So as in when you go on adding more information the ratings and analytics associated with your agent will go up which means your agent will become even more discoverable u on ASI1 and then there is SEO interactions and so on. So you guys can explore that bit. Now if I were to show you an example before I move ahead with chat protocol I will just go to ASI1.
So again in ASI1 as well you can login using your Gmail account. Now for example I want to get uh what's the weather like in London today. And if you see here, I'm going to toggle the Asian search on and toggle off the web search. So, what this will do is uh it will actually go to Asian tours and it will try to find for a weather agent that can actually give me the current weather in London. Now, again, this is a very simple example, but you can think of more complicated stuff that you want to do with your agent.
This is just to show you a demonstration of how it's connected uh from ASI1 to agents. So it will do some reasoning uh in the background and then you see that it says I can leverage Fetch AI's agent tours to find a specialized agent that can provide real-time weather data and it has found quite a few weather agents. It'll probably go ahead and pick the first agent. So I'm just going to show you what this agent looks like. So you can see this is the weather agent and it also has the chat protocol.
So this is the key bit. Uh every agent that you guys create should have the Asian chat protocol enabled with it. And the minute you have the Asian chat protocol, you'll also see this chat with Asian button generally. So yeah, so it says chilly and damp in London today. Current temperature is and feels like.
So you get the idea, right? You send in the query, it goes to agent tours, it looks up the agent, then it actually goes in the background, communicates with the agent and brings back the response. So this is how the entire chat protocol uh works generally. So this is ASI1. So ASI1 will send in a query uh as a chat message.
I think I'll probably show you an example of this just so you get a better understanding. So this is building an agent with chat protocol. So if you just go to the patchai website and if you go to events and in events if you go to the ETH online 2025 hackpack you will actually see a pretty simple example of chat protocol. So if you guys just understand this example, you can pretty much build any agent with chat protocol for any use case that you want to. So I'll just go back to agents quickly.
Click on launch an agent. Create a agent hosted agent. I'm just going to select a blank agent for now. And let's call this as ETH chat protocol agent. Go ahead create my agent.
And now I'll just paste it in here. So yeah, now there are quite a few things here. So if you see these are some of the common imports. Uh but this is the main part. So for your agents to speak the chat protocol, you need to uh basically import these data models such as chat acknowledgement, chat message, end session, start session, etc.
from U agent score. Okay. And then you go ahead and you initialize your agent. Okay. Next, you have to initialize the chat protocol.
So you say chat proto equals to protocol. So what is a protocol? You can think of protocol as a predefined set of rules for communication between the agent. So two agents know that which is the language that the other agent can talk. For example, if I was talking in English and uh some of you for instance did not know English, we wouldn't be able to communicate, right?
So both parties need to speak in English to understand each other. So similarly, both agents need to have the same protocol so that they can communicate with each other. This is just a helper function here for creating the text chat message. So yeah, this is the one that I was talking about the onssage handler. So just like the onevent handler, this is the onssage handler.
So when basically an agent receives a message, uh it is dealt with using the onssage handler. So it will check if it is a chat message. So if it's a chat message, uh first things first, it will probably do some logging and for every chat message that's received by an agent, it's a rule to send back the chat acknowledgement message. So you can think of this as a handshake uh just informing the other agent hey I've received your message. So that's the reason why we send back a chat acknowledgement message and then comes in the rest of the bit.
So if you see u from the message content first I will check if it is just a start session message. So once uh you start communicating the first message that's generally sent out is a start session content message and then the actual text. So in my case when I sent what's the weather like in London uh in the background what happened was it first started a session with me like with my agent and then it actually sent the text message which was what's the weather like in London. So at this point it received the text content and then you can this is the place where you can add your custom logic right. So if you want to have agent, for example, if you were creating an agent for weather, you would probably have that custom logic in here.
Or if you were calling a machine learning model in the background, this is where you would add that logic. And then while sending the final response back, you just create a text chat and you send back whatever response you want to send back using await ctx. So here I'm using the sender's address. So the sender's address is stored by default. So you can just say await ctx.
end and then that's the response. And these are just some bits to handle end session content. And again when you're sending a chat message this agent will also receive a chat acknowledgement message which it needs to deal with. So you have to make sure that the there is a chat acknowledgement handler as well in your agent and you can probably log in uh log the message and finally when you say Asian.incclude chat proto and when you set publish manifest equals true that's when you're announcing that this agent can actually speak the chat protocol.
So if I just go ahead and if I start this agent. So in a couple of seconds the chat protocol should reflect here. Okay, let me see. Okay, there looks like there's a slight error here. Let me quickly fix it.
Okay. Yeah, I think we should be good. And now if I go back, we can see that the Asian chat protocol has been enabled. You have to make sure that the version is 0.3.
0. So if you're doing all the right things, this should pop up by default. And when I just say chat with agent. So if I'm if I just want to test the agent generally, I can just say chat with agent and I probably say hello. And this agent is not doing anything much.
So it's just going to say hello from agent. So yeah, and if you let's say wanted to test it with ASI1, you can copy the agent's address and in here uh you can just say add the rate and then paste your agents address and send in the query. So that's sort of the idea and just in the interest of time I will move on to overview of singularity net meta. So singularity is another partner within the ASI alliance. So we first saw about fetchai and fetchi stack.
Now we're talking about singularity and singularity nets meta. So meta type talk is a multiaradigm language for declarative and functional computations over knowledge graphs developed by singularity. So if you want your agents to be a bit more smarter or if you want to connect your agents to knowledge graphs where they store things in the me in the memory then you can definitely use meta and I highly recommend you use uh meta in your solutions because this will give you some extra brownie points. So basically it has its own way of storing information. So it stores information in the form of atoms and atom spaces and then there is just like SQL there is a way to query this knowledge graph as well.
So it uses pattern matching for that and I will just probably show you a quick example of that as well. So here I have the you guys can also check this uh in the ETH global u ASI challenge statement. So all of these resources are listed here or also on the fetch AI hackpack. So if you go to hackpack you would pretty much find all of these examples. So the one that I'm talking about is right here.
And there is also a pretty detailed workshop uh which you guys can watch later where I've gone through all of these things in much more depth. So right now so this is basically an example which so shows the integration between fetch and singularity. So right now I have already cloned the repo on my end. Uh so you guys already know what a fetch AI u agent looks like. So I will probably keep it short on that.
And this is how the meta's uh knowledge graph would look like. So you would have an atom space and in here I've just created a medical rag. So the way I have stored information here is let's say if someone's symptom is fever then they most likely have flu. If someone has cough if basically the symptom is cough then they have flu. Similarly, what I have done is let's say if someone has flu, then what's the most likely treatment that they can they should take?
So, it's rest, fluids, antiviral drugs. And similarly for side effects and some FAQs. So, you can make this as complicated as you want, but this is just an example to show you how the meta knowledge graph looks like. And then finally what happens is uh this is again an agent to a chat protocol and in here like I mentioned so once you get the text content you process the query. So this is where you exactly add your custom logic right.
So what process query in our case is doing is first it needs to understand the intent. So if I go to the process query function um sorry my bad. Yeah. So when I go to the process query function it will first try to get the intent if somebody is looking for medication or if they're just trying to understand what they're suffering with. So that's what it will do and it has it is using the ASI1 LLM to do the intent classification generally and once it does that it sort of does pattern matching to query the knowledge base that we just saw here in knowledge.
py. So this is how somebody would try to query it right. So let's say if I said I have fever so it will try to match this. So if I have fever, what could be the disease? And then it'll output the disease.
So let me just quickly run this for you. Uh just a quick one. Yeah, I will create the agent. Uh now guys, over here I'm creating a local agent. So whenever I create a local agent, I need to basically connect it via mailbox.
Uh in my case it's already connected because I was just testing it some time back. Now let's say I say something like uh I'm having fever today. So it received the query. Now it will try and understand the symptom and the keyword. So the it's basically it first understood the intent.
So I passed in a symptom and the intent uh the keyword was fever. So what it will do is it will try to match it against this knowledge base. So if I'm saying I have fever, it's most likely going to say I have flu and then it will probably go ahead and suggest me these treatments. So yeah, it's and it's just fine-tuned with the help of an LLM. But yeah, it says I'm sorry to hear you're not feeling well.
Make sure you to rest, drink plenty of fluids and consider consulting a doctor. So if you see here, I've actually said rest, fluids and antiviral drugs are some of the treatments that one can take. So it has actually gone to the knowledge base and uh given us that answer. So this is how you can in a nutshell try and customize it for whatever solution you're trying to build during the hackathon. And finally uh pointing you to one of the most important resources.
What you can do is just go to the innovation lab resources or even if you want you could start off from this link here. So in here you can read more about U Asian creation the different kinds of agents. So we saw hosted agents and I also showed you in a way the mailbox agent but you can explore this more by yourself. You can check out uh let's say if you want to build custom UIs then you can probably want to you probably want to check how to add rest endpoint so you can make post and get requests to your agent. You can also read more about the Asian chat protocol we have a bunch of uh examples here uh on that as well.
So if you see the chat protocol has creating ASI1 compatible agents. Now if you want to pass in images to your agent through chat protocol, how would you do it? So this is just an example about that. And just on a side note, uh just so you guys know, we also have recently launched the Asian Wars MCP. So for those of you who are very familiar with WIP coding and you probably want to then explore the agents MCP.
So if you just go to docs.asentws.ai AI and jump into agent war MCP. You should be you can just go over this guide and you should be able to set up the agent war MCP. So you can just wipe code and deploy your agents on agent wars.
Yeah, I think I have mostly covered all of it and yeah, so that was and of course you can also refer to this complete example which shows how to connect your custom front end if you want to build one. But remember guys, the idea is to have all of the agents with chat protocol and the agent should be able to uh should be able to be discovered by ASI1. So you do not have to have to have a custom front end. You just need your agents to be discovered through ASI1. And finally coming to some tips and tricks to win the hackathon.
So the more agents you build, the more the greater the chance you have of winning. So the more agents uh h have the chat protocol and they're discoverable through ASI1, the greater your chances of winning. The more things you integrate such as you use the ASI1 LLM for reasoning thinking in your agent that increases your chances of winning. You use singularity uh as a knowledge graph that adds up to you basically after that point you have to create a GitHub repo for your submission with a well-crafted readme. Uh ba try and add in as much information as you can that we would need to run your agents.
So let's say if you've created some hosted agents, you guys still need to add that agent code in a GitHub repo and submit that repo and also mention the agent addresses on the readme just so we know. And if you you have to add some sample queries that we can just go ahead and ask the agent. Actually, let me real quick uh show you a sample readme. So this is just one of my agents. So this is an anime generation agent.
So you can just be as descriptive as possible about the agent, the features, what all can it do and then you should list some example prompts and you should also give out some example responses that this agent will probably give. So in my case it was generating images that's why I did not give the response but let's say in your case if it's generating text then it should probably print that text. So yeah, remember guys on agent wars you do not have to worry about the infrastructure generally right so once you host your agent and you start your agent it it's just basically a life so do try and use that and another quick note is so what you can do is for this particular hackathon we've actually uh unlocked one month free access to ASI 1 pro and wars premium so all you have to do is copy in these codes. Uh I think there is probably a video linked with it. So you can go ahead watch this video and basically get extra credits on ASI1 as well as agent wars and start building more agents.
And again if you guys have any questions or any queries you can simply uh come in to our discord or if you want to you can drop in questions in the ETH u global discord. We are active there.
Automatic transcript — names and jargon may be misspelled.