@intent-engine/cli 0.1.42 → 0.1.44

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 (194) hide show
  1. package/dist/src/accounts.d.ts +4 -2
  2. package/dist/src/accounts.js +5 -4
  3. package/dist/src/accounts.js.map +1 -1
  4. package/dist/src/add-to.d.ts +2 -0
  5. package/dist/src/add-to.js +9 -3
  6. package/dist/src/add-to.js.map +1 -1
  7. package/dist/src/admin-commands.d.ts +22 -1
  8. package/dist/src/admin-commands.js +44 -12
  9. package/dist/src/admin-commands.js.map +1 -1
  10. package/dist/src/agent/actions.d.ts +1 -0
  11. package/dist/src/agent/actions.js +15 -1
  12. package/dist/src/agent/actions.js.map +1 -1
  13. package/dist/src/agent/budget.d.ts +5 -5
  14. package/dist/src/agent/budget.js +26 -6
  15. package/dist/src/agent/budget.js.map +1 -1
  16. package/dist/src/agent/claims.d.ts +2 -1
  17. package/dist/src/agent/claims.js +1 -1
  18. package/dist/src/agent/claims.js.map +1 -1
  19. package/dist/src/agent/create.d.ts +16 -7
  20. package/dist/src/agent/create.js +25 -3
  21. package/dist/src/agent/create.js.map +1 -1
  22. package/dist/src/agent/jobs.js +8 -3
  23. package/dist/src/agent/jobs.js.map +1 -1
  24. package/dist/src/agent/mandate-agent.js +3 -2
  25. package/dist/src/agent/mandate-agent.js.map +1 -1
  26. package/dist/src/agent/mandate-revoke.js +1 -1
  27. package/dist/src/agent/mandate-revoke.js.map +1 -1
  28. package/dist/src/agent/owner.js +4 -2
  29. package/dist/src/agent/owner.js.map +1 -1
  30. package/dist/src/agent/prepare.d.ts +1 -1
  31. package/dist/src/agent/prepare.js +9 -2
  32. package/dist/src/agent/prepare.js.map +1 -1
  33. package/dist/src/agent/problems.d.ts +18 -0
  34. package/dist/src/agent/problems.js +39 -15
  35. package/dist/src/agent/problems.js.map +1 -1
  36. package/dist/src/agent/profile.d.ts +1 -0
  37. package/dist/src/agent/profile.js +30 -5
  38. package/dist/src/agent/profile.js.map +1 -1
  39. package/dist/src/agent/read.js +3 -4
  40. package/dist/src/agent/read.js.map +1 -1
  41. package/dist/src/agent/reputation.js +16 -7
  42. package/dist/src/agent/reputation.js.map +1 -1
  43. package/dist/src/agent/sales.js +17 -23
  44. package/dist/src/agent/sales.js.map +1 -1
  45. package/dist/src/agent/settle.js +1 -0
  46. package/dist/src/agent/settle.js.map +1 -1
  47. package/dist/src/agent/signed-prepare.js +3 -2
  48. package/dist/src/agent/signed-prepare.js.map +1 -1
  49. package/dist/src/agent/signed-relay.d.ts +1 -1
  50. package/dist/src/agent/signed-relay.js +2 -1
  51. package/dist/src/agent/signed-relay.js.map +1 -1
  52. package/dist/src/agent/signed-submit.js +7 -5
  53. package/dist/src/agent/signed-submit.js.map +1 -1
  54. package/dist/src/agent/signed-terms.d.ts +1 -5
  55. package/dist/src/agent/spec.js +16 -4
  56. package/dist/src/agent/spec.js.map +1 -1
  57. package/dist/src/agent/wallet/account.js +2 -1
  58. package/dist/src/agent/wallet/account.js.map +1 -1
  59. package/dist/src/agent/wallet/attest.d.ts +2 -0
  60. package/dist/src/agent/wallet/attest.js +46 -24
  61. package/dist/src/agent/wallet/attest.js.map +1 -1
  62. package/dist/src/agent/wallet/committee.js +29 -17
  63. package/dist/src/agent/wallet/committee.js.map +1 -1
  64. package/dist/src/agent/wallet/delivery.d.ts +4 -1
  65. package/dist/src/agent/wallet/delivery.js +80 -23
  66. package/dist/src/agent/wallet/delivery.js.map +1 -1
  67. package/dist/src/agent/wallet/escrow.d.ts +1 -0
  68. package/dist/src/agent/wallet/escrow.js +81 -18
  69. package/dist/src/agent/wallet/escrow.js.map +1 -1
  70. package/dist/src/agent/wallet/fills.js +4 -3
  71. package/dist/src/agent/wallet/fills.js.map +1 -1
  72. package/dist/src/agent/wallet/guard.d.ts +32 -0
  73. package/dist/src/agent/wallet/guard.js +131 -9
  74. package/dist/src/agent/wallet/guard.js.map +1 -1
  75. package/dist/src/agent/wallet/history.js +2 -2
  76. package/dist/src/agent/wallet/history.js.map +1 -1
  77. package/dist/src/agent/wallet/offer.d.ts +18 -0
  78. package/dist/src/agent/wallet/offer.js +2 -1
  79. package/dist/src/agent/wallet/offer.js.map +1 -1
  80. package/dist/src/agent/wallet/openings.d.ts +37 -0
  81. package/dist/src/agent/wallet/openings.js +73 -0
  82. package/dist/src/agent/wallet/openings.js.map +1 -0
  83. package/dist/src/agent/wallet/receipt.d.ts +6 -0
  84. package/dist/src/agent/wallet/receipt.js +21 -3
  85. package/dist/src/agent/wallet/receipt.js.map +1 -1
  86. package/dist/src/agent/wallet/record.d.ts +3 -2
  87. package/dist/src/agent/wallet/record.js +16 -10
  88. package/dist/src/agent/wallet/record.js.map +1 -1
  89. package/dist/src/agent/wallet/split.d.ts +1 -0
  90. package/dist/src/agent/wallet/split.js +84 -57
  91. package/dist/src/agent/wallet/split.js.map +1 -1
  92. package/dist/src/agent/wallet/trade.js +2 -1
  93. package/dist/src/agent/wallet/trade.js.map +1 -1
  94. package/dist/src/agent/wallet/unwrap.js +2 -1
  95. package/dist/src/agent/wallet/unwrap.js.map +1 -1
  96. package/dist/src/agent/work-claims.js +3 -2
  97. package/dist/src/agent/work-claims.js.map +1 -1
  98. package/dist/src/arg-admin.d.ts +1 -1
  99. package/dist/src/arg-admin.js +4 -0
  100. package/dist/src/arg-admin.js.map +1 -1
  101. package/dist/src/arg-options.d.ts +70 -2
  102. package/dist/src/arg-options.js +36 -10
  103. package/dist/src/arg-options.js.map +1 -1
  104. package/dist/src/arg-solve.d.ts +6 -0
  105. package/dist/src/arg-solve.js +46 -1
  106. package/dist/src/arg-solve.js.map +1 -1
  107. package/dist/src/arg-usage.d.ts +2 -2
  108. package/dist/src/arg-usage.js +40 -36
  109. package/dist/src/arg-usage.js.map +1 -1
  110. package/dist/src/arg-values.d.ts +20 -1
  111. package/dist/src/arg-values.js +72 -2
  112. package/dist/src/arg-values.js.map +1 -1
  113. package/dist/src/args.d.ts +4 -1
  114. package/dist/src/args.js +39 -9
  115. package/dist/src/args.js.map +1 -1
  116. package/dist/src/claim-commands.js +24 -4
  117. package/dist/src/claim-commands.js.map +1 -1
  118. package/dist/src/clusters.d.ts +1 -0
  119. package/dist/src/clusters.js +1 -0
  120. package/dist/src/clusters.js.map +1 -1
  121. package/dist/src/command-types.d.ts +49 -1
  122. package/dist/src/commands.js +37 -8
  123. package/dist/src/commands.js.map +1 -1
  124. package/dist/src/committee-commands.d.ts +13 -2
  125. package/dist/src/committee-commands.js +58 -11
  126. package/dist/src/committee-commands.js.map +1 -1
  127. package/dist/src/crank.d.ts +3 -3
  128. package/dist/src/crank.js +11 -9
  129. package/dist/src/crank.js.map +1 -1
  130. package/dist/src/float-commands.d.ts +17 -0
  131. package/dist/src/float-commands.js +94 -0
  132. package/dist/src/float-commands.js.map +1 -0
  133. package/dist/src/flow-commands.js +2 -2
  134. package/dist/src/flow-commands.js.map +1 -1
  135. package/dist/src/flows.d.ts +2 -2
  136. package/dist/src/flows.js +8 -2
  137. package/dist/src/flows.js.map +1 -1
  138. package/dist/src/job-args.js +16 -3
  139. package/dist/src/job-args.js.map +1 -1
  140. package/dist/src/job-commands.js +39 -10
  141. package/dist/src/job-commands.js.map +1 -1
  142. package/dist/src/job-filters.d.ts +15 -3
  143. package/dist/src/job-filters.js +31 -6
  144. package/dist/src/job-filters.js.map +1 -1
  145. package/dist/src/judge-digest.d.ts +7 -0
  146. package/dist/src/judge-digest.js +27 -0
  147. package/dist/src/judge-digest.js.map +1 -0
  148. package/dist/src/judge-watch.js +16 -6
  149. package/dist/src/judge-watch.js.map +1 -1
  150. package/dist/src/judge.d.ts +18 -1
  151. package/dist/src/judge.js +87 -17
  152. package/dist/src/judge.js.map +1 -1
  153. package/dist/src/ledger-keys.d.ts +4 -1
  154. package/dist/src/ledger-keys.js +21 -5
  155. package/dist/src/ledger-keys.js.map +1 -1
  156. package/dist/src/legacy-commands.d.ts +8 -0
  157. package/dist/src/legacy-commands.js +94 -0
  158. package/dist/src/legacy-commands.js.map +1 -0
  159. package/dist/src/main.d.ts +3 -0
  160. package/dist/src/main.js +5 -0
  161. package/dist/src/main.js.map +1 -1
  162. package/dist/src/migrate-commands.d.ts +10 -0
  163. package/dist/src/migrate-commands.js +127 -0
  164. package/dist/src/migrate-commands.js.map +1 -0
  165. package/dist/src/monitor-args.d.ts +2 -0
  166. package/dist/src/monitor-args.js +9 -2
  167. package/dist/src/monitor-args.js.map +1 -1
  168. package/dist/src/monitor-fills.d.ts +2 -2
  169. package/dist/src/monitor-fills.js +9 -5
  170. package/dist/src/monitor-fills.js.map +1 -1
  171. package/dist/src/monitor-limits.d.ts +25 -0
  172. package/dist/src/monitor-limits.js +58 -0
  173. package/dist/src/monitor-limits.js.map +1 -0
  174. package/dist/src/monitor.d.ts +10 -1
  175. package/dist/src/monitor.js +81 -31
  176. package/dist/src/monitor.js.map +1 -1
  177. package/dist/src/release-simulation.d.ts +3 -2
  178. package/dist/src/release-simulation.js +1 -0
  179. package/dist/src/release-simulation.js.map +1 -1
  180. package/dist/src/sealed-commands.d.ts +6 -0
  181. package/dist/src/sealed-commands.js +19 -1
  182. package/dist/src/sealed-commands.js.map +1 -1
  183. package/dist/src/solve-commands.d.ts +3 -1
  184. package/dist/src/solve-commands.js +31 -4
  185. package/dist/src/solve-commands.js.map +1 -1
  186. package/dist/src/trust-args.d.ts +4 -2
  187. package/dist/src/trust-args.js +24 -7
  188. package/dist/src/trust-args.js.map +1 -1
  189. package/dist/src/version.d.ts +1 -1
  190. package/dist/src/version.js +1 -1
  191. package/dist/src/wallet.d.ts +8 -2
  192. package/dist/src/wallet.js +44 -7
  193. package/dist/src/wallet.js.map +1 -1
  194. package/package.json +5 -4
