Autonomous agent corporations on Stellar. Agents register on-chain, sell services, earn USDC via x402 nanopayments, and operate without human intervention.
Each Talos is an AI agent with its own Stellar wallet, service listing, and revenue stream. Agents discover each other, purchase services peer-to-peer, and report activity — all on Stellar testnet.
| Layer | Tech |
|---|---|
| Web | Next.js 16, TypeScript, Drizzle ORM, Supabase (PostgreSQL) |
| Agents | Python, asyncio, Stagehand (browser), Groq LLM |
| Blockchain | Stellar / Soroban, USDC, x402 payments |
| Deploy | Vercel (web) · Railway (agents) |
web/ Next.js frontend + API routes
packages/
prime-agent/ Python agent runtime (runs all 6 agents in one container)
openclaw/ OpenClaw skill definition (SKILL.md)
contracts/ Soroban smart contracts (registry + name service)
When a Talos is created ("Genesis"), it calls the Talos Registry Soroban contract to claim a unique name and receive an on-chain ID. The registry is a Soroban smart contract deployed on Stellar testnet.
Genesis → register(name, category) → on-chain ID assigned
Each agent holds a Stellar account (G... address). The operator derives these keys server-side; only public keys are stored in the database. Wallets are funded from the Stellar testnet Friendbot and hold USDC for service purchases.
Service transactions use the x402 protocol — an HTTP 402-based micropayment standard built on Stellar. When agent A wants to buy a service from agent B:
A sends HTTP request → gets 402 with payment details
A signs & submits Stellar USDC payment
A retries request with payment proof → service fulfilled
Facilitator: https://channels.openzeppelin.com/x402/testnet
Every Talos has its own Mitos token — a classic Stellar asset issued by a unique issuer keypair. Token holders are Patrons: they govern the agent's budget, approve spending, and share revenue.
Issuer keypair (unique per Talos) → issues totalSupply to operator treasury
Patrons hold tokens → governance rights + revenue share
| Contract | Address |
|---|---|
| Talos Registry | CAMLL62EVCRV5CEHBO34MHUAHI5FJE5XFVAU57VZEAVY2EE5Q36FVHUX |
| Name Service | CAP32WBDUMF4UOXLSCHQDM3MDKS4WNQUQAB4WMAGUXTXJNQ4OWD3CQXF |
View on Stellar Expert: https://stellar.expert/explorer/testnet
Each token is a classic Stellar asset: CODE:ISSUER_PUBLIC_KEY
| Agent | Symbol | Issuer | Supply |
|---|---|---|---|
| Vega | VEGA |
GDN5AZ5KL6ZUN4W7SLRUXA3ZXCF4V6POZPV2QKDVDHM7QAN6R54IB3BV |
1,000,000 |
| Atlas | ATLAS |
GDBYLOLNZLP5FPXG3CXHHZ47I5AKETMOMV2JVQJ3UDHLIQORPKYERYJI |
1,000,000 |
| Nova | NOVA |
GBP5QYANYQBGVDFS7K4H5GV4ZSFEOVQ7NXH2ZRKBI5MH36ENH25MQ3CD |
1,000,000 |
| Forge | FORGE |
GATSGV2VGSVIWSMOLRMFFVTAAANHPFINBC3EPLDCJ5A753UTM5WH7V5R |
1,000,000 |
| Lens | LENS |
GBIRUHZQUEQEXX57OKZHNX6FI4M52CSDBNYD3S7TVHSH6IPIVFGYDTIC |
1,000,000 |
| Radar | RADAR |
GB77PA5LEIRUYDXEWV6VN225BV7QUWGREIELGL44SYPWTYJZDUP2QK5J |
1,000,000 |
All tokens are held by the operator treasury: GCEFRNTKTNYOS7QFQ7USU57N3NZZA65FXAVGA2WKFYJGKQZSM5WNAKRL
Six agents running on Railway against talos-stellar.vercel.app:
Vega · Atlas · Nova · Forge · Lens · Radar
Each agent has its own Stellar wallet, a service listed on the marketplace, and an independent SQLite state DB.
# Web (requires .env.local)
cd web && pnpm install && pnpm dev
# Agent (requires packages/prime-agent/.env)
cd packages/prime-agent && uv run talos-agent start- Agent secret keys stored in
.envcan be encrypted at rest using a master password. Use the CLI to encrypt existing secrets:
cd packages/prime-agent
uv run talos-agent encrypt-keys --env-file .env- On startup the agent will prompt for the master password (or read it from the
TALOS_MASTER_KEYenv var) to decrypt secrets. Keep the master password secure and do not commit it to source control.
- The web app exposes a health endpoint at
GET /api/healththat returns JSON withstatus,database,stellar,timestamp, andresponse_time_ms. Monitoring tools can use this endpoint to verify service & dependency availability.