botanary 0.5.2 → 0.6.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 (100) hide show
  1. package/dist/botanary.js +2 -0
  2. package/package.json +8 -6
  3. package/dist/bin/botanary.js +0 -25
  4. package/dist/bin/botanary.js.map +0 -1
  5. package/dist/src/app-url.js +0 -52
  6. package/dist/src/app-url.js.map +0 -1
  7. package/dist/src/cli.js +0 -195
  8. package/dist/src/cli.js.map +0 -1
  9. package/dist/src/commands/account.js +0 -171
  10. package/dist/src/commands/account.js.map +0 -1
  11. package/dist/src/commands/agent.js +0 -338
  12. package/dist/src/commands/agent.js.map +0 -1
  13. package/dist/src/commands/authority.js +0 -634
  14. package/dist/src/commands/authority.js.map +0 -1
  15. package/dist/src/commands/mcp.js +0 -163
  16. package/dist/src/commands/mcp.js.map +0 -1
  17. package/dist/src/commands/services.js +0 -460
  18. package/dist/src/commands/services.js.map +0 -1
  19. package/dist/src/commands/session-writes.js +0 -196
  20. package/dist/src/commands/session-writes.js.map +0 -1
  21. package/dist/src/commands/sign.js +0 -311
  22. package/dist/src/commands/sign.js.map +0 -1
  23. package/dist/src/commands/system.js +0 -135
  24. package/dist/src/commands/system.js.map +0 -1
  25. package/dist/src/commands/tokens.js +0 -36
  26. package/dist/src/commands/tokens.js.map +0 -1
  27. package/dist/src/commands/utilities.js +0 -119
  28. package/dist/src/commands/utilities.js.map +0 -1
  29. package/dist/src/commands/wallet.js +0 -1013
  30. package/dist/src/commands/wallet.js.map +0 -1
  31. package/dist/src/commands/watch.js +0 -259
  32. package/dist/src/commands/watch.js.map +0 -1
  33. package/dist/src/completion.js +0 -69
  34. package/dist/src/completion.js.map +0 -1
  35. package/dist/src/config-store.js +0 -52
  36. package/dist/src/config-store.js.map +0 -1
  37. package/dist/src/context.js +0 -19
  38. package/dist/src/context.js.map +0 -1
  39. package/dist/src/errors.js +0 -116
  40. package/dist/src/errors.js.map +0 -1
  41. package/dist/src/help/examples.js +0 -904
  42. package/dist/src/help/examples.js.map +0 -1
  43. package/dist/src/help/format.js +0 -144
  44. package/dist/src/help/format.js.map +0 -1
  45. package/dist/src/help/groups.js +0 -39
  46. package/dist/src/help/groups.js.map +0 -1
  47. package/dist/src/install-method.js +0 -50
  48. package/dist/src/install-method.js.map +0 -1
  49. package/dist/src/mcp-snippets.js +0 -27
  50. package/dist/src/mcp-snippets.js.map +0 -1
  51. package/dist/src/outcome.js +0 -63
  52. package/dist/src/outcome.js.map +0 -1
  53. package/dist/src/package-version.js +0 -53
  54. package/dist/src/package-version.js.map +0 -1
  55. package/dist/src/parser.js +0 -48
  56. package/dist/src/parser.js.map +0 -1
  57. package/dist/src/progress.js +0 -56
  58. package/dist/src/progress.js.map +0 -1
  59. package/dist/src/prompt-doc.js +0 -92
  60. package/dist/src/prompt-doc.js.map +0 -1
  61. package/dist/src/render/accounts.js +0 -21
  62. package/dist/src/render/accounts.js.map +0 -1
  63. package/dist/src/render/activity.js +0 -34
  64. package/dist/src/render/activity.js.map +0 -1
  65. package/dist/src/render/agents.js +0 -42
  66. package/dist/src/render/agents.js.map +0 -1
  67. package/dist/src/render/balance.js +0 -85
  68. package/dist/src/render/balance.js.map +0 -1
  69. package/dist/src/render/banner.js +0 -17
  70. package/dist/src/render/banner.js.map +0 -1
  71. package/dist/src/render/chains.js +0 -52
  72. package/dist/src/render/chains.js.map +0 -1
  73. package/dist/src/render/colors.js +0 -50
  74. package/dist/src/render/colors.js.map +0 -1
  75. package/dist/src/render/gas.js +0 -34
  76. package/dist/src/render/gas.js.map +0 -1
  77. package/dist/src/render/grant.js +0 -34
  78. package/dist/src/render/grant.js.map +0 -1
  79. package/dist/src/render/kv.js +0 -60
  80. package/dist/src/render/kv.js.map +0 -1
  81. package/dist/src/render/mandates.js +0 -111
  82. package/dist/src/render/mandates.js.map +0 -1
  83. package/dist/src/render/print.js +0 -18
  84. package/dist/src/render/print.js.map +0 -1
  85. package/dist/src/render/redact.js +0 -23
  86. package/dist/src/render/redact.js.map +0 -1
  87. package/dist/src/render/table.js +0 -16
  88. package/dist/src/render/table.js.map +0 -1
  89. package/dist/src/repl.js +0 -232
  90. package/dist/src/repl.js.map +0 -1
  91. package/dist/src/review.js +0 -52
  92. package/dist/src/review.js.map +0 -1
  93. package/dist/src/run-installer.js +0 -30
  94. package/dist/src/run-installer.js.map +0 -1
  95. package/dist/src/settings.js +0 -88
  96. package/dist/src/settings.js.map +0 -1
  97. package/dist/src/update-check.js +0 -91
  98. package/dist/src/update-check.js.map +0 -1
  99. package/dist/src/validate.js +0 -138
  100. package/dist/src/validate.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"examples.js","sourceRoot":"","sources":["../../../src/help/examples.ts"],"names":[],"mappings":"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"}
