@kaleidorg/mind 0.6.4 → 0.7.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 (120) hide show
  1. package/README.md +257 -0
  2. package/dist/autonomy/risk.js.map +1 -1
  3. package/dist/autonomy/run-state.d.ts.map +1 -1
  4. package/dist/autonomy/run-state.js.map +1 -1
  5. package/dist/autonomy/task-store.d.ts.map +1 -1
  6. package/dist/autonomy/task-store.js.map +1 -1
  7. package/dist/bitrefill/contract.js.map +1 -1
  8. package/dist/context/budget.js.map +1 -1
  9. package/dist/context/builder.d.ts.map +1 -1
  10. package/dist/context/builder.js.map +1 -1
  11. package/dist/context/compress.js.map +1 -1
  12. package/dist/engine.d.ts.map +1 -1
  13. package/dist/engine.js.map +1 -1
  14. package/dist/evidence.d.ts +1 -1
  15. package/dist/evidence.d.ts.map +1 -1
  16. package/dist/evidence.js.map +1 -1
  17. package/dist/fastpath/fastpath.d.ts.map +1 -1
  18. package/dist/fastpath/fastpath.js.map +1 -1
  19. package/dist/flashnet/contract.js.map +1 -1
  20. package/dist/funnel.d.ts.map +1 -1
  21. package/dist/funnel.js.map +1 -1
  22. package/dist/index.d.ts +1 -0
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +2 -0
  25. package/dist/index.js.map +1 -1
  26. package/dist/kaleidoswap/contract.js.map +1 -1
  27. package/dist/knowledge/btc-map.js.map +1 -1
  28. package/dist/logger.d.ts.map +1 -1
  29. package/dist/logger.js.map +1 -1
  30. package/dist/lsps1/contract.js.map +1 -1
  31. package/dist/memory/store.d.ts.map +1 -1
  32. package/dist/memory/store.js.map +1 -1
  33. package/dist/qvac/assistant.js.map +1 -1
  34. package/dist/qvac/config.d.ts +6 -6
  35. package/dist/qvac/config.d.ts.map +1 -1
  36. package/dist/qvac/delegate.d.ts +2 -0
  37. package/dist/qvac/delegate.d.ts.map +1 -1
  38. package/dist/qvac/delegate.js +2 -0
  39. package/dist/qvac/delegate.js.map +1 -1
  40. package/dist/qvac/index.d.ts +1 -0
  41. package/dist/qvac/index.d.ts.map +1 -1
  42. package/dist/qvac/index.js +1 -0
  43. package/dist/qvac/index.js.map +1 -1
  44. package/dist/qvac/parse.d.ts +5 -2
  45. package/dist/qvac/parse.d.ts.map +1 -1
  46. package/dist/qvac/parse.js.map +1 -1
  47. package/dist/qvac/provider.d.ts.map +1 -1
  48. package/dist/qvac/provider.js +8 -13
  49. package/dist/qvac/provider.js.map +1 -1
  50. package/dist/qvac/stream.d.ts.map +1 -1
  51. package/dist/qvac/stream.js +29 -1
  52. package/dist/qvac/stream.js.map +1 -1
  53. package/dist/qvac/tools.d.ts +32 -0
  54. package/dist/qvac/tools.d.ts.map +1 -0
  55. package/dist/qvac/tools.js +84 -0
  56. package/dist/qvac/tools.js.map +1 -0
  57. package/dist/qvac/voice.js.map +1 -1
  58. package/dist/rag/retriever.d.ts.map +1 -1
  59. package/dist/rag/tool.js.map +1 -1
  60. package/dist/rag/vector-store.d.ts.map +1 -1
  61. package/dist/rag/vector-store.js.map +1 -1
  62. package/dist/recipe/issue-asset.d.ts +16 -0
  63. package/dist/recipe/issue-asset.d.ts.map +1 -0
  64. package/dist/recipe/issue-asset.js +94 -0
  65. package/dist/recipe/issue-asset.js.map +1 -0
  66. package/dist/recipe/runner.d.ts.map +1 -1
  67. package/dist/recipe/runner.js.map +1 -1
  68. package/dist/skills/loader.js.map +1 -1
  69. package/dist/skills/registry.d.ts.map +1 -1
  70. package/dist/skills/registry.js.map +1 -1
  71. package/dist/testing/index.d.ts +14 -0
  72. package/dist/testing/index.d.ts.map +1 -0
  73. package/dist/testing/index.js +12 -0
  74. package/dist/testing/index.js.map +1 -0
  75. package/dist/testing/mock-wallet.d.ts +79 -0
  76. package/dist/testing/mock-wallet.d.ts.map +1 -0
  77. package/dist/testing/mock-wallet.js +180 -0
  78. package/dist/testing/mock-wallet.js.map +1 -0
  79. package/dist/testing/scripted-provider.d.ts +17 -0
  80. package/dist/testing/scripted-provider.d.ts.map +1 -0
  81. package/dist/testing/scripted-provider.js +26 -0
  82. package/dist/testing/scripted-provider.js.map +1 -0
  83. package/dist/tools/in-process.d.ts.map +1 -1
  84. package/dist/tools/mcp.d.ts.map +1 -1
  85. package/dist/tools/registry.d.ts.map +1 -1
  86. package/dist/tools/registry.js.map +1 -1
  87. package/dist/wallet/confirm.d.ts.map +1 -1
  88. package/dist/wallet/confirm.js +21 -1
  89. package/dist/wallet/confirm.js.map +1 -1
  90. package/dist/wallet/contract.d.ts.map +1 -1
  91. package/dist/wallet/contract.js +36 -0
  92. package/dist/wallet/contract.js.map +1 -1
  93. package/package.json +10 -5
  94. package/skills/README.md +1 -1
  95. package/skills/kaleido-node/SKILL.md +63 -0
  96. package/skills/kaleido-trading/SKILL.md +15 -2
  97. package/skills/kaleido-trading/references/api.md +61 -0
  98. package/skills/kaleido-trading/references/assets.md +57 -0
  99. package/skills/kaleido-trading/references/atomic.md +93 -0
  100. package/skills/paid-data/SKILL.md +59 -6
  101. package/skills/rgb-lightning-node/SKILL.md +116 -11
  102. package/src/index.ts +3 -0
  103. package/src/qvac/delegate.ts +2 -0
  104. package/src/qvac/index.ts +2 -0
  105. package/src/qvac/parse.ts +5 -2
  106. package/src/qvac/provider.test.ts +38 -0
  107. package/src/qvac/provider.ts +10 -14
  108. package/src/qvac/stream.test.ts +28 -0
  109. package/src/qvac/stream.ts +30 -1
  110. package/src/qvac/tools.test.ts +86 -0
  111. package/src/qvac/tools.ts +106 -0
  112. package/src/recipe/issue-asset.test.ts +92 -0
  113. package/src/recipe/issue-asset.ts +95 -0
  114. package/src/testing/index.ts +14 -0
  115. package/src/testing/mock-wallet.ts +211 -0
  116. package/src/testing/scripted-provider.ts +37 -0
  117. package/src/wallet/confirm.test.ts +16 -0
  118. package/src/wallet/confirm.ts +21 -1
  119. package/src/wallet/contract.test.ts +38 -0
  120. package/src/wallet/contract.ts +36 -0
