Solana Chain Interactions
SolanaClient is the TypeScript SDK's interface for Solana chain interactions from CRE workflows. Reads fetch consensus-verified account and program data. Writes submit cryptographically signed reports through the Keystone Forwarder program, which verifies DON signatures and CPIs into your receiver program. A separate Solana Log trigger starts a workflow when a Solana program emits a matching event.
How it works
For Solana program interactions, CRE can generate typed bindings from your program's Anchor IDL. You place the IDL in your project, run cre generate-bindings solana, and the CLI creates TypeScript classes with helpers such as writeReportFrom<StructName>() that handle encoding, account hashing, and report submission for you.
Typical flow:
- Add your Anchor IDL under
contracts/solana/src/idl/ - Run
cre generate-bindings solanafrom your project root - Call the generated helpers from your workflow
Guides
- Generating Solana Bindings: Generate typed TypeScript classes from your Anchor IDL using the CRE CLI
- Reading from Solana: Fetch consensus-verified account and program data with generated bindings
- Writing to Solana: End-to-end first write with generated bindings, simulate, and deploy
- Solana Log Trigger: Start a workflow when a Solana program emits a matching event