MCPcopy Create free account
hub / github.com/QuipNetwork/cpp-sdk / printHelp

Function printHelp

src/main.cpp:10–125  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

8#include <vector>
9
10void printHelp(const char *program_name) {
11 std::cout << "Quip C++ SDK CLI Tool\n";
12 std::cout << "A command-line interface for interacting with Quip smart "
13 "contracts using Winternitz signatures.\n\n";
14
15 std::cout << "USAGE:\n";
16 std::cout << " " << program_name << " [OPTIONS] <COMMAND> [ARGS...]\n\n";
17
18 std::cout << "OPTIONS:\n";
19 std::cout << " --help Show this help message\n";
20 std::cout << " --rpc-url <URL> Ethereum RPC endpoint (default: "
21 "http://localhost:8545)\n";
22 std::cout << " --contract-address <ADDR> QuipFactory contract address "
23 "(required for custom networks)\n\n";
24
25 std::cout << "COMMANDS:\n";
26 std::cout << " deposit [--amount <amount>] [--entropy <entropy>]"
27 << std::endl;
28 std::cout
29 << " --amount: Amount in wei to deposit (default: 10000000000000000)"
30 << std::endl;
31 std::cout << " --entropy: Optional hex string for deterministic vault ID"
32 << std::endl;
33 std::cout << " Deploy a new Quip wallet using Winternitz signatures\n";
34 std::cout << " - Uses PRIVATE_KEY environment variable for classical "
35 "public key derivation\n";
36 std::cout
37 << " - Generates Winternitz keypair using hashsigs-cpp library\n";
38 std::cout << " - Outputs vault ID, classical public key, Winternitz "
39 "public key, and wallet address\n\n";
40
41 std::cout
42 << " transfer <pubkey> <sig> <to_address> <amount> <private_key>\n";
43 std::cout
44 << " Transfer funds from a Quip wallet using Winternitz signature\n";
45 std::cout << " - pubkey: 32-byte public key in hex format (0x...)\n";
46 std::cout << " - sig: Winternitz signature in hex format (0x...)\n";
47 std::cout << " - to_address: Destination Ethereum address (0x...)\n";
48 std::cout << " - amount: Transfer amount in wei\n";
49 std::cout << " - private_key: Private key for transaction signing\n\n";
50
51 std::cout
52 << " execute <pubkey> <sig> <target_address> <opdata> <private_key>\n";
53 std::cout << " Execute a contract call from a Quip wallet using "
54 "Winternitz signature\n";
55 std::cout << " - pubkey: 32-byte public key in hex format (0x...)\n";
56 std::cout << " - sig: Winternitz signature in hex format (0x...)\n";
57 std::cout << " - target_address: Target contract address (0x...)\n";
58 std::cout << " - opdata: Operation data in hex format (0x...)\n";
59 std::cout << " - private_key: Private key for transaction signing\n\n";
60
61 std::cout << " change-owner <pubkey> <sig> <private_key>\n";
62 std::cout << " Change the PQ owner of a Quip wallet using Winternitz "
63 "signature\n";
64 std::cout << " - pubkey: 32-byte public key in hex format (0x...)\n";
65 std::cout << " - sig: Winternitz signature in hex format (0x...)\n";
66 std::cout << " - private_key: Private key for transaction signing\n\n";
67

Callers 1

mainFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected