AURA

Quick Start

Get up and running with the AURA Rust SDK.

Pre-alpha — not production ready

aura-sdk targets Solana devnet only. APIs, types, and instruction shapes may change without notice. Do not use for real funds until a stable release and audit are published.

aura-sdk is the native Rust client for the AURA program. It provides typed instruction builders, PDA helpers, account fetching, domain model conversion, and client-side validation — without any TypeScript or Node.js dependency.

Use Cases

  • Devnet smoke tests with typed AURA instructions
  • Back-office services that prefer Rust for transaction composition
  • Program-adjacent tooling sharing AURA domain types
  • CI validation for PDA derivation and account decoding

Installation

[dependencies]
aura-sdk = { git = "https://github.com/exyreams/aura", branch = "main" }
solana-sdk = "2.1"
solana-client = "2.1"

Quick Start

use aura_sdk::{
    AuraClient,
    AURA_DEVNET_PROGRAM_ID,
    types::{CreateTreasuryArgs, PolicyConfigRecord, ProtocolFeesRecord},
};
use solana_commitment_config::CommitmentConfig;
use solana_sdk::signature::{Keypair, Signer};

let client = AuraClient::with_options(
    "https://devnet.helius-rpc.com/?api-key=YOUR_KEY",
    AURA_DEVNET_PROGRAM_ID,
    CommitmentConfig::confirmed(),
);

let owner = Keypair::new();
let args = CreateTreasuryArgs {
    agent_id: "agent-rs-1".to_string(),
    ai_authority: owner.pubkey(),
    created_at: 0,
    pending_transaction_ttl_secs: 900,
    policy_config: PolicyConfigRecord::default(),
    protocol_fees: ProtocolFeesRecord::default(),
};

let (treasury, signature) = client.create_treasury(&owner, args)?;
println!("Treasury: {treasury}");
println!("Signature: {signature}");

Next Steps

On this page