instruction
Build and send any aura-core instruction directly from the IDL.
Pre-alpha — not production ready
@aura-protocol/cli targets Solana devnet only. APIs and commands may change without notice. Do not use for real funds until a stable release and audit are published.
The instruction command (alias: instructions) gives raw access to every
instruction in the AURA IDL. Useful for advanced operations not covered by the
domain commands, or for scripting arbitrary instruction sequences.
# Both forms work identically
aura instruction list
aura instructions listaura instruction list
List every instruction grouped by domain.
aura instruction list
aura instruction list --json$ aura instruction list
AURA :: Instruction Surface
┌──────────────┬──────────────────────────────────────────────────────────┐
│ Domain │ Instructions │
├──────────────┼──────────────────────────────────────────────────────────┤
│ Treasury │ createTreasury │
│ │ pauseExecution │
│ │ proposeTransaction │
│ │ cancelPending │
├──────────────┼──────────────────────────────────────────────────────────┤
│ Confidential │ configureConfidentialGuardrails │
│ │ proposeConfidentialTransaction │
│ │ requestPolicyDecryption │
│ │ confirmPolicyDecryption │
└──────────────┴──────────────────────────────────────────────────────────┘aura instruction schema
Show the account and argument schema for a specific instruction.
aura instruction schema configure_budget_envelope
aura instruction schema propose_transaction --jsonOutput includes each account (name, signer, writable, optional, default) and each argument (name, type, sample value).
Example output:$ aura instruction schema
AURA :: proposeTransaction
┌──────────────┬────────┬──────────┬──────────┬─────────┐
│ Account │ Signer │ Writable │ Optional │ Default │
├──────────────┼────────┼──────────┼──────────┼─────────┤
│ aiAuthority │ yes │ no │ no │ │
│ treasury │ no │ yes │ no │ │
│ systemProgram│ no │ no │ no │ 1111…11 │
└──────────────┴────────┴──────────┴──────────┴─────────┘
┌──────────────────────┬────────┬──────────────┐
│ Arg │ Type │ Sample │
├──────────────────────┼────────┼──────────────┤
│ amountUsd │ u64 │ 100 │
│ targetChain │ u8 │ 2 │
│ txType │ u8 │ 0 │
│ recipientOrContract │ string │ "0xdeadbeef" │
└──────────────────────┴────────┴──────────────┘aura instruction build
Build an instruction and print the serialized data without sending.
aura instruction build cancel_pending \
--account owner=<pubkey> \
--account treasury=<pubkey> \
--arg now=1234567890
# Or pass accounts/args as JSON
aura instruction build cancel_pending \
--accounts '{"owner":"<pubkey>","treasury":"<pubkey>"}' \
--args '{"now":1234567890}'
# Or load from a file
aura instruction build cancel_pending \
--accounts @accounts.json \
--args @args.json| Flag | Description |
|---|---|
--accounts <json|@file> | Accounts as a JSON object or @path to file |
--args <json|@file> | Args as a JSON object/array or @path to file |
--account <key=value> | Single account override, repeatable |
--arg <key=value> | Single argument override, repeatable |
{
"instruction": "cancelPending",
"programId": "EaRoLVwL8EErDUeEMPHJ5QJeLVQZWJMtZcgmFzT9bhHs",
"accounts": [
{ "pubkey": "7mNv…QrSt", "isSigner": true, "isWritable": false },
{ "pubkey": "9mTq…Wr4K", "isSigner": false, "isWritable": true }
],
"dataBase64": "3ySm...Kx=="
}aura instruction send
Build and send any instruction using the configured wallet.
aura instruction send cancel_pending \
--account owner=<pubkey> \
--account treasury=<pubkey> \
--arg now=1234567890
# With extra signers (e.g. for instructions requiring multiple keypairs)
aura instruction send propose_confidential_transaction \
--accounts @accounts.json \
--args @args.json \
--extra-signer ~/.config/solana/policy-output.json
# Override compute units
aura instruction send configure_confidential_guardrails \
--accounts @accounts.json \
--args @args.json \
--compute-units 800000$ aura instruction send
✓ Instruction sent: 2pVk…Hn6Z| Flag | Description |
|---|---|
--accounts <json|@file> | Accounts as a JSON object or @path to file |
--args <json|@file> | Args as a JSON object/array or @path to file |
--account <key=value> | Single account override, repeatable |
--arg <key=value> | Single argument override, repeatable |
--extra-signer <path> | Additional keypair path, repeatable |
--compute-units <units> | Compute unit limit (default: 600,000) |