Lisky allows you to communicate with a remote or local node and carry out Lisk-related functionality using an interactive or non-interactive command line tool.
Lisky requires Node.js as the underlying engine for code execution. Node.js is supported on most operating systems. Follow the instructions for your operating system on the Node.js downloads page. You will need version 6.11.x or higher. NPM is automatically installed along with Node.js.
$ npm install --global --production lisky
Upon successful completion, NPM will add the lisky
executable to your PATH.
Clone the Lisky repository using Git and install the dependencies:
$ git clone https://github.com/LiskHQ/lisky.git
$ cd lisky
$ npm install
Before running the executable you will need to build Lisky:
npm run build
WARNING: If you have installed Lisky globally via NPM (see Install Lisky via NPM), following the instructions in this section is not recommended as they will introduce conflicts.
If you would like to add the lisky
executable to your PATH you have two options: option 1 will install the current state of the code you are installing globally, while option 2 will only link to the code and therefore automatically reflect changes you make going forward.
Running this command from within the repository will add Lisky to your global NPM packages, and add the lisky
executable to your PATH. Be aware that any previous globally installed lisky version will get overridden with this local version.
$ npm install --global --production
Note that you will have to repeat this process for each subsequent build of Lisky.
The other option is to ask NPM to create a symlink in the global folder that links to the package.
$ npm link
This will also add lisky
to your PATH, but you won't have to repeat the process if you pull or create a new build. Be aware that any previous globally installed lisky version will get overridden with this local version.
To run commands interactively:
$ lisky
_ _ _
| (_)___| | ___ _
| | / __| |/ / | | |
| | \__ \ <| |_| |
|_|_|___/_|\_\\__, |
|___/
Running v0.1.3. Copyright (C) 2017 Lisk Foundation
Type `help` to get started.
lisky> help
Commands:
help [command...] Provides help for a given command.
exit Exits lisky.
env Print environmental configuration.
get [options] <type> <input> Get information from <type> with parameter <input>.
Types available: account, address, block, delegate, transaction
E.g. get delegate lightcurve
e.g. get block 5510510593472232540
list [options] <type> <variadic...> Get information from <type> with parameters <input, input, ...>.
Types available: accounts, addresses, blocks, delegates, transactions
E.g. list delegates lightcurve tosch
E.g. list blocks 5510510593472232540 16450842638530591789
set <variable> <value> Set configuration <variable> to <value>. Configuration is
persisted in `~/.lisky/config.json`.
lisky>
To run commands and options directly from the command line:
$ lisky get delegate lightcurve --json
Configuration is stored in a config file placed in the user's home directory (run help set
to see the exact location). If this is unavailable a default configuration is used. The following settings can be updated (and will be persisted if possible):
Command | Description |
---|---|
set json true|false |
Sets default to JSON output (true) or text output (false) |
set testnet true|false |
Set default to testnet (true) or mainnet (false) |
Further information can be found on our documentation site:
Lisky is an open-source project and all contributions are welcome.
If you find a bug or want to make feature request, please create an issue with as much detail as you can.
Lisky has an extensive set of unit tests. To run the tests, please install lisky from source, and then run the command:
$ npm test
You try to run Lisky and it tells you
ERROR: Requires Node.js version 6.14.1, but was started with version 8.11.1.
Because of the sensitive nature of Lisky’s functionality, we want to make absolutely sure that when our users are using Lisky it behaves as expected. Currently we only perform substantial tests with a single version of Node.js, so we require our users to use that specific version to avoid unforeseen behavior discrepancies.
In the future we would like to support a wider range of Node.js versions, but until then we recommend using a Node.js version manager, such as nvm, to make it easy to switch between different Node.js versions.
You try to run Lisky and it tells you
Config lockfile at ~/.lisky/config.lock found. Are you running Lisky in another process?
When you start Lisky, either in interactive or non-interactive-mode, we create a lockfile to prevent you from making changes to your configuration file. If for some reason either Lisky or your computer crashes, this lockfile might not be removed, and Lisky will prevent you from starting a new instance even though no Lisky instance is currently running. In this case it’s safe to remove the lockfile.
The lockfile is located in your Lisky configuration directory. The error message above will give you the location of the file if you want to remove if manually, or you can run lisky clean
and Lisky will remove it for you.
- Make sure you’re on the network you intend to be on.
- Exit Lisky (if in interactive mode) and restart.
- Remove the configuration file (
config.json
) located in your Lisky configuration directory (~/.lisky
by default). When you restart Lisky the default configuration will be recreated. - Get in contact on Lisk Chat or Gitter.
- If it seems like a bug, open an issue on GitHub. See the Contribution Guidelines.
https://github.com/LiskHQ/lisky/graphs/contributors
Copyright © 2016–2018 Lisk Foundation
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.