@@ -0,0 +1,180 @@
1
+ /**
2
+ * A stateful mock wallet — balances per layer, contacts (incl. ambiguous +
3
+ * injectable), a price, validation (insufficient funds, no route, unknown
4
+ * contact, no colored UTXOs), RGB issuance, and a record of what actually got
5
+ * "sent". The canonical contract tools bind to it, so the agent sees real
6
+ * schemas and real failure modes — not trivial canned stubs.
7
+ *
8
+ * Used by the eval harness and exported as `@kaleidorg/mind/testing` so hosts
9
+ * can build and demo an agent with no node, no funds and no network.
10
+ */
11
+ import { bindWalletTools } from '../wallet/contract.js';
12
+ import { ToolRegistry } from '../tools/registry.js';
13
+ export class MockWallet {
14
+ priceUsd;
15
+ failRoute;
16
+ balances;
17
+ assets;
18
+ contacts;
19
+ utxos;
20
+ /** RGB assets the node knows about (seeded USDT/XAUT + anything issued). */
21
+ rgbAssets;
22
+ transfers = [];
23
+ sends = [];
24
+ constructor(o = {}) {
25
+ this.priceUsd = o.priceUsd ?? 65_000;
26
+ this.failRoute = o.failRoute ?? false;
27
+ this.balances = o.balances ?? { spark: 500_000, rln: 300_000, arkade: 200_000 };
28
+ this.assets = o.assets ?? { USDT: 25_000_000, XAUT: 0 };
29
+ this.contacts = o.contacts ?? [
30
+ { name: 'bob', ln_address: 'bob@kaleidoswap.com' },
31
+ { name: 'alice', ln_address: 'alice@kaleidoswap.com' },
32
+ { name: 'john', ln_address: 'john.smith@kaleidoswap.com' },
33
+ { name: 'john', ln_address: 'john.doe@kaleidoswap.com' }, // ambiguous on purpose
34
+ ];
35
+ this.utxos = o.utxos ?? 5;
36
+ this.rgbAssets = Object.keys(this.assets).map((ticker) => ({
37
+ asset_id: mockAssetId(ticker),
38
+ ticker,
39
+ name: ticker === 'USDT' ? 'Tether USD' : ticker === 'XAUT' ? 'Tether Gold' : ticker,
40
+ precision: 0,
41
+ schema: 'NIA',
42
+ issued_supply: this.assets[ticker],
43
+ }));
44
+ }
45
+ findAsset(ref) {
46
+ const q = String(ref ?? '');
47
+ return this.rgbAssets.find((a) => a.asset_id === q || a.ticker.toUpperCase() === q.toUpperCase());
48
+ }
49
+ /** Issue a new RGB asset — mirrors the node: needs a free colored UTXO. */
50
+ issueAsset(args) {
51
+ if (this.utxos < 1)
52
+ throw new Error('No available colored UTXOs — call rln_create_utxos first.');
53
+ const schema = (['NIA', 'CFA', 'UDA'].includes(String(args.schema)) ? args.schema : 'NIA');
54
+ const ticker = String(args.ticker ?? '').toUpperCase();
55
+ if (!/^[A-Z0-9]{1,8}$/.test(ticker))
56
+ throw new Error('ticker must be 1-8 uppercase letters/digits.');
57
+ if (this.findAsset(ticker))
58
+ throw new Error(`An asset with ticker ${ticker} already exists.`);
59
+ const supply = schema === 'UDA' ? 1 : Number(args.amount);
60
+ if (!(supply > 0))
61
+ throw new Error('amount must be positive.');
62
+ const asset = {
63
+ asset_id: mockAssetId(ticker),
64
+ ticker,
65
+ name: String(args.name ?? ticker),
66
+ precision: Number(args.precision ?? 0),
67
+ schema,
68
+ issued_supply: supply,
69
+ };
70
+ this.utxos -= 1;
71
+ this.rgbAssets.push(asset);
72
+ this.assets[ticker] = supply;
73
+ this.transfers.push({ idx: this.transfers.length + 1, asset_id: asset.asset_id, kind: 'Issuance', status: 'Settled', amount: supply });
74
+ this.sends.push({ tool: 'rln_issue_asset', to: 'self', asset: ticker, amount: supply });
75
+ return asset;
76
+ }
77
+ totalSats() {
78
+ return this.balances.spark + this.balances.rln + this.balances.arkade;
79
+ }
80
+ reset() {
81
+ this.sends = [];
82
+ this.transfers = [];
83
+ }
84
+ send(tool, rec) {
85
+ if (this.failRoute)
86
+ throw new Error('No route to destination.');
87
+ if (rec.amount_sats != null && rec.amount_sats > this.totalSats()) {
88
+ throw new Error(`Insufficient funds: have ${this.totalSats()} sats, need ${rec.amount_sats}.`);
89
+ }
90
+ this.sends.push({ tool, ...rec });
91
+ return { status: 'SUCCESS', payment_hash: 'mock' + this.sends.length };
92
+ }
93
+ handlers() {
94
+ return {
95
+ get_balances: async () => ({
96
+ total_sats: this.totalSats(),
97
+ layers: [
98
+ { layer: 'spark', btc_sats: this.balances.spark, assets: [] },
99
+ { layer: 'rln', btc_sats: this.balances.rln, assets: Object.entries(this.assets).filter(([, v]) => v > 0).map(([ticker, amount]) => ({ ticker, amount })) },
100
+ { layer: 'arkade', btc_sats: this.balances.arkade, assets: [] },
101
+ ],
102
+ }),
103
+ spark_get_balance: async () => ({ btc_sats: this.balances.spark }),
104
+ rln_get_balances: async () => ({ btc_sats: this.balances.rln, assets: this.assets }),
105
+ arkade_get_balance: async () => ({ btc_sats: this.balances.arkade }),
106
+ spark_get_address: async () => ({ address: 'bc1qspark0mockreceiveaddr' }),
107
+ arkade_get_address: async () => ({ address: 'ark1q0mockreceiveaddr' }),
108
+ get_price: async ({ fiat }) => ({ asset: 'BTC', price_usd: this.priceUsd, fiat: fiat ?? 'USD' }),
109
+ fiat_to_sats: async ({ amount }) => ({ sats: Math.round((Number(amount) / this.priceUsd) * 1e8) }),
110
+ resolve_contact: async ({ name }) => {
111
+ const q = String(name).toLowerCase();
112
+ const matches = this.contacts.filter((c) => c.name.toLowerCase() === q);
113
+ if (matches.length === 0)
114
+ throw new Error(`No contact named "${name}".`);
115
+ if (matches.length > 1)
116
+ throw new Error(`Ambiguous: ${matches.length} contacts named "${name}" — ask the user which one.`);
117
+ return matches[0];
118
+ },
119
+ rln_create_ln_invoice: async ({ amount_sats }) => ({ invoice: `lnbcmock${amount_sats ?? ''}` }),
120
+ rln_create_rgb_invoice: async ({ asset, amount }) => ({ invoice: 'rgb:mockinvoice', asset, amount }),
121
+ send_payment: async ({ to, amount_sats }) => this.send('send_payment', { to: String(to), amount_sats: amount_sats != null ? Number(amount_sats) : undefined }),
122
+ rln_pay_invoice: async ({ invoice }) => this.send('rln_pay_invoice', { to: String(invoice) }),
123
+ rln_send_asset: async ({ asset, amount, to }) => {
124
+ const a = String(asset);
125
+ if ((this.assets[a] ?? 0) < Number(amount))
126
+ throw new Error(`Insufficient ${a} balance.`);
127
+ const res = this.send('rln_send_asset', { to: String(to), asset: a, amount: Number(amount) });
128
+ const found = this.findAsset(a);
129
+ if (found)
130
+ this.transfers.push({ idx: this.transfers.length + 1, asset_id: found.asset_id, kind: 'Send', status: 'Settled', amount: Number(amount) });
131
+ return res;
132
+ },
133
+ rln_list_assets: async () => ({
134
+ assets: this.rgbAssets.map((a) => ({ ...a, balance: { spendable: this.assets[a.ticker] ?? 0 } })),
135
+ }),
136
+ rln_list_transfers: async ({ asset_id, asset }) => {
137
+ const ref = asset_id ?? asset;
138
+ const found = this.findAsset(ref);
139
+ if (!found)
140
+ throw new Error(`Unknown asset "${String(ref)}".`);
141
+ return { transfers: this.transfers.filter((x) => x.asset_id === found.asset_id) };
142
+ },
143
+ rln_create_utxos: async ({ num }) => {
144
+ const n = Number(num ?? 5);
145
+ this.utxos += n;
146
+ this.sends.push({ tool: 'rln_create_utxos', to: 'self', amount: n });
147
+ return { created: true, num: n, free_utxos: this.utxos };
148
+ },
149
+ rln_issue_asset: async (args) => {
150
+ const a = this.issueAsset(args);
151
+ return { issued: true, asset_id: a.asset_id, ticker: a.ticker, name: a.name, schema: a.schema, issued_supply: a.issued_supply };
152
+ },
153
+ get_swap_quote: async ({ from_asset, to_asset, amount }) => ({
154
+ quote_id: 'quote-mock',
155
+ from_asset,
156
+ to_asset,
157
+ amount: Number(amount),
158
+ // toy rate: 1 USDT ≈ 1538 sats at $65k; otherwise echo.
159
+ receive_amount: String(from_asset).toUpperCase() === 'USDT' ? Math.round(Number(amount) * (1e8 / this.priceUsd)) : Number(amount),
160
+ }),
161
+ execute_swap: async ({ from_asset, to_asset, amount }) => {
162
+ this.sends.push({ tool: 'execute_swap', to: `${from_asset}->${to_asset}`, amount: Number(amount) });
163
+ return { status: 'SUCCESS', swap_id: 'swap' + this.sends.length };
164
+ },
165
+ };
166
+ }
167
+ /** Bind the contract tools to this wallet (optionally overriding some — e.g. to inject). */
168
+ registry(overrides) {
169
+ const h = { ...this.handlers(), ...(overrides ?? {}) };
170
+ return new ToolRegistry([bindWalletTools(h, { layers: ['spark', 'rln', 'arkade', 'core'], allowMissing: true })]);
171
+ }
172
+ }
173
+ /** Deterministic fake RGB contract id per ticker (stable across runs). */
174
+ function mockAssetId(ticker) {
175
+ let h = 0;
176
+ for (const c of ticker)
177
+ h = (h * 31 + c.charCodeAt(0)) >>> 0;
178
+ return `rgb:mock-${ticker.toLowerCase()}-${h.toString(36)}`;
179
+ }
180
+ //# sourceMappingURL=mock-wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-wallet.js","sourceRoot":"","sources":["../../src/testing/mock-wallet.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * A scripted LLMProvider — replays planned turns instead of running a model.
3
+ *
4
+ * Lets hosts wire the full Engine / Funnel (skills, recipes, confirm gate) in
5
+ * unit tests, CI and demos without loading a QVAC model. Deterministic tiers
6
+ * (fast-path, recipes with regex extraction) never call it at all.
7
+ */
8
+ import type { LLMProvider } from '../providers/types.js';
9
+ export interface ScriptedTurn {
10
+ /** Assistant text for this turn. */
11
+ text?: string;
12
+ /** Tool to call — ignored when the tool is not in the turn's scoped tool list. */
13
+ tool?: string;
14
+ args?: Record<string, unknown>;
15
+ }
16
+ export declare function scriptedProvider(turns?: ScriptedTurn[], fallback?: string): LLMProvider;
17
+ //# sourceMappingURL=scripted-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scripted-provider.d.ts","sourceRoot":"","sources":["../../src/testing/scripted-provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,WAAW,YAAY;IAC3B,oCAAoC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kFAAkF;IAClF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,GAAE,YAAY,EAAO,EAAE,QAAQ,SAA6B,GAAG,WAAW,CAiB/G"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * A scripted LLMProvider — replays planned turns instead of running a model.
3
+ *
4
+ * Lets hosts wire the full Engine / Funnel (skills, recipes, confirm gate) in
5
+ * unit tests, CI and demos without loading a QVAC model. Deterministic tiers
6
+ * (fast-path, recipes with regex extraction) never call it at all.
7
+ */
8
+ export function scriptedProvider(turns = [], fallback = 'I need more information.') {
9
+ let index = 0;
10
+ return {
11
+ name: 'scripted',
12
+ async runTurn(input) {
13
+ const planned = turns[index++] ?? { text: fallback };
14
+ const call = planned.tool && input.tools.some((t) => t.name === planned.tool)
15
+ ? { id: `scripted-${index}`, name: planned.tool, arguments: planned.args ?? {} }
16
+ : undefined;
17
+ return {
18
+ text: planned.text ?? '',
19
+ rawContent: planned.text ?? '',
20
+ toolCalls: call ? [call] : [],
21
+ inference: { durationMs: 0, status: 'completed' },
22
+ };
23
+ },
24
+ };
25
+ }
26
+ //# sourceMappingURL=scripted-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scripted-provider.js","sourceRoot":"","sources":["../../src/testing/scripted-provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH,MAAM,UAAU,gBAAgB,CAAC,KAAK,GAAmB,EAAE,EAAE,QAAQ,GAAG,0BAA0B;IAChG,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,KAAK,CAAC,OAAO,CAAC,KAAK;YACjB,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YACrD,MAAM,IAAI,GAAyB,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC;gBACjG,CAAC,CAAC,EAAE,EAAE,EAAE,YAAY,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE;gBAChF,CAAC,CAAC,SAAS,CAAC;YACd,OAAO;gBACL,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE;gBACxB,UAAU,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE;gBAC9B,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC7B,SAAS,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE;aAClD,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"in-process.d.ts","sourceRoot":"","sources":["../../src/tools/in-process.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,aAAa,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,UAAU,EAAE,OAAO,CAAC;IACpB,sEAAsE;IACtE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3C;AAED,qBAAa,mBAAoB,YAAW,UAAU;IACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoC;gBAE9C,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE;IAK9C,SAAS,IAAI,OAAO,EAAE;IAStB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIpB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;CAK7E"}
1
+ {"version":3,"file":"in-process.d.ts","sourceRoot":"","sources":["../../src/tools/in-process.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,aAAa,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,UAAU,EAAE,OAAO,CAAC;IACpB,sEAAsE;IACtE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3C;AAED,qBAAa,mBAAoB,YAAW,UAAU;IACpD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoC;IAE1D,YAAY,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,EAG7C;IAED,SAAS,IAAI,OAAO,EAAE,CAOrB;IAED,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzB;IAEK,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAI3E;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/tools/mcp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAc9C,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GACjF;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC;AAEpE,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,YAAY,CAAC;IACxB,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,kFAAkF;IAClF,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAiBpD;AAED,qBAAa,aAAc,YAAW,UAAU;IAC9C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAuB;IAC5C,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,KAAK,CAAiB;gBAElB,IAAI,EAAE,oBAAoB;IAKtC,+EAA+E;IACzE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAqC9B,SAAS,IAAI,OAAO,EAAE;IAItB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIpB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAYtE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAI7B"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/tools/mcp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAc9C,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GACjF;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAAC;AAEpE,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,YAAY,CAAC;IACxB,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,kFAAkF;IAClF,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAiBpD;AAED,qBAAa,aAAc,YAAW,UAAU;IAC9C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAuB;IAC5C,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,KAAK,CAAiB;IAE9B,YAAY,IAAI,EAAE,oBAAoB,EAGrC;IAED,+EAA+E;IACzE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAmC7B;IAED,SAAS,IAAI,OAAO,EAAE,CAErB;IAED,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzB;IAEK,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAU3E;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAG3B;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAEhC,OAAO,GAAE,UAAU,EAAO;IAItC,GAAG,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAK7B,0DAA0D;IACpD,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAcrC,iDAAiD;IACjD,OAAO,CAAC,OAAO;IAIf,oDAAoD;IAC9C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAM5E,sEAAsE;IAChE,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;CAIzD"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAE5C,YAAY,OAAO,GAAE,UAAU,EAAO,EAErC;IAED,GAAG,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAG5B;IAED,0DAA0D;IACpD,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAYpC;IAED,iDAAiD;IACjD,OAAO,CAAC,OAAO;IAIf,oDAAoD;IAC9C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAI3E;IAED,sEAAsE;IAChE,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAGvD;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,MAAM,OAAO,YAAY;IACN,OAAO,GAAiB,EAAE,CAAC;IAE5C,YAAY,UAAwB,EAAE;QACpC,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,GAAG,CAAC,MAAkB;QACpB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0DAA0D;IAC1D,KAAK,CAAC,SAAS;QACb,MAAM,GAAG,GAAc,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;YACvC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gBACtB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;oBAAE,SAAS,CAAC,oBAAoB;gBACpD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACjB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACd,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,iDAAiD;IACzC,OAAO,CAAC,IAAY;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED,oDAAoD;IACpD,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,IAA6B;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,GAAG,CAAC,CAAC;QAC7D,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,sEAAsE;IACtE,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC5C,CAAC;CACF"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,MAAM,OAAO,YAAY;IACN,OAAO,GAAiB,EAAE,CAAC;IAE5C,YAAY,OAAO,GAAiB,EAAE;QACpC,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,GAAG,CAAC,MAAkB;QACpB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0DAA0D;IAC1D,KAAK,CAAC,SAAS;QACb,MAAM,GAAG,GAAc,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;YACvC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gBACtB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;oBAAE,SAAS,CAAC,oBAAoB;gBACpD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACjB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACd,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,iDAAiD;IACzC,OAAO,CAAC,IAAY;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED,oDAAoD;IACpD,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,IAA6B;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,GAAG,CAAC,CAAC;QAC7D,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,sEAAsE;IACtE,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC5C,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"confirm.d.ts","sourceRoot":"","sources":["../../src/wallet/confirm.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAyCH,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,MAAM,GAAG,IAAI,CA2BzG"}
1
+ {"version":3,"file":"confirm.d.ts","sourceRoot":"","sources":["../../src/wallet/confirm.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAyCH,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,MAAM,GAAG,IAAI,CA+CzG"}
@@ -54,10 +54,30 @@ export function confirmReadback(call) {
54
54
  return ask(`Send ${sats(a.amount_sats)} to ${to()}${over(name, a)}`);
55
55
  case 'rln_send_asset':
56
56
  case 'liquid_send':
57
- return ask(`Send ${asset(a.amount, a.asset)} to ${to()}${over(name, a)}`);
57
+ // kaleido-mcp names these asset_id / recipient_id.
58
+ return ask(`Send ${asset(a.amount, a.asset ?? shortRef(String(a.asset_id ?? '')))} to ${to(a.to != null ? 'to' : 'recipient_id')}${over(name, a)}`);
58
59
  case 'rln_pay_invoice':
59
60
  case 'spark_pay_invoice':
60
61
  return ask(`Pay Lightning invoice ${shortRef(String(a.invoice ?? ''))}${over(name, a)}`);
62
+ case 'rln_issue_asset': {
63
+ const label = a.name != null && a.ticker != null && String(a.name) !== String(a.ticker) ? ` (${String(a.name)})` : '';
64
+ return a.schema === 'UDA'
65
+ ? ask(`Issue unique asset ${String(a.ticker ?? a.name)}${label} on RGB`)
66
+ : ask(`Issue ${asset(a.amount, a.ticker ?? a.name)}${label}, a new RGB asset`);
67
+ }
68
+ case 'rln_create_utxos':
69
+ return ask(`Create ${fmtNum(Number(a.num ?? 5))} RGB UTXOs on-chain${over(name, a)}`);
70
+ case 'rln_send_btc':
71
+ return ask(`Send ${sats(a.amount_sat)} on-chain to ${to('address')}${over(name, a)}`);
72
+ case 'rln_open_channel': {
73
+ const peer = shortRef(String(a.peer_pubkey_and_addr ?? '').split('@')[0] ?? '');
74
+ const withAsset = a.asset_id != null && a.asset_amount != null ? ` with ${fmtNum(Number(a.asset_amount))} of ${shortRef(String(a.asset_id))}` : '';
75
+ return ask(`Open a ${sats(a.capacity_sat)} channel to ${peer}${withAsset}`);
76
+ }
77
+ case 'rln_close_channel':
78
+ return ask(`${a.force ? 'Force-close' : 'Close'} channel ${shortRef(String(a.channel_id ?? ''))}`);
79
+ case 'rln_atomic_taker':
80
+ return ask(`Accept atomic swap ${shortRef(String(a.swapstring ?? ''))} on your node`);
61
81
  case 'execute_swap':
62
82
  return ask(`Swap ${fmtNum(Number(a.amount))} ${String(a.from_asset)} for ${String(a.to_asset)}`);
63
83
  default:
@@ -1 +1 @@
1
- {"version":3,"file":"confirm.js","sourceRoot":"","sources":["../../src/wallet/confirm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"confirm.js","sourceRoot":"","sources":["../../src/wallet/confirm.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/wallet/contract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAG7D,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEzE,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,6DAA6D;IAC7D,KAAK,EAAE,WAAW,CAAC;IACnB,wCAAwC;IACxC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAyBD,iFAAiF;AACjF,eAAO,MAAM,YAAY,EAAE,aAAa,EA2DvC,CAAC;AAIF,eAAO,MAAM,aAAa,EAAE,WAAW,EAAiD,CAAC;AAEzF,6EAA6E;AAC7E,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,MAAM,CAAmE,CAAC;AAEhH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAErE;AAED,uFAAuF;AACvF,wBAAgB,WAAW,CAAC,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,aAAa,EAAE,CAIzG;AAED,+DAA+D;AAC/D,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAE5D;AAED,4CAA4C;AAC5C,MAAM,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAEhF,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,IAAI,GAAE,iBAAsB,GAAG,mBAAmB,CAkB1H"}
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/wallet/contract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAG7D,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEzE,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,6DAA6D;IAC7D,KAAK,EAAE,WAAW,CAAC;IACnB,wCAAwC;IACxC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAyBD,iFAAiF;AACjF,eAAO,MAAM,YAAY,EAAE,aAAa,EA+FvC,CAAC;AAIF,eAAO,MAAM,aAAa,EAAE,WAAW,EAAiD,CAAC;AAEzF,6EAA6E;AAC7E,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,MAAM,CAAmE,CAAC;AAEhH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAErE;AAED,uFAAuF;AACvF,wBAAgB,WAAW,CAAC,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,aAAa,EAAE,CAIzG;AAED,+DAA+D;AAC/D,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAE5D;AAED,4CAA4C;AAC5C,MAAM,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAEhF,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,IAAI,GAAE,iBAAsB,GAAG,mBAAmB,CAkB1H"}
@@ -60,6 +60,42 @@ export const WALLET_TOOLS = [
60
60
  t('rln', 'rln_create_rgb_invoice', 'Create an RGB asset invoice to receive an asset (e.g. USDT).', { asset, amount: { type: 'number', description: 'Asset amount' } }, ['asset', 'amount']),
61
61
  t('rln', 'rln_pay_invoice', 'Pay a Lightning invoice from the RLN node.', { invoice: { type: 'string' } }, ['invoice'], true),
62
62
  t('rln', 'rln_send_asset', 'Send an RGB asset (e.g. USDT) to a recipient.', { asset, amount: { type: 'number' }, to: { type: 'string' } }, ['asset', 'amount', 'to'], true),
63
+ t('rln', 'rln_list_assets', 'List RGB assets held by the RLN node (asset_id, ticker, name, precision, balances).'),
64
+ t('rln', 'rln_get_asset_balance', 'Get the balance of one RGB asset by asset_id (settled, future, spendable, off-chain).', { asset_id: { type: 'string', description: "RGB asset id, e.g. 'rgb:2JEUOrsc-…'" } }, ['asset_id']),
65
+ t('rln', 'rln_refresh_transfers', 'Refresh pending RGB transfers so balances and transfer status are up to date.'),
66
+ t('rln', 'rln_get_address', 'Get an on-chain BTC address of the RLN node for deposits.'),
67
+ t('rln', 'rln_send_btc', 'Send on-chain BTC from the RLN node.', { address: { type: 'string', description: 'Destination Bitcoin address' }, amount_sat: { type: 'number', description: 'Amount in satoshis' }, fee_rate: { type: 'number', description: 'sat/vbyte (default 3)' } }, ['address', 'amount_sat'], true),
68
+ t('rln', 'rln_list_payments', 'List recent Lightning payments (sent and received) on the RLN node.', { limit: { type: 'number', description: 'Max payments (default 20)' } }),
69
+ t('rln', 'rln_connect_peer', 'Connect the RLN node to a Lightning peer.', { peer_pubkey_and_addr: { type: 'string', description: 'pubkey@host:port' } }, ['peer_pubkey_and_addr']),
70
+ t('rln', 'rln_open_channel', 'Open a Lightning channel, optionally allocating an RGB asset to it.', {
71
+ peer_pubkey_and_addr: { type: 'string', description: 'pubkey@host:port' },
72
+ capacity_sat: { type: 'number', description: 'Channel capacity in satoshis' },
73
+ push_msat: { type: 'number', description: 'Millisatoshis pushed to the peer (default 0)' },
74
+ asset_id: { type: 'string', description: 'RGB asset id to allocate' },
75
+ asset_amount: { type: 'number', description: 'RGB asset amount to allocate' },
76
+ is_public: { type: 'boolean', description: 'Announce the channel (default false)' },
77
+ }, ['peer_pubkey_and_addr', 'capacity_sat'], true),
78
+ t('rln', 'rln_close_channel', 'Close a Lightning channel (force only for an unresponsive peer).', { channel_id: { type: 'string' }, peer_pubkey: { type: 'string' }, force: { type: 'boolean', description: 'Unilateral close (default false)' } }, ['channel_id', 'peer_pubkey'], true),
79
+ t('rln', 'rln_get_channel_id', 'Resolve a temporary_channel_id from rln_open_channel to the final channel_id.', { temporary_channel_id: { type: 'string' } }, ['temporary_channel_id']),
80
+ t('rln', 'rln_atomic_taker', 'Whitelist a maker swap on the node (taker side). Pass the swapstring from kaleidoswap_atomic_init, before kaleidoswap_atomic_execute.', { swapstring: { type: 'string' } }, ['swapstring'], true),
81
+ t('rln', 'rln_list_swaps', 'List atomic swaps on the RLN node (maker and taker sides).'),
82
+ t('rln', 'rln_get_swap', 'Get an atomic swap by payment_hash.', { payment_hash: { type: 'string' }, taker: { type: 'boolean', description: 'Taker-side swap' } }, ['payment_hash']),
83
+ t('rln', 'rln_list_transfers', 'List RGB transfers for one asset (issuance, sends, receives) with their status — use to check if an RGB invoice was paid.', { asset_id: { type: 'string', description: 'RGB asset id (in-app wallets also accept a ticker)' } }, ['asset_id']),
84
+ // Issuance + UTXO prep spend on-chain BTC and are irreversible → gated like any spend.
85
+ t('rln', 'rln_create_utxos', 'Create colorable UTXOs on the RLN node — needed before issuing or receiving RGB assets on a fresh node.', {
86
+ num: { type: 'number', description: 'How many UTXOs (default 5)' },
87
+ size: { type: 'number', description: 'Size of each UTXO in sats (default: node decides)' },
88
+ up_to: { type: 'boolean', description: 'Only top up to `num` free UTXOs (default false)' },
89
+ fee_rate: { type: 'number', description: 'sat/vbyte (default 1)' },
90
+ }, [], true),
91
+ t('rln', 'rln_issue_asset', 'Issue a NEW RGB asset owned by this node (e.g. an event ticket or loyalty token).', {
92
+ schema: { type: 'string', enum: ['NIA', 'CFA', 'UDA'], description: 'NIA = token (default), CFA = collectible, UDA = unique/NFT' },
93
+ name: { type: 'string', description: 'Asset name, e.g. "Hackathon Ticket"' },
94
+ ticker: { type: 'string', description: 'Uppercase ticker, e.g. "TICKET". Required for NIA and UDA' },
95
+ amount: { type: 'number', description: 'Total supply in display units. Required for NIA and CFA; UDA is always 1' },
96
+ precision: { type: 'number', description: 'Decimal places (default 0)' },
97
+ details: { type: 'string', description: 'Optional description (CFA and UDA)' },
98
+ }, ['name'], true),
63
99
  // ── Arkade ─────────────────────────────────────────────────────────────
64
100
  t('arkade', 'arkade_get_balance', 'Get the Arkade wallet balance.'),
65
101
  t('arkade', 'arkade_get_address', 'Get an Arkade address to receive funds.'),
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/wallet/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/wallet/contract.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kaleidorg/mind",
3
- "version": "0.6.4",
3
+ "version": "0.7.0",
4
4
  "description": "Local-first reasoning + function-calling engine for KaleidoSwap. QVAC-powered.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -39,6 +39,11 @@
39
39
  "types": "./dist/qvac/index.d.ts",
40
40
  "import": "./dist/qvac/index.js",
41
41
  "default": "./dist/qvac/index.js"
42
+ },
43
+ "./testing": {
44
+ "types": "./dist/testing/index.d.ts",
45
+ "import": "./dist/testing/index.js",
46
+ "default": "./dist/testing/index.js"
42
47
  }
43
48
  },
44
49
  "files": [
@@ -58,7 +63,7 @@
58
63
  "bundle-skills": "node scripts/bundle-skills.mjs"
59
64
  },
60
65
  "peerDependencies": {
61
- "@qvac/sdk": ">=0.12.2"
66
+ "@qvac/sdk": ">=0.13.1"
62
67
  },
63
68
  "peerDependenciesMeta": {
64
69
  "@qvac/sdk": {
@@ -66,8 +71,8 @@
66
71
  }
67
72
  },
68
73
  "devDependencies": {
69
- "@qvac/sdk": "^0.13.5",
70
- "@types/node": "^20.19.43",
71
- "vitest": "^1.6.1"
74
+ "@qvac/sdk": "^0.21.0",
75
+ "@types/node": "^26.6.4",
76
+ "vitest": "^5.0.3"
72
77
  }
73
78
  }
package/skills/README.md CHANGED
@@ -28,7 +28,7 @@ Markdown instructions injected into the system prompt when this skill is active.
28
28
 
29
29
  ## Loading (same skills, every surface)
30
30
 
31
- **Node** (desktop sidecar, kaleidoagent) — read folders from disk:
31
+ **Node** (desktop sidecar, CLI, servers) — read folders from disk:
32
32
 
33
33
  ```ts
34
34
  import { loadSkillsDir, packagedSkillsDir } from '@kaleidorg/mind/skills';
@@ -0,0 +1,63 @@
1
+ ---
2
+ name: kaleido-node
3
+ description: "Run the RGB Lightning Node itself: list environments, start/stop/tear down the Docker stack, check reachability, initialise the wallet once, unlock it after every restart, and recover from a down or locked node. Triggers when the user wants to start, stop, unlock or set up their node, or when node calls fail with 'unreachable' or 'wallet locked'. Uses kaleido-mcp's kaleido_node_* tools (or the kaleido CLI)."
4
+ tools: kaleido_node_list, kaleido_node_up, kaleido_node_ps, kaleido_node_status, kaleido_node_info, kaleido_node_use, kaleido_node_init, kaleido_node_unlock, kaleido_node_lock, kaleido_node_stop, kaleido_node_down, rln_get_node_info, rln_create_utxos
5
+ triggers: start node, stop node, start my node, stop my node, node up, node down, unlock, unlock node, lock node, wallet locked, init node, initialise node, initialize node, docker, environment, node status, node unreachable, mnemonic, seed phrase
6
+ metadata:
7
+ author: kaleidoswap
8
+ version: "0.1.0"
9
+ ---
10
+
11
+ # Kaleido node lifecycle
12
+
13
+ Operate the node process, not the wallet. For balances, invoices, payments and
14
+ channels use the `rgb-lightning-node` skill.
15
+
16
+ These tools come from kaleido-mcp and wrap the `kaleido` CLI, which must be
17
+ installed on the machine running the MCP server. In-app wallets don't have
18
+ them. If a tool is not in your list, say what the user should run instead
19
+ (CLI column below).
20
+
21
+ ## Tools
22
+
23
+ | Step | MCP tool | CLI equivalent |
24
+ |---|---|---|
25
+ | List environments | `kaleido_node_list()` | `kaleido --json --agent node list` |
26
+ | Start | `kaleido_node_up({ name? })` | `kaleido --agent node up <NAME>` |
27
+ | Container status | `kaleido_node_ps({ name? })` | `kaleido --agent node ps <NAME>` |
28
+ | Reachability | `kaleido_node_status()` | `kaleido --json --agent node info` |
29
+ | Node + network info | `kaleido_node_info()` | `kaleido --json --agent node info` |
30
+ | Select active node | `kaleido_node_use({ name, node? })` | — |
31
+ | First-time wallet init | `kaleido_node_init({ password, mnemonic? })` | `kaleido --agent node init` |
32
+ | Unlock after restart | `kaleido_node_unlock({ password, announce_alias?, announce_address? })` | `kaleido --agent node unlock <PASSWORD>` |
33
+ | Lock | `kaleido_node_lock()` | — |
34
+ | Stop (keep data) | `kaleido_node_stop({ name? })` | `kaleido --agent node stop <NAME>` |
35
+ | Tear down (keep volumes) | `kaleido_node_down({ name? })` | `kaleido --agent node down <NAME>` |
36
+
37
+ `name` can be omitted when only one environment exists.
38
+
39
+ ## Flows
40
+
41
+ - **First run:** `kaleido_node_up` → `kaleido_node_init` → `kaleido_node_unlock`
42
+ → create colored UTXOs (`rln_create_utxos`, or
43
+ `kaleido --agent wallet create-utxos`). Until UTXOs exist, issuing or
44
+ receiving RGB assets fails.
45
+ - **After a restart:** `kaleido_node_up` (if containers are down) →
46
+ `kaleido_node_unlock`. Unlock is needed after every restart.
47
+ - **Node unreachable** (`rln_get_node_info` fails): `kaleido_node_status`, then
48
+ `kaleido_node_up` and `kaleido_node_unlock`.
49
+ - **"wallet locked" errors:** `kaleido_node_unlock`.
50
+ - **Stuck pending RGB transfers:** `kaleido --json asset fail-transfers` marks
51
+ them failed (CLI only).
52
+
53
+ ## Safety
54
+
55
+ 1. **Passwords:** ask the user for the password at the moment it is needed.
56
+ Never store, repeat or log it.
57
+ 2. **Mnemonic:** `kaleido_node_init` shows the seed phrase once. Tell the user
58
+ to write it down offline before continuing. It cannot be recovered.
59
+ Never paste it back into the chat.
60
+ 3. **State changes need a yes:** `up`, `stop`, `down`, `init`, `unlock` and
61
+ `lock` change the node; confirm first. `down` removes containers (volumes
62
+ stay); say so.
63
+ 4. **Dry run:** describe the steps only; call no state-changing tool.
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  name: kaleido-trading
3
3
  description: "Trade on KaleidoSwap — quote and execute swaps between BTC and RGB assets (USDT, XAUT). Get assets and pairs, pull an executable quote, place a market order, track orders, or run/poll an atomic swap end-to-end. Triggers when the user wants a quote, to swap or trade assets, to rebalance between BTC and stablecoins, or to check the status of an order / swap / atomic swap."
4
- tools: kaleidoswap_get_assets, kaleidoswap_get_pairs, kaleidoswap_get_quote, kaleidoswap_place_order, kaleidoswap_get_order_status, kaleidoswap_atomic_init, kaleidoswap_atomic_execute, kaleidoswap_atomic_status, rln_get_node_info, rln_atomic_taker
4
+ tools: kaleidoswap_get_assets, kaleidoswap_get_pairs, kaleidoswap_get_quote, kaleidoswap_place_order, kaleidoswap_get_order_status, kaleidoswap_atomic_init, kaleidoswap_atomic_execute, kaleidoswap_atomic_status, rln_get_node_info, rln_atomic_taker, rln_refresh_transfers, rln_get_asset_balance, rln_list_channels, rln_list_swaps, rln_get_swap
5
5
  triggers: quote, swap, trade, rebalance, slippage, pair, pairs, usdt, xaut, kaleidoswap, rfq, check status, order status, check the order, swap status, check my swap, atomic status
6
6
  metadata:
7
7
  author: kaleidoswap
8
- version: "0.4.0"
8
+ version: "0.5.0"
9
9
  ---
10
10
 
11
11
  # KaleidoSwap trading
@@ -170,3 +170,16 @@ For the full atomic-swap flow (init → whitelist on the RGB node → execute),
170
170
  deterministic recipe drives the chain — the agentic loop is not safe to plan a
171
171
  multi-step, two-service swap on a small model. Status for atomics uses the
172
172
  `atomic_id` (or payment_hash) surfaced in the recipe summary.
173
+
174
+ ## Over kaleido-mcp (desktop, Claude Code)
175
+
176
+ kaleido-mcp 0.3.0+ is **atomic-only**: there is no `kaleidoswap_place_order`
177
+ or order status. Its quote takes `from_asset_id` / `from_layer` /
178
+ `from_amount` (display units) and returns `amount_raw` values that
179
+ `kaleidoswap_atomic_init` takes unchanged. The full chain is quote →
180
+ `kaleidoswap_atomic_init` → `rln_atomic_taker` + `rln_get_node_info` →
181
+ `kaleidoswap_atomic_execute` → poll `kaleidoswap_atomic_status` →
182
+ `rln_refresh_transfers`. Read `references/atomic.md` before the first swap,
183
+ and `references/assets.md` for units and precision. Always follow the
184
+ argument names in the tool schema you were given.
185
+