@@ -1,4 +1,6 @@
1
1
  import { type Address, type KeyPairSigner, type MessagePartialSigner, type SignatureBytes, type TransactionPartialSigner } from "@solana/kit";
2
+ import { type DeliveryOpener } from "@intent-engine/core";
3
+ import { type DeviceSigner } from "@intent-engine/client";
2
4
  import { type Env, type WalletLimits } from "../../args.js";
3
5
  import { type Files } from "../../wallet.js";
4
6
  import type { AgentContext } from "../actions.js";
@@ -16,6 +18,8 @@ export type WalletAccess = {
16
18
  sleep(seconds: number): Promise<boolean>;
17
19
  now(): bigint;
18
20
  limits: WalletGuard;
21
+ feePayer?: string;
22
+ encryptionKeypairs?: readonly string[];
19
23
  };
20
24
  export type Clock = Pick<WalletAccess, "sleep" | "now">;
21
25
  export declare const SALE_WINDOW = 3600n;
@@ -39,11 +43,29 @@ export declare function access(ctx: AgentContext): WalletAccess;
39
43
  export declare function testCluster(ctx: AgentContext): Promise<WalletAccess>;
40
44
  export declare function savedKeypair(wallet: WalletAccess): Promise<string | undefined>;
41
45
  export declare function walletKeypair(ctx: AgentContext): Promise<Uint8Array | undefined>;
