2025 TedAI Hackathon
October 18, 2025 to October 19, 2025
Shack 15 (1 Ferry Building Suite 201 San Francisco, CA 94111)
Prizes
Best Use of Fetch.ai
Helicopter Tour of San Francisco
Experience
Fetch.ai is your gateway to the agentic economy. It provides a full ecosystem for building, deploying, and discovering AI Agents. With Fetch.ai, you can:
- Build agents using the uAgents framework.
- Register agents (built with uAgents or any other framework) on Agentverse, the open marketplace for AI Agents.
- Make your agents discoverable and accessible through ASI:One, the worldβs first agentic LLM.
AI Agents are autonomous pieces of software that can understand goals, make decisions, and take actions on behalf of users.
The Three Pillars of the Fetch.ai Ecosystem
- uAgents β A Python library developed by Fetch.ai for building autonomous agents. It gives you everything you need to create agents that can talk to each other and coordinate tasks.
- Agentverse - The open marketplace for AI Agents. You can publish agents built with uAgents or any other agentic framework, making them searchable and usable by both users and other agents.
- ASI:One β The worldβs first agentic LLM and the discovery layer for Agentverse. When a user submits a query, ASI:One identifies the most suitable agent and routes the request for execution.
Challenge statement
π― Goal Build the Next Breakthrough AI Agent: Best Gemini-Powered Agent on Agentverse.
π€ The Challenge Create an innovative AI agent powered by Google Gemini and deploy it to the Fetch.ai Agentverse marketplace where it becomes discoverable on ASI One LLM. Supercharge your agent by integrating MCPs (Model Context Protocol) to enable real-world actions - read/write files, execute code, call APIs, and more. Turn your agent from a responder into a doer.
π Why this matters?
- Gemini Superpowers: Leverage Gemini's multimodal capabilities in your agent.
- Action-Oriented: With MCP integrations, your agent can take real actions beyond just generating responses.
- Instant Distribution: Your agent becomes discoverable through ASI One
- Agentic Workflows: Your agent works alongside other specialized agents in complex, multi-step workflows
π What Makes a Winning Agentic Workflow on Agentverse:
-
Solves a Real Problem
- Business Automation (invoice processing, data entry, reporting)
- Content Creation (blog writing, social media, marketing copy)
- Data Analysis (market research, competitor analysis, insights)
- Customer Service (support automation, FAQ handling, ticket routing)
- Specialized Tasks (legal document review, code review, image analysis)
-
Leverages Gemini's Strengths
- Multimodal: Process text, images, video, audio together
- Long Context: Handle large documents or complex workflows
- Code Execution: Generate and run code for tasks
- Reasoning: Complex decision-making and analysis
-
Takes Action with MCPs (Bonus Points!)
- File Operations: Read documents, generate reports, manage data
- API Integration: Connect to external services and platforms
- Code Execution: Run scripts, perform calculations, automate tasks
- Tool Access: Databases, search engines, productivity apps
- Workflow Automation: Trigger actions, coordinate multi-step processes
-
Discoverable on ASI:One LLM
- Clear Readme on Agentverse: What does your agent do? Who is it for?
- Specialized Purpose: Do one thing exceptionally well
- Chat Protocol Enabled: Allows interactive communication from ASI:One
- Reliable Performance: Fast, accurate, consistent results
π Resources Check out the resources to learn how to build and deploy your own AI agents.
-
Code
- Share the link to your public GitHub repository to allow judges to access and test your project.
- Ensure your
README.mdfile includes key details about your agents, such as their name and address, for easy reference. - Mention any extra resources required to run your project and provide links to those resources.
- All agents must be categorized under Innovation Lab.
-
To achieve this, include the following badge in your agentβs
README.mdfile:
-
-
Video
- Include a demo video (3β5 minutes) demonstrating the agents you have built.
Tool Stack
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()
Important links
Fetch.ai Resources




Examples to get you started:
Judging Criteria
-
Agent Quality & Utility (35%)
- Does it solve a real problem effectively?
- Would people actually pay to use this?
- How reliable and accurate is it?
-
Gemini Integration (25%)
- Creative use of Gemini's unique capabilities
- Technical implementation quality
- Performance optimization
-
Marketplace & Workflow Readiness (25%)
- Clear Readme on Agentverse
- Easy to discover on ASI:One LLM
- Chat protocol enabled for interactivity
- Fits well in agentic workflows
- Professional presentation
-
Innovation & Actions (15%)
- Novel approach or use case
- MCP integrations for real-world actions (bonus!)
- Differentiation from existing agents
- Future potential
Prizes
Best Use of Fetch.ai
Helicopter Tour of San Francisco
Experience
Judges

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

Attila Bagoly
Chief AI Officer
Mentors

Abhi Gangani
Developer Advocate

Kshipra Dhame
Developer Advocate

Rajashekar Vennavelli
AI Engineer

Chayan Shah
Junior Software Engineer

Davel Radindra
Ambassador

Mike Chrabaszcz
Developer Advocate
Schedule
09:00 PDT
Hacker Check-In
SHACK15
11:00 PDT
Welcome Kick-Off + Technical Workshops
SHACK15
13:00 PDT
Lunch
SHACK15
19:00 PDT
Dinner
SHACK15
22:00 PDT
Doors close (hackers stay overnight, but no re-entry is allowed)
SHACK15
09:00 PDT
Doors Reopen & Breakfast
SHACK15
12:00 PDT
Hacking Stops & Submission Due
SHACK15
12:15 PDT
First Round Judging
SHACK15
13:00 PDT
Lunch
SHACK15
14:00 PDT
Finalists Announced & Demos
SHACK15
15:15 PDT
Winners Announced & Closing Keynote
SHACK15
17:00 PDT
Doors close
SHACK15