{ "info": { "author": "ICON foundation", "author_email": "foo@icon.foundation", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 3.6" ], "description": "\nICON CLI tool\n========\n\n ICON supports Command Line Interface(CLI interface) for 3rd party or user services development. With this single tool, you can control all ICON functions and automate them using scripts.\n\n\n\n- [Prerequisite](#prerequisite)\n- [Version](#version)\n- [Glossary](#glossary)\n- [Technical information](#technical-information)\n- [Getting started](#getting-started)\n\t- [Installation](#installation)\n\t- [Run CLI](#run-cli)\n\t- [Console instructions](#console-instructions)\n\t- [Wallet operation](#wallet-operation)\n\t\t- [Create wallet file](#create-wallet-file)\n\t\t- [Show wallet information](#show-wallet-information)\n\t\t- [List up all assets in current wallet](#list-up-all-assets-in-current-wallet)\n\t\t- [Transfer the value to the specific address with the fee.](#transfer-the-value-to-the-specific-address-with-the-fee)\n\n\n\n\n# Prerequisite\n\nYou need Python 3.6 or later to run icxcli. You can have multiple Python versions (2.x and 3.x) installed on the same system without problems.\n\nOn macOS(Sierra and after) and Ubuntu 16.04, for example, the necessary packages are:\n\n- automake\n- pkg-config\n- virtualenv\n- autoconf\n- libtool\n\nIn Ubuntu 16.04, you can install Python 3.6.\n\n $ sudo add-apt-repository ppa:jonathonf/python-3.6\n $ sudo apt update\n $ sudo apt install python3.6\n $ sudo apt install python3.6-dev\n $ sudo apt install virtualenv\n $ virtualenv -p python3.6 .venv\n\nYou can install pip3 for python 3.6 like this:\n\n $ wget https://bootstrap.pypa.io/get-pip.py\n $ sudo python3.6 get-pip.py\n\nYou can install autoconf, libtool and automake for python3.6.\n\n $ sudo apt install autoconf libtool automake\n\n\n\n# Version\n\n- 0.0.4\n\n\n\n# Glossary\n\n- Address of wallet: Unique string to identify the address to transfer value. It prefixed with 'hx'.\n- Private key: A tiny bit of code that is paired with a public key to set off algorithms to encrypt and decrypt a text for the specific address.\n- Public key: Long alphanumeric characters that is used to encrypt data (message).\n\n\n\n# Technical information\n\n## Private key, public key and wallet address\n\nThere are five steps to get from private->public -> address:\n\n1. Generate a private key.\n2. Derive a public key from the private key.\n3. H1 = sha3_256( Public key) => 32 byte\n4. BitAddress = last 20 bytes of H1\n5. Address = hx || HexString(BitAddress)\nex) hxaa688d74eb5f98b577883ca203535d2aa4f0838c\n\n## Tested platform\n\nWe tested on window and macOS. If you find some problems on window, please send the report of the problems.\n\n\n\n# Getting started\n\n## Installation\n\nThe easiest way to install icxcli* is to use pip:\n\n $ pip install icxcli\n\nor, if you are not installing in a virtualenv:\n\n $ sudo pip install icxcli\n\nIf you have the aws-cli installed and want to upgrade to the latest version you can run:\n\n $ pip install --upgrade icxcli\n\n## Run CLI\n\nRun command icli in the command line. There are many sub commands like wallet create, wallet show, asset list, transfer for ICX service. You can get the help page by adding the command help.\n\n $ icli --help\n usage:\n Normal commands:\n version\n help\n\n Wallet Commands:\n\n wallet create -p \n wallet show -p | -n \n asset list -p | -n \n transfer -p -f | -n \n\n WARNING:\n\n Fee feature is the experimental feature; fee is fixed to 10000000000000000 loop for now so if you\n try to make a transaction with the modified fee, which is not 10000000000000000 loop, then you would\n not be able to make the transaction. you will be notified\n when it is possible to make a transaction with the modified fee.\n\n IF YOU MISS -n, icli WILL USE TESTNET.\n\n\n positional arguments:\n command wallet create, wallet show, asset list, transfer\n\n optional arguments:\n -h, --help\t\tshow this help message and exit\n -p PASSWORD\t\tpassword\n -f FEE\t\ttransaction fee\n -n NETWORK\t\tmainnet or testnet or other IP or domain\n\n\n## Console instructions\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n
CommandFunction description
versionShows the current software version.
helpShows Help menu
\n\n\n\n## Wallet operation\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
CommandFunction description
wallet create <file path> -p <password>Create a wallet file.
wallet show <file path> -p <password> -n <network>\nShow current wallet information.
asset list <file path> -p <password> -n <network>Enumerate the asset in the wallet. (ICX, ICX token)
transfer <to> <amount> <file path> -p <password> -f <fee> -n <network>\nTransfer the value to the specific address with the fee.
\n\n### WARNING\n\nFee feature is the experimental feature; **fee is fixed to 10000000000000000 loop for now** so if you try to make a transaction with the modified fee, which is not 10000000000000000 loop, then you would not be able to make the transaction. you will be notified when it is possible to make a transaction with the modified fee.\n\n\n\n## Create wallet file\n\n $ icli wallet create -p \n\nCreate a wallet file with given wallet name, password and file path.\n\n### Arguments\n\n- file path : File path for the keystore file of the wallet.\n- password: Password including alphabet character, number, and special character. If the user doesn\u2019t give password with -p, then CLI will show the prompt and user need to type the password.\n\n### Output\n\n#### Successful case\n\nReturn 0 : Succeed to generate the keystore file for the wallet.\n\n#### Error cases\n\n**icli** will return following error code and message.\n\n- Return 121: The file path is without a file name.\n- Return 122: The file path is wrong.\n- Return 123: The password is wrong.\n- Return 124: The keystore file has already existed.\n- Return 136: User doesn't have a permission to write the file.\n\n\n\n## Show wallet information\n\n $ icli wallet show -p -n \n\nShow wallet information.\n\n### Arguments\n\n- file path: File path for the keystore file of the wallet.\n- password: Password including alphabet character, number, and special character. If the user doesn\u2019t give password with -p, then CLI will show the prompt and user need to type the password.\n- network: 'testnet' or 'mainnet' or other IP or domain address.\n\n### Output\n\nShows the all information of wallet.\n\n- Wallet address\n- Current balance\n- Keystore file contents\n\n#### Successful case\n\nReturn 0 : Print out wallet information including asset list.\n\n#### Error cases\n\n- Return 122: The file path is wrong.\n- Return 123: The password is wrong.\n- Return 126: The network is invalid.\n- Return 133: The file is not a key store file.\n\n\n\n## List up all assets in current wallet\n\n $ icli asset list -p -n \n\n Enumerate the list of all the assets of the wallet.\n\n### Arguments\n\n- file path : File path for the keystore file of the wallet.\n- password: Password including alphabet character, number, and special character. If the user doesn\u2019t give password with -p, then CLI will show the prompt and user need to type the password.\n- network: 'testnet' or 'mainnet' or other IP or domain address.\n\n### Output\n\n- List of all assets in current wallet.\n\n#### Successful case\n\n- Return 0 : Succeed to display.\n\n#### Error cases\n\n- Return 122: The file path is wrong.\n- Return 123: The password is wrong.\n- Return 126: The network is invalid.\n- Return 133: The file is not a key store file.\n\n\n\n## Transfer the value to the specific address with the fee.\n\n $ icli transfer -p -f -n \n\nTransfer the value from A address to B address with the fee.\n\n### Arguments\n\n- to: Address of wallet to receive the asset.\n- file path : File path for the keystore file of the wallet.\n- password: Password including alphabet character, number, and special character. If the user doesn\u2019t give password with -p, then CLI will show the prompt and user need to type the password.\n- amount : Amount of money. (Unit:loop)\n- fee : Transfer fee (Unit:loop)\n - **YOU SHOULD CHANGE BOTH THE UNIT OF AMOUNT AND FEE TO LOOP, ENTERING INTEGER VALUES FOR AMOUNT AND FEE NOT FLOATING NUMBERS.**\n - Unit: loop\n - Ex) 1 icx = 1018 loop\n- network: 'testnet' or 'mainnet' or other IP or domain address.\n\n### Output\n\n#### Successful case\n\nReturn 0 : Succeed to transfer\n\n#### Error cases\n\n**icli** will return following error code and message.\n\n- Return 122: The file path is wrong.\n- Return 123: The password is wrong.\n- Return 126: The network is invalid.\n- Return 127: The wallet doesn't have enough balance.\n- Return 128: The fee is invalid.\n- Return 130: The wallet address is wrong.\n- Return 133: The file is not a key store file.\n- Return 135: The amount is not integer values.\n\n\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/icon-project/icon_cli_tool", "keywords": "", "license": "Apache License 2.0", "maintainer": "", "maintainer_email": "", "name": "icxcli", "package_url": "https://pypi.org/project/icxcli/", "platform": "", "project_url": "https://pypi.org/project/icxcli/", "project_urls": { "Homepage": "https://github.com/icon-project/icon_cli_tool" }, "release_url": "https://pypi.org/project/icxcli/0.0.4/", "requires_dist": [ "requests (>=2.18.4)", "eth-keyfile (>=0.5.0)", "secp256k1 (>=0.13.2)" ], "requires_python": "", "summary": "A Universal Command Line Environment for ICON.", "version": "0.0.4" }, "last_serial": 4256594, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "4f5c0047347f27ef8c7d3d8fc60aec8a", "sha256": "33061d94ab333aadd5020130c69addf6206c23241f8368c8b6ac400a566d8d78" }, "downloads": -1, "filename": "icxcli-0.0.1.tar.gz", "has_sig": false, "md5_digest": "4f5c0047347f27ef8c7d3d8fc60aec8a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11026, "upload_time": "2018-03-13T12:04:23", "url": "https://files.pythonhosted.org/packages/be/74/c3ec2c4f2cb94e27153bdad8e1363087b4c4dfc52c436c942acfa53591bc/icxcli-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "141f72e7400997b73717e19999d5c953", "sha256": "5ed6ad25275edf07f9bc71f8d24e3928c68222a4549c18304cf2cc75a27955e6" }, "downloads": -1, "filename": "icxcli-0.0.2.tar.gz", "has_sig": false, "md5_digest": "141f72e7400997b73717e19999d5c953", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10782, "upload_time": "2018-03-28T12:42:05", "url": "https://files.pythonhosted.org/packages/f9/14/270e7ad1f2bb2021a77bd803d448cae658e676afe3ef9f10f3cec34f8540/icxcli-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "b92953a0736a272cd1c5da797de58076", "sha256": "eb696abb5adf547a68e6c319aa05aeb0cb83c2bc4f72f820abb31e135952d45a" }, "downloads": -1, "filename": "icxcli-0.0.3.tar.gz", "has_sig": false, "md5_digest": "b92953a0736a272cd1c5da797de58076", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10661, "upload_time": "2018-06-28T06:20:19", "url": "https://files.pythonhosted.org/packages/8f/bd/7b065b187941b31a6974d25e174219b5aebb96b1aaaf858dadc7612c6237/icxcli-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "036efa406ff9a2417ebeaed9eef998e0", "sha256": "60ee419bca439a853c5983ac21bfc2cef1a7fd4be71b3061d12fbf4d7bfe7bbb" }, "downloads": -1, "filename": "icxcli-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "036efa406ff9a2417ebeaed9eef998e0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 18150, "upload_time": "2018-09-10T07:47:00", "url": "https://files.pythonhosted.org/packages/43/df/136cb8b1a70ecd13deb68874e2defd628edc1bbb990be2d6108842680dec/icxcli-0.0.4-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "036efa406ff9a2417ebeaed9eef998e0", "sha256": "60ee419bca439a853c5983ac21bfc2cef1a7fd4be71b3061d12fbf4d7bfe7bbb" }, "downloads": -1, "filename": "icxcli-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "036efa406ff9a2417ebeaed9eef998e0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 18150, "upload_time": "2018-09-10T07:47:00", "url": "https://files.pythonhosted.org/packages/43/df/136cb8b1a70ecd13deb68874e2defd628edc1bbb990be2d6108842680dec/icxcli-0.0.4-py3-none-any.whl" } ] }