@@ -1,144 +0,0 @@
1
- import { colors } from '../render/colors.js';
2
- import { DOCS_URL, GROUP_ORDER, OPTION_SECTIONS, QUICK_START, groupOf } from './groups.js';
3
- import { helpFor } from './examples.js';
4
- import { EXIT_CODES } from '../errors.js';
5
- /** Column at which a description starts. Long terms simply push their description one space right. */
6
- const TERM_WIDTH = 22;
7
- function heading(title) {
8
- return colors.brand(colors.bold(`◆ ${title}`));
9
- }
10
- function subheading(title) {
11
- return colors.bold(` ${title}`);
12
- }
13
- function entry(term, description, indent = ' ') {
14
- return `${indent}${term.padEnd(TERM_WIDTH)} ${description}`.trimEnd();
15
- }
16
- function indentBlock(text, indent) {
17
- return text
18
- .split('\n')
19
- .map((line) => (line ? `${indent}${line}` : ''))
20
- .join('\n');
21
- }
22
- /**
23
- * commander synthesizes a placeholder Command for the implicit `help` subcommand, so there is no
24
- * registration site to tag it at. This is the ONE place a name match is unavoidable; everything else
25
- * groups by the tag recorded on the Command object itself.
26
- */
27
- function groupOfVisible(cmd) {
28
- return cmd.name() === 'help' ? 'Utilities' : groupOf(cmd);
29
- }
30
- /** Assign every option to exactly one section, with anything unlisted falling into the last one. */
31
- function sectionize(options) {
32
- const buckets = OPTION_SECTIONS.map((s) => ({ title: s.title, options: [] }));
33
- const fallback = buckets[buckets.length - 1];
34
- for (const option of options) {
35
- const index = OPTION_SECTIONS.findIndex((s) => s.flags.includes(option.long ?? ''));
36
- (index >= 0 ? buckets[index] : fallback).options.push(option);
37
- }
38
- return buckets.filter((bucket) => bucket.options.length > 0);
39
- }
40
- function optionLines(options, helper) {
41
- const lines = [];
42
- for (const bucket of sectionize(options)) {
43
- lines.push(subheading(bucket.title));
44
- for (const option of bucket.options) {
45
- lines.push(entry(helper.optionTerm(option), helper.optionDescription(option), ' '));
46
- }
47
- }
48
- return lines;
49
- }
50
- export function formatRootHelp(cmd, helper) {
51
- const lines = [];
52
- lines.push(`${colors.bold('Usage:')} ${helper.commandUsage(cmd)}`);
53
- lines.push('');
54
- lines.push(cmd.description());
55
- lines.push('');
56
- const visible = helper.visibleCommands(cmd);
57
- for (const title of GROUP_ORDER) {
58
- const group = visible.filter((c) => groupOfVisible(c) === title);
59
- if (!group.length)
60
- continue;
61
- lines.push(heading(title));
62
- for (const sub of group) {
63
- lines.push(entry(helper.subcommandTerm(sub), helper.subcommandDescription(sub)));
64
- }
65
- lines.push('');
66
- }
67
- const options = helper.visibleOptions(cmd);
68
- if (options.length) {
69
- lines.push(heading('Global options'));
70
- lines.push(...optionLines(options, helper));
71
- lines.push('');
72
- }
73
- lines.push(heading('Quick Start'));
74
- for (const line of QUICK_START)
75
- lines.push(` ${line}`);
76
- lines.push('');
77
- lines.push(heading('Exit Codes'));
78
- for (const { code, meaning } of EXIT_CODES)
79
- lines.push(` ${String(code).padEnd(5)}${meaning}`);
80
- lines.push('');
81
- lines.push(heading('Resources'));
82
- lines.push(` Docs: ${DOCS_URL}`);
83
- return `${lines.join('\n')}\n`;
84
- }
85
- export function formatCommandHelp(cmd, helper) {
86
- const meta = helpFor(cmd);
87
- const lines = [];
88
- lines.push(`${colors.bold('Usage:')} ${helper.commandUsage(cmd)}`);
89
- lines.push('');
90
- lines.push(helper.commandDescription(cmd));
91
- if (meta?.body) {
92
- lines.push('');
93
- lines.push(meta.body);
94
- }
95
- const subcommands = helper.visibleCommands(cmd);
96
- if (subcommands.length) {
97
- lines.push('');
98
- lines.push(heading('Commands'));
99
- for (const sub of subcommands) {
100
- lines.push(entry(helper.subcommandTerm(sub), helper.subcommandDescription(sub)));
101
- }
102
- }
103
- const own = helper.visibleOptions(cmd);
104
- if (own.length) {
105
- lines.push('');
106
- lines.push(heading('Options'));
107
- for (const option of own) {
108
- lines.push(entry(helper.optionTerm(option), helper.optionDescription(option)));
109
- }
110
- }
111
- const globals = helper.visibleGlobalOptions(cmd);
112
- if (globals.length) {
113
- lines.push('');
114
- lines.push(heading('Global options'));
115
- lines.push(...optionLines(globals, helper));
116
- }
117
- if (meta?.examples.length) {
118
- lines.push('');
119
- lines.push(heading('Examples'));
120
- for (const example of meta.examples)
121
- lines.push(` ${example}`);
122
- }
123
- if (meta?.notes) {
124
- lines.push('');
125
- lines.push(heading('Notes'));
126
- lines.push(indentBlock(meta.notes, ' '));
127
- }
128
- if (meta?.seeAlso) {
129
- lines.push('');
130
- lines.push(heading('See also'));
131
- lines.push(colors.dim(` ${meta.seeAlso}`));
132
- }
133
- return `${lines.join('\n')}\n`;
134
- }
135
- /**
136
- * One formatter registered on the root, dispatching on whether it was handed the root or a subcommand.
137
- * commander inherits `configureHelp` into every subcommand, which is what made 0.1.0's root-shaped
138
- * formatter mislabel and silently drop subcommand help - inheritance is fine, a formatter that ignores
139
- * which command it is rendering is not.
140
- */
141
- export function formatHelp(cmd, helper) {
142
- return cmd.parent === null ? formatRootHelp(cmd, helper) : formatCommandHelp(cmd, helper);
143
- }
144
- //# sourceMappingURL=format.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/help/format.ts"],"names":[],"mappings":"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"}
@@ -1,39 +0,0 @@
1
- /**
2
- * Group titles, in the order root help prints them.
3
- *
4
- * `Other` is the catch-all, and it is load-bearing: `botanary@0.1.0` grouped commands by matching a flat
5
- * allowlist of names, so any command nobody remembered to list vanished from help entirely (`agent --help`
6
- * showed one of twelve subcommands). Tagging at registration plus an always-visible catch-all means the
7
- * worst case is a command in the wrong section, never a command nobody can find - and
8
- * test/help-format.spec.ts asserts `Other` is empty, which turns a forgotten tag into a failing test.
9
- */
10
- export const GROUP_ORDER = ['Wallet', 'Agent', 'Connect', 'System', 'Utilities', 'Other'];
11
- /** Keyed by the Command object itself, so nothing depends on a name matching a list. */
12
- const TAGS = new WeakMap();
13
- /** Tag `cmd` for root help. Returns `cmd`, so it wraps a `.command(...)` chain in place. */
14
- export function group(cmd, title) {
15
- TAGS.set(cmd, title);
16
- return cmd;
17
- }
18
- export function groupOf(cmd) {
19
- return TAGS.get(cmd) ?? 'Other';
20
- }
21
- /**
22
- * Global-option sections, in help order, keyed by commander's own `option.long` (so `--no-color`, not
23
- * `--color`). A long flag missing from every section is printed under the last one rather than dropped.
24
- */
25
- export const OPTION_SECTIONS = [
26
- { title: 'General', flags: ['--version', '--help'] },
27
- { title: 'Auth and Network', flags: ['--chain', '--chain-id', '--account', '--api-url', '--home'] },
28
- { title: 'Output and Formatting', flags: ['--json', '--raw', '--quiet', '--verbose', '--no-color', '--reveal'] },
29
- { title: 'Runtime and Behavior', flags: ['--timeout', '--debug', '--no-interactive', '--yes', '--dry-run'] },
30
- ];
31
- /** The four lines root help prints under Quick Start. Deliberately the shortest useful path in. */
32
- export const QUICK_START = [
33
- 'botanary login Log in as the owner, in your browser',
34
- 'botanary balance What you hold, across every chain',
35
- 'botanary chains Which chains work, and what each can do',
36
- 'botanary send --dry-run Preflight a payment without sending it',
37
- ];
38
- export const DOCS_URL = 'https://docs.botanary.xyz';
39
- //# sourceMappingURL=groups.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"groups.js","sourceRoot":"","sources":["../../../src/help/groups.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAU,CAAC;AAInG,wFAAwF;AACxF,MAAM,IAAI,GAAG,IAAI,OAAO,EAAuB,CAAC;AAEhD,4FAA4F;AAC5F,MAAM,UAAU,KAAK,CAAoB,GAAM,EAAE,KAAiB;IAChE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,GAAY;IAClC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAA8C;IACxE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE;IACpD,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE;IACnG,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE;IAChH,EAAE,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,kBAAkB,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE;CAC7G,CAAC;AAEF,mGAAmG;AACnG,MAAM,CAAC,MAAM,WAAW,GAAa;IACnC,0EAA0E;IAC1E,uEAAuE;IACvE,6EAA6E;IAC7E,4EAA4E;CAC7E,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,2BAA2B,CAAC"}
@@ -1,50 +0,0 @@
1
- import { fileURLToPath } from 'node:url';
2
- const TARGET = 'botanary@latest';
3
- function runnable(manager, command) {
4
- return { manager, command, updatable: true, reason: null };
5
- }
6
- function nothingToDo(manager, reason) {
7
- return { manager, command: null, updatable: false, reason };
8
- }
9
- export function classifyInstall(modulePath, env) {
10
- const path = modulePath.replace(/\\/g, '/');
11
- // This guard must run first: a source checkout sits outside node_modules entirely, and every check
12
- // below it assumes it is looking at an installed package. Skip it and a source checkout falls through
13
- // to the unconditional npm fallback at the bottom of this function instead of being reported as source.
14
- // The manager-specific checks that follow, though, are NOT order-dependent among themselves - each
15
- // tests a disjoint path substring (e.g. `/.bun/install/cache/` and `/.bun/install/global/` can never
16
- // both match the same path), so swapping any two of them leaves classification unchanged. Verified by
17
- // swapping the bun cache and bun global checks; tests stayed green.
18
- if (!path.includes('/node_modules/')) {
19
- return nothingToDo('source', 'This is a source checkout, not an installed package. Update it with git.');
20
- }
21
- const ONE_OFF_REASON = 'A one-off runner (npx, pnpm dlx, bunx) fetches the latest botanary every run, so there is nothing to update.';
22
- if (path.includes('/_npx/') || path.includes('/pnpm/dlx/') || path.includes('/dlx-') || path.includes('/.bun/install/cache/')) {
23
- return nothingToDo('npx', ONE_OFF_REASON);
24
- }
25
- if (path.includes('/.bun/install/global/')) {
26
- return runnable('bun', ['bun', 'add', '-g', TARGET]);
27
- }
28
- const pnpmHome = env.PNPM_HOME?.replace(/\\/g, '/');
29
- if ((pnpmHome && path.startsWith(pnpmHome)) || path.includes('/pnpm/global/')) {
30
- return runnable('pnpm', ['pnpm', 'add', '-g', TARGET]);
31
- }
32
- if (path.includes('/.yarn/') || path.includes('/yarn/global/')) {
33
- return runnable('yarn', ['yarn', 'global', 'add', TARGET]);
34
- }
35
- // Everything else under node_modules is npm, including a global install under a Homebrew node prefix -
36
- // there is no `botanary` brew formula, so /opt/homebrew/lib/node_modules is just npm's own layout.
37
- return runnable('npm', ['npm', 'install', '-g', TARGET]);
38
- }
39
- /**
40
- * The same answer for the copy of the CLI that is running right now.
41
- *
42
- * Kept separate from `classifyInstall` so the table above stays pure and testable, and so a command's own
43
- * tests can stub just this one function. That matters more than it looks: under vitest the CLI runs from
44
- * `src/`, which is not inside any `node_modules`, so anything that resolved its own path here would
45
- * classify as `source` and correctly refuse to act - in every single test.
46
- */
47
- export function detectInstall(env = process.env) {
48
- return classifyInstall(fileURLToPath(import.meta.url), env);
49
- }
50
- //# sourceMappingURL=install-method.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"install-method.js","sourceRoot":"","sources":["../../src/install-method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAoBzC,MAAM,MAAM,GAAG,iBAAiB,CAAC;AAEjC,SAAS,QAAQ,CAAC,OAAgB,EAAE,OAAiB;IACnD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAC7D,CAAC;AAED,SAAS,WAAW,CAAC,OAAgB,EAAE,MAAc;IACnD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,UAAkB,EAAE,GAAsB;IACxE,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAE5C,mGAAmG;IACnG,sGAAsG;IACtG,wGAAwG;IACxG,mGAAmG;IACnG,qGAAqG;IACrG,sGAAsG;IACtG,oEAAoE;IACpE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACrC,OAAO,WAAW,CAAC,QAAQ,EAAE,0EAA0E,CAAC,CAAC;IAC3G,CAAC;IACD,MAAM,cAAc,GAAG,8GAA8G,CAAC;IACtI,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC;QAC9H,OAAO,WAAW,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;QAC3C,OAAO,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,CAAC;IACD,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACpD,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QAC9E,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QAC/D,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7D,CAAC;IACD,uGAAuG;IACvG,mGAAmG;IACnG,OAAO,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,MAAyB,OAAO,CAAC,GAAG;IAChE,OAAO,eAAe,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AAC9D,CAAC"}
@@ -1,27 +0,0 @@
1
- /** Mirrors tools/botanary-mcp/README.md's "Add it to your agent" section. Keep these in sync by hand
2
- * when that section changes - there is no build-time link between the two READMEs' packages. */
3
- export const MCP_SNIPPETS = {
4
- claude: {
5
- label: 'Claude Code',
6
- snippet: 'claude mcp add --transport stdio botanary -- npx -y botanary-mcp',
7
- // Its own CLI owns its config. Running the client's documented command is a far smaller blast radius
8
- // than us editing a config file we do not own.
9
- installCommand: ['claude', 'mcp', 'add', '--transport', 'stdio', 'botanary', '--', 'npx', '-y', 'botanary-mcp'],
10
- },
11
- codex: {
12
- label: 'Codex',
13
- snippet: 'codex mcp add botanary -- npx -y botanary-mcp',
14
- installCommand: ['codex', 'mcp', 'add', 'botanary', '--', 'npx', '-y', 'botanary-mcp'],
15
- },
16
- cursor: {
17
- label: 'Cursor (.cursor/mcp.json)',
18
- snippet: JSON.stringify({ mcpServers: { botanary: { command: 'npx', args: ['-y', 'botanary-mcp'] } } }, null, 2),
19
- configPath: '.cursor/mcp.json',
20
- },
21
- 'claude-desktop': {
22
- label: 'Claude Desktop (claude_desktop_config.json)',
23
- snippet: JSON.stringify({ mcpServers: { botanary: { command: 'npx', args: ['-y', 'botanary-mcp'], env: { BOTANARY_API_URL: 'https://api.app.botanary.xyz' } } } }, null, 2),
24
- configPath: 'claude_desktop_config.json',
25
- },
26
- };
27
- //# sourceMappingURL=mcp-snippets.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp-snippets.js","sourceRoot":"","sources":["../../src/mcp-snippets.ts"],"names":[],"mappings":"AAAA;iGACiG;AACjG,MAAM,CAAC,MAAM,YAAY,GAGrB;IACF,MAAM,EAAE;QACN,KAAK,EAAE,aAAa;QACpB,OAAO,EAAE,kEAAkE;QAC3E,qGAAqG;QACrG,+CAA+C;QAC/C,cAAc,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC;KAChH;IACD,KAAK,EAAE;QACL,KAAK,EAAE,OAAO;QACd,OAAO,EAAE,+CAA+C;QACxD,cAAc,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC;KACvF;IACD,MAAM,EAAE;QACN,KAAK,EAAE,2BAA2B;QAClC,OAAO,EAAE,IAAI,CAAC,SAAS,CACrB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,EAAE,EAAE,EAC9E,IAAI,EACJ,CAAC,CACF;QACD,UAAU,EAAE,kBAAkB;KAC/B;IACD,gBAAgB,EAAE;QAChB,KAAK,EAAE,6CAA6C;QACpD,OAAO,EAAE,IAAI,CAAC,SAAS,CACrB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,GAAG,EAAE,EAAE,gBAAgB,EAAE,8BAA8B,EAAE,EAAE,EAAE,EAAE,EACzI,IAAI,EACJ,CAAC,CACF;QACD,UAAU,EAAE,4BAA4B;KACzC;CACF,CAAC"}
@@ -1,63 +0,0 @@
1
- import { EXIT } from './errors.js';
2
- /**
3
- * Turn a send result into an exit code WITHOUT inventing a verdict.
4
- *
5
- * The one that matters is `pending`: the op is live, the backend has it, and the receipt has not arrived.
6
- * That is neither a success (nothing is confirmed) nor a failure (a resend would move money twice), and it
7
- * is exactly what exit 5 exists for. An unrecognised shape is treated as pending for the same reason:
8
- * claiming success for a result we cannot read is the one unrecoverable mistake here.
9
- *
10
- * When settled is true but status is missing, that is relayed-and-unreadable, not a decline - it maps to
11
- * exit 5 with code 'unknown' to avoid inventing a decline reason the backend never stated.
12
- */
13
- export function classifyWalletSend(result) {
14
- const root = (result ?? {});
15
- if (root.lane === 'agent') {
16
- const relay = root.relay ?? {};
17
- if (relay.settled === true) {
18
- if (relay.status === 'included') {
19
- return { exit: EXIT.ok, code: 'included', note: null };
20
- }
21
- if (relay.status === undefined) {
22
- return { exit: EXIT.pending, code: 'unknown', note: relay.note ?? null };
23
- }
24
- return { exit: EXIT.declined, code: relay.status, note: relay.note ?? null };
25
- }
26
- return { exit: EXIT.pending, code: String(relay.status ?? 'pending'), note: relay.note ?? null };
27
- }
28
- switch (root.status) {
29
- case 'relayed':
30
- return { exit: EXIT.ok, code: 'relayed', note: null };
31
- case 'failed':
32
- return { exit: EXIT.declined, code: String(root.declineReason ?? 'failed'), note: root.note ?? null };
33
- case 'rejected':
34
- return { exit: EXIT.error, code: 'rejected', note: 'You rejected it in the browser. Nothing was sent.' };
35
- case 'expired':
36
- return { exit: EXIT.error, code: 'expired', note: 'The request expired before it was signed. Nothing was sent.' };
37
- default:
38
- return { exit: EXIT.pending, code: String(root.status ?? 'pending'), note: root.note ?? null };
39
- }
40
- }
41
- /**
42
- * The same job for the agent lane's own `{ proposed, settled, status, reason }` envelope.
43
- *
44
- * When settled is true but status is missing, that is relayed-and-unreadable, not a decline - it maps to
45
- * exit 5 with code 'unknown' to avoid inventing a status the backend never stated.
46
- */
47
- export function classifyAgentAction(result) {
48
- const root = (result ?? {});
49
- if (root.proposed === false) {
50
- return { exit: EXIT.declined, code: String(root.reason ?? 'declined'), note: root.note ?? null };
51
- }
52
- if (root.settled === true) {
53
- if (root.status === 'included') {
54
- return { exit: EXIT.ok, code: 'included', note: null };
55
- }
56
- if (root.status === undefined) {
57
- return { exit: EXIT.pending, code: 'unknown', note: root.note ?? null };
58
- }
59
- return { exit: EXIT.declined, code: root.status, note: root.note ?? null };
60
- }
61
- return { exit: EXIT.pending, code: String(root.status ?? 'pending'), note: root.note ?? null };
62
- }
63
- //# sourceMappingURL=outcome.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"outcome.js","sourceRoot":"","sources":["../../src/outcome.ts"],"names":[],"mappings":"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"}
@@ -1,53 +0,0 @@
1
- /**
2
- * This package's own version, read from its real `package.json` at runtime.
3
- *
4
- * WHY NOT `await import('../package.json', { with: { type: 'json' } })`, which is what `bin/botanary.ts`
5
- * used to do: with `resolveJsonModule`, `tsc` COPIES that JSON into `outDir`, so every build emitted a
6
- * `dist/package.json` - a second, nested manifest inside the tarball that `files: ["dist"]` then
7
- * published. Node reads a nested `package.json` as a package boundary for everything beneath it, and
8
- * this one arrived carrying the whole dev manifest: `scripts`, `devDependencies`, and a `bin` path
9
- * (`dist/bin/botanary.js`) that is wrong when read relative to `dist/` itself. It worked only because
10
- * tsc copies the file verbatim and the copy happened to inherit `"type": "module"`; the moment that
11
- * field moved or changed, every `.js` under `dist/` would have been reinterpreted and the published
12
- * entrypoint would have failed to load. botanary-mcp hit exactly this and solved it the same way -
13
- * see `src/package-version.ts` there, whose header this mirrors.
14
- *
15
- * So: read it with `fs` at runtime. `dist/` stays free of any nested manifest, and the version reported
16
- * is the one in the manifest npm actually installed.
17
- *
18
- * The walk handles BOTH layouts this file runs under with one code path: `src/package-version.ts` under
19
- * vitest/@swc-node (package root is one level up) and `dist/src/package-version.js` when installed from
20
- * npm (two levels up).
21
- */
22
- import { readFileSync } from 'node:fs';
23
- import { dirname, join } from 'node:path';
24
- import { fileURLToPath } from 'node:url';
25
- /** Last resort only - see `readPackageVersion`. Never the normal path. */
26
- const UNKNOWN_VERSION = '0.0.0-unknown';
27
- function readPackageVersion() {
28
- let dir = dirname(fileURLToPath(import.meta.url));
29
- // Bounded: five levels is far more than either real layout needs, and a bound means a malformed
30
- // install can never turn this into an unbounded filesystem walk on startup.
31
- for (let i = 0; i < 5; i++) {
32
- try {
33
- const parsed = JSON.parse(readFileSync(join(dir, 'package.json'), 'utf8'));
34
- // Name-checked so a nested manifest (a bundler artifact, a stray fixture, a dependency's own
35
- // package.json) can never be mistaken for ours and report someone else's version.
36
- if (parsed.name === 'botanary' && typeof parsed.version === 'string')
37
- return parsed.version;
38
- }
39
- catch {
40
- // No package.json at this level, or it is unreadable - keep walking up.
41
- }
42
- const parent = dirname(dir);
43
- if (parent === dir)
44
- break; // filesystem root
45
- dir = parent;
46
- }
47
- // Never throw: the version is metadata on a banner, a `--version` line and the update nag. Failing to
48
- // read it must not be able to stop the CLI from running.
49
- return UNKNOWN_VERSION;
50
- }
51
- /** Resolved once at module load - the file cannot change under a running process. */
52
- export const CLI_VERSION = readPackageVersion();
53
- //# sourceMappingURL=package-version.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"package-version.js","sourceRoot":"","sources":["../../src/package-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,0EAA0E;AAC1E,MAAM,eAAe,GAAG,eAAe,CAAC;AAExC,SAAS,kBAAkB;IACzB,IAAI,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAClD,gGAAgG;IAChG,4EAA4E;IAC5E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAGxE,CAAC;YACF,6FAA6F;YAC7F,kFAAkF;YAClF,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;gBAAE,OAAO,MAAM,CAAC,OAAO,CAAC;QAC9F,CAAC;QAAC,MAAM,CAAC;YACP,wEAAwE;QAC1E,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG;YAAE,MAAM,CAAC,kBAAkB;QAC7C,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;IACD,sGAAsG;IACtG,yDAAyD;IACzD,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,MAAM,WAAW,GAAW,kBAAkB,EAAE,CAAC"}
@@ -1,48 +0,0 @@
1
- import { Command, Option } from 'commander';
2
- import { formatHelp } from './help/format.js';
3
- export function createProgram() {
4
- const program = new Command();
5
- program
6
- .name('botanary')
7
- .description('Botanary from your terminal.')
8
- .option('--json', 'Force JSON output (auto-enabled when piped)')
9
- .option('--raw', 'Print the full raw JSON payload instead of a table')
10
- .option('-q, --quiet', 'Suppress non-essential output')
11
- .option('--verbose', 'Show detail an ordinary run leaves out')
12
- .option('--no-interactive', 'Disable prompts and the REPL')
13
- .option('--no-color', 'Disable color output')
14
- .option('--reveal', 'Show redacted values in plain text')
15
- .option('--chain <id|key>', 'Default chain: an EVM chain id (8453) or a chain key (solana)')
16
- .option('--account <accountId>', 'Owner account to act as')
17
- .option('--api-url <url>', 'Botanary API base URL')
18
- .option('--home <dir>', 'Directory holding identity, session and CLI config')
19
- // Which agent identity to act as. The CLI sends no MCP `clientInfo`, so unlike a coding tool it
20
- // has no name to derive a profile from - it stays on `default` unless told otherwise, which on a
21
- // machine that paired before profiles existed is the same agent that machine already had.
22
- .option('--profile <name>', 'Agent identity profile to use (default: the machine\'s default identity)')
23
- .option('--timeout <ms>', 'Abort any single request after this many milliseconds')
24
- .option('--debug', 'Log one redacted line per HTTP request to stderr')
25
- .option('-y, --yes', 'Skip the review step on a command that moves funds')
26
- .option('--dry-run', 'Preflight only: never create a sign request, never relay')
27
- // `-V` was 0.1.0's only version flag. `-v` is the spelling every comparable CLI uses, so it becomes
28
- // the documented one and `-V` stays as a hidden alias - commander allows one short flag per option,
29
- // so the alias is a separate hidden option that runCli handles before dispatch.
30
- .addOption(new Option('-V', 'Alias of -v').hideHelp())
31
- .configureHelp({ showGlobalOptions: true, formatHelp });
32
- program.exitOverride();
33
- return program;
34
- }
35
- /** Tokenizes one REPL input line into argv-style tokens, honoring double-quoted substrings so
36
- * `send 25 usdc to "0xAb12...9F3"`-style input splits the same way a shell would. No escape-sequence
37
- * handling beyond that - REPL input is a person typing a command name and simple arguments, not a shell
38
- * script. */
39
- export function parseLine(line) {
40
- const tokens = [];
41
- const re = /"([^"]*)"|(\S+)/g;
42
- let match;
43
- while ((match = re.exec(line)) !== null) {
44
- tokens.push(match[1] !== undefined ? match[1] : match[2]);
45
- }
46
- return tokens;
47
- }
48
- //# sourceMappingURL=parser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,UAAU,aAAa;IAC3B,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,OAAO;SACJ,IAAI,CAAC,UAAU,CAAC;SAChB,WAAW,CAAC,8BAA8B,CAAC;SAC3C,MAAM,CAAC,QAAQ,EAAE,6CAA6C,CAAC;SAC/D,MAAM,CAAC,OAAO,EAAE,oDAAoD,CAAC;SACrE,MAAM,CAAC,aAAa,EAAE,+BAA+B,CAAC;SACtD,MAAM,CAAC,WAAW,EAAE,wCAAwC,CAAC;SAC7D,MAAM,CAAC,kBAAkB,EAAE,8BAA8B,CAAC;SAC1D,MAAM,CAAC,YAAY,EAAE,sBAAsB,CAAC;SAC5C,MAAM,CAAC,UAAU,EAAE,oCAAoC,CAAC;SACxD,MAAM,CAAC,kBAAkB,EAAE,+DAA+D,CAAC;SAC3F,MAAM,CAAC,uBAAuB,EAAE,yBAAyB,CAAC;SAC1D,MAAM,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;SAClD,MAAM,CAAC,cAAc,EAAE,oDAAoD,CAAC;QAC7E,gGAAgG;QAChG,iGAAiG;QACjG,0FAA0F;SACzF,MAAM,CAAC,kBAAkB,EAAE,0EAA0E,CAAC;SACtG,MAAM,CAAC,gBAAgB,EAAE,uDAAuD,CAAC;SACjF,MAAM,CAAC,SAAS,EAAE,kDAAkD,CAAC;SACrE,MAAM,CAAC,WAAW,EAAE,oDAAoD,CAAC;SACzE,MAAM,CAAC,WAAW,EAAE,0DAA0D,CAAC;QAChF,oGAAoG;QACpG,oGAAoG;QACpG,gFAAgF;SAC/E,SAAS,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,QAAQ,EAAE,CAAC;SACrD,aAAa,CAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;IAC1D,OAAO,CAAC,YAAY,EAAE,CAAC;IACvB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;cAGc;AACd,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,EAAE,GAAG,kBAAkB,CAAC;IAC9B,IAAI,KAA6B,CAAC;IAClC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,56 +0,0 @@
1
- import * as clack from '@clack/prompts';
2
- import { colors } from './render/colors.js';
3
- /** True whenever nothing decorative may be written. */
4
- export function isQuietMode(ctx) {
5
- return !ctx.interactive || ctx.json || ctx.quiet;
6
- }
7
- /**
8
- * Run `fn` behind a spinner. Completely inert - no ANSI, no stdin touch, no output at all - when the
9
- * output is machine-bound (`--json`), suppressed (`--quiet`), or the terminal is not interactive. 0.1.0
10
- * had no spinner anywhere, so every network call looked like a hang.
11
- */
12
- export async function step(ctx, label, fn) {
13
- if (isQuietMode(ctx))
14
- return fn();
15
- const spinner = clack.spinner();
16
- spinner.start(label);
17
- try {
18
- const result = await fn();
19
- spinner.stop(label);
20
- return result;
21
- }
22
- catch (e) {
23
- spinner.stop(label, 1);
24
- throw e;
25
- }
26
- }
27
- /**
28
- * Print one line of human-facing progress to stderr. Unlike `step`, this DOES print in a non-interactive
29
- * terminal: its callers carry the login code and the approval URL, which is exactly what a headless or
30
- * piped run still needs a human to act on. Printed to stderr (never stdout) so it cannot corrupt a piped
31
- * payload. Silenced only by `--json` or `--quiet`.
32
- */
33
- export function notify(ctx, line) {
34
- if (ctx.json || ctx.quiet)
35
- return;
36
- process.stderr.write(`${line}\n`);
37
- }
38
- /**
39
- * Create the CLI's waiting context. Routes progress through the CLI's existing `notify`, dimmed.
40
- * Silent in json mode so machine output stays parseable. No elicit - a terminal already has the person
41
- * in front of it.
42
- *
43
- * Wire `process.on('SIGINT')` to the signal so Ctrl-C aborts any wait promptly.
44
- */
45
- export function cliHitlContext(ctx, emit = notify) {
46
- const controller = new AbortController();
47
- return {
48
- signal: controller.signal,
49
- progress: ({ message }) => {
50
- if (ctx.json)
51
- return;
52
- emit(ctx, colors.dim(message));
53
- },
54
- };
55
- }
56
- //# sourceMappingURL=progress.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"progress.js","sourceRoot":"","sources":["../../src/progress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAqC5C,uDAAuD;AACvD,MAAM,UAAU,WAAW,CAAC,GAAgB;IAC1C,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC;AACnD,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAI,GAAgB,EAAE,KAAa,EAAE,EAAoB;IACjF,IAAI,WAAW,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,EAAE,CAAC;IAClC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpB,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACvB,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,MAAM,CAAC,GAAgB,EAAE,IAAY;IACnD,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK;QAAE,OAAO;IAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,GAAgB,EAChB,OAAsB,MAAM;IAE5B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,OAAO;QACL,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;YACxB,IAAI,GAAG,CAAC,IAAI;gBAAE,OAAO;YACrB,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QACjC,CAAC;KACF,CAAC;AACJ,CAAC"}