46
+ export declare function walletOpeners(ctx: AgentContext): Promise<DeliveryOpener[]>;
42
47
  export type WalletSigner = TransactionPartialSigner & MessagePartialSigner & {
43
48
  signBytes(bytes: Uint8Array): Promise<SignatureBytes>;
49
+ readonly device?: string;
44
50
  };
45
51
  export declare function guardedSigner(ctx: AgentContext, key: KeyPairSigner): WalletSigner;
52
+ export declare function deviceSigner(ctx: AgentContext, device: DeviceSigner): WalletSigner;
46
53
  export declare function signerOf(ctx: AgentContext): Promise<WalletSigner>;
54
+ export declare const NO_FEE_PAYER = "this wallet is a Ledger, which signs only the release message, never the release transaction; a fee-payer key must sign and pay it: the user restarts the server with mcp --wallet --fee-payer <key file>";
55
+ export declare function feePayerOf(ctx: AgentContext): Promise<WalletSigner>;
56
+ export declare const ONE_AT_A_TIME = "this wallet is a Ledger, which signs only a transaction whose message_hash a preview showed, one at a time; send each piece with its own preview and send";
57
+ export declare function oneAtATime(signer: WalletSigner): void;
58
+ export declare const deviceOutput: {
59
+ message_hash: {
60
+ optional: import("../schema.js").Schema<string>;
61
+ };
62
+ as_previewed: {
63
+ optional: import("../schema.js").Schema<boolean>;
64
+ };
65
+ };
66
+ export declare const DEVICE_COMPARE = "the Ledger shows message_hash when it signs: show it to the user, who approves on the device only if its screen shows the same hash";
67
+ export declare const DEVICE_UNPREVIEWED = "nothing was signed: a Ledger wallet signs only the transaction a preview showed by message_hash, and no preview with these exact arguments is kept; preview it, show message_hash, then send with the same arguments";
68
+ export declare const DEVICE_EXPIRED = "nothing was signed: the transaction this preview showed has expired; preview it again, show the new message_hash, then send with the same arguments";
47
69
  export declare function mintNamed(text: string, url: string, path: string): Address;
