If you're bringing a protocol to Rome, the oracle question is already answered. The Oracle Gateway exposes Solana's Pyth and Switchboard accounts through the interface your Solidity already uses — Chainlink's latestRoundData(). No relay, no new oracle network, no code changes.
1
5
14
2,128
Reading a price is one call, no key, no funds: cast call 0x76b92646D63FB1AFEa687C7Dac48b437bF99C1B4 \ "latestRoundData()(uint80,int256,uint256,uint256,uint80)" \ --rpc-url hadrian.testnet.romeprotocol… That's SOL/USD on chain 200010.
1
5
197
Adapters are per-feed contracts cloned from a public factory. Direct: parses the Pyth account at call time — nothing cached in between. Cached: refresh() stores a copy in the adapter — each read is a stored value. Cheaper for multi-feed txs. Same interface either way.
1
3
144
In the registry at chains/<id>/oracle.json: SOL, BTC, ETH, USDC, USDT, JUP, JTO, jitoSOL, mSOL, BONK. Use the plain keys — those answer as-is. Entries suffixed -CACHED, -CACHEDPYTH or -SB are unarmed templates for you to clone; they revert until armed.
1
3
94
Need a feed that isn't listed? Three paths. Published on Solana: clone a direct adapter against that price account. Want the cached path: clone a cached adapter and crank refresh() yourself. Nobody publishes it: CachedFeedAdapter wraps any source you run.

Jul 27, 2026 · 9:30 PM UTC

1
2
159
Sort replies: Relevant Recent Liked