botanary 0.3.0 → 0.4.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.
- package/README.md +134 -1
- package/dist/bin/botanary.js +5 -2
- package/dist/bin/botanary.js.map +1 -1
- package/dist/src/app-url.js +19 -2
- package/dist/src/app-url.js.map +1 -1
- package/dist/src/cli.js +15 -0
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands/account.js +171 -0
- package/dist/src/commands/account.js.map +1 -0
- package/dist/src/commands/authority.js +634 -0
- package/dist/src/commands/authority.js.map +1 -0
- package/dist/src/commands/services.js +434 -0
- package/dist/src/commands/services.js.map +1 -0
- package/dist/src/commands/session-writes.js +196 -0
- package/dist/src/commands/session-writes.js.map +1 -0
- package/dist/src/commands/sign.js +306 -0
- package/dist/src/commands/sign.js.map +1 -0
- package/dist/src/commands/wallet.js +548 -30
- package/dist/src/commands/wallet.js.map +1 -1
- package/dist/src/commands/watch.js +259 -0
- package/dist/src/commands/watch.js.map +1 -0
- package/dist/src/help/examples.js +521 -2
- package/dist/src/help/examples.js.map +1 -1
- package/dist/src/package-version.js +53 -0
- package/dist/src/package-version.js.map +1 -0
- package/package.json +11 -12
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authority.js","sourceRoot":"","sources":["../../../src/commands/authority.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,434 @@
|
|
|
1
|
+
import { openBrowser } from 'botanary-mcp';
|
|
2
|
+
import { submitIntent, describeSignOutcome } from './sign.js';
|
|
3
|
+
import { group } from '../help/groups.js';
|
|
4
|
+
import { printResult } from '../render/print.js';
|
|
5
|
+
import { step, notify } from '../progress.js';
|
|
6
|
+
import { columns, dash, section } from '../render/kv.js';
|
|
7
|
+
import { colors, glyphs } from '../render/colors.js';
|
|
8
|
+
import { confirmOrThrow, dryRunPayload, renderReview } from '../review.js';
|
|
9
|
+
import { invalidArgs, notLoggedIn } from '../errors.js';
|
|
10
|
+
/** Same duplication as every other command file - see sign.ts's own comment on why. */
|
|
11
|
+
async function requireWalletToken(ctx) {
|
|
12
|
+
const session = await ctx.runtime.walletSession();
|
|
13
|
+
if (!session)
|
|
14
|
+
throw notLoggedIn();
|
|
15
|
+
return session.sessionToken;
|
|
16
|
+
}
|
|
17
|
+
async function reviewAndSubmit(ctx, title, rows, warnings, kind, params) {
|
|
18
|
+
if (ctx.dryRun) {
|
|
19
|
+
printResult(ctx, dryRunPayload(title, rows, warnings), () => renderReview('Dry run - nothing will be sent', rows, warnings));
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
await confirmOrThrow(ctx, title, rows, warnings);
|
|
23
|
+
const outcome = await submitIntent(ctx, kind, params);
|
|
24
|
+
printResult(ctx, outcome.data, () => describeSignOutcome(outcome));
|
|
25
|
+
}
|
|
26
|
+
function renderPayShAccounts(payload) {
|
|
27
|
+
const accounts = payload?.accounts ?? [];
|
|
28
|
+
if (!accounts.length) {
|
|
29
|
+
return `${section('pay.sh accounts')}\n${colors.muted(' None recorded. Account creation is Privy-client-side, in the web app.')}`;
|
|
30
|
+
}
|
|
31
|
+
const rows = accounts.map((a) => [dash(a.id), dash(a.label), dash(a.publicKey), dash(a.origin)]);
|
|
32
|
+
return [section('pay.sh accounts'), columns(['ID', 'LABEL', 'PUBLIC KEY', 'ORIGIN'], rows)].join('\n');
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* paysh, marketplace, apis and onramp - the fourth batch of write surfaces. Every submitIntent kind here
|
|
36
|
+
* (paysh.topup, paysh.withdraw, marketplace.hire, marketplace.deposit, marketplace.job.create,
|
|
37
|
+
* marketplace.job.fund, x402.budget) was checked against sign-kinds.ts and
|
|
38
|
+
* dto/sign-request.dto.ts, never assumed from the plan's own table.
|
|
39
|
+
*
|
|
40
|
+
* TWO THINGS WORTH READING BEFORE TOUCHING THIS FILE:
|
|
41
|
+
*
|
|
42
|
+
* 1. `paysh allowlist`/`paysh settings` are READ-ONLY here, deliberately. `POST .../allowlist`,
|
|
43
|
+
* `DELETE .../allowlist/{domain}` and `PUT .../settings` all carry `403: CliSessionForbidden` in
|
|
44
|
+
* openapi/botanary-v1.yaml - the backend's own gate (`CliSessionForbidden`'s doc comment) refuses ANY
|
|
45
|
+
* write to pay.sh from a session minted by the CLI handshake (`kind: 'cli'` - which is exactly what
|
|
46
|
+
* `botanary login` mints), because pay.sh moves value with no owner signature anywhere in the loop.
|
|
47
|
+
* There is also no registered sign-kind for either write, so there is no submitIntent path either:
|
|
48
|
+
* genuinely nothing to build here. `paysh accounts` is the read-only list for the same reason -
|
|
49
|
+
* `POST /pay-sh/accounts` (creation) carries the same 403 and account creation is Privy-client-side
|
|
50
|
+
* in the web app anyway.
|
|
51
|
+
*
|
|
52
|
+
* 2. `paysh topup`/`paysh withdraw` are NOT blocked by that gate, even though they move real value -
|
|
53
|
+
* because `submitIntent` never calls `/pay-sh/topup/build` or `/pay-sh/accounts/{id}/withdraw/build`
|
|
54
|
+
* directly. It parks the intent at `POST /sign-requests`; the owner's OWN browser (a `kind: 'browser'`
|
|
55
|
+
* session) is what eventually calls the build route, when they open the link and approve. The CLI's
|
|
56
|
+
* 'cli'-kind session never touches that route at all.
|
|
57
|
+
*/
|
|
58
|
+
export function registerServiceCommands(program) {
|
|
59
|
+
// ---- paysh -------------------------------------------------------------------------------------------
|
|
60
|
+
const paysh = group(program.command('paysh').description('pay.sh: the x402 spending balance and its guardrails'), 'Wallet');
|
|
61
|
+
paysh
|
|
62
|
+
.command('accounts')
|
|
63
|
+
.description('The caller\'s recorded pay.sh accounts (read-only - creation is Privy-client-side, in the web app)')
|
|
64
|
+
.action(async () => {
|
|
65
|
+
const ctx = program.opts().__ctx;
|
|
66
|
+
const token = await requireWalletToken(ctx);
|
|
67
|
+
const list = await step(ctx, 'Reading pay.sh accounts', () => ctx.runtime.api.get('/v1/pay-sh/accounts', token));
|
|
68
|
+
printResult(ctx, list, () => renderPayShAccounts(list));
|
|
69
|
+
});
|
|
70
|
+
paysh
|
|
71
|
+
.command('topup')
|
|
72
|
+
.description('Top up the pay.sh balance')
|
|
73
|
+
.requiredOption('--amount-usdc <amount>', 'Amount to add, in USDC')
|
|
74
|
+
.action(async (opts) => {
|
|
75
|
+
const ctx = program.opts().__ctx;
|
|
76
|
+
await requireWalletToken(ctx);
|
|
77
|
+
const rows = [
|
|
78
|
+
{ label: 'amount', value: `${opts.amountUsdc} USDC` },
|
|
79
|
+
{ label: 'signed by', value: 'you, in your browser' },
|
|
80
|
+
];
|
|
81
|
+
await reviewAndSubmit(ctx, 'Review this pay.sh top-up', rows, [], 'paysh.topup', { amountUsdc: opts.amountUsdc });
|
|
82
|
+
});
|
|
83
|
+
paysh
|
|
84
|
+
.command('withdraw')
|
|
85
|
+
.description("Withdraw from a pay.sh account's custodial Solana USDC balance")
|
|
86
|
+
.requiredOption('--paysh-account-id <accountId>', 'The pay.sh custodial account id - see `botanary paysh accounts`')
|
|
87
|
+
.requiredOption('--amount-usdc <amount>', 'Amount to withdraw, in USDC')
|
|
88
|
+
.requiredOption('--destination <destination>', 'A Solana address, or a Botanary-balance identifier')
|
|
89
|
+
.option('--gas-method <method>', 'native (owner pays the fee) or usdc (routed through Kora, gasless)')
|
|
90
|
+
.action(async (opts) => {
|
|
91
|
+
const ctx = program.opts().__ctx;
|
|
92
|
+
await requireWalletToken(ctx);
|
|
93
|
+
if (opts.gasMethod !== undefined && opts.gasMethod !== 'native' && opts.gasMethod !== 'usdc') {
|
|
94
|
+
throw invalidArgs(`--gas-method must be "native" or "usdc", got ${JSON.stringify(opts.gasMethod)}.`);
|
|
95
|
+
}
|
|
96
|
+
const rows = [
|
|
97
|
+
{ label: 'pay.sh account', value: opts.payshAccountId },
|
|
98
|
+
{ label: 'amount', value: `${opts.amountUsdc} USDC` },
|
|
99
|
+
{ label: 'destination', value: opts.destination },
|
|
100
|
+
{ label: 'signed by', value: 'you, in your browser' },
|
|
101
|
+
];
|
|
102
|
+
await reviewAndSubmit(ctx, 'Review this pay.sh withdrawal', rows, [], 'paysh.withdraw', {
|
|
103
|
+
accountId: opts.payshAccountId,
|
|
104
|
+
amountUsdc: opts.amountUsdc,
|
|
105
|
+
destination: opts.destination,
|
|
106
|
+
...(opts.gasMethod ? { gasMethod: opts.gasMethod } : {}),
|
|
107
|
+
});
|
|
108
|
+
});
|
|
109
|
+
paysh
|
|
110
|
+
.command('allowlist <accountId>')
|
|
111
|
+
.description('The trusted pay.sh domains for this account (read-only - see the file header for why)')
|
|
112
|
+
.action(async (accountId) => {
|
|
113
|
+
const ctx = program.opts().__ctx;
|
|
114
|
+
const token = await requireWalletToken(ctx);
|
|
115
|
+
const allowlist = await step(ctx, 'Reading allowlist', () => ctx.runtime.api.get(`/v1/pay-sh/accounts/${encodeURIComponent(accountId)}/allowlist`, token));
|
|
116
|
+
printResult(ctx, allowlist, () => {
|
|
117
|
+
const domains = allowlist.domains ?? [];
|
|
118
|
+
return [
|
|
119
|
+
section('pay.sh allowlist'),
|
|
120
|
+
domains.length ? domains.map((d) => ` ${d}`).join('\n') : colors.muted(' Nothing trusted yet.'),
|
|
121
|
+
colors.dim(' Read-only here - adding or removing a domain needs the owner\'s own browser session.'),
|
|
122
|
+
].join('\n');
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
paysh
|
|
126
|
+
.command('settings <accountId>')
|
|
127
|
+
.description("This account's persisted default copilot pay.sh mode (read-only - see the file header for why)")
|
|
128
|
+
.action(async (accountId) => {
|
|
129
|
+
const ctx = program.opts().__ctx;
|
|
130
|
+
const token = await requireWalletToken(ctx);
|
|
131
|
+
const settings = await step(ctx, 'Reading pay.sh settings', () => ctx.runtime.api.get(`/v1/pay-sh/accounts/${encodeURIComponent(accountId)}/settings`, token));
|
|
132
|
+
printResult(ctx, settings, () => [
|
|
133
|
+
section('pay.sh settings'),
|
|
134
|
+
` default mode: ${dash(settings.defaultMode)}`,
|
|
135
|
+
colors.dim(' Read-only here - changing it needs the owner\'s own browser session.'),
|
|
136
|
+
].join('\n'));
|
|
137
|
+
});
|
|
138
|
+
// ---- marketplace ---------------------------------------------------------------------------------------
|
|
139
|
+
const marketplace = group(program.command('marketplace').description('Hire an ACP agent under a bounded mandate, and run its jobs'), 'Wallet');
|
|
140
|
+
marketplace
|
|
141
|
+
.command('hire')
|
|
142
|
+
.description('Hire an ACP agent under a bounded mandate')
|
|
143
|
+
.requiredOption('--agent-wallet <address>', "The agent's EVM wallet address")
|
|
144
|
+
.requiredOption('--chain-id <chainId>', 'Chain to hire on - see `botanary chains`')
|
|
145
|
+
.requiredOption('--per-job-budget <amount>', 'Spending cap per job, in display units')
|
|
146
|
+
.requiredOption('--delegatee-address <address>', 'The mandate delegatee - usually your own agent wallet')
|
|
147
|
+
.option('--name <name>', 'A label for this hire')
|
|
148
|
+
.option('--expires-at <iso>', 'When the mandate expires, ISO 8601')
|
|
149
|
+
.action(async (opts) => {
|
|
150
|
+
const ctx = program.opts().__ctx;
|
|
151
|
+
await requireWalletToken(ctx);
|
|
152
|
+
const chainId = Number(opts.chainId);
|
|
153
|
+
if (!Number.isInteger(chainId))
|
|
154
|
+
throw invalidArgs(`--chain-id must be an integer, got ${JSON.stringify(opts.chainId)}.`);
|
|
155
|
+
const perJobBudget = Number(opts.perJobBudget);
|
|
156
|
+
if (!Number.isFinite(perJobBudget) || perJobBudget <= 0) {
|
|
157
|
+
throw invalidArgs(`--per-job-budget must be a positive number, got ${JSON.stringify(opts.perJobBudget)}.`);
|
|
158
|
+
}
|
|
159
|
+
const rows = [
|
|
160
|
+
{ label: 'agent', value: opts.agentWallet },
|
|
161
|
+
{ label: 'per-job budget', value: String(perJobBudget) },
|
|
162
|
+
{ label: 'chain id', value: String(chainId) },
|
|
163
|
+
{ label: 'signed by', value: 'you, in your browser' },
|
|
164
|
+
];
|
|
165
|
+
await reviewAndSubmit(ctx, 'Review this hire', rows, [], 'marketplace.hire', {
|
|
166
|
+
agentWallet: opts.agentWallet,
|
|
167
|
+
chainId,
|
|
168
|
+
perJobBudget,
|
|
169
|
+
delegateeAddress: opts.delegateeAddress,
|
|
170
|
+
...(opts.name ? { name: opts.name } : {}),
|
|
171
|
+
...(opts.expiresAt ? { expiresAt: opts.expiresAt } : {}),
|
|
172
|
+
});
|
|
173
|
+
});
|
|
174
|
+
marketplace
|
|
175
|
+
.command('deposit')
|
|
176
|
+
.description('Deposit into a Virtuals-custodied wallet')
|
|
177
|
+
.requiredOption('--chain-id <chainId>', 'Chain to deposit on - see `botanary chains`')
|
|
178
|
+
.requiredOption('--amount <amount>', 'Amount to deposit, in display units')
|
|
179
|
+
.requiredOption('--token-symbol <symbol>', 'The token symbol, e.g. USDC')
|
|
180
|
+
.requiredOption('--token-address <address>', 'The token contract address')
|
|
181
|
+
.action(async (opts) => {
|
|
182
|
+
const ctx = program.opts().__ctx;
|
|
183
|
+
await requireWalletToken(ctx);
|
|
184
|
+
const chainId = Number(opts.chainId);
|
|
185
|
+
if (!Number.isInteger(chainId))
|
|
186
|
+
throw invalidArgs(`--chain-id must be an integer, got ${JSON.stringify(opts.chainId)}.`);
|
|
187
|
+
const amount = Number(opts.amount);
|
|
188
|
+
if (!Number.isFinite(amount) || amount <= 0)
|
|
189
|
+
throw invalidArgs(`--amount must be a positive number, got ${JSON.stringify(opts.amount)}.`);
|
|
190
|
+
const rows = [
|
|
191
|
+
{ label: 'amount', value: `${amount} ${opts.tokenSymbol}` },
|
|
192
|
+
{ label: 'chain id', value: String(chainId) },
|
|
193
|
+
{ label: 'signed by', value: 'you, in your browser' },
|
|
194
|
+
];
|
|
195
|
+
await reviewAndSubmit(ctx, 'Review this deposit', rows, [], 'marketplace.deposit', {
|
|
196
|
+
chainId,
|
|
197
|
+
amount,
|
|
198
|
+
tokenSymbol: opts.tokenSymbol,
|
|
199
|
+
tokenAddress: opts.tokenAddress,
|
|
200
|
+
});
|
|
201
|
+
});
|
|
202
|
+
const jobs = marketplace.command('jobs').description('ACP jobs run under a marketplace mandate');
|
|
203
|
+
jobs
|
|
204
|
+
.command('create')
|
|
205
|
+
.description('Create an ACP job under a mandate (op 1 of a hire)')
|
|
206
|
+
.requiredOption('--mandate-id <hex32>', 'The mandate id (32-byte hex)')
|
|
207
|
+
.requiredOption('--agent-wallet <address>', "The provider agent's EVM wallet address")
|
|
208
|
+
.requiredOption('--description <description>', 'What the job is')
|
|
209
|
+
.requiredOption('--chain-id <chainId>', 'Chain the mandate is on - see `botanary chains`')
|
|
210
|
+
.option('--expires-at <unixSeconds>', 'Job expiry, unix seconds')
|
|
211
|
+
.action(async (opts) => {
|
|
212
|
+
const ctx = program.opts().__ctx;
|
|
213
|
+
await requireWalletToken(ctx);
|
|
214
|
+
const chainId = Number(opts.chainId);
|
|
215
|
+
if (!Number.isInteger(chainId))
|
|
216
|
+
throw invalidArgs(`--chain-id must be an integer, got ${JSON.stringify(opts.chainId)}.`);
|
|
217
|
+
const rows = [
|
|
218
|
+
{ label: 'mandate', value: opts.mandateId },
|
|
219
|
+
{ label: 'agent', value: opts.agentWallet },
|
|
220
|
+
{ label: 'description', value: opts.description },
|
|
221
|
+
{ label: 'signed by', value: 'the mandate\'s own session key' },
|
|
222
|
+
];
|
|
223
|
+
await reviewAndSubmit(ctx, 'Review this job creation', rows, [], 'marketplace.job.create', {
|
|
224
|
+
mandateId: opts.mandateId,
|
|
225
|
+
agentWallet: opts.agentWallet,
|
|
226
|
+
description: opts.description,
|
|
227
|
+
chainId,
|
|
228
|
+
...(opts.expiresAt !== undefined ? { expiresAt: Number(opts.expiresAt) } : {}),
|
|
229
|
+
});
|
|
230
|
+
});
|
|
231
|
+
jobs
|
|
232
|
+
.command('fund')
|
|
233
|
+
.description('Fund an ACP job under a mandate (op 2 of a hire - approve + fund, batched)')
|
|
234
|
+
.requiredOption('--mandate-id <hex32>', 'The mandate id (32-byte hex)')
|
|
235
|
+
.requiredOption('--job-id <jobId>', 'The job id, from `marketplace jobs create`')
|
|
236
|
+
.requiredOption('--per-job-budget <amount>', 'How much to fund, in display units')
|
|
237
|
+
.requiredOption('--chain-id <chainId>', 'Chain the mandate is on - see `botanary chains`')
|
|
238
|
+
.action(async (opts) => {
|
|
239
|
+
const ctx = program.opts().__ctx;
|
|
240
|
+
await requireWalletToken(ctx);
|
|
241
|
+
const chainId = Number(opts.chainId);
|
|
242
|
+
if (!Number.isInteger(chainId))
|
|
243
|
+
throw invalidArgs(`--chain-id must be an integer, got ${JSON.stringify(opts.chainId)}.`);
|
|
244
|
+
const perJobBudget = Number(opts.perJobBudget);
|
|
245
|
+
if (!Number.isFinite(perJobBudget) || perJobBudget <= 0) {
|
|
246
|
+
throw invalidArgs(`--per-job-budget must be a positive number, got ${JSON.stringify(opts.perJobBudget)}.`);
|
|
247
|
+
}
|
|
248
|
+
const rows = [
|
|
249
|
+
{ label: 'mandate', value: opts.mandateId },
|
|
250
|
+
{ label: 'job', value: opts.jobId },
|
|
251
|
+
{ label: 'amount', value: String(perJobBudget) },
|
|
252
|
+
{ label: 'signed by', value: "the mandate's own session key" },
|
|
253
|
+
];
|
|
254
|
+
await reviewAndSubmit(ctx, 'Review this job funding', rows, [], 'marketplace.job.fund', {
|
|
255
|
+
mandateId: opts.mandateId,
|
|
256
|
+
jobId: opts.jobId,
|
|
257
|
+
perJobBudget,
|
|
258
|
+
chainId,
|
|
259
|
+
});
|
|
260
|
+
});
|
|
261
|
+
// ---- apis ------------------------------------------------------------------------------------------
|
|
262
|
+
const apis = group(program.command('apis').description('The x402 paid-API catalog, and the on-chain spending budget backing it'), 'Wallet');
|
|
263
|
+
// POSITIONAL args, not --chain-id/--agent-id options - deliberately, to sidestep a real commander.js
|
|
264
|
+
// 13.1.0 quirk: a child subcommand (`commit`, below) declaring a REQUIRED option with the same flag
|
|
265
|
+
// name as one this PARENT command declares (even non-required) makes commander enforce the PARENT's
|
|
266
|
+
// requiredness onto the child's own parse, throwing "required option ... not specified" even though
|
|
267
|
+
// this command's own option is optional and `commit` supplied its own value. Confirmed with a minimal
|
|
268
|
+
// Command()-only repro before working around it here - positional args never collide with a child's
|
|
269
|
+
// options, so there is nothing left to trip over.
|
|
270
|
+
const budget = apis
|
|
271
|
+
.command('budget')
|
|
272
|
+
.description('Read the current API budget and its state')
|
|
273
|
+
.argument('[chainId]', 'Chain the budget is on')
|
|
274
|
+
.argument('[agentId]', 'The agent the budget authorizes')
|
|
275
|
+
.action(async (chainIdArg, agentIdArg) => {
|
|
276
|
+
const ctx = program.opts().__ctx;
|
|
277
|
+
const token = await requireWalletToken(ctx);
|
|
278
|
+
if (!chainIdArg || !agentIdArg) {
|
|
279
|
+
throw invalidArgs('Missing required input', 'Use `botanary apis budget <chainId> <agentId>`.');
|
|
280
|
+
}
|
|
281
|
+
const chainId = Number(chainIdArg);
|
|
282
|
+
if (!Number.isInteger(chainId))
|
|
283
|
+
throw invalidArgs(`chainId must be an integer, got ${JSON.stringify(chainIdArg)}.`);
|
|
284
|
+
const result = await step(ctx, 'Reading API budget', () => ctx.runtime.api.get(`/v1/apis/budget?chainId=${chainId}&agentId=${encodeURIComponent(agentIdArg)}`, token));
|
|
285
|
+
printResult(ctx, result);
|
|
286
|
+
});
|
|
287
|
+
budget
|
|
288
|
+
.command('commit')
|
|
289
|
+
.description('Commit a three-transaction atomic API spending budget')
|
|
290
|
+
.requiredOption('--chain-id <chainId>', 'Chain the budget is on')
|
|
291
|
+
.requiredOption('--agent-id <agentId>', 'The agent this budget authorizes')
|
|
292
|
+
.requiredOption('--max-value <baseUnits>', 'Maximum value, in base units')
|
|
293
|
+
.requiredOption('--count <n>', 'How many indices are being authorized')
|
|
294
|
+
.requiredOption('--expires-at <iso>', 'When the budget stops being usable, ISO 8601')
|
|
295
|
+
.option('--token <address>', "The ERC-20 the budget is denominated in - omit to resolve this chain's own USDC")
|
|
296
|
+
.action(async (opts) => {
|
|
297
|
+
const ctx = program.opts().__ctx;
|
|
298
|
+
await requireWalletToken(ctx);
|
|
299
|
+
const chainId = Number(opts.chainId);
|
|
300
|
+
if (!Number.isInteger(chainId))
|
|
301
|
+
throw invalidArgs(`--chain-id must be an integer, got ${JSON.stringify(opts.chainId)}.`);
|
|
302
|
+
const count = Number(opts.count);
|
|
303
|
+
if (!Number.isInteger(count) || count <= 0)
|
|
304
|
+
throw invalidArgs(`--count must be a positive integer, got ${JSON.stringify(opts.count)}.`);
|
|
305
|
+
const rows = [
|
|
306
|
+
{ label: 'agent', value: opts.agentId },
|
|
307
|
+
{ label: 'max value', value: opts.maxValue },
|
|
308
|
+
{ label: 'count', value: String(count) },
|
|
309
|
+
{ label: 'expires', value: opts.expiresAt },
|
|
310
|
+
{ label: 'signed by', value: 'you, in your browser' },
|
|
311
|
+
];
|
|
312
|
+
await reviewAndSubmit(ctx, 'Review this API budget commit', rows, [], 'x402.budget', {
|
|
313
|
+
chainId,
|
|
314
|
+
agentId: opts.agentId,
|
|
315
|
+
maxValue: opts.maxValue,
|
|
316
|
+
count,
|
|
317
|
+
expiresAt: opts.expiresAt,
|
|
318
|
+
...(opts.token ? { token: opts.token } : {}),
|
|
319
|
+
});
|
|
320
|
+
});
|
|
321
|
+
apis
|
|
322
|
+
.command('providers')
|
|
323
|
+
.description('Ranked, searchable catalog of x402 API providers')
|
|
324
|
+
.option('--chain-id <chainId>', 'Only providers with an endpoint on this chain')
|
|
325
|
+
.option('--asset <address>', 'Only providers quoting this asset')
|
|
326
|
+
.option('--q <query>', 'Case-insensitive substring over id, name, category and description')
|
|
327
|
+
.option('--limit <n>', 'Page size, 1-100', '50')
|
|
328
|
+
.option('--offset <n>', 'Rows to skip', '0')
|
|
329
|
+
.action(async (opts) => {
|
|
330
|
+
const ctx = program.opts().__ctx;
|
|
331
|
+
const token = await requireWalletToken(ctx);
|
|
332
|
+
const params = new URLSearchParams();
|
|
333
|
+
if (opts.chainId)
|
|
334
|
+
params.set('chainId', opts.chainId);
|
|
335
|
+
if (opts.asset)
|
|
336
|
+
params.set('asset', opts.asset);
|
|
337
|
+
if (opts.q)
|
|
338
|
+
params.set('q', opts.q);
|
|
339
|
+
if (opts.limit)
|
|
340
|
+
params.set('limit', opts.limit);
|
|
341
|
+
if (opts.offset)
|
|
342
|
+
params.set('offset', opts.offset);
|
|
343
|
+
const qs = params.toString();
|
|
344
|
+
const result = await step(ctx, 'Reading API providers', () => ctx.runtime.api.get(`/v1/apis/providers${qs ? `?${qs}` : ''}`, token));
|
|
345
|
+
printResult(ctx, result);
|
|
346
|
+
});
|
|
347
|
+
// ---- onramp ------------------------------------------------------------------------------------------
|
|
348
|
+
// NOT .requiredOption() for --chain-key - same reason as `apis budget` above: `onramp` has its own
|
|
349
|
+
// subcommand (`methods`), and commander enforces a command's required options on any argv that reaches
|
|
350
|
+
// it, whether or not that command's own action ends up running.
|
|
351
|
+
const onramp = group(program
|
|
352
|
+
.command('onramp')
|
|
353
|
+
.description('Start a fiat-to-crypto Buy checkout session - no UserOp, no signature, funds arrive directly from the provider')
|
|
354
|
+
.option('--chain-key <chainKey>', 'Chain.key to buy into - see `botanary chains`')
|
|
355
|
+
.option('--account-id <accountId>', 'Specific account of yours - omit for your default')
|
|
356
|
+
.option('--no-open', 'Print the checkout URL instead of opening a browser')
|
|
357
|
+
.action(async (opts) => {
|
|
358
|
+
const ctx = program.opts().__ctx;
|
|
359
|
+
const token = await requireWalletToken(ctx);
|
|
360
|
+
if (!opts.chainKey) {
|
|
361
|
+
throw invalidArgs('Missing required input', 'Use --chain-key - see `botanary chains`.');
|
|
362
|
+
}
|
|
363
|
+
const session = await step(ctx, 'Starting checkout session', () => ctx.runtime.api.post('/v1/onramp/session', { chainKey: opts.chainKey, ...(opts.accountId ? { accountId: opts.accountId } : {}) }, token));
|
|
364
|
+
let opened = false;
|
|
365
|
+
if (opts.open && ctx.interactive) {
|
|
366
|
+
opened = await openBrowser(session.widgetUrl);
|
|
367
|
+
}
|
|
368
|
+
notify(ctx, opened ? glyphs.info(`Opened ${session.widgetUrl}`) : glyphs.info(`Checkout: ${session.widgetUrl}`));
|
|
369
|
+
printResult(ctx, session, () => (opened ? glyphs.success(`Opened ${session.widgetUrl}`) : glyphs.info(`Checkout: ${session.widgetUrl}`)));
|
|
370
|
+
}), 'Wallet');
|
|
371
|
+
onramp
|
|
372
|
+
.command('methods')
|
|
373
|
+
.description('Chains currently buyable through the wired onramp provider')
|
|
374
|
+
.action(async () => {
|
|
375
|
+
const ctx = program.opts().__ctx;
|
|
376
|
+
const token = await requireWalletToken(ctx);
|
|
377
|
+
const methods = await step(ctx, 'Reading onramp methods', () => ctx.runtime.api.get('/v1/onramp/methods', token));
|
|
378
|
+
printResult(ctx, methods);
|
|
379
|
+
});
|
|
380
|
+
// ---- agentwallet ---------------------------------------------------------------------------------------
|
|
381
|
+
const agentwallet = group(program.command('agentwallet').description('Deposit into a Virtuals agent wallet'), 'Wallet');
|
|
382
|
+
agentwallet
|
|
383
|
+
.command('deposit')
|
|
384
|
+
.description('Deposit into a Virtuals agent wallet')
|
|
385
|
+
.requiredOption('--agent-id <agentId>', 'The Virtuals agent wallet id')
|
|
386
|
+
// NOT --chain: the root program already declares a (non-required) global --chain (parser.ts), and
|
|
387
|
+
// commander 13.1.0 enforces a PARENT's option requiredness onto a child's own required option of the
|
|
388
|
+
// same name - the exact quirk `apis budget commit`'s own comment above documents, hit for real here
|
|
389
|
+
// rather than sidestepped in advance.
|
|
390
|
+
.requiredOption('--network <network>', 'base or solana - Base-only in v1, solana is accepted here but refused server-side')
|
|
391
|
+
.requiredOption('--token-symbol <symbol>', 'The token symbol, for display')
|
|
392
|
+
.requiredOption('--token-address <address>', 'The token contract address (20-byte EVM address)')
|
|
393
|
+
.requiredOption('--amount <amount>', 'Amount in display units, e.g. 25')
|
|
394
|
+
.action(async (opts) => {
|
|
395
|
+
const ctx = program.opts().__ctx;
|
|
396
|
+
await requireWalletToken(ctx);
|
|
397
|
+
if (opts.network !== 'base' && opts.network !== 'solana') {
|
|
398
|
+
throw invalidArgs(`--network must be "base" or "solana", got ${JSON.stringify(opts.network)}.`);
|
|
399
|
+
}
|
|
400
|
+
const amount = Number(opts.amount);
|
|
401
|
+
if (!Number.isFinite(amount) || amount <= 0) {
|
|
402
|
+
throw invalidArgs(`--amount must be a positive number, got ${JSON.stringify(opts.amount)}.`);
|
|
403
|
+
}
|
|
404
|
+
const rows = [
|
|
405
|
+
{ label: 'agent wallet', value: opts.agentId },
|
|
406
|
+
{ label: 'amount', value: `${amount} ${opts.tokenSymbol}` },
|
|
407
|
+
{ label: 'chain', value: opts.network },
|
|
408
|
+
{ label: 'signed by', value: 'you, in your browser' },
|
|
409
|
+
];
|
|
410
|
+
const warnings = opts.network === 'solana' ? ['Agent-wallet deposits are Base-only in v1 - this will be declined server-side.'] : [];
|
|
411
|
+
await reviewAndSubmit(ctx, 'Review this agent-wallet deposit', rows, warnings, 'agentwallet.deposit', {
|
|
412
|
+
agentId: opts.agentId,
|
|
413
|
+
chain: opts.network,
|
|
414
|
+
tokenSymbol: opts.tokenSymbol,
|
|
415
|
+
tokenAddress: opts.tokenAddress,
|
|
416
|
+
amount,
|
|
417
|
+
});
|
|
418
|
+
});
|
|
419
|
+
// ---- approvals -------------------------------------------------------------------------------------------
|
|
420
|
+
const approvals = group(program.command('approvals').description('Announce a collected off-chain approval'), 'Wallet');
|
|
421
|
+
approvals
|
|
422
|
+
.command('announce <digest>')
|
|
423
|
+
.description('Announce a collected approval, by its digest')
|
|
424
|
+
.action(async (digest) => {
|
|
425
|
+
const ctx = program.opts().__ctx;
|
|
426
|
+
await requireWalletToken(ctx);
|
|
427
|
+
const rows = [
|
|
428
|
+
{ label: 'digest', value: digest },
|
|
429
|
+
{ label: 'signed by', value: 'you, in your browser' },
|
|
430
|
+
];
|
|
431
|
+
await reviewAndSubmit(ctx, 'Review this approval announce', rows, [], 'approvals.announce', { digest });
|
|
432
|
+
});
|
|
433
|
+
}
|
|
434
|
+
//# sourceMappingURL=services.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"services.js","sourceRoot":"","sources":["../../../src/commands/services.ts"],"names":[],"mappings":"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"}
|