AURA

ix (instruction)

Build, inspect, 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.

aura ix (aliases: instruction, instructions) is the power-user surface: it can list, inspect, build, and send any instruction in the AURA IDL by name. It is the universal companion to the generated per-domain commands and the ergonomic verbs.

# These are equivalent
aura ix list
aura instruction list

aura ix list

List every instruction grouped by domain, with maturity.

aura ix list
aura ix list --domain policy
aura ix list --json
Example output:
$ aura ix list
AURA :: Instruction Surface  161 instructions · 13 domains

[Treasury Lifecycle  (treasury)]
┌────────────────────────┬──────────┐
│ Instruction            │ Maturity │
├────────────────────────┼──────────┤
│ create_treasury        │ wallet   │
│ propose_transaction    │ wallet   │
│ …                      │          │
└────────────────────────┴──────────┘

aura ix schema

Show the account and argument schema for one instruction. Alias: inspect. No wallet required.

aura ix schema configure_budget_envelope
aura ix schema propose_transaction --json

Output lists each account (name, signer, writable, optional, default) and each argument (name, type, sample value).


aura ix build

Build an instruction and print it serialized — offline, never sends.

aura ix build cancel_pending \
  --account owner='$wallet' \
  --account treasury=<pubkey> \
  --arg now=1234567890

# Whole objects, or load from files
aura ix build cancel_pending --accounts @accounts.json --args @args.json
{
  "schema": { "name": "cancel_pending", "accounts": [/* … */], "args": [/* … */] },
  "instruction": {
    "programId": "auraEgX8ZUK3Xr8X81aRfgyTmoyNdsdfL6XfDN8W1ce",
    "accounts": [
      { "pubkey": "7mNv…QrSt", "isSigner": true, "isWritable": false },
      { "pubkey": "9mTq…Wr4K", "isSigner": false, "isWritable": true }
    ],
    "dataBase64": "3ySm…Kx=="
  },
  "requiredSigners": ["7mNv…QrSt"]
}

aura ix send

Build and send any instruction through the secure pipeline (preview → simulate → confirm → send).

aura ix send transition_agent_state \
  --account owner='$wallet' \
  --account treasury=<pubkey> \
  --arg newState=active

# Instructions that create accounts need extra signers
aura ix send propose_confidential_transaction \
  --accounts @accounts.json \
  --args @args.json \
  --extra-signer ~/.config/solana/policy-output.json
FlagDescription
--account <key=value>Set or override one account (repeatable)
--arg <key=value>Set or override one argument (repeatable)
--accounts <json|@file>Whole accounts object as JSON or @path
--args <json|@file>Whole args object/array as JSON or @path
--extra-signer <path>Additional signer keypair (repeatable)
--schemaPrint the schema and exit instead of sending

Signer accounts accept the literal $wallet (the configured keypair). The compute-unit limit is set with the global --compute-units <n> flag. The CLI verifies every required signer is present before broadcasting.

On this page