48
70
  export declare function raw(tokens: string, decimals: number, path: string): bigint;
49
71
  export declare const nameOf: (mint: Address) => string;
@@ -64,6 +86,16 @@ export declare function sent(ctx: AgentContext, signer: WalletSigner, view: Reco
64
86
  sent: boolean;
65
87
  signature: string;
66
88
  next?: string;
89
+ } | {
90
+ message_hash: string;
91
+ sent: boolean;
92
+ next: string;
93
+ } | {
94
+ message_hash: string;
95
+ as_previewed: boolean;
96
+ sent: boolean;
97
+ signature: string;
98
+ next?: string;
67
99
  }>;
68
100
  export declare function sha256Of(text: string, path: string): string;
69
101
  export declare function rpcRefused(error: unknown): boolean;
@@ -1,14 +1,14 @@
1
1
  import { resolve } from "node:path";
2
- import { isAddress, isSolanaError, signBytes, SOLANA_ERROR__RPC__TRANSPORT_HTTP_ERROR, } from "@solana/kit";
3
- import { formatAmount, parseAmount } from "@intent-engine/core";
4
- import { Charged, neverLanded } from "@intent-engine/client";
2
+ import { getBase64Encoder, getTransactionDecoder, isAddress, isSolanaError, signBytes, SOLANA_ERROR__RPC__TRANSPORT_HTTP_ERROR, } from "@solana/kit";
3
+ import { EncryptionKeyError, formatAmount, parseAmount, readEncryptionKeyFile } from "@intent-engine/core";
4
+ import { Charged, isLedgerPath, LedgerError, ledgerSigner, messageHash, neverLanded, openUsb } from "@intent-engine/client";
5
5
  import { ENV_KEYPAIR, WALLET_NOT_MAINNET } from "../../args.js";
6
6
  import { execute } from "../../flows.js";
7
7
  import { TOKEN_NAMES, tokenNamed } from "../../tokens.js";
8
- import { expandHome, faucetLink, PUBLIC_FAUCET, withSettings } from "../../wallet.js";
8
+ import { expandHome, faucetLink, ledgerBook, PUBLIC_FAUCET, withSettings } from "../../wallet.js";
9
9
  import { tool } from "../names.js";
10
10
  import { AgentRefusal } from "../problems.js";
11
- import { InvalidInput } from "../schema.js";
11
+ import { flag, InvalidInput, optional, text } from "../schema.js";
12
12
  import { fileSales, salesPath } from "../sales.js";
13
13
  export const walletGuard = (limits, book = fileSales()) => ({ limits, book });
14
14
  export const SALE_WINDOW = 3600n;
@@ -67,7 +67,7 @@ export async function walletKeypair(ctx) {
67
67
  return undefined;
68
68
  }
69
69
  const path = await savedKeypair(ctx.wallet);
