@aura-protocol/cli 0.1.3 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/README.md +84 -53
  2. package/bin/aura.js +0 -0
  3. package/dist/commands/confidential.d.ts +1 -1
  4. package/dist/commands/confidential.js +280 -325
  5. package/dist/commands/confidential.js.map +1 -1
  6. package/dist/commands/config.d.ts +1 -1
  7. package/dist/commands/config.js +26 -8
  8. package/dist/commands/config.js.map +1 -1
  9. package/dist/commands/dashboard.d.ts +1 -1
  10. package/dist/commands/dashboard.js +6 -7
  11. package/dist/commands/dashboard.js.map +1 -1
  12. package/dist/commands/dwallet.d.ts +1 -1
  13. package/dist/commands/dwallet.js +52 -41
  14. package/dist/commands/dwallet.js.map +1 -1
  15. package/dist/commands/execution.d.ts +1 -1
  16. package/dist/commands/execution.js +111 -175
  17. package/dist/commands/execution.js.map +1 -1
  18. package/dist/commands/features.d.ts +1 -1
  19. package/dist/commands/features.js +15 -10
  20. package/dist/commands/features.js.map +1 -1
  21. package/dist/commands/generated.d.ts +20 -0
  22. package/dist/commands/generated.js +61 -0
  23. package/dist/commands/generated.js.map +1 -0
  24. package/dist/commands/governance.d.ts +1 -1
  25. package/dist/commands/governance.js +113 -99
  26. package/dist/commands/governance.js.map +1 -1
  27. package/dist/commands/helpers.d.ts +5 -2
  28. package/dist/commands/helpers.js +79 -16
  29. package/dist/commands/helpers.js.map +1 -1
  30. package/dist/commands/instruction-exec.d.ts +27 -0
  31. package/dist/commands/instruction-exec.js +171 -0
  32. package/dist/commands/instruction-exec.js.map +1 -0
  33. package/dist/commands/instruction.d.ts +9 -0
  34. package/dist/commands/instruction.js +81 -0
  35. package/dist/commands/instruction.js.map +1 -0
  36. package/dist/commands/pda.d.ts +1 -1
  37. package/dist/commands/pda.js +15 -7
  38. package/dist/commands/pda.js.map +1 -1
  39. package/dist/commands/treasury.d.ts +1 -1
  40. package/dist/commands/treasury.js +201 -186
  41. package/dist/commands/treasury.js.map +1 -1
  42. package/dist/core/config.d.ts +35 -0
  43. package/dist/core/config.js +97 -0
  44. package/dist/core/config.js.map +1 -0
  45. package/dist/core/context.d.ts +51 -0
  46. package/dist/core/context.js +60 -0
  47. package/dist/core/context.js.map +1 -0
  48. package/dist/core/errors.d.ts +38 -0
  49. package/dist/core/errors.js +138 -0
  50. package/dist/core/errors.js.map +1 -0
  51. package/dist/core/network.d.ts +18 -0
  52. package/dist/core/network.js +38 -0
  53. package/dist/core/network.js.map +1 -0
  54. package/dist/core/runner.d.ts +45 -0
  55. package/dist/core/runner.js +219 -0
  56. package/dist/core/runner.js.map +1 -0
  57. package/dist/core/security.d.ts +28 -0
  58. package/dist/core/security.js +83 -0
  59. package/dist/core/security.js.map +1 -0
  60. package/dist/core/wallet.d.ts +2 -0
  61. package/dist/core/wallet.js +21 -0
  62. package/dist/core/wallet.js.map +1 -0
  63. package/dist/index.js +56 -13
  64. package/dist/index.js.map +1 -1
  65. package/dist/lib/domain.d.ts +16 -0
  66. package/dist/lib/domain.js +88 -0
  67. package/dist/lib/domain.js.map +1 -0
  68. package/dist/lib/ika.d.ts +81 -0
  69. package/dist/lib/ika.js +192 -0
  70. package/dist/lib/ika.js.map +1 -0
  71. package/dist/lib/instructions.d.ts +79 -0
  72. package/dist/lib/instructions.js +421 -0
  73. package/dist/lib/instructions.js.map +1 -0
  74. package/dist/lib/protocol.d.ts +99 -0
  75. package/dist/lib/protocol.js +327 -0
  76. package/dist/lib/protocol.js.map +1 -0
  77. package/dist/lib/treasury-view.d.ts +11 -0
  78. package/dist/lib/treasury-view.js +126 -0
  79. package/dist/lib/treasury-view.js.map +1 -0
  80. package/dist/program-instructions.d.ts +1 -1
  81. package/dist/ui/dashboard.d.ts +7 -0
  82. package/dist/ui/dashboard.js +99 -0
  83. package/dist/ui/dashboard.js.map +1 -0
  84. package/dist/ui/format.d.ts +9 -0
  85. package/dist/ui/format.js +92 -0
  86. package/dist/ui/format.js.map +1 -0
  87. package/dist/ui/output.d.ts +58 -0
  88. package/dist/ui/output.js +208 -0
  89. package/dist/ui/output.js.map +1 -0
  90. package/dist/ui/theme.d.ts +52 -0
  91. package/dist/ui/theme.js +110 -0
  92. package/dist/ui/theme.js.map +1 -0
  93. package/dist/vendor/encrypt/generated/grpc/encrypt_service.d.ts +1 -1
  94. package/dist/vendor/encrypt/generated/grpc/encrypt_service.js +36 -13
  95. package/dist/vendor/encrypt/generated/grpc/encrypt_service.js.map +1 -1
  96. package/dist/vendor/encrypt/grpc.d.ts +2 -2
  97. package/dist/vendor/encrypt/grpc.js +1 -3
  98. package/dist/vendor/encrypt/grpc.js.map +1 -1
  99. package/dist/vendor/ika/bcs-types.js +107 -50
  100. package/dist/vendor/ika/bcs-types.js.map +1 -1
  101. package/dist/vendor/ika/generated/grpc/ika_dwallet.d.ts +1 -1
  102. package/dist/vendor/ika/generated/grpc/ika_dwallet.js +14 -4
  103. package/dist/vendor/ika/generated/grpc/ika_dwallet.js.map +1 -1
  104. package/dist/vendor/ika/grpc.d.ts +1 -1
  105. package/dist/vendor/ika/grpc.js +49 -24
  106. package/dist/vendor/ika/grpc.js.map +1 -1
  107. package/package.json +15 -12
  108. package/dist/ascii.d.ts +0 -1
  109. package/dist/ascii.js +0 -2
  110. package/dist/ascii.js.map +0 -1
