Back

Tira

tira.finance
React NativeExpo SDK 58SwiftUIJetpack Compose

Tira is a self-custodial crypto wallet, an end-to-end encrypted messenger, and an AI-agent platform in a single mobile app. It manages assets across twelve networks, handles encrypted chat and calls, and lets you delegate on-chain tasks to AI agents that operate their own budgeted wallets. The app itself is a thin signer: keys never leave the device, while backend services handle the reads, quotes, and routing.


Wallet

  • One BIP-39 seed drives accounts on twelve networks: Bitcoin, Solana, Stellar, XRPL, and EVM chains including Ethereum, Base, Arbitrum, Optimism, Polygon, BNB Chain, HyperEVM, and XRPL EVM
  • Send, receive, and swap, on one chain or across chains, with a review screen that shows minimum received, rate, network fee, and slippage before anything is signed
  • Accounts can also be imported from a private key; every account signs with its own key, and the signer refuses any key whose address does not match the account
  • Only the mnemonic and imported keys are stored, in device secure storage; seed keys are re-derived per signature and never persisted
Balances
Tira balances on iOS
Tira balances on Android
Swap
Tira swap on iOS
Tira swap on Android
Swap review
Tira swap review on iOS
Tira swap review on Android

Messaging

  • Encrypted 1:1 and group chat over XMPP on a customized Prosody server, with E2E encryption designed to survive a seed-phrase restore
  • Voice and video calls over WebRTC, plus group voice calls, ringing through CallKit on iOS and push on both platforms
  • Communities: a public directory of groups by category with live participant counts, plus moderators, pinned messages, group pictures, and disappearing messages
  • Payments live in the conversation: send tokens to a contact and the transfer shows up in both threads
  • Identity is wallet-native: DIDs derived from your keys and login via signed verifiable presentations, no passwords anywhere
Chats
Tira chats on iOS
Tira chats on Android
Communities
Tira communities on iOS
Tira communities on Android
Contacts
Tira contacts on iOS
Tira contacts on Android
Contact
Tira contact on iOS
Tira contact on Android

Agents

  • One agent room: ask Tira anything, and add plugins to give it wallet powers like balances, sends, and swaps
  • Delegated agents receive their own wallets, derived from your seed at reserved indexes so funds are always recoverable
  • Each tool is allowed or blocked per agent and labelled by risk, and a per-chain auto-approve allowance caps what an agent spends before it has to ask
  • Agents interoperate with third-party agents over A2A, including machine-to-machine payments via x402, and their responses render as native UI cards rather than chat text
Agent room
Tira agent room on iOS
Tira agent room on Android
Agent settings and allowed tools
Tira agent settings and allowed tools on iOS
Tira agent settings and allowed tools on Android

Identity & accounts

  • Link one address per network family to your identity, each proven with its own signature, so contacts know where to pay you
  • WalletConnect for websites and Nostr Connect for Nostr apps, both signing with this wallet
  • A profile with a picture and name that contacts see, and accounts you can add, rename, and reorder on every network
Linked identity and profile
Tira linked identity and profile on iOS
Tira linked identity and profile on Android
Accounts and networks
Tira accounts and networks on iOS
Tira accounts and networks on Android

Under the hood

  • Expo SDK 58 / React Native with the New Architecture and React Compiler; screens are truly native, SwiftUI on iOS and Jetpack Compose on Android, with custom Swift and Kotlin modules where the stock components fall short
  • Each platform looks like itself: system colors and Liquid Glass on iOS, a Material 3 palette, Geist, and a native glass button on Android
  • Offline-first state with TanStack Query persisted to MMKV, typed file-based routing
  • A TypeScript, Express, and Postgres backend fronts every chain read, price quote, and swap route, unifying Alchemy, Helius, and Horizon indexers behind one API shape; the app fetches, signs on device, and broadcasts
  • Messaging runs on a Prosody XMPP fork with custom Lua modules for wallet-signed auth, offline inbox, group key distribution, and call history, plus a relay that fans push out to APNs, VoIP push, and FCM
  • A headless harness runs the app's real chat and call code as phones in Node, against a throwaway copy of the production server
  • The agent runtime is LangGraph orchestrating OpenAI models with tool access to the same chain API; payment amounts, addresses, and x402 signing live in deterministic code the model never touches
  • Split trust model: backends can read balances and fetch quotes but never hold user keys; the server signs only for explicitly delegated agent wallets