We are proud to be the
Unlock One Month Free access to ASI:One Pro and Agentverse Premium
October 6, 2025
Online
1st Prize
5000 USDC
2nd Prize
4000 USDC
3rd Prize
3500 USDC
4th Prize
3000 USDC
5th Prize
2000 USDC
6th Prize
1500USDC
7th Prize
1000USDC
Fetch.ai is your gateway to the agentic economy. It provides a full ecosystem for building, deploying, and discovering AI Agents.
Pillars of the Fetch.ai Ecosystem
AI Agents are autonomous pieces of software that can understand goals, make decisions, and take actions on behalf of users.
Challenge statement
Build Autonomous AI Agents with the ASI Alliance
This is your opportunity to develop AI agents that don't just execute code—they perceive, reason, and act across decentralized systems. The ASI Alliance in partnership with Fetch.ai Innovation Lab, brings together world-class infrastructure from Fetch.ai and SingularityNET to support the next generation of modular, autonomous AI systems.
Use Fetch.ai's uAgents framework or your preferred agentic stack to build agents that can interpret natural language, make decisions, and trigger real-world actions. Deploy them to Agentverse, the ASI-wide registry and orchestration layer where agents connect, collaborate, and self-organize.
Enhance your agents with structured knowledge from SingularityNET's MeTTa Knowledge Graph. For agent discovery and human interaction, integrate the Chat Protocol to make your agents accessible through the ASI:One interface.
Whether you're building in healthcare, logistics, finance, education, or DeAI-native applications—this is your launchpad. Develop agents that talk to each other. That learn and adapt. That drive real outcomes across sectors.
The future of decentralized AI isn't siloed. It's composable, cross-chain, and powered by the ASI Alliance.
Important links
Examples to get you started:
Code
README.mdTo achieve this, include the following badge in your agent’s
README.md

Video
Quick start example
This file can be run on any platform supporting Python, with the necessary install permissions. This example shows two agents communicating with each other using the uAgent python library.
Try it out on Agentverse ↗
from datetime import datetime
from uuid import uuid4
from uagents.setup import fund_agent_if_low
from uagents_core.contrib.protocols.chat import (
ChatAcknowledgement,
ChatMessage,
EndSessionContent,
StartSessionContent,
TextContent,
chat_protocol_spec,
)
agent = Agent()
# Initialize the chat protocol with the standard chat spec
chat_proto = Protocol(spec=chat_protocol_spec)
# Utility function to wrap plain text into a ChatMessage
def create_text_chat(text: str, end_session: bool = False) -> ChatMessage:
content = [TextContent(type="text", text=text)]
return ChatMessage(
timestamp=datetime.utcnow(),
msg_id=uuid4(),
content=content,
)
# Handle incoming chat messages
@chat_proto.on_message(ChatMessage)
async def handle_message(ctx: Context, sender: str, msg: ChatMessage):
ctx.logger.info(f"Received message from {sender}")
# Always send back an acknowledgement when a message is received
await ctx.send(sender, ChatAcknowledgement(timestamp=datetime.utcnow(), acknowledged_msg_id=msg.msg_id))
# Process each content item inside the chat message
for item in msg.content:
# Marks the start of a chat session
if isinstance(item, StartSessionContent):
ctx.logger.info(f"Session started with {sender}")
# Handles plain text messages (from another agent or ASI:One)
elif isinstance(item, TextContent):
ctx.logger.info(f"Text message from {sender}: {item.text}")
#Add your logic
# Example: respond with a message describing the result of a completed task
response_message = create_text_chat("Hello from Agent")
await ctx.send(sender, response_message)
# Marks the end of a chat session
elif isinstance(item, EndSessionContent):
ctx.logger.info(f"Session ended with {sender}")
# Catches anything unexpected
else:
ctx.logger.info(f"Received unexpected content type from {sender}")
# Handle acknowledgements for messages this agent has sent out
@chat_proto.on_message(ChatAcknowledgement)
async def handle_acknowledgement(ctx: Context, sender: str, msg: ChatAcknowledgement):
ctx.logger.info(f"Received acknowledgement from {sender} for message {msg.acknowledged_msg_id}")
# Include the chat protocol and publish the manifest to Agentverse
agent.include(chat_proto, publish_manifest=True)
if __name__ == "__main__":
agent.run()
Agentverse MCP Server
Learn how to deploy your first agent on Agentverse with Claude Desktop in Under 5 Minutes
Agentverse MCP (Full Server)
Client connection URL: https://mcp.agentverse.ai/sse
Agentverse MCP-Lite
Client connection URL: https://mcp-lite.agentverse.ai/mcp




Tool Stack
Judging Criteria
Functionality & Technical Implementation (25%)
Use of ASI Alliance Tech (20%)
Innovation & Creativity (20%)
Real-World Impact & Usefulness (20%)
User Experience & Presentation (15%)
Judges

Sana Wajid
Chief Development Officer - Fetch.ai
Senior Vice President - Innovation Lab

Attila Bagoly
Chief AI Officer

Wendwossen Dufera
Machine Learning Engineer

Nahom Senay
Machine Learning Engineer
Mentors

Abhi Gangani
Developer Advocate

Kshipra Dhame
Developer Advocate
24:00 PT
WINNER ANNOUNCEMENT