@@ -1,43 +1,43 @@
1
+ import { accounts, instructions, validateAgentId, } from "@aura-protocol/sdk-ts";
1
2
  import { PublicKey } from "@solana/web3.js";
2
- import {} from "commander";
3
- import { buildCliContext } from "../context.js";
4
- import { formatPubkey } from "../format.js";
5
- import { createTable, emitJson, printBanner, printSuccess, serializeInstruction, startSpinner, } from "../output.js";
6
- import { validateAgentId } from "../sdk.js";
7
- import { renderTreasurySections } from "../treasury-view.js";
8
- import { getActivePendingProposal, sendInstructionsWithBudget } from "../protocol.js";
9
- import { buildCreateTreasuryArgs, buildProposeTransactionArgs, confirmOrSkip, promptChain, promptNumber, promptString, promptTransactionType, resolveTreasuryAccount, } from "./helpers.js";
10
- const TREASURY_OWNER_OFFSET = 9;
11
- async function renderTreasuryView(command, treasury, account) {
12
- const ctx = buildCliContext(command);
3
+ import BN from "bn.js";
4
+ import { buildCliContext } from "../core/context.js";
5
+ import { CliError } from "../core/errors.js";
6
+ import { runInstructions } from "../core/runner.js";
7
+ import { getActivePendingProposal } from "../lib/protocol.js";
8
+ import { renderTreasurySections } from "../lib/treasury-view.js";
9
+ import { formatPubkey } from "../ui/format.js";
10
+ import { createTable, emitJson, printBanner, printInfo } from "../ui/output.js";
11
+ import { style } from "../ui/theme.js";
12
+ import { buildCreateTreasuryArgs, buildProposeTransactionArgs, promptChain, promptNumber, promptString, promptTransactionType, resolveTreasuryAccount, } from "./helpers.js";
13
+ // Anchor discriminator (8) + schema_version u8 (1) + bump u8 (1) = 10
14
+ const TREASURY_OWNER_OFFSET = 10;
15
+ function renderTreasuryView(ctx, treasury, account) {
13
16
  if (ctx.output.json) {
14
17
  emitJson(ctx.output, { treasury, account });
15
18
  return;
16
19
  }
17
20
  const sections = renderTreasurySections(treasury, account);
18
- printBanner(ctx.output, `Treasury: ${account.agentId}`);
21
+ printBanner(ctx.output, `Treasury: ${account.agentId}`, treasury.toBase58());
19
22
  console.log(sections.overview);
20
23
  console.log("");
21
24
  console.log(sections.policy);
22
- if (sections.confidential) {
23
- console.log("");
24
- console.log(sections.confidential);
25
- }
26
- if (sections.dwallets) {
27
- console.log("");
28
- console.log(sections.dwallets);
29
- }
30
- if (sections.pending) {
31
- console.log("");
32
- console.log(sections.pending);
33
- }
34
- if (sections.governance) {
35
- console.log("");
36
- console.log(sections.governance);
25
+ for (const section of [
26
+ sections.confidential,
27
+ sections.dwallets,
28
+ sections.pending,
29
+ sections.governance,
30
+ ]) {
31
+ if (section) {
32
+ console.log("");
33
+ console.log(section);
34
+ }
37
35
  }
38
36
  }
39
37
  export function registerTreasuryCommands(program) {
40
- const treasury = program.command("treasury").description("Manage AURA treasuries");
38
+ const treasury = program
39
+ .command("treasury")
40
+ .description("Create and manage AURA treasuries");
41
41
  treasury
42
42
  .command("create")
43
43
  .description("Create a new agent treasury")
@@ -53,61 +53,74 @@ export function registerTreasuryCommands(program) {
53
53
  .option("--ai-authority <pubkey>", "AI authority pubkey")
54
54
  .action(async function treasuryCreate() {
55
55
  const ctx = buildCliContext(this);
56
- if (!ctx.wallet) {
57
- throw new Error("A wallet is required to create a treasury.");
56
+ const wallet = ctx.wallet;
57
+ if (!wallet) {
58
+ throw new CliError("A wallet is required to create a treasury.", {
59
+ code: "WALLET_REQUIRED",
60
+ tip: "Run `aura config init` or pass --wallet <path>.",
61
+ });
58
62
  }
59
63
  const options = this.opts();
60
- const agentId = await promptString(typeof options["agentId"] === "string" ? options["agentId"] : ctx.config.defaultAgentId ?? undefined, "Agent ID", { validate: validateAgentId });
61
- const dailyLimitUsd = await promptNumber(typeof options["dailyLimit"] === "number" ? options["dailyLimit"] : undefined, "Daily limit (USD)", { validate: (value) => value > 0 || (() => { throw new Error("Daily limit must be > 0"); })() });
62
- const perTxLimitUsd = await promptNumber(typeof options["perTxLimit"] === "number" ? options["perTxLimit"] : undefined, "Per-transaction limit (USD)", { validate: (value) => value > 0 || (() => { throw new Error("Per-tx limit must be > 0"); })() });
64
+ const agentId = await promptString(typeof options.agentId === "string"
65
+ ? options.agentId
66
+ : (ctx.config.defaultAgentId ?? undefined), "Agent ID", { validate: validateAgentId });
67
+ const dailyLimitUsd = await promptNumber(typeof options.dailyLimit === "number" ? options.dailyLimit : undefined, "Daily limit (USD)", {
68
+ validate: (value) => {
69
+ if (value <= 0)
70
+ throw new Error("Daily limit must be > 0");
71
+ },
72
+ });
73
+ const perTxLimitUsd = await promptNumber(typeof options.perTxLimit === "number" ? options.perTxLimit : undefined, "Per-transaction limit (USD)", {
74
+ validate: (value) => {
75
+ if (value <= 0)
76
+ throw new Error("Per-tx limit must be > 0");
77
+ },
78
+ });
79
+ const aiAuthority = typeof options.aiAuthority === "string"
80
+ ? new PublicKey(options.aiAuthority)
81
+ : wallet.publicKey;
63
82
  const args = buildCreateTreasuryArgs({
64
83
  agentId,
65
- aiAuthority: typeof options["aiAuthority"] === "string"
66
- ? new PublicKey(options["aiAuthority"])
67
- : ctx.wallet.publicKey,
84
+ aiAuthority,
68
85
  dailyLimitUsd,
69
86
  perTxLimitUsd,
70
- daytimeHourlyLimitUsd: typeof options["daytimeHourlyLimit"] === "number"
71
- ? options["daytimeHourlyLimit"]
87
+ daytimeHourlyLimitUsd: typeof options.daytimeHourlyLimit === "number"
88
+ ? options.daytimeHourlyLimit
89
+ : undefined,
90
+ nighttimeHourlyLimitUsd: typeof options.nighttimeHourlyLimit === "number"
91
+ ? options.nighttimeHourlyLimit
92
+ : undefined,
93
+ velocityLimitUsd: typeof options.velocityLimit === "number"
94
+ ? options.velocityLimit
72
95
  : undefined,
73
- nighttimeHourlyLimitUsd: typeof options["nighttimeHourlyLimit"] === "number"
74
- ? options["nighttimeHourlyLimit"]
96
+ maxSlippageBps: typeof options.maxSlippageBps === "number"
97
+ ? options.maxSlippageBps
75
98
  : undefined,
76
- velocityLimitUsd: typeof options["velocityLimit"] === "number" ? options["velocityLimit"] : undefined,
77
- maxSlippageBps: typeof options["maxSlippageBps"] === "number" ? options["maxSlippageBps"] : undefined,
78
- maxQuoteAgeSecs: typeof options["maxQuoteAge"] === "number" ? options["maxQuoteAge"] : undefined,
79
- pendingTransactionTtlSecs: typeof options["ttl"] === "number" ? options["ttl"] : undefined,
99
+ maxQuoteAgeSecs: typeof options.maxQuoteAge === "number"
100
+ ? options.maxQuoteAge
101
+ : undefined,
102
+ pendingTransactionTtlSecs: typeof options.ttl === "number" ? options.ttl : undefined,
80
103
  });
81
- if (ctx.dryRun) {
82
- const dryRun = await ctx.client.createTreasuryInstruction({
83
- owner: ctx.wallet.publicKey,
84
- args,
85
- });
86
- emitJson(ctx.output, {
87
- action: "treasury.create",
88
- treasury: dryRun.treasury,
89
- args,
90
- instruction: serializeInstruction(dryRun.instruction),
91
- });
92
- return;
93
- }
94
- const spinner = startSpinner(ctx.output, "Creating treasury on devnet...");
95
- const built = await ctx.client.createTreasuryInstruction({
96
- owner: ctx.wallet.publicKey,
104
+ const prepared = accounts.createTreasuryInput({
105
+ owner: wallet.publicKey,
97
106
  args,
107
+ programId: ctx.programId,
98
108
  });
99
- const signature = await sendInstructionsWithBudget({
100
- connection: ctx.connection,
101
- payer: ctx.wallet,
102
- instructions: [built.instruction],
109
+ const instruction = await instructions.treasury.createTreasury(ctx.client, prepared.input);
110
+ const outcome = await runInstructions(ctx, [instruction], {
111
+ action: "Create treasury",
112
+ instructionName: "create_treasury",
113
+ summary: [
114
+ ["agent", agentId],
115
+ ["treasury", prepared.treasury.toBase58()],
116
+ ["daily", `$${dailyLimitUsd}`],
117
+ ["per-tx", `$${perTxLimitUsd}`],
118
+ ],
119
+ result: { treasury: prepared.treasury },
103
120
  });
104
- const result = { treasury: built.treasury, signature };
105
- spinner.succeed("Treasury created");
106
- if (ctx.output.json) {
107
- emitJson(ctx.output, result);
108
- return;
121
+ if (outcome.signature && !ctx.output.json) {
122
+ printInfo(ctx.output, `${style.muted("treasury")} ${prepared.treasury.toBase58()}`);
109
123
  }
110
- printSuccess(ctx.output, `Treasury created: ${result.treasury.toBase58()}`);
111
124
  });
112
125
  treasury
113
126
  .command("show")
@@ -119,21 +132,21 @@ export function registerTreasuryCommands(program) {
119
132
  .action(async function treasuryShow() {
120
133
  const ctx = buildCliContext(this);
121
134
  const options = this.opts();
122
- const intervalMs = typeof options["interval"] === "number" && options["interval"] > 0
123
- ? Math.floor(options["interval"] * 1000)
135
+ const intervalMs = typeof options.interval === "number" && options.interval > 0
136
+ ? Math.floor(options.interval * 1000)
124
137
  : 5000;
125
138
  const renderOnce = async () => {
126
139
  const { treasury, account } = await resolveTreasuryAccount(ctx, {
127
- agentId: typeof options["agentId"] === "string" ? options["agentId"] : undefined,
128
- treasury: typeof options["treasury"] === "string" ? options["treasury"] : undefined,
140
+ agentId: typeof options.agentId === "string" ? options.agentId : undefined,
141
+ treasury: typeof options.treasury === "string" ? options.treasury : undefined,
129
142
  });
130
- if (!ctx.output.json && options["watch"] === true) {
143
+ if (!ctx.output.json && options.watch === true) {
131
144
  console.clear();
132
145
  }
133
- await renderTreasuryView(this, treasury, account);
146
+ renderTreasuryView(ctx, treasury, account);
134
147
  };
135
- if (options["watch"] === true) {
136
- while (true) {
148
+ if (options.watch === true) {
149
+ for (;;) {
137
150
  await renderOnce();
138
151
  await new Promise((resolve) => setTimeout(resolve, intervalMs));
139
152
  }
@@ -146,9 +159,12 @@ export function registerTreasuryCommands(program) {
146
159
  .action(async function treasuryList() {
147
160
  const ctx = buildCliContext(this);
148
161
  if (!ctx.wallet) {
149
- throw new Error("A wallet is required to list treasuries.");
162
+ throw new CliError("A wallet is required to list treasuries.", {
163
+ code: "WALLET_REQUIRED",
164
+ tip: "Run `aura config init` or pass --wallet <path>.",
165
+ });
150
166
  }
151
- const accounts = await ctx.client.program.account.treasuryAccount.all([
167
+ const owned = await ctx.client.program.account.treasuryAccount.all([
152
168
  {
153
169
  memcmp: {
154
170
  offset: TREASURY_OWNER_OFFSET,
@@ -157,19 +173,21 @@ export function registerTreasuryCommands(program) {
157
173
  },
158
174
  ]);
159
175
  if (ctx.output.json) {
160
- emitJson(ctx.output, accounts.map((entry) => ({
176
+ emitJson(ctx.output, owned.map((entry) => ({
161
177
  treasury: entry.publicKey,
162
178
  account: entry.account,
163
179
  })));
164
180
  return;
165
181
  }
166
- printBanner(ctx.output, `Treasuries (${accounts.length})`);
182
+ printBanner(ctx.output, "Treasuries", `${owned.length} owned`);
167
183
  const table = createTable(["Agent ID", "PDA", "Status", "Total Tx"]);
168
- for (const entry of accounts) {
184
+ for (const entry of owned) {
169
185
  table.push([
170
186
  entry.account.agentId,
171
187
  formatPubkey(entry.publicKey),
172
- entry.account.executionPaused ? "Paused" : "Active",
188
+ entry.account.executionPaused
189
+ ? style.warn("Paused")
190
+ : style.success("Active"),
173
191
  String(entry.account.totalTransactions),
174
192
  ]);
175
193
  }
@@ -191,108 +209,114 @@ export function registerTreasuryCommands(program) {
191
209
  .option("--counterparty-risk <score>", "counterparty risk score", Number)
192
210
  .action(async function treasuryPropose() {
193
211
  const ctx = buildCliContext(this);
194
- if (!ctx.wallet) {
195
- throw new Error("A wallet is required to propose a transaction.");
212
+ const wallet = ctx.wallet;
213
+ if (!wallet) {
214
+ throw new CliError("A wallet is required to propose a transaction.", {
215
+ code: "WALLET_REQUIRED",
216
+ });
196
217
  }
197
218
  const options = this.opts();
198
219
  const treasuryState = await resolveTreasuryAccount(ctx, {
199
- agentId: typeof options["agentId"] === "string" ? options["agentId"] : undefined,
200
- treasury: typeof options["treasury"] === "string" ? options["treasury"] : undefined,
220
+ agentId: typeof options.agentId === "string" ? options.agentId : undefined,
221
+ treasury: typeof options.treasury === "string" ? options.treasury : undefined,
222
+ });
223
+ const amountUsd = await promptNumber(typeof options.amount === "number" ? options.amount : undefined, "Amount (USD)", {
224
+ validate: (value) => {
225
+ if (value <= 0)
226
+ throw new Error("Amount must be > 0");
227
+ },
201
228
  });
202
- const amountUsd = await promptNumber(typeof options["amount"] === "number" ? options["amount"] : undefined, "Amount (USD)", { validate: (value) => value > 0 || (() => { throw new Error("Amount must be > 0"); })() });
203
- const chain = await promptChain(typeof options["chain"] === "string" || typeof options["chain"] === "number"
204
- ? options["chain"]
229
+ const chain = await promptChain(typeof options.chain === "string" || typeof options.chain === "number"
230
+ ? options.chain
205
231
  : undefined, "Chain");
206
- const recipient = await promptString(typeof options["recipient"] === "string" ? options["recipient"] : undefined, "Recipient");
207
- const txType = await promptTransactionType(typeof options["txType"] === "string" || typeof options["txType"] === "number"
208
- ? options["txType"]
232
+ const recipient = await promptString(typeof options.recipient === "string" ? options.recipient : undefined, "Recipient");
233
+ const txType = await promptTransactionType(typeof options.txType === "string" || typeof options.txType === "number"
234
+ ? options.txType
209
235
  : undefined, "Transaction type");
210
236
  const args = buildProposeTransactionArgs({
211
237
  amountUsd,
212
238
  chain,
213
239
  txType,
214
240
  recipient,
215
- protocolId: typeof options["protocolId"] === "number" ? options["protocolId"] : undefined,
216
- expectedOutputUsd: typeof options["expectedOutput"] === "number" ? options["expectedOutput"] : undefined,
217
- actualOutputUsd: typeof options["actualOutput"] === "number" ? options["actualOutput"] : undefined,
218
- quoteAgeSecs: typeof options["quoteAge"] === "number" ? options["quoteAge"] : undefined,
219
- counterpartyRiskScore: typeof options["counterpartyRisk"] === "number"
220
- ? options["counterpartyRisk"]
241
+ protocolId: typeof options.protocolId === "number"
242
+ ? options.protocolId
243
+ : undefined,
244
+ expectedOutputUsd: typeof options.expectedOutput === "number"
245
+ ? options.expectedOutput
246
+ : undefined,
247
+ actualOutputUsd: typeof options.actualOutput === "number"
248
+ ? options.actualOutput
249
+ : undefined,
250
+ quoteAgeSecs: typeof options.quoteAge === "number" ? options.quoteAge : undefined,
251
+ counterpartyRiskScore: typeof options.counterpartyRisk === "number"
252
+ ? options.counterpartyRisk
221
253
  : undefined,
222
254
  });
223
- if (ctx.dryRun) {
224
- const instruction = await ctx.client.proposeTransactionInstruction({ aiAuthority: ctx.wallet.publicKey, treasury: treasuryState.treasury }, args);
225
- emitJson(ctx.output, {
226
- action: "treasury.propose",
255
+ const instruction = await instructions.execution.proposeTransaction(ctx.client, {
256
+ accounts: {
257
+ aiAuthority: wallet.publicKey,
227
258
  treasury: treasuryState.treasury,
228
- args,
229
- instruction: serializeInstruction(instruction),
230
- });
231
- return;
232
- }
233
- const spinner = startSpinner(ctx.output, "Submitting proposal...");
234
- const instruction = await ctx.client.proposeTransactionInstruction({ aiAuthority: ctx.wallet.publicKey, treasury: treasuryState.treasury }, args);
235
- const signature = await sendInstructionsWithBudget({
236
- connection: ctx.connection,
237
- payer: ctx.wallet,
238
- instructions: [instruction],
259
+ sessionKeyAccount: null,
260
+ swarmPool: null,
261
+ addressList: null,
262
+ complianceOracle: null,
263
+ parentTreasury: null,
264
+ budgetEnvelope: null,
265
+ exposureGroup: null,
266
+ dwalletState: null,
267
+ chainProfile: null,
268
+ trustIdentity: null,
269
+ policyCanary: null,
270
+ },
271
+ args,
272
+ });
273
+ await runInstructions(ctx, [instruction], {
274
+ action: "Propose transaction",
275
+ instructionName: "propose_transaction",
276
+ summary: [
277
+ ["amount", `$${amountUsd}`],
278
+ ["recipient", recipient],
279
+ ],
280
+ result: { treasury: treasuryState.treasury },
239
281
  });
240
- spinner.succeed("Proposal submitted");
241
- if (ctx.output.json) {
242
- emitJson(ctx.output, {
243
- treasury: treasuryState.treasury,
244
- signature,
245
- });
246
- return;
247
- }
248
- printSuccess(ctx.output, `Proposal submitted: ${signature}`);
249
282
  });
250
283
  treasury
251
284
  .command("cancel")
252
285
  .description("Cancel the current pending transaction")
253
286
  .option("--agent-id <id>", "treasury agent ID")
254
287
  .option("--treasury <pda>", "treasury PDA")
255
- .option("--yes", "skip confirmation")
256
288
  .action(async function treasuryCancel() {
257
289
  const ctx = buildCliContext(this);
258
- if (!ctx.wallet) {
259
- throw new Error("A wallet is required to cancel a pending transaction.");
290
+ const wallet = ctx.wallet;
291
+ if (!wallet) {
292
+ throw new CliError("A wallet is required to cancel a pending transaction.", {
293
+ code: "WALLET_REQUIRED",
294
+ });
260
295
  }
261
296
  const options = this.opts();
262
297
  const treasuryState = await resolveTreasuryAccount(ctx, {
263
- agentId: typeof options["agentId"] === "string" ? options["agentId"] : undefined,
264
- treasury: typeof options["treasury"] === "string" ? options["treasury"] : undefined,
298
+ agentId: typeof options.agentId === "string" ? options.agentId : undefined,
299
+ treasury: typeof options.treasury === "string" ? options.treasury : undefined,
265
300
  });
266
301
  if (!getActivePendingProposal(treasuryState.account)) {
267
- throw new Error("This treasury has no pending transaction to cancel.");
268
- }
269
- const confirmed = await confirmOrSkip(options["yes"] === true, "Cancel the current pending transaction?");
270
- if (!confirmed) {
271
- return;
272
- }
273
- const now = Math.floor(Date.now() / 1000);
274
- if (ctx.dryRun) {
275
- const instruction = await ctx.client.cancelPendingInstruction({ owner: ctx.wallet.publicKey, treasury: treasuryState.treasury }, now);
276
- emitJson(ctx.output, {
277
- action: "treasury.cancel",
278
- treasury: treasuryState.treasury,
279
- instruction: serializeInstruction(instruction),
302
+ throw new CliError("This treasury has no pending transaction to cancel.", {
303
+ code: "NO_PENDING",
280
304
  });
281
- return;
282
305
  }
283
- const spinner = startSpinner(ctx.output, "Cancelling pending transaction...");
284
- const instruction = await ctx.client.cancelPendingInstruction({ owner: ctx.wallet.publicKey, treasury: treasuryState.treasury }, now);
285
- const signature = await sendInstructionsWithBudget({
286
- connection: ctx.connection,
287
- payer: ctx.wallet,
288
- instructions: [instruction],
306
+ const instruction = await instructions.execution.cancelPending(ctx.client, {
307
+ accounts: {
308
+ owner: wallet.publicKey,
309
+ treasury: treasuryState.treasury,
310
+ dwalletState: null,
311
+ },
312
+ args: { now: new BN(nowSeconds()) },
313
+ });
314
+ await runInstructions(ctx, [instruction], {
315
+ action: "Cancel pending transaction",
316
+ instructionName: "cancel_pending",
317
+ confirm: true,
318
+ result: { treasury: treasuryState.treasury },
289
319
  });
290
- spinner.succeed("Pending transaction cancelled");
291
- if (ctx.output.json) {
292
- emitJson(ctx.output, { treasury: treasuryState.treasury, signature });
293
- return;
294
- }
295
- printSuccess(ctx.output, `Pending transaction cancelled: ${signature}`);
296
320
  });
297
321
  treasury
298
322
  .command("pause")
@@ -300,45 +324,36 @@ export function registerTreasuryCommands(program) {
300
324
  .option("--agent-id <id>", "treasury agent ID")
301
325
  .option("--treasury <pda>", "treasury PDA")
302
326
  .option("--unpause", "unpause instead of pause")
303
- .option("--yes", "skip confirmation")
304
327
  .action(async function treasuryPause() {
305
328
  const ctx = buildCliContext(this);
306
- if (!ctx.wallet) {
307
- throw new Error("A wallet is required to pause or unpause a treasury.");
329
+ const wallet = ctx.wallet;
330
+ if (!wallet) {
331
+ throw new CliError("A wallet is required to pause or unpause a treasury.", {
332
+ code: "WALLET_REQUIRED",
333
+ });
308
334
  }
309
335
  const options = this.opts();
310
336
  const treasuryState = await resolveTreasuryAccount(ctx, {
311
- agentId: typeof options["agentId"] === "string" ? options["agentId"] : undefined,
312
- treasury: typeof options["treasury"] === "string" ? options["treasury"] : undefined,
337
+ agentId: typeof options.agentId === "string" ? options.agentId : undefined,
338
+ treasury: typeof options.treasury === "string" ? options.treasury : undefined,
313
339
  });
314
- const paused = options["unpause"] !== true;
315
- const confirmed = await confirmOrSkip(options["yes"] === true, paused ? "Pause this treasury?" : "Unpause this treasury?");
316
- if (!confirmed) {
317
- return;
318
- }
319
- const now = Math.floor(Date.now() / 1000);
320
- if (ctx.dryRun) {
321
- const instruction = await ctx.client.pauseExecutionInstruction({ owner: ctx.wallet.publicKey, treasury: treasuryState.treasury }, paused, now);
322
- emitJson(ctx.output, {
323
- action: paused ? "treasury.pause" : "treasury.unpause",
340
+ const paused = options.unpause !== true;
341
+ const instruction = await instructions.execution.pauseExecution(ctx.client, {
342
+ accounts: {
343
+ owner: wallet.publicKey,
324
344
  treasury: treasuryState.treasury,
325
- instruction: serializeInstruction(instruction),
326
- });
327
- return;
328
- }
329
- const spinner = startSpinner(ctx.output, paused ? "Pausing treasury..." : "Unpausing treasury...");
330
- const instruction = await ctx.client.pauseExecutionInstruction({ owner: ctx.wallet.publicKey, treasury: treasuryState.treasury }, paused, now);
331
- const signature = await sendInstructionsWithBudget({
332
- connection: ctx.connection,
333
- payer: ctx.wallet,
334
- instructions: [instruction],
345
+ },
346
+ args: { paused, now: new BN(nowSeconds()) },
347
+ });
348
+ await runInstructions(ctx, [instruction], {
349
+ action: paused ? "Pause treasury" : "Unpause treasury",
350
+ instructionName: "pause_execution",
351
+ confirm: true,
352
+ result: { treasury: treasuryState.treasury, paused },
335
353
  });
336
- spinner.succeed(paused ? "Treasury paused" : "Treasury unpaused");
337
- if (ctx.output.json) {
338
- emitJson(ctx.output, { treasury: treasuryState.treasury, paused, signature });
339
- return;
340
- }
341
- printSuccess(ctx.output, `${paused ? "Treasury paused" : "Treasury unpaused"}: ${signature}`);
342
354
  });
343
355
  }
356
+ function nowSeconds() {
357
+ return Math.floor(Date.now() / 1000);
358
+ }
344
359
  //# sourceMappingURL=treasury.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"treasury.js","sourceRoot":"","sources":["../../src/commands/treasury.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"treasury.js","sourceRoot":"","sources":["../../src/commands/treasury.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ export type ConfigSource = "flag" | "env" | "config" | "default";
2
+ export interface AuraCliConfig {
3
+ rpcUrl: string;
4
+ walletPath: string;
5
+ cluster: string;
6
+ programId: string;
7
+ defaultAgentId: string | null;
8
+ }
9
+ export interface ResolvedField<T> {
10
+ value: T;
11
+ source: ConfigSource;
12
+ }
13
+ export interface ResolvedAuraCliConfig {
14
+ rpcUrl: ResolvedField<string>;
15
+ walletPath: ResolvedField<string>;
16
+ cluster: ResolvedField<string>;
17
+ programId: ResolvedField<string>;
18
+ defaultAgentId: ResolvedField<string | null>;
19
+ }
20
+ export interface AuraCliConfigOverrides {
21
+ rpcUrl?: string;
22
+ walletPath?: string;
23
+ cluster?: string;
24
+ programId?: string;
25
+ defaultAgentId?: string | null;
26
+ }
27
+ export declare const DEFAULT_CONFIG: AuraCliConfig;
28
+ export declare function expandHome(inputPath: string): string;
29
+ export declare function compactHome(inputPath: string): string;
30
+ export declare function getConfigDir(): string;
31
+ export declare function getConfigPath(): string;
32
+ export declare function readConfigFile(): Partial<AuraCliConfig>;
33
+ export declare function writeConfigFile(config: Partial<AuraCliConfig>): string;
34
+ export declare function resolveConfig(overrides?: AuraCliConfigOverrides, env?: NodeJS.ProcessEnv): ResolvedAuraCliConfig;
35
+ export declare function flattenResolvedConfig(resolved: ResolvedAuraCliConfig): AuraCliConfig;