@@ -17,7 +17,7 @@ $ npm install -g @stacks/send-many-stx-cli
1717$ stx-bulk-transfer COMMAND
1818running command...
1919$ stx-bulk-transfer (--version)
20- @stacks/send-many-stx-cli/3 .0.0 linux-x64 node-v20.18.2
20+ @stacks/send-many-stx-cli/2 .0.0 darwin-arm64 node-v22.12.0
2121$ stx-bulk-transfer --help [COMMAND]
2222USAGE
2323 $ stx-bulk-transfer COMMAND
2626<!-- usagestop -->
2727# Commands
2828<!-- commands -->
29+ * [ ` stx-bulk-transfer deploy-contract [CONTRACT] ` ] ( #stx-bulk-transfer-deploy-contract-contract )
2930* [ ` stx-bulk-transfer help [COMMAND] ` ] ( #stx-bulk-transfer-help-command )
31+ * [ ` stx-bulk-transfer send-many [RECIPIENTS] ` ] ( #stx-bulk-transfer-send-many-recipients )
32+ * [ ` stx-bulk-transfer send-many-memo [RECIPIENTS] ` ] ( #stx-bulk-transfer-send-many-memo-recipients )
33+ * [ ` stx-bulk-transfer send-many-memo-safe [RECIPIENTS] ` ] ( #stx-bulk-transfer-send-many-memo-safe-recipients )
34+ * [ ` stx-bulk-transfer validate-address [ADDRESS] ` ] ( #stx-bulk-transfer-validate-address-address )
35+
36+ ## ` stx-bulk-transfer deploy-contract [CONTRACT] `
37+
38+ Deploy ` send-many ` , ` send-many-memo ` , ` memo-expected ` .
39+
40+ ```
41+ USAGE
42+ $ stx-bulk-transfer deploy-contract [CONTRACT] -k <value> [-b] [-n mocknet|testnet|mainnet] [-u <value>] [--nonce
43+ <value>] [-q]
44+
45+ ARGUMENTS
46+ CONTRACT The contract to deploy
47+
48+ FLAGS
49+ -b, --broadcast Whether to broadcast this transaction. Omitting this flag will not broadcast the
50+ transaction.
51+ -k, --privateKey=<value> (required) Your private key
52+ -n, --network=<option> [default: testnet] Which network to broadcast this to
53+ <options: mocknet|testnet|mainnet>
54+ -q, --quiet Reduce logging from this command. If this flag is passed with the broadcast (-b) flag,
55+ only the transaction ID will be logged. If the quiet flagged is passed without broadcast,
56+ only the raw transaction hex will be logged.
57+ -u, --nodeUrl=<value> A default node URL will be used based on the `network` option. Use this flag to manually
58+ override.
59+ --nonce=<value> Optionally specify a nonce for this transaction
60+
61+ DESCRIPTION
62+ Deploy `send-many`, `send-many-memo`, `memo-expected`.
63+ A utility to simplify deploying contracts related to the STX bulk transfer tool. It deploys
64+ the contract on the address of the provided private key.
65+
66+ Valid choices are: send-many, send-many-memo, and memo-expected.
67+
68+ The memo-expected contract is an empty contract that is checked by the `send-many-memo-safe`
69+ command. If a contract called 'memo-expected' is deployed on a principal, and no memo is passed,
70+ the send-many will be aborted before it reaches the chain.
71+
72+
73+ EXAMPLES
74+ $ stx-bulk-transfer deploy-contract memo-expected -k my_private_key -n testnet -b
75+ ```
76+
77+ _ See code: [ src/commands/deploy-contract.ts] ( https://github.com/stacks-network/send-many-stx-cli/blob/v2.0.0/src/commands/deploy-contract.ts ) _
3078
3179## ` stx-bulk-transfer help [COMMAND] `
3280
@@ -47,4 +95,188 @@ DESCRIPTION
4795```
4896
4997_ See code: [ @oclif/plugin-help ] ( https://github.com/oclif/plugin-help/blob/v6.2.24/src/commands/help.ts ) _
98+
99+ ## ` stx-bulk-transfer send-many [RECIPIENTS] `
100+
101+ Execute a bulk STX transfer.
102+
103+ ```
104+ USAGE
105+ $ stx-bulk-transfer send-many [RECIPIENTS...] -k <value> [-a] [-b] [-c <value>] [-m <value>] [-n
106+ mocknet|testnet|mainnet] [-u <value>] [--nonce <value>] [-q]
107+
108+ ARGUMENTS
109+ RECIPIENTS... A set of recipients in the format of "address,amount_ustx"
110+ Example: STADMRP577SC3MCNP7T3PRSTZBJ75FJ59JGABZTW,100 ST2WPFYAW85A0YK9ACJR8JGWPM19VWYF90J8P5ZTH,50
111+
112+ FLAGS
113+ -a, --allowSingleStxTransfer If enabled and only a single recipient is specified, a STX-transfer transaction type
114+ will be used rather than a contract-call transaction.
115+ If omitted, a contract-call will always be used, which can be less efficient.
116+ -b, --broadcast Whether to broadcast this transaction. Omitting this flag will not broadcast the
117+ transaction.
118+ -c, --contractAddress=<value> Manually specify the contract address for send-many. If omitted, default contracts will
119+ be used.
120+ -k, --privateKey=<value> (required) Your private key
121+ -m, --feeMultiplier=<value> Optionally specify a fee multiplier. If passed, the tx fee will be (estimated fee +
122+ (estimated fee * multiplier)).
123+ For example, a fee multiplier of 15 for a tx with an estimated fee of 200 would result
124+ in a tx with the fee of 230.
125+ -n, --network=<option> [default: testnet] Which network to broadcast this to
126+ <options: mocknet|testnet|mainnet>
127+ -q, --quiet Reduce logging from this command. If this flag is passed with the broadcast (-b) flag,
128+ only the transaction ID will be logged. If the quiet flagged is passed without
129+ broadcast,
130+ only the raw transaction hex will be logged.
131+ -u, --nodeUrl=<value> A default node URL will be used based on the `network` option. Use this flag to
132+ manually override.
133+ --nonce=<value> Optionally specify a nonce for this transaction
134+
135+ DESCRIPTION
136+ Execute a bulk STX transfer.
137+ The bulk transfer is executed in a single transaction by invoking a `contract-call` on the "send-many" contract.
138+
139+ The default contracts can be found below:
140+
141+ Testnet: https://explorer.hiro.so/txid/ST3F1X4QGV2SM8XD96X45M6RTQXKA1PZJZZCQAB4B.send-many?chain=testnet
142+ Mainnet: https://explorer.hiro.so/txid/SP3FBR2AGK5H9QBDH3EEN6DF8EK8JY7RX8QJ5SVTE.send-many?chain=mainnet
143+
144+ EXAMPLES
145+ $ stx-bulk-transfer send-many STADMRP577SC3MCNP7T3PRSTZBJ75FJ59JGABZTW,100 ST2WPFYAW85A0YK9ACJR8JGWPM19VWYF90J8P5ZTH,50 -k my_private_key -n testnet -b
146+ ```
147+
148+ _ See code: [ src/commands/send-many.ts] ( https://github.com/stacks-network/send-many-stx-cli/blob/v2.0.0/src/commands/send-many.ts ) _
149+
150+ ## ` stx-bulk-transfer send-many-memo [RECIPIENTS] `
151+
152+ Execute a bulk STX transfer, with memos attached.
153+
154+ ```
155+ USAGE
156+ $ stx-bulk-transfer send-many-memo [RECIPIENTS...] -k <value> [-a] [-b] [-c <value>] [-m <value>] [-j] [-n
157+ mocknet|testnet|mainnet] [-u <value>] [--nonce <value>] [-q]
158+
159+ ARGUMENTS
160+ RECIPIENTS... A set of recipients in the format of "address,amount_ustx,memo". Memo is optional.
161+ Example: STADMRP577SC3MCNP7T3PRSTZBJ75FJ59JGABZTW,100,memo ST2WPFYAW85A0YK9ACJR8JGWPM19VWYF90J8P5ZTH,50
162+
163+ FLAGS
164+ -a, --allowSingleStxTransfer If enabled and only a single recipient is specified, a STX-transfer transaction type
165+ will be used rather than a contract-call transaction.
166+ If omitted, a contract-call will always be used, which can be less efficient.
167+ -b, --broadcast Whether to broadcast this transaction. Omitting this flag will not broadcast the
168+ transaction.
169+ -c, --contractAddress=<value> Manually specify the contract address for send-many-memo. If omitted, default contracts
170+ will be used.
171+ -j, --jsonOutput Output data in JSON format
172+ -k, --privateKey=<value> (required) Your private key
173+ -m, --feeMultiplier=<value> Optionally specify a fee multiplier. If passed, the tx fee will be (estimated fee +
174+ (estimated fee * multiplier)).
175+ For example, a fee multiplier of 15 for a tx with an estimated fee of 200 would result
176+ in a tx with the fee of 230.
177+ -n, --network=<option> [default: testnet] Which network to broadcast this to
178+ <options: mocknet|testnet|mainnet>
179+ -q, --quiet Reduce logging from this command. If this flag is passed with the broadcast (-b) flag,
180+ only the transaction ID will be logged. If the quiet flagged is passed without
181+ broadcast,
182+ only the raw transaction hex will be logged.
183+ -u, --nodeUrl=<value> A default node URL will be used based on the `network` option. Use this flag to
184+ manually override.
185+ --nonce=<value> Optionally specify a nonce for this transaction
186+
187+ DESCRIPTION
188+ Execute a bulk STX transfer, with memos attached.
189+ The bulk transfer is executed in a single transaction by invoking a `contract-call` on the "send-many-memo" contract.
190+
191+ The default contracts can be found below:
192+
193+ Testnet: https://explorer.hiro.so/txid/ST3F1X4QGV2SM8XD96X45M6RTQXKA1PZJZZCQAB4B.send-many-memo?chain=testnet
194+ Mainnet: https://explorer.hiro.so/txid/SP3FBR2AGK5H9QBDH3EEN6DF8EK8JY7RX8QJ5SVTE.send-many-memo?chain=mainnet
195+
196+ EXAMPLES
197+ $ stx-bulk-transfer send-many-memo STADMRP577SC3MCNP7T3PRSTZBJ75FJ59JGABZTW,100,hello ST2WPFYAW85A0YK9ACJR8JGWPM19VWYF90J8P5ZTH,50,memo2 -k my_private_key -n testnet -b
198+ ```
199+
200+ _ See code: [ src/commands/send-many-memo.ts] ( https://github.com/stacks-network/send-many-stx-cli/blob/v2.0.0/src/commands/send-many-memo.ts ) _
201+
202+ ## ` stx-bulk-transfer send-many-memo-safe [RECIPIENTS] `
203+
204+ Execute a bulk STX transfer, with memos attached, checking if the transfer is safe to send.
205+
206+ ```
207+ USAGE
208+ $ stx-bulk-transfer send-many-memo-safe [RECIPIENTS...] -k <value> [-a] [-b] [-c <value>] [-m <value>] [-j] [-n
209+ mocknet|testnet|mainnet] [-u <value>] [--nonce <value>] [-q]
210+
211+ ARGUMENTS
212+ RECIPIENTS... A set of recipients in the format of "address,amount_ustx,memo". Memo is optional.
213+ Example: STADMRP577SC3MCNP7T3PRSTZBJ75FJ59JGABZTW,100,memo ST2WPFYAW85A0YK9ACJR8JGWPM19VWYF90J8P5ZTH,50
214+
215+ FLAGS
216+ -a, --allowSingleStxTransfer If enabled and only a single recipient is specified, a STX-transfer transaction type
217+ will be used rather than a contract-call transaction.
218+ If omitted, a contract-call will always be used, which can be less efficient.
219+ -b, --broadcast Whether to broadcast this transaction. Omitting this flag will not broadcast the
220+ transaction.
221+ -c, --contractAddress=<value> Manually specify the contract address for send-many-memo. If omitted, default contracts
222+ will be used.
223+ -j, --jsonOutput Output data in JSON format
224+ -k, --privateKey=<value> (required) Your private key
225+ -m, --feeMultiplier=<value> Optionally specify a fee multiplier. If passed, the tx fee will be (estimated fee +
226+ (estimated fee * multiplier)).
227+ For example, a fee multiplier of 15 for a tx with an estimated fee of 200 would result
228+ in a tx with the fee of 230.
229+ -n, --network=<option> [default: testnet] Which network to broadcast this to
230+ <options: mocknet|testnet|mainnet>
231+ -q, --quiet Reduce logging from this command. If this flag is passed with the broadcast (-b) flag,
232+ only the transaction ID will be logged. If the quiet flagged is passed without
233+ broadcast,
234+ only the raw transaction hex will be logged.
235+ -u, --nodeUrl=<value> A default node URL will be used based on the `network` option. Use this flag to
236+ manually override.
237+ --nonce=<value> Optionally specify a nonce for this transaction
238+
239+ DESCRIPTION
240+ Execute a bulk STX transfer, with memos attached, checking if the transfer is safe to send.
241+ The bulk transfer is executed in a single transaction by invoking a `contract-call` on the "send-many-memo" contract.
242+
243+ The 'safe' counterpart of send-many-memo checks for the existence of a `memo-expected` contract for each recipient.
244+ If it exists, the transfer will be aborted if the corresponding memo is empty or missing. A utility command to deploy
245+ this contract is part of this tool: stx-bulk-transfer deploy-contract memo-expected.
246+
247+ The default contracts can be found below:
248+
249+ Testnet: https://explorer.hiro.so/txid/ST3F1X4QGV2SM8XD96X45M6RTQXKA1PZJZZCQAB4B.send-many-memo?chain=testnet
250+ Mainnet: https://explorer.hiro.so/txid/SP3FBR2AGK5H9QBDH3EEN6DF8EK8JY7RX8QJ5SVTE.send-many-memo?chain=mainnet
251+
252+ EXAMPLES
253+ $ stx-bulk-transfer send-many-memo-safe STADMRP577SC3MCNP7T3PRSTZBJ75FJ59JGABZTW,100,hello ST2WPFYAW85A0YK9ACJR8JGWPM19VWYF90J8P5ZTH,50,memo2 -k my_private_key -n testnet -b
254+ ```
255+
256+ _ See code: [ src/commands/send-many-memo-safe.ts] ( https://github.com/stacks-network/send-many-stx-cli/blob/v2.0.0/src/commands/send-many-memo-safe.ts ) _
257+
258+ ## ` stx-bulk-transfer validate-address [ADDRESS] `
259+
260+ Validates whether the input is a valid STX address for the provided network.
261+
262+ ```
263+ USAGE
264+ $ stx-bulk-transfer validate-address [ADDRESS] [-n mocknet|testnet|mainnet] [-v]
265+
266+ ARGUMENTS
267+ ADDRESS The address to validate
268+
269+ FLAGS
270+ -n, --network=<option> [default: mainnet] Which network to check for
271+ <options: mocknet|testnet|mainnet>
272+ -v, --verbose Print error information for invalid addresses
273+
274+ DESCRIPTION
275+ Validates whether the input is a valid STX address for the provided network.
276+
277+ EXAMPLES
278+ $ stx-bulk-transfer validate-address SP000000000000000000002Q6VF78 -n mainnet
279+ ```
280+
281+ _ See code: [ src/commands/validate-address.ts] ( https://github.com/stacks-network/send-many-stx-cli/blob/v2.0.0/src/commands/validate-address.ts ) _
50282<!-- commandsstop -->
0 commit comments