Capability Matrix
Protocol capability map with implementation entry points.
Capability -> Interface Map
| Capability | Write Path | Read Path | Observability |
|---|---|---|---|
| Native transfers | POST /v1/submit (Transfer) | GET /v1/balance/:address | GET /v1/events/query?topic=native.transfer |
| Mist contracts | mistc deploy/call, POST /v1/mist/deploy, POST /v1/mist/call/:id | GET /v1/mist/contract/:id, GET /v1/mist/receipts/:id | GET /v1/mist/pvi/:id, GET /v1/mist/replay_inputs/:id |
| Event-driven apps | emit contract/native events | GET /v1/events/recent, GET /v1/events/query | wss://.../events/stream |
| Governance | POST /governance/propose, POST /governance/vote, POST /governance/execute | GET /governance/params, GET /governance/history | event stream + history polling |
| Bridge | proof verify flow | GET /v1/bridge/status, GET /v1/bridge/chains, GET /v1/bridge/messages | bridge message states |
| AI economy | RivellumAgent (pay, escrow, purchase, intent) | market*, get*, topProviders | stream/session status methods |
Contract Capability Pattern
Deploy + invoke + replay
mistc check contracts/amm.mist
mistc lint contracts/amm.mist
mistc deploy build/amm.bundle.json --rpc https://rpc.rivellum.network
mistc call CONTRACT_ID swap '{"in_asset":"0x...","out_asset":"0x...","amount_in":"1000000"}' --rpc https://rpc.rivellum.network
mistc receipt RECEIPT_ID --rpc https://rpc.rivellum.network
mistc replay RECEIPT_ID --rpc https://rpc.rivellum.network
Event Capability Pattern
Query + stream
curl "https://rpc.rivellum.network/v1/events/query?topic=contract.called&from_batch=1000&limit=200"
const ws = new WebSocket('wss://rpc.rivellum.network/events/stream?topic=contract.called');
ws.onmessage = (m) => console.log(JSON.parse(m.data));
AI Economy Capability Pattern
import { RivellumAgent } from '@rivellum/ai-sdk';
const agent = new RivellumAgent({ nodeUrl: 'https://rpc.rivellum.network' });
const pay = await agent.pay({ to: '0xabc...', amount: 500_000 });
const search = await agent.searchMarket({ category: 'compute', limit: 10 });
const esc = await agent.escrow({
provider: '0xprovider...',
amount: 2_000_000,
description: 'proof-generation',
ttlSecs: 7200,
});
console.log({ pay, search, esc });
Governance Capability Pattern
curl https://rpc.rivellum.network/governance/params
curl https://rpc.rivellum.network/governance/history
# Submit a proposal
curl -X POST https://rpc.rivellum.network/governance/propose \
-H "Content-Type: application/json" \
-d '{"param_key":"fee_tier","new_value":100}'
# Vote on a proposal
curl -X POST https://rpc.rivellum.network/governance/vote \
-H "Content-Type: application/json" \
-d '{"proposal_id":1,"vote":"yes"}'
# Execute accepted proposal
curl -X POST https://rpc.rivellum.network/governance/execute \
-H "Content-Type: application/json" \
-H "Content-Type: application/json" \
-d '{"chain":"ethereum","proof":"0x...","block_height":18500000}'
Move Kernel Note
Move VM remains an internal kernel runtime, but public production APIs do not expose /move/* endpoints.
Use Mist and /v1/* RPC interfaces for production integrations.
Use-Case Starting Points
- Exchange/orderbook: Mist + events + replay + indexer
- Perps/risk engine: Mist + oracle reads + typed rejection events
- Consumer app: intent submission + events + balance/nonce reads
- AI marketplace client:
RivellumAgent+ market + escrow flows