@1sat/actions 0.0.1
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/dist/balance/index.d.ts +41 -0
- package/dist/balance/index.d.ts.map +1 -0
- package/dist/balance/index.js +111 -0
- package/dist/balance/index.js.map +1 -0
- package/dist/constants.d.ts +2 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +2 -0
- package/dist/constants.js.map +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +42 -0
- package/dist/index.js.map +1 -0
- package/dist/inscriptions/index.d.ts +26 -0
- package/dist/inscriptions/index.d.ts.map +1 -0
- package/dist/inscriptions/index.js +116 -0
- package/dist/inscriptions/index.js.map +1 -0
- package/dist/locks/index.d.ts +48 -0
- package/dist/locks/index.d.ts.map +1 -0
- package/dist/locks/index.js +296 -0
- package/dist/locks/index.js.map +1 -0
- package/dist/ordinals/index.d.ts +118 -0
- package/dist/ordinals/index.d.ts.map +1 -0
- package/dist/ordinals/index.js +850 -0
- package/dist/ordinals/index.js.map +1 -0
- package/dist/payments/index.d.ts +49 -0
- package/dist/payments/index.d.ts.map +1 -0
- package/dist/payments/index.js +194 -0
- package/dist/payments/index.js.map +1 -0
- package/dist/registry.d.ts +62 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +75 -0
- package/dist/registry.js.map +1 -0
- package/dist/signing/index.d.ts +36 -0
- package/dist/signing/index.d.ts.map +1 -0
- package/dist/signing/index.js +82 -0
- package/dist/signing/index.js.map +1 -0
- package/dist/sweep/index.d.ts +38 -0
- package/dist/sweep/index.d.ts.map +1 -0
- package/dist/sweep/index.js +748 -0
- package/dist/sweep/index.js.map +1 -0
- package/dist/sweep/types.d.ts +79 -0
- package/dist/sweep/types.d.ts.map +1 -0
- package/dist/sweep/types.js +5 -0
- package/dist/sweep/types.js.map +1 -0
- package/dist/tokens/index.d.ts +88 -0
- package/dist/tokens/index.d.ts.map +1 -0
- package/dist/tokens/index.js +548 -0
- package/dist/tokens/index.js.map +1 -0
- package/dist/types.d.ts +72 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +15 -0
- package/dist/types.js.map +1 -0
- package/package.json +34 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ordinals/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Payments Module
|
|
3
|
+
*
|
|
4
|
+
* Actions for sending BSV payments.
|
|
5
|
+
*/
|
|
6
|
+
import type { Action } from '../types';
|
|
7
|
+
export interface SendBsvRequest {
|
|
8
|
+
/** Destination address (P2PKH) */
|
|
9
|
+
address?: string;
|
|
10
|
+
/** Destination paymail */
|
|
11
|
+
paymail?: string;
|
|
12
|
+
/** Amount in satoshis */
|
|
13
|
+
satoshis: number;
|
|
14
|
+
/** Custom locking script (hex) */
|
|
15
|
+
script?: string;
|
|
16
|
+
/** OP_RETURN data */
|
|
17
|
+
data?: string[];
|
|
18
|
+
/** Inscription data */
|
|
19
|
+
inscription?: {
|
|
20
|
+
base64Data: string;
|
|
21
|
+
mimeType: string;
|
|
22
|
+
map?: Record<string, string>;
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
export interface SendBsvResponse {
|
|
26
|
+
txid?: string;
|
|
27
|
+
rawtx?: string;
|
|
28
|
+
error?: string;
|
|
29
|
+
}
|
|
30
|
+
/** Input for sendBsv action */
|
|
31
|
+
export interface SendBsvInput {
|
|
32
|
+
requests: SendBsvRequest[];
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Send BSV to one or more destinations.
|
|
36
|
+
*/
|
|
37
|
+
export declare const sendBsv: Action<SendBsvInput, SendBsvResponse>;
|
|
38
|
+
/** Input for sendAllBsv action */
|
|
39
|
+
export interface SendAllBsvInput {
|
|
40
|
+
/** Destination address to send all funds to */
|
|
41
|
+
destination: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Send all BSV to a destination address.
|
|
45
|
+
*/
|
|
46
|
+
export declare const sendAllBsv: Action<SendAllBsvInput, SendBsvResponse>;
|
|
47
|
+
/** All payment actions for registry */
|
|
48
|
+
export declare const paymentsActions: (Action<SendBsvInput, SendBsvResponse> | Action<SendAllBsvInput, SendBsvResponse>)[];
|
|
49
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/payments/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAYtC,MAAM,WAAW,cAAc;IAC9B,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,0BAA0B;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,yBAAyB;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,uBAAuB;IACvB,WAAW,CAAC,EAAE;QACb,UAAU,EAAE,MAAM,CAAA;QAClB,QAAQ,EAAE,MAAM,CAAA;QAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAC5B,CAAA;CACD;AAED,MAAM,WAAW,eAAe;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AA8BD,+BAA+B;AAC/B,MAAM,WAAW,YAAY;IAC5B,QAAQ,EAAE,cAAc,EAAE,CAAA;CAC1B;AAED;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,YAAY,EAAE,eAAe,CA0GzD,CAAA;AAED,kCAAkC;AAClC,MAAM,WAAW,eAAe;IAC/B,+CAA+C;IAC/C,WAAW,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,eAAe,EAAE,eAAe,CAkD/D,CAAA;AAMD,uCAAuC;AACvC,eAAO,MAAM,eAAe,sFAAwB,CAAA"}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Payments Module
|
|
3
|
+
*
|
|
4
|
+
* Actions for sending BSV payments.
|
|
5
|
+
*/
|
|
6
|
+
import { Inscription } from '@bopen-io/templates';
|
|
7
|
+
import { P2PKH, Script, Utils } from '@bsv/sdk';
|
|
8
|
+
/**
|
|
9
|
+
* Magic constant that tells the wallet to send all available funds minus fees.
|
|
10
|
+
* When an output has this satoshis value, it's adjusted to the maximum fundable amount.
|
|
11
|
+
*/
|
|
12
|
+
const maxPossibleSatoshis = 2099999999999999;
|
|
13
|
+
// ============================================================================
|
|
14
|
+
// Internal helpers
|
|
15
|
+
// ============================================================================
|
|
16
|
+
function isPaymail(address) {
|
|
17
|
+
return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(address);
|
|
18
|
+
}
|
|
19
|
+
function buildInscriptionScript(address, base64Data, mimeType) {
|
|
20
|
+
const content = Utils.toArray(base64Data, 'base64');
|
|
21
|
+
const inscription = Inscription.create(new Uint8Array(content), mimeType);
|
|
22
|
+
const inscriptionScript = inscription.lock();
|
|
23
|
+
const p2pkhScript = new P2PKH().lock(address);
|
|
24
|
+
const combined = new Script();
|
|
25
|
+
for (const chunk of inscriptionScript.chunks)
|
|
26
|
+
combined.chunks.push(chunk);
|
|
27
|
+
for (const chunk of p2pkhScript.chunks)
|
|
28
|
+
combined.chunks.push(chunk);
|
|
29
|
+
return combined;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Send BSV to one or more destinations.
|
|
33
|
+
*/
|
|
34
|
+
export const sendBsv = {
|
|
35
|
+
meta: {
|
|
36
|
+
name: 'sendBsv',
|
|
37
|
+
description: 'Send BSV to one or more destinations (addresses, scripts, or OP_RETURN)',
|
|
38
|
+
category: 'payments',
|
|
39
|
+
inputSchema: {
|
|
40
|
+
type: 'object',
|
|
41
|
+
properties: {
|
|
42
|
+
requests: {
|
|
43
|
+
type: 'array',
|
|
44
|
+
description: 'Array of payment requests',
|
|
45
|
+
items: {
|
|
46
|
+
type: 'object',
|
|
47
|
+
properties: {
|
|
48
|
+
address: {
|
|
49
|
+
type: 'string',
|
|
50
|
+
description: 'Destination P2PKH address',
|
|
51
|
+
},
|
|
52
|
+
paymail: {
|
|
53
|
+
type: 'string',
|
|
54
|
+
description: 'Destination paymail address',
|
|
55
|
+
},
|
|
56
|
+
satoshis: { type: 'integer', description: 'Amount in satoshis' },
|
|
57
|
+
script: {
|
|
58
|
+
type: 'string',
|
|
59
|
+
description: 'Custom locking script (hex)',
|
|
60
|
+
},
|
|
61
|
+
data: {
|
|
62
|
+
type: 'array',
|
|
63
|
+
description: 'OP_RETURN data elements',
|
|
64
|
+
items: { type: 'string' },
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
required: ['satoshis'],
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
required: ['requests'],
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
async execute(ctx, input) {
|
|
75
|
+
try {
|
|
76
|
+
const { requests } = input;
|
|
77
|
+
if (!requests || requests.length === 0) {
|
|
78
|
+
return { error: 'no-requests' };
|
|
79
|
+
}
|
|
80
|
+
const outputs = [];
|
|
81
|
+
for (const req of requests) {
|
|
82
|
+
let lockingScript;
|
|
83
|
+
if (req.script) {
|
|
84
|
+
lockingScript = Script.fromHex(req.script);
|
|
85
|
+
}
|
|
86
|
+
else if (req.address) {
|
|
87
|
+
if (req.inscription) {
|
|
88
|
+
lockingScript = buildInscriptionScript(req.address, req.inscription.base64Data, req.inscription.mimeType);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
lockingScript = new P2PKH().lock(req.address);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
else if (req.data && req.data.length > 0) {
|
|
95
|
+
try {
|
|
96
|
+
lockingScript = Script.fromASM(`OP_0 OP_RETURN ${req.data.join(' ')}`);
|
|
97
|
+
}
|
|
98
|
+
catch {
|
|
99
|
+
return { error: 'invalid-data' };
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
else if (req.paymail) {
|
|
103
|
+
return { error: 'paymail-not-yet-implemented' };
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
return { error: 'invalid-request' };
|
|
107
|
+
}
|
|
108
|
+
outputs.push({
|
|
109
|
+
lockingScript: lockingScript.toHex(),
|
|
110
|
+
satoshis: req.satoshis,
|
|
111
|
+
outputDescription: `Payment of ${req.satoshis} sats`,
|
|
112
|
+
tags: [],
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
const result = await ctx.wallet.createAction({
|
|
116
|
+
description: `Send ${requests.length} payment(s)`,
|
|
117
|
+
outputs,
|
|
118
|
+
options: { signAndProcess: true, acceptDelayedBroadcast: false },
|
|
119
|
+
});
|
|
120
|
+
if (!result.txid) {
|
|
121
|
+
return { error: 'no-txid-returned' };
|
|
122
|
+
}
|
|
123
|
+
return {
|
|
124
|
+
txid: result.txid,
|
|
125
|
+
rawtx: result.tx ? Utils.toHex(result.tx) : undefined,
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
catch (error) {
|
|
129
|
+
console.error('[sendBsv]', error);
|
|
130
|
+
return {
|
|
131
|
+
error: error instanceof Error ? error.message : 'unknown-error',
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
},
|
|
135
|
+
};
|
|
136
|
+
/**
|
|
137
|
+
* Send all BSV to a destination address.
|
|
138
|
+
*/
|
|
139
|
+
export const sendAllBsv = {
|
|
140
|
+
meta: {
|
|
141
|
+
name: 'sendAllBsv',
|
|
142
|
+
description: 'Send all BSV from wallet to a single destination address',
|
|
143
|
+
category: 'payments',
|
|
144
|
+
inputSchema: {
|
|
145
|
+
type: 'object',
|
|
146
|
+
properties: {
|
|
147
|
+
destination: {
|
|
148
|
+
type: 'string',
|
|
149
|
+
description: 'Destination P2PKH address to send all funds to',
|
|
150
|
+
},
|
|
151
|
+
},
|
|
152
|
+
required: ['destination'],
|
|
153
|
+
},
|
|
154
|
+
},
|
|
155
|
+
async execute(ctx, input) {
|
|
156
|
+
try {
|
|
157
|
+
const { destination } = input;
|
|
158
|
+
if (isPaymail(destination)) {
|
|
159
|
+
return { error: 'paymail-not-yet-implemented' };
|
|
160
|
+
}
|
|
161
|
+
const result = await ctx.wallet.createAction({
|
|
162
|
+
description: 'Send all BSV',
|
|
163
|
+
outputs: [
|
|
164
|
+
{
|
|
165
|
+
lockingScript: new P2PKH().lock(destination).toHex(),
|
|
166
|
+
satoshis: maxPossibleSatoshis,
|
|
167
|
+
outputDescription: 'Sweep all funds',
|
|
168
|
+
tags: [],
|
|
169
|
+
},
|
|
170
|
+
],
|
|
171
|
+
options: { signAndProcess: true, acceptDelayedBroadcast: false },
|
|
172
|
+
});
|
|
173
|
+
if (!result.txid) {
|
|
174
|
+
return { error: 'no-txid-returned' };
|
|
175
|
+
}
|
|
176
|
+
return {
|
|
177
|
+
txid: result.txid,
|
|
178
|
+
rawtx: result.tx ? Utils.toHex(result.tx) : undefined,
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
catch (error) {
|
|
182
|
+
console.error('[sendAllBsv]', error);
|
|
183
|
+
return {
|
|
184
|
+
error: error instanceof Error ? error.message : 'unknown-error',
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
},
|
|
188
|
+
};
|
|
189
|
+
// ============================================================================
|
|
190
|
+
// Module exports
|
|
191
|
+
// ============================================================================
|
|
192
|
+
/** All payment actions for registry */
|
|
193
|
+
export const paymentsActions = [sendBsv, sendAllBsv];
|
|
194
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/payments/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Action registry for runtime discovery and MCP integration.
|
|
3
|
+
*/
|
|
4
|
+
import type { Action, ActionCategory } from './types';
|
|
5
|
+
type AnyAction = Action<any, any>;
|
|
6
|
+
/**
|
|
7
|
+
* MCP-compatible tool definition.
|
|
8
|
+
*/
|
|
9
|
+
export interface McpTool {
|
|
10
|
+
name: string;
|
|
11
|
+
description: string;
|
|
12
|
+
inputSchema: object;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Registry for collecting and discovering actions at runtime.
|
|
16
|
+
*/
|
|
17
|
+
export declare class ActionRegistry {
|
|
18
|
+
private actions;
|
|
19
|
+
/**
|
|
20
|
+
* Register an action.
|
|
21
|
+
*/
|
|
22
|
+
register(action: AnyAction): void;
|
|
23
|
+
/**
|
|
24
|
+
* Register multiple actions.
|
|
25
|
+
*/
|
|
26
|
+
registerAll(actions: AnyAction[]): void;
|
|
27
|
+
/**
|
|
28
|
+
* Get an action by name.
|
|
29
|
+
*/
|
|
30
|
+
get(name: string): AnyAction | undefined;
|
|
31
|
+
/**
|
|
32
|
+
* Check if an action exists.
|
|
33
|
+
*/
|
|
34
|
+
has(name: string): boolean;
|
|
35
|
+
/**
|
|
36
|
+
* List all registered actions.
|
|
37
|
+
*/
|
|
38
|
+
list(): Action[];
|
|
39
|
+
/**
|
|
40
|
+
* List actions by category.
|
|
41
|
+
*/
|
|
42
|
+
listByCategory(category: ActionCategory): Action[];
|
|
43
|
+
/**
|
|
44
|
+
* Get action names.
|
|
45
|
+
*/
|
|
46
|
+
names(): string[];
|
|
47
|
+
/**
|
|
48
|
+
* Convert to MCP-compatible tool list.
|
|
49
|
+
* Prefixes names with "1sat__" for namespace isolation.
|
|
50
|
+
*/
|
|
51
|
+
toMcpTools(): McpTool[];
|
|
52
|
+
/**
|
|
53
|
+
* Number of registered actions.
|
|
54
|
+
*/
|
|
55
|
+
get size(): number;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Global action registry singleton.
|
|
59
|
+
*/
|
|
60
|
+
export declare const actionRegistry: ActionRegistry;
|
|
61
|
+
export {};
|
|
62
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAGrD,KAAK,SAAS,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;AAEjC;;GAEG;AACH,MAAM,WAAW,OAAO;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,qBAAa,cAAc;IAC1B,OAAO,CAAC,OAAO,CAA+B;IAE9C;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IAIjC;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI;IAMvC;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAIxC;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B;;OAEG;IACH,IAAI,IAAI,MAAM,EAAE;IAIhB;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,EAAE;IAIlD;;OAEG;IACH,KAAK,IAAI,MAAM,EAAE;IAIjB;;;OAGG;IACH,UAAU,IAAI,OAAO,EAAE;IAQvB;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;CACD;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,gBAAuB,CAAA"}
|
package/dist/registry.js
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Action registry for runtime discovery and MCP integration.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Registry for collecting and discovering actions at runtime.
|
|
6
|
+
*/
|
|
7
|
+
export class ActionRegistry {
|
|
8
|
+
actions = new Map();
|
|
9
|
+
/**
|
|
10
|
+
* Register an action.
|
|
11
|
+
*/
|
|
12
|
+
register(action) {
|
|
13
|
+
this.actions.set(action.meta.name, action);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Register multiple actions.
|
|
17
|
+
*/
|
|
18
|
+
registerAll(actions) {
|
|
19
|
+
for (const action of actions) {
|
|
20
|
+
this.register(action);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Get an action by name.
|
|
25
|
+
*/
|
|
26
|
+
get(name) {
|
|
27
|
+
return this.actions.get(name);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Check if an action exists.
|
|
31
|
+
*/
|
|
32
|
+
has(name) {
|
|
33
|
+
return this.actions.has(name);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* List all registered actions.
|
|
37
|
+
*/
|
|
38
|
+
list() {
|
|
39
|
+
return Array.from(this.actions.values());
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* List actions by category.
|
|
43
|
+
*/
|
|
44
|
+
listByCategory(category) {
|
|
45
|
+
return this.list().filter((a) => a.meta.category === category);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Get action names.
|
|
49
|
+
*/
|
|
50
|
+
names() {
|
|
51
|
+
return Array.from(this.actions.keys());
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Convert to MCP-compatible tool list.
|
|
55
|
+
* Prefixes names with "1sat__" for namespace isolation.
|
|
56
|
+
*/
|
|
57
|
+
toMcpTools() {
|
|
58
|
+
return this.list().map((action) => ({
|
|
59
|
+
name: `1sat__${action.meta.name}`,
|
|
60
|
+
description: action.meta.description,
|
|
61
|
+
inputSchema: action.meta.inputSchema,
|
|
62
|
+
}));
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Number of registered actions.
|
|
66
|
+
*/
|
|
67
|
+
get size() {
|
|
68
|
+
return this.actions.size;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Global action registry singleton.
|
|
73
|
+
*/
|
|
74
|
+
export const actionRegistry = new ActionRegistry();
|
|
75
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAgBH;;GAEG;AACH,MAAM,OAAO,cAAc;IAClB,OAAO,GAAG,IAAI,GAAG,EAAqB,CAAA;IAE9C;;OAEG;IACH,QAAQ,CAAC,MAAiB;QACzB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAC3C,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,OAAoB;QAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACtB,CAAC;IACF,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,IAAY;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,IAAY;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED;;OAEG;IACH,IAAI;QACH,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IACzC,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,QAAwB;QACtC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAA;IAC/D,CAAC;IAED;;OAEG;IACH,KAAK;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;IACvC,CAAC;IAED;;;OAGG;IACH,UAAU;QACT,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACnC,IAAI,EAAE,SAAS,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE;YACjC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW;YACpC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW;SACpC,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAA;IACzB,CAAC;CACD;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAA"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Signing Module
|
|
3
|
+
*
|
|
4
|
+
* Actions for message signing.
|
|
5
|
+
*/
|
|
6
|
+
import type { Action } from '../types';
|
|
7
|
+
export interface SignMessageRequest {
|
|
8
|
+
/** Message to sign */
|
|
9
|
+
message: string;
|
|
10
|
+
/** Message encoding */
|
|
11
|
+
encoding?: 'utf8' | 'hex' | 'base64';
|
|
12
|
+
/** Derivation tag for key selection */
|
|
13
|
+
tag?: {
|
|
14
|
+
label: string;
|
|
15
|
+
id: string;
|
|
16
|
+
domain: string;
|
|
17
|
+
meta: Record<string, string>;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export interface SignedMessage {
|
|
21
|
+
address: string;
|
|
22
|
+
pubKey: string;
|
|
23
|
+
message: string;
|
|
24
|
+
sig: string;
|
|
25
|
+
derivationTag?: SignMessageRequest['tag'];
|
|
26
|
+
}
|
|
27
|
+
export interface SignMessageResponse extends Partial<SignedMessage> {
|
|
28
|
+
error?: string;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Sign a message using BSM (Bitcoin Signed Message) format.
|
|
32
|
+
*/
|
|
33
|
+
export declare const signMessage: Action<SignMessageRequest, SignMessageResponse>;
|
|
34
|
+
/** All signing actions for registry */
|
|
35
|
+
export declare const signingActions: Action<SignMessageRequest, SignMessageResponse>[];
|
|
36
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signing/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAMtC,MAAM,WAAW,kBAAkB;IAClC,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,uBAAuB;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAA;IACpC,uCAAuC;IACvC,GAAG,CAAC,EAAE;QACL,KAAK,EAAE,MAAM,CAAA;QACb,EAAE,EAAE,MAAM,CAAA;QACV,MAAM,EAAE,MAAM,CAAA;QACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAC5B,CAAA;CACD;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,aAAa,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAA;CACzC;AAED,MAAM,WAAW,mBAAoB,SAAQ,OAAO,CAAC,aAAa,CAAC;IAClE,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAMD;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,kBAAkB,EAAE,mBAAmB,CAoEvE,CAAA;AAMD,uCAAuC;AACvC,eAAO,MAAM,cAAc,mDAAgB,CAAA"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Signing Module
|
|
3
|
+
*
|
|
4
|
+
* Actions for message signing.
|
|
5
|
+
*/
|
|
6
|
+
import { BSM, BigNumber, PublicKey, Signature, Utils } from '@bsv/sdk';
|
|
7
|
+
import { MESSAGE_SIGNING_PROTOCOL } from '../constants';
|
|
8
|
+
// ============================================================================
|
|
9
|
+
// Actions
|
|
10
|
+
// ============================================================================
|
|
11
|
+
/**
|
|
12
|
+
* Sign a message using BSM (Bitcoin Signed Message) format.
|
|
13
|
+
*/
|
|
14
|
+
export const signMessage = {
|
|
15
|
+
meta: {
|
|
16
|
+
name: 'signMessage',
|
|
17
|
+
description: 'Sign a message using BSM (Bitcoin Signed Message) format',
|
|
18
|
+
category: 'signing',
|
|
19
|
+
inputSchema: {
|
|
20
|
+
type: 'object',
|
|
21
|
+
properties: {
|
|
22
|
+
message: { type: 'string', description: 'Message to sign' },
|
|
23
|
+
encoding: {
|
|
24
|
+
type: 'string',
|
|
25
|
+
description: 'Message encoding (utf8, hex, base64)',
|
|
26
|
+
enum: ['utf8', 'hex', 'base64'],
|
|
27
|
+
},
|
|
28
|
+
tag: {
|
|
29
|
+
type: 'object',
|
|
30
|
+
description: 'Derivation tag for key selection',
|
|
31
|
+
properties: {
|
|
32
|
+
label: { type: 'string' },
|
|
33
|
+
id: { type: 'string' },
|
|
34
|
+
domain: { type: 'string' },
|
|
35
|
+
meta: { type: 'object' },
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
required: ['message'],
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
async execute(ctx, input) {
|
|
43
|
+
try {
|
|
44
|
+
const { message, encoding = 'utf8', tag } = input;
|
|
45
|
+
const messageBytes = Utils.toArray(message, encoding);
|
|
46
|
+
const msgHash = BSM.magicHash(messageBytes);
|
|
47
|
+
const keyID = tag ? `${tag.label}:${tag.id}:${tag.domain}` : 'identity';
|
|
48
|
+
const result = await ctx.wallet.createSignature({
|
|
49
|
+
protocolID: MESSAGE_SIGNING_PROTOCOL,
|
|
50
|
+
keyID,
|
|
51
|
+
hashToDirectlySign: Array.from(msgHash),
|
|
52
|
+
});
|
|
53
|
+
const pubKeyResult = await ctx.wallet.getPublicKey({
|
|
54
|
+
protocolID: MESSAGE_SIGNING_PROTOCOL,
|
|
55
|
+
keyID,
|
|
56
|
+
forSelf: true,
|
|
57
|
+
});
|
|
58
|
+
const publicKey = PublicKey.fromString(pubKeyResult.publicKey);
|
|
59
|
+
const signature = Signature.fromDER(result.signature);
|
|
60
|
+
const recovery = signature.CalculateRecoveryFactor(publicKey, new BigNumber(msgHash));
|
|
61
|
+
return {
|
|
62
|
+
address: publicKey.toAddress(),
|
|
63
|
+
pubKey: publicKey.toString(),
|
|
64
|
+
message,
|
|
65
|
+
sig: signature.toCompact(recovery, true, 'base64'),
|
|
66
|
+
derivationTag: tag,
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
console.error('[signMessage]', error);
|
|
71
|
+
return {
|
|
72
|
+
error: error instanceof Error ? error.message : 'unknown-error',
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
};
|
|
77
|
+
// ============================================================================
|
|
78
|
+
// Module exports
|
|
79
|
+
// ============================================================================
|
|
80
|
+
/** All signing actions for registry */
|
|
81
|
+
export const signingActions = [signMessage];
|
|
82
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/signing/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sweep Module
|
|
3
|
+
*
|
|
4
|
+
* Functions for sweeping assets from external wallets into a BRC-100 wallet.
|
|
5
|
+
*/
|
|
6
|
+
import type { IndexedOutput } from '@1sat/types';
|
|
7
|
+
import type { Action, OneSatContext } from '../types';
|
|
8
|
+
import type { SweepBsv21Request, SweepBsv21Response, SweepBsvRequest, SweepBsvResponse, SweepInput, SweepOrdinalsRequest, SweepOrdinalsResponse } from './types';
|
|
9
|
+
export * from './types';
|
|
10
|
+
/**
|
|
11
|
+
* Prepare sweep inputs from IndexedOutput objects by fetching locking scripts.
|
|
12
|
+
* This extracts locking scripts from the raw transactions in BEEF format.
|
|
13
|
+
*/
|
|
14
|
+
export declare function prepareSweepInputs(ctx: OneSatContext, utxos: IndexedOutput[]): Promise<SweepInput[]>;
|
|
15
|
+
/**
|
|
16
|
+
* Sweep BSV from external inputs into the destination wallet.
|
|
17
|
+
*
|
|
18
|
+
* If amount is specified, only that amount is swept and the remainder
|
|
19
|
+
* is returned to the source address. If amount is omitted, all input
|
|
20
|
+
* value is swept (minus fees).
|
|
21
|
+
*/
|
|
22
|
+
export declare const sweepBsv: Action<SweepBsvRequest, SweepBsvResponse>;
|
|
23
|
+
/**
|
|
24
|
+
* Sweep ordinals from external inputs into the destination wallet.
|
|
25
|
+
*
|
|
26
|
+
* Each input is expected to be a 1-sat ordinal output. Each ordinal is
|
|
27
|
+
* transferred to a derived address using the wallet's key derivation.
|
|
28
|
+
*/
|
|
29
|
+
export declare const sweepOrdinals: Action<SweepOrdinalsRequest, SweepOrdinalsResponse>;
|
|
30
|
+
/**
|
|
31
|
+
* Sweep BSV-21 tokens from external inputs into the destination wallet.
|
|
32
|
+
*
|
|
33
|
+
* Consolidates all token inputs into a single output. All inputs must be
|
|
34
|
+
* for the same tokenId. Creates a fee output to the overlay fund address.
|
|
35
|
+
*/
|
|
36
|
+
export declare const sweepBsv21: Action<SweepBsv21Request, SweepBsv21Response>;
|
|
37
|
+
export declare const sweepActions: (Action<SweepBsvRequest, SweepBsvResponse> | Action<SweepOrdinalsRequest, SweepOrdinalsResponse> | Action<SweepBsv21Request, SweepBsv21Response>)[];
|
|
38
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sweep/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAgBhD,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACrD,OAAO,KAAK,EACX,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,oBAAoB,EACpB,qBAAqB,EACrB,MAAM,SAAS,CAAA;AAEhB,cAAc,SAAS,CAAA;AAEvB;;;GAGG;AACH,wBAAsB,kBAAkB,CACvC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,aAAa,EAAE,GACpB,OAAO,CAAC,UAAU,EAAE,CAAC,CAyCvB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAgO9D,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CACjC,oBAAoB,EACpB,qBAAqB,CAoXrB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,iBAAiB,EAAE,kBAAkB,CA8QpE,CAAA;AAGD,eAAO,MAAM,YAAY,qJAAwC,CAAA"}
|