Welcome to the IXO Oracles Framework! This guide will walk you through building and deploying your first AI-powered oracle on the IXO network.
We will be building a simple oracle that can do a general conversation with the user.
Before you begin, ensure you have:
- Node.js 22+ installed
- pnpm 10+ installed (
npm install -g pnpm) - IXO account on the mobile app
- Basic understanding of TypeScript/JavaScript
- Familiarity with LangGraph
npm install -g ixo-oracles-cli# Create a new oracle project
oracles-cli --init
# Follow the interactive prompts from the CLI
- add to the
.envfile your api keys forOpenRouter...etc. - Finally run the app and open web portal(dev-net) to test your app
Your project comes with a ready-to-deploy Dockerfile. You can use this file to deploy your oracle to your own infrastructure as you like.
After you have deployed your oracle, you can test it by opening the web portal(dev-net) and sending a message to your oracle and u can continue the conversation with the oracle in:
- Matrix
- Web Portal
Only the first time u use the oracle should be from portal so the client sdk can create your matrix room and grant the permissions to the oracle.
let's start with general conversation flow.
open /apps/app/src/graph/nodes/chat-node/prompt.ts and start defining your prompt.
from apps/app/src/graph/index.ts u can remove the contextGatherNode to simplify your first oracle flow.
this node is used to connect to the memory engine and get the recent context of the user.
refer to langgraph docs for more information on how to add custom tools and functions.
and add them to apps/app/src/graph/nodes/tools-node/tools.ts
run pnpm start:dev to start your oracle.
and open web portal(dev-net) to test your oracle. u can find your oracle in the marketplace or when u ran the cli it should have listed the link for the oracle on the web portal