chain 7778 live · block 121k+

Build dApps on Kairos Network

Sovereign L1 blockchain (chain 7778) with native IPFS hosting, on-chain databases, prediction markets, an in-wallet AI dev agent, and a stablecoin (USDK) that resolves through 6 free real-time oracles. Zero external dependencies — everything runs on Kairos infra.

Start building → Read SDK docs Run a validator ↗

01 · Quickstart

First dApp in 5 minutes

Install the SDK, connect to chain 7778, deploy your first contract. Zero build tools needed.

# SDK for programmatic use npm install @kairos-network/sdk # CLI for quick ops npm install -g @kairos-network/cli
# Get real-time BTC price from Kairos native oracle kairos oracle crypto BTC # → BTCUSDT $62,208 ▲ 0.69% # List live prediction markets kairos market list
import { KairosPredictClient } from '@kairos-network/sdk'; const predict = new KairosPredictClient(); const btc = await predict.getMarket(0); console.log(btc.question, btc.probabilityYes); // → "Will BTC close above $100,000..." 0.488
# Auto-handles chain 7778 gas quirks + OpenZeppelin imports kairos deploy MyToken.sol # → address: 0x265d...ab79 # → https://scan.kairos777.com/address/0x265d...

02 · SDK

@kairos-network/sdk

TypeScript SDK with typed clients for every Kairos ecosystem contract, chain-7778 gas helpers, and a wrapper around the 6-domain oracle aggregator.

import { KairosPredictClient, KairosOracleClient, createKairos7778Wallet, GAS_LIMITS, millisecondsFromNow, } from '@kairos-network/sdk'; // Live oracle query — no wallet needed const oracle = new KairosOracleClient(); const gdp = await oracle.getMarketOracleData(50); // → { source: 'kairos-economy', data: { latest: 24180.4, ... } } // Trade on a market with USDK auto-approval const predict = new KairosPredictClient({ privateKey: process.env.KAIROS_PK }); const tx = await predict.buyYes(0, 5); // 5 USDK on market 0 // Create a new market with correct ms deadline await predict.createMarket({ question: 'Will my project ship by Aug 1?', category: 'tech', deadline: millisecondsFromNow({ days: 30 }), oracleKind: 'committee', oracleAddress: predict.wallet!.address, initialLiquidityUsdk: 100, });

03 · CLI

kairos command

Everything from the SDK, one shell away. Perfect for scripts, CI, or quick chain inspection.

Env vars: KAIROS_PK · KAIROS_RPC

04 · AI Studio

Kairos AI — in-wallet dev agent

Users describe what they want in natural language. Kairos AI generates working code and deploys it to chain 7778 or hosts it on Kairos IPFS. Pay in USDK.

What it can build

  • Smart contracts — Solidity 0.8.24+ with OpenZeppelin, compiled + deployed on chain 7778
  • Websites — HTML/CSS/JS pinned to Kairos IPFS + registered on KairosSites (subdomain.sites.kairos777.com)
  • Databases — KairosDB schema on-chain + IPFS payload storage
  • Payment integrations — KairosPay checkout flows in USDK
  • Push notifications — native VAPID infra, no FCM

Pricing (USDK)

Prepay with any USDK amount — credits carry over. Enter through Kairos Wallet → Settings → Kairos AI Studio.

05 · Contracts

Deployed contracts on chain 7778

Contract Purpose Address

06 · Chain 7778

Why you need the SDK

Chain 7778 is designed for sub-second precision and has non-standard EVM behavior. The SDK bundles the workarounds so you don't have to rediscover them.

Solidity literals like 1 hours (=3600) are meaningless — that's only 3.6 seconds on chain 7778. Use millisecondsFromNow({ days: 30 }) from the SDK. State-changing calls silently revert out of gas. The SDK's sendTx() and every high-level client method uses raw sendTransaction with explicit gasLimit. Every revert comes back as "missing revert data". If debuggability matters, emit an Event before each require. ethers' pending-nonce cache goes stale. Use batchSend(wallet, [...]) which tracks nonce explicitly and refetches on NONCE_EXPIRED.
07 · Validator Program TESTNET LIVE · PERSISTENT

Run a Kairos Validator

Chain 7778 is a Proof-of-Stake L1 with a native BFT engine. Register your validator with as little as 1,000 KAIROS during testnet and start earning block rewards + delegation commissions. Validator registrations persist across node restarts via automatic JSON snapshots to disk.

Requirements

  • • Linux VPS (4 GB RAM, 40 GB disk)
  • • Public IP + open port 30777
  • • 1,000 KAIROS min stake (testnet)
  • • ECDSA private key (Ethereum-style)

You earn

  • • 10% of block fees (per genesis)
  • • Commission from delegators (5-20%)
  • • Epoch rewards on active set
  • • Governance voting weight

Risks (slashing)

  • • 5% for double-signing
  • • 0.1% for downtime
  • • 7-day unbonding period
  • • Testnet: rewards symbolic

Step 1 · Build the node binary

# Clone the Kairos Network repo (source is public on GitHub Releases) git clone https://github.com/kpkcf47jr2-lab/KairosCoin.git cd KairosCoin/kairos-network # Build (needs Go 1.24+) go build -o kairos-node ./cmd/kairos sudo mv kairos-node /usr/local/bin/

Step 2 · Generate a validator key

# Generate a fresh Ethereum-style ECDSA private key node -e "const {Wallet}=require('ethers');const w=Wallet.createRandom(); require('fs').writeFileSync('validator.key',w.privateKey); console.log('address:',w.address);" # chmod 600 the key file (validators' single point of failure) chmod 600 validator.key

Step 3 · Get testnet KAIROS + register

# Request 1500 KAIROS from the testnet faucet curl -X POST https://faucet.kairos777.com/api/drip \ -H "Content-Type: application/json" \ -d '{"address":"0xYOUR_VALIDATOR_ADDRESS"}' # Register as a validator (1000 KAIROS stake, 10% commission) curl -X POST https://rpc.kairos777.com \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","method":"kairos_stake", "params":["0xYOUR_ADDRESS","0x3635C9ADC5DEA00000",1000],"id":1}'

Step 4 · Start your node

# Get the current genesis (matches chain 7778 network) mkdir -p ~/kairos-data curl https://api.kairos777.com/api/chain7778/genesis > ~/kairos-genesis.json # Start as observer/validator (WITHOUT --solo-validator!) kairos-node node start \ --testnet \ --validator \ --validator-key ./validator.key \ --genesis ~/kairos-genesis.json \ --datadir ~/kairos-data \ --bootnodes /ip4/129.153.46.146/tcp/30777/p2p/12D3KooWHNy9CrVHL7SzJox7Bz457b1hzQnDYhC5pRKMLm1ChZek

⚠ Critical — never set --solo-validator

--solo-validator is reserved for the genesis producer bootstrap. Setting it on a secondary node will FORK the chain — your node produces divergent blocks that get rejected by peers. Just use --validator --validator-key. Your node will observe until it joins the active BFT set at the next epoch.