Overview
All AURA program instructions grouped by domain.
Pre-alpha — not production ready
@aura-protocol/sdk-ts targets Solana devnet only. APIs may change without notice. Do not use for real funds until a stable release and audit are published.
The TypeScript SDK mirrors the current AURA Anchor IDL and groups all 67
instruction builders by domain. Every instruction is available in two forms —
build-only (*Instruction()) and build-and-send.
Domains
| Domain | Key methods | Page |
|---|---|---|
| Treasury | createTreasury, pauseExecution, cancelPending | Treasury |
| Confidential | configureConfidentialGuardrails, proposeConfidentialTransaction, requestPolicyDecryption, confirmPolicyDecryption | Confidential |
| Execution | proposeTransaction, approvePendingExecution, executePending, finalizeExecution, setScopedPause | Execution |
| Governance | configureMultisig, proposeAiRotation, executeConfigChange, vetoConfigChange, emergencyShutdown, proposeGuardianRotation, configureApprovalLadder | Governance |
| Swarm | configureSwarm, initSwarmPool, joinSwarm | Swarm |
| dWallet | registerDwallet, refreshDwalletBalance | dWallet |
| Policy | simulatePolicy, writePolicyReceipt, attestPolicy, checkInvariants, checkPolicyCpi, applyPolicyPreset | Policy |
| Budget | configureBudgetEnvelope, initExposureGroup, joinExposureGroup, configureApprovalLadder | Budget |
| Operations | grantOperatorRole, revokeOperatorRole, initExternalLiveness, refreshExternalLiveness, configureLivenessGuardrails, initHealthScore, refreshHealthScore, takeSnapshot, initActivityLog, initPolicyHistory, recordPolicySnapshot | Operations |
| Lifecycle | issueSessionKey, revokeSessionKey, closeSessionKey, triggerDeadMansSwitch, transitionAgentState, migrateTreasury | Lifecycle |
| Fees | initFeeVault, collectFees, closeFeeVault | Fees |
| Address Lists | initAddressList, manageAddressList, closeAddressList | Address Lists |
| Batch | proposeBatch | Batch |
Dual-Form Pattern
Every instruction has two forms:
// Build only — compose into custom transactions
const { instruction } = await client.emergencyShutdownInstruction(
{ owner: owner.publicKey, treasury },
recoveryAuthority,
Math.floor(Date.now() / 1000),
);
// Build + send in one call
const signature = await client.emergencyShutdown(
owner,
{ owner: owner.publicKey, treasury },
recoveryAuthority,
Math.floor(Date.now() / 1000),
);Discovery
Use the built-in catalog to enumerate all instructions at runtime:
import { AURA_FEATURE_DOMAINS } from "@aura-protocol/sdk-ts";
for (const domain of AURA_FEATURE_DOMAINS) {
for (const ix of domain.instructions) {
console.log(`${domain.label} / ${ix.name} (${ix.maturity})`);
}
}