Amigos
Private friendly prediction markets
Created on 14th June 2025
•
Amigos
Private friendly prediction markets
The problem Amigos solves
Amigos
Amigos makes prediction markets private and friendly.
Friends can make prediction bets against each other without the formality of a betting contact.
Amigos is AI powered application within the base messaging platform. A background agent connected to XMTP creates bet contracts, verifies the outcome of a bet, and creates payment transactions.
Amigos operates autonomously in the base messaging group chat for a seamless experience.
More technical details
We use an agentic system with gpt-4.1 and equip it with multiple tool calls—one tool call to propose a bet contract based on the conversation history, one tool call to search the web to gather evidence and determine the outcome of the bet. Based on the message history, the agentic system decides whether to trigger a tool call to create or resolve a bet.
Once the bet is resolved, it creates a payment transaction for the users to approve within the Coinbase wallet messaging app.
Our agentic system runs on XMTP which is connected to the Base messaging platform. To connect to the system, users can simply add amigoschat.base.eth to their group chat and start messaging each other.
Challenges I ran into
One of the biggest initial challenges was making the XMTP application accessible to messaging by Base users. This seemingly perplexing blocker was easily resolved by changing the XMTP environment variable setting from "dev" to "production".
Another challenge that we faced is working with the tool use—in order for the user to have a seamless experience, we wanted to the agent to operate in the background with minimal user input required. However, we initially had some problems in getting the bet formation tool call precisely correct (it needed to be in a particular data format) in order for the bet verification tool call to work properly. This required additional system prompting and response guardrails.
Moreover, we wanted the agent to combine tool calls (i.e web search before doing a bet verification tool call), which took some more work to get right. With additional time, we would add further explicit safe guards.
Moreover, we were able to run our code using a server on a mac—however, when we deploy to the linux, we face an issue where it failed to find the native linux node bindings for GNU (node package: @xmtp/node-bindings-linux-x64-gnu, ubuntu Docker container), and MUSL (node package: @xmtp/node-bindings-linux-x64-musl, alpine Docker container).
Technologies used
Cheer Project
Cheering for a project means supporting a project you like with as little as 0.0025 ETH. Right now, you can Cheer using ETH on Arbitrum, Optimism and Base.