70
- if (path === undefined) {
70
+ if (path === undefined || isLedgerPath(path)) {
71
71
  return undefined;
72
72
  }
73
73
  try {
@@ -77,6 +77,20 @@ export async function walletKeypair(ctx) {
77
77
  return undefined;
78
78
  }
79
79
  }
80
+ async function encryptionKeyAt(files, path) {
81
+ try {
82
+ return await readEncryptionKeyFile(await files.readText(expandHome(path, files.home)));
83
+ }
84
+ catch (error) {
85
+ throw error instanceof EncryptionKeyError ? new AgentRefusal("EncryptionKeyInvalid", `${path}: ${error.message}`) : error;
86
+ }
87
+ }
88
+ export async function walletOpeners(ctx) {
89
+ const own = await walletKeypair(ctx);
90
+ const files = ctx.wallet?.files;
91
+ const sealed = files === undefined ? [] : await Promise.all((ctx.wallet?.encryptionKeypairs ?? []).map((path) => encryptionKeyAt(files, path)));
92
+ return [...(own === undefined ? [] : [own]), ...sealed];
93
+ }
80
94
  async function notMainnet(ctx) {
81
95
  if ((await ctx.transport.genesisHash()) === MAINNET_GENESIS) {
82
96
  throw new AgentRefusal("WalletNotMainnet", WALLET_NOT_MAINNET);
@@ -94,21 +108,103 @@ export function guardedSigner(ctx, key) {
94
108
  signBytes: (bytes) => checked(() => signBytes(key.keyPair.privateKey, bytes)),
95
109
  });
96
110
  }
111
+ export function deviceSigner(ctx, device) {
112
+ const checked = async (sign) => {
113
+ await notMainnet(ctx);
114
+ return sign();
115
+ };
116
+ const signMessages = (messages, config) => checked(() => device.signMessages(messages, config));
117
+ return Object.freeze({
118
+ address: device.address,
119
+ device: device.device,
120
+ signMessages,
121
+ signTransactions: (transactions, config) => checked(() => device.signTransactions(transactions, config)),
122
+ signBytes: async (bytes) => {
123
+ const [signed] = await signMessages([{ content: bytes, signatures: {} }]);
124
+ const signature = signed?.[device.address];
125
+ if (signature === undefined) {
126
+ throw new LedgerError(`the Ledger returned no signature for ${device.address}; nothing was sent`);
127
+ }
128
+ return signature;
129
+ },
130
+ });
131
+ }
132
+ const devices = new WeakMap();
133
+ function deviceAt(wallet, path) {
134
+ const known = devices.get(wallet.files) ?? new Map();
135
+ devices.set(wallet.files, known);
136
+ const found = known.get(path);
137
+ if (found !== undefined) {
138
+ return found;
139
+ }
140
+ const opening = ledgerSigner(path, wallet.files.ledger ?? openUsb);
141
+ known.set(path, opening);
142
+ opening.catch(() => {
143
+ if (known.get(path) === opening) {
144
+ known.delete(path);
145
+ }
146
+ });
147
+ return opening;
148
+ }
149
+ const keyFile = (wallet, path) => wallet.files.loadSigner(path);
97
150
  export async function signerOf(ctx) {
98
151
  const wallet = await testCluster(ctx);
99
152
  const path = await savedKeypair(wallet);
100
153
  if (path === undefined) {
101
154
  throw new AgentRefusal("NoWallet", NO_WALLET);
102
155
  }
156
+ if (isLedgerPath(path)) {
157
+ return deviceSigner(ctx, await deviceAt(wallet, path));
158
+ }
103
159
  let key;
104
160
  try {
105
- key = await wallet.files.loadSigner(path);
161
+ key = await keyFile(wallet, path);
106
162
  }
107
163
  catch {
108
164
  throw new AgentRefusal("NoWallet", NO_WALLET);
109
165
  }
110
166
  return guardedSigner(ctx, key);
111
167
  }
168
+ export const NO_FEE_PAYER = "this wallet is a Ledger, which signs only the release message, never the release transaction; a fee-payer key must sign and pay it: the user restarts the server with mcp --wallet --fee-payer <key file>";
169
+ export async function feePayerOf(ctx) {
170
+ const wallet = access(ctx);
171
+ if (wallet.feePayer === undefined) {
172
+ throw new AgentRefusal("NoFeePayer", NO_FEE_PAYER);
173
+ }
174
+ return guardedSigner(ctx, await keyFile(wallet, wallet.feePayer));
175
+ }
176
+ export const ONE_AT_A_TIME = "this wallet is a Ledger, which signs only a transaction whose message_hash a preview showed, one at a time; send each piece with its own preview and send";
177
+ export function oneAtATime(signer) {
178
+ if (signer.device !== undefined) {
179
+ throw new AgentRefusal("DeviceUnpreviewed", ONE_AT_A_TIME);
180
+ }
181
+ }
182
+ export const deviceOutput = {
183
+ message_hash: optional(text("on a Ledger wallet, the hash the device shows when it signs this transaction: compare the two before approving")),
184
+ as_previewed: optional(flag("true on a Ledger wallet's send, which signs the transaction its preview kept: every figure in this output is as of that preview, not re-read at send")),
185
+ };
186
+ export const DEVICE_COMPARE = "the Ledger shows message_hash when it signs: show it to the user, who approves on the device only if its screen shows the same hash";
187
+ export const DEVICE_UNPREVIEWED = "nothing was signed: a Ledger wallet signs only the transaction a preview showed by message_hash, and no preview with these exact arguments is kept; preview it, show message_hash, then send with the same arguments";
188
+ export const DEVICE_EXPIRED = "nothing was signed: the transaction this preview showed has expired; preview it again, show the new message_hash, then send with the same arguments";
189
+ const BLOCKHASH_WINDOW = 150n;
190
+ const KEPT_TRANSACTIONS = 16;
191
+ const messageOf = (view) => new Uint8Array(getTransactionDecoder().decode(getBase64Encoder().encode(view.transaction)).messageBytes);
192
+ const keptViews = new WeakMap();
193
+ function keptOf(wallet) {
194
+ const kept = keptViews.get(wallet) ?? new Map();
195
+ keptViews.set(wallet, kept);
196
+ return kept;
197
+ }
198
+ function keep(kept, key, view) {
199
+ kept.delete(key);
200
+ kept.set(key, view);
201
+ for (const old of kept.keys()) {
202
+ if (kept.size <= KEPT_TRANSACTIONS) {
203
+ break;
204
+ }
205
+ kept.delete(old);
206
+ }
207
+ }
112
208
  export function mintNamed(text, url, path) {
113
209
  const mint = tokenNamed(text.trim(), url);
114
210
  if (mint instanceof Error) {
@@ -156,7 +252,10 @@ function capOf(text, decimals, mint) {
156
252
  }
157
253
  export async function bookOf(wallet) {
158
254
  const path = await savedKeypair(wallet);
159
- return path === undefined ? undefined : salesPath(resolve(expandHome(path, wallet.files.home)));
255
+ if (path === undefined) {
256
+ return undefined;
257
+ }
258
+ return isLedgerPath(path) ? ledgerBook(wallet.files.home, path) : salesPath(resolve(expandHome(path, wallet.files.home)));
160
259
  }
161
260
  export const live = (sales, now) => sales.filter((s) => s.at > now - SALE_WINDOW);
162
261
  export async function salesOf(wallet, now) {
@@ -201,6 +300,9 @@ export async function sent(ctx, signer, view, send, call, next) {
201
300
  undo();
202
301
  }
203
302
  const { prepared, ...shown } = view;
303
+ if (signer.device !== undefined && prepared !== undefined) {
304
+ return sentOnDevice(ctx, signer, shown, prepared, send, call, next);
305
+ }
204
306
  if (send !== true) {
205
307
  return { ...shown, sent: false, next: next?.preview ?? PREVIEW_ONLY };
206
308
  }
@@ -208,6 +310,26 @@ export async function sent(ctx, signer, view, send, call, next) {
208
310
  const signature = await execute(ctx.transport, prepared, signer);
209
311
  return { ...shown, sent: true, signature, ...(next?.done === undefined ? {} : { next: next.done }) };
210
312
  }
313
+ async function sentOnDevice(ctx, signer, shown, prepared, send, call, next) {
314
+ const kept = keptOf(access(ctx));
315
+ const key = call.asked ?? "";
316
+ if (send !== true) {
317
+ keep(kept, key, { view: prepared, shown });
318
+ return { ...shown, message_hash: messageHash(messageOf(prepared)), sent: false, next: `${next?.preview ?? PREVIEW_ONLY}; ${DEVICE_COMPARE}` };
319
+ }
320
+ const previewed = call.asked === undefined ? undefined : kept.get(key);
321
+ if (previewed === undefined) {
322
+ throw new AgentRefusal("DeviceUnpreviewed", DEVICE_UNPREVIEWED);
323
+ }
324
+ kept.delete(key);
325
+ const latest = await ctx.transport.latestBlockhash();
326
+ if (latest.lastValidBlockHeight - BLOCKHASH_WINDOW > BigInt(previewed.view.last_valid_block_height)) {
327
+ throw new AgentRefusal("DeviceUnpreviewed", DEVICE_EXPIRED);
328
+ }
329
+ await notMainnet(ctx);
330
+ const signature = await execute(ctx.transport, previewed.view, signer);
331
+ return { ...previewed.shown, message_hash: messageHash(messageOf(previewed.view)), as_previewed: true, sent: true, signature, ...(next?.done === undefined ? {} : { next: next.done }) };
332
+ }
211
333
  export function sha256Of(text, path) {
212
334
  const hex = text.trim().toLowerCase();
213
335
  if (!/^[0-9a-f]{64}$/.test(hex)) {
@@ -237,5 +359,5 @@ export function rpcRefused(error) {
237
359
  }
238
360
  return false;
239
361
  }
240
- export const refusedBeforeSending = (error) => neverLanded(error) || error instanceof AgentRefusal || error instanceof InvalidInput || rpcRefused(error);
362
+ export const refusedBeforeSending = (error) => neverLanded(error) || error instanceof LedgerError || error instanceof AgentRefusal || error instanceof InvalidInput || rpcRefused(error);
241
363
  //# sourceMappingURL=guard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"guard.js","sourceRoot":"","sources":["../../../../src/agent/wallet/guard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"guard.js","sourceRoot":"","sources":["../../../../src/agent/wallet/guard.ts"],"names":[],"mappings":"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"}
@@ -45,7 +45,7 @@ export const walletHistory = define({
45
45
  const client = createClient({ url: ctx.url ?? "http://cluster", transport: ctx.transport });
46
46
  const next = await client.nextNonce(wallet);
47
47
  const limit = BigInt(input.limit ?? HISTORY_DEFAULT);
48
- const oldest = next > limit ? next - limit : 0n;
48
+ const oldest = next - limit;
49
49
  const decimals = new Map();
50
50
  const tokens = async (mint, raw) => {
51
51
  if (!decimals.has(mint)) {
@@ -54,7 +54,7 @@ export const walletHistory = define({
54
54
  return formatAmount(raw, decimals.get(mint) ?? 0);
55
55
  };
56
56
  const activity = [];
57
- for (let nonce = next - 1n; nonce >= oldest; nonce -= 1n) {
57
+ for (let nonce = next - 1n; nonce >= oldest && nonce >= 0n; nonce -= 1n) {
58
58
  const [intent] = await findIntentPda({ owner: wallet, nonce });
59
59
  const events = await client.history(intent, EVENTS_PER_INTENT);
60
60
  const created = fields(events.find((e) => e.name === "IntentCreated"));
@@ -1 +1 @@
1
- {"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../src/agent/wallet/history.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../src/agent/wallet/history.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,12 @@ import type { Call } from "../claims.js";
5
5
  import { type Schema } from "../schema.js";
6
6
  import { orderSchema } from "../shapes.js";
7
7
  export declare const offerFields: {
8
+ message_hash: {
9
+ optional: Schema<string>;
10
+ };
11
+ as_previewed: {
12
+ optional: Schema<boolean>;
13
+ };
8
14
  intent: Schema<Address>;
9
15
  nonce: Schema<bigint>;
10
16
  summary: Schema<string[]>;
@@ -24,6 +30,8 @@ export declare const offerOutput: Schema<{
24
30
  warnings: string[];
25
31
  sent: boolean;
26
32
  } & {
33
+ message_hash?: string;
34
+ as_previewed?: boolean;
27
35
  signature?: string;
28
36
  next?: string;
29
37
  }>;
@@ -46,6 +54,16 @@ export declare function offered(ctx: AgentContext, call: Call, input: {
46
54
  sent: boolean;
47
55
  signature: string;
48
56
  next?: string;
57
+ } | {
58
+ message_hash: string;
59
+ sent: boolean;
60
+ next: string;
61
+ } | {
62
+ message_hash: string;
63
+ as_previewed: boolean;
64
+ sent: boolean;
65
+ signature: string;
66
+ next?: string;
49
67
  }>;
50
68
  export declare function nonceTaken(error: unknown): boolean;
51
69
  export {};
@@ -4,12 +4,13 @@ import { prepareCreate } from "../create.js";
4
4
  import { AgentRefusal, problemOf } from "../problems.js";
5
5
  import { account, amount, flag, list, object, optional, text } from "../schema.js";
6
6
  import { orderSchema } from "../shapes.js";
7
- import { walletEmpty, access, signerOf, mintNamed, limited, bookOf, live, salesOf, checkSale, sent, refusedBeforeSending } from "./guard.js";
7
+ import { walletEmpty, access, signerOf, mintNamed, limited, bookOf, live, salesOf, checkSale, sent, refusedBeforeSending, deviceOutput } from "./guard.js";
8
8
  export const offerFields = {
9
9
  intent: account(),
10
10
  nonce: amount(),
11
11
  summary: list(text(), 24),
12
12
  warnings: list(text(), 16),
13
+ ...deviceOutput,
13
14
  sent: flag(),
14
15
  signature: optional(text()),
15
16
  next: optional(text()),
@@ -1 +1 @@
1
- {"version":3,"file":"offer.js","sourceRoot":"","sources":["../../../../src/agent/wallet/offer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"offer.js","sourceRoot":"","sources":["../../../../src/agent/wallet/offer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import type { Address, TransactionPartialSigner } from "@solana/kit";
2
+ import { type DeliveryOpener, type JudgeOpening } from "@intent-engine/core";
3
+ import { type Delivery, type DeliveryRecord } from "@intent-engine/client";
4
+ import type { AgentContext } from "../actions.js";
5
+ export declare const openingOutput: {
6
+ opening_signatures: {
7
+ optional: import("../schema.js").Schema<string[]>;
8
+ };
9
+ opening_memos: {
10
+ optional: import("../schema.js").Schema<string[]>;
11
+ };
12
+ skipped: {
13
+ optional: import("../schema.js").Schema<string[]>;
14
+ };
15
+ };
16
+ export declare const openingFailed: (hint: string) => string;
17
+ export type Sealed = {
18
+ judge: Address;
19
+ intent: Address;
20
+ device: boolean;
21
+ recipients: readonly Address[];
22
+ record: DeliveryRecord;
23
+ first: Delivery | null;
24
+ openers: readonly DeliveryOpener[];
25
+ };
26
+ export declare const GIVE_KEY_SETTING = "start the server with mcp --encryption-keypair naming the encryption key file of that key";
27
+ export declare function skippedOf(ctx: AgentContext, { judge, intent, device, recipients, record, first, openers }: Sealed): Promise<{
28
+ skipped?: string[];
29
+ }>;
30
+ export declare const OPENINGS_NEED_FEE_PAYER = "this wallet is a Ledger, which signs no opening transaction, and the earlier announcements' salts must be published after the release; start the server with --fee-payer <key file>, which signs and pays the openings; nothing was signed";
31
+ export declare function openingPayerOf(ctx: AgentContext): Promise<TransactionPartialSigner>;
32
+ export declare const openingsFor: (record: DeliveryRecord, first: Delivery | null) => JudgeOpening[];
33
+ export declare function sendOpenings(ctx: AgentContext, signer: TransactionPartialSigner, attestor: Address, openings: readonly JudgeOpening[]): Promise<{
34
+ opening_signatures?: string[];
35
+ opening_memos?: string[];
36
+ next?: string;
37
+ }>;
@@ -0,0 +1,73 @@
1
+ import { openingMemo } from "@intent-engine/core";
2
+ import { ConfirmMismatch, deviceJudgeReady, judgeOpenings, missingKey, NoKeyAtCreation, openingInstructions, ProfileHistoryIncomplete, skippedNote, unopenedOf, } from "@intent-engine/client";
3
+ import { execute } from "../../flows.js";
4
+ import { tool } from "../names.js";
5
+ import { AgentRefusal, problemOf } from "../problems.js";
6
+ import { list, optional, text } from "../schema.js";
7
+ import { preparedView } from "../shapes.js";
8
+ import { prepare } from "../prepare.js";
9
+ import { SALTS_SEALED } from "./record.js";
10
+ import { feePayerOf } from "./guard.js";
11
+ const MAX_OPENINGS = 64;
12
+ export const openingOutput = {
13
+ opening_signatures: optional(list(text(), MAX_OPENINGS, "the transactions that published the salts of the announcements earlier than the payee's, in order")),
14
+ opening_memos: optional(list(text(), MAX_OPENINGS, "the opening memos with the salts of the earlier announcements that were not sent")),
15
+ skipped: optional(list(text(), MAX_OPENINGS, "announcements this wallet could not open that are sealed to no key it holds or published, so they were passed over as no delivery to it")),
16
+ };
17
+ export const openingFailed = (hint) => `released, but the opening of the earlier announcements was not sent (${hint}); readers can still check the release against the payee's salt`;
18
+ export const GIVE_KEY_SETTING = "start the server with mcp --encryption-keypair naming the encryption key file of that key";
19
+ const refusedHistory = (error) => {
20
+ if (error instanceof ProfileHistoryIncomplete) {
21
+ throw new AgentRefusal("HistoryTooLong", error.message);
22
+ }
23
+ if (error instanceof NoKeyAtCreation) {
24
+ throw new AgentRefusal("SealedSalts", error.message);
25
+ }
26
+ throw error;
27
+ };
28
+ export async function skippedOf(ctx, { judge, intent, device, recipients, record, first, openers }) {
29
+ if (device) {
30
+ await deviceJudgeReady(ctx.transport, judge, intent).catch(refusedHistory);
31
+ }
32
+ const { missing, skipped } = await unopenedOf(ctx.transport, { judge, recipients, deliveries: record.deliveries, first, openers, confirm: ctx.confirm }).catch((error) => {
33
+ if (error instanceof ProfileHistoryIncomplete) {
34
+ throw new AgentRefusal("HistoryTooLong", error.message);
35
+ }
36
+ if (error instanceof ConfirmMismatch) {
37
+ throw new AgentRefusal("ConfirmMismatch", error.message);
38
+ }
39
+ throw error;
40
+ });
41
+ if (missing !== null) {
42
+ throw new AgentRefusal("SealedSalts", missing.key.kind === "wallet" ? SALTS_SEALED : missingKey(missing, GIVE_KEY_SETTING));
43
+ }
44
+ return skipped.length === 0 ? {} : { skipped: skipped.map(skippedNote) };
45
+ }
46
+ export const OPENINGS_NEED_FEE_PAYER = "this wallet is a Ledger, which signs no opening transaction, and the earlier announcements' salts must be published after the release; start the server with --fee-payer <key file>, which signs and pays the openings; nothing was signed";
47
+ export async function openingPayerOf(ctx) {
48
+ try {
49
+ return await feePayerOf(ctx);
50
+ }
51
+ catch (error) {
52
+ throw error instanceof AgentRefusal ? new AgentRefusal("NoFeePayer", OPENINGS_NEED_FEE_PAYER) : error;
53
+ }
54
+ }
55
+ export const openingsFor = (record, first) => (first === null ? [] : judgeOpenings(record.deliveries, first));
56
+ export async function sendOpenings(ctx, signer, attestor, openings) {
57
+ const signatures = [];
58
+ for (const [at, opening] of openings.entries()) {
59
+ try {
60
+ const prepared = preparedView(await prepare(ctx.transport, openingInstructions(signer, attestor, opening), signer.address));
61
+ signatures.push(await execute(ctx.transport, prepared, signer));
62
+ }
63
+ catch (error) {
64
+ return {
65
+ ...(signatures.length === 0 ? {} : { opening_signatures: signatures }),
66
+ opening_memos: openings.slice(at).map(openingMemo),
67
+ next: `${openingFailed(problemOf(error).hint)}; ${tool("wallet_receipt")} shows it`,
68
+ };
69
+ }
70
+ }
71
+ return signatures.length === 0 ? {} : { opening_signatures: signatures };
72
+ }
73
+ //# sourceMappingURL=openings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openings.js","sourceRoot":"","sources":["../../../../src/agent/wallet/openings.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,9 @@ export declare function escrowReceipt(transport: Transport, owner: Address, nonc
27
27
  signature: string;
28
28
  delivered_sha256?: string;
29
29
  matches?: boolean;
30
+ delivered_salt?: string;
31
+ valid?: boolean;
32
+ refuted_by?: import("@solana/kit").Signature;
30
33
  paid: string;
31
34
  mint?: Address;
32
35
  recipients: bigint;
@@ -40,6 +43,9 @@ export declare function escrowReceipt(transport: Transport, owner: Address, nonc
40
43
  signature: string;
41
44
  delivered_sha256?: string;
42
45
  matches?: boolean;
46
+ delivered_salt?: string;
47
+ valid?: boolean;
48
+ refuted_by?: import("@solana/kit").Signature;
43
49
  paid_to?: Address;
44
50
  payee: Address;
45
51
  paid: string;