Skip to content

Commit 5ec6629

Browse files
authored
Merge pull request #19 from stacks-network/chore/ci-readme-issue
ci: fix readme generation
2 parents c40a79d + 75ad8b4 commit 5ec6629

File tree

3 files changed

+236
-23
lines changed

3 files changed

+236
-23
lines changed

.github/workflows/onPushToMain.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ jobs:
3838
id: oclif-readme
3939
run: |
4040
npm install
41+
npm run build
4142
npm exec oclif readme
4243
if [ -n "$(git status --porcelain)" ]; then
4344
git add .

README.md

Lines changed: 233 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ $ npm install -g @stacks/send-many-stx-cli
1717
$ stx-bulk-transfer COMMAND
1818
running 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]
2222
USAGE
2323
$ stx-bulk-transfer COMMAND
@@ -26,7 +26,55 @@ USAGE
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

Comments
 (0)