AURA

generated commands

IDL-driven per-domain commands that cover every aura-core instruction.

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.

In addition to the ergonomic verb commands, the CLI generates a command for every instruction in the program, grouped by domain:

aura <domain> <instruction>

These are derived directly from the program IDL and the SDK's program-surface catalog, so coverage never drifts — when the program gains an instruction and the SDK is regenerated, the command appears automatically.

Domains

DomainCommand prefixExample instruction command
Treasuryaura treasuryaura treasury create-treasury
Confidentialaura confidentialaura confidential rotate-confidential-guardrails
Executionaura executionaura execution propose-conditional-transaction
Governanceaura governanceaura governance propose-config-change
dWalletaura dwalletaura dwallet reserve-dwallet-spend
Policyaura policyaura policy create-policy-template
Budgets & Exposureaura budgetaura budget configure-budget-envelope
Operationsaura operationalaura operational set-scoped-pause
Lifecycle & Rolesaura lifecycleaura lifecycle issue-session-key
Swarm Poolsaura swarmaura swarm init-swarm-pool
Protocol Feesaura feesaura fees init-fee-schedule
Address Listsaura address-listsaura address-lists init-address-list
Batchaura batchaura batch propose-batch

Instruction names are kebab-cased from the on-chain (snake_case) names: create_policy_templatecreate-policy-template.

The ergonomic verbs (e.g. aura treasury create) live alongside the generated commands (e.g. aura treasury create-treasury) in the same group — friendly flows where they exist, full coverage everywhere else.

Discovering commands

# Every instruction grouped by domain (with maturity)
aura ix list
aura ix list --domain policy

# Inspect the accounts and arguments of any instruction
aura policy create-policy-template --schema
aura ix schema create_policy_template

Passing accounts and arguments

Generated commands share one flag set:

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/to/file.json
--args <json|@file>Whole args object/array as JSON or @path/to/file.json
--extra-signer <path>Additional signer keypair file (repeatable)
--schemaPrint the account/argument schema and exit

Signer accounts accept the literal $wallet, which resolves to the configured keypair. Address-default and program accounts (system program, the caller program) are filled automatically; optional accounts default to null.

# Individual fields
aura budget configure-budget-envelope \
  --account treasury=<pda> \
  --account owner='$wallet' \
  --arg envelopeId=1 \
  --arg amountUsd=5000

# Whole objects from files
aura policy create-policy-template \
  --accounts @accounts.json \
  --args @args.json

# Preview without sending
aura lifecycle issue-session-key --account treasury=<pda> --arg ... --dry-run

Every generated command runs through the same secure pipeline: preview, simulation, mainnet guard, and confirmation for sensitive instructions. If an instruction needs more signers, the CLI verifies them before broadcasting and tells you which --extra-signer keypairs are missing.

On this page