wish-cli
v0.8.2
Published
A simple REPL based command line tool for accessing the Wish Core.
Downloads
6
Readme
Wish CLI
A simple REPL based command line tool for accessing the Wish Core.
This is bleeding egde software and WILL BREAK from time to time, you have been warned.
This package is dependent on the wish-core-api package, which currently is working with Linux x64/ia32, OSX x64, on nodejs v6.x only. To get it working you also need to run a Wish Core on the same host.
Prerequisites
If you are running on Linux x64 or OSX x64 everything should work out of the box according to the instructions below. Windows is not supported yet.
Download and install node.js v6.x: https://nodejs.org/dist/latest-v6.x/. You may use Node Version Manager nvm
(https://github.com/creationix/nvm).
You will need to have an appropriate wish-core (the peer-to-peer identity based communication layer mist is based on). The source is available at: https://github.com/WishCore/wish-c99.
Install
npm install -g wish-cli
Run
wish-cli
If everything is working correctly you should be greeted with something like this:
Welcome to Wish CLI vX.Y.Z
Not everything works as expected! You have been warned.
Connected to Wish Core v0.8.0-beta-2
wish>
Commands
Directory
There is a primitive directory implementation for publishing, finding and befriending identities.
directory.find(search: string): [DirectoryEntry]
directory.publish(uid: Buffer(32))
direcotry.friendRequest(uid: Buffer(32), entry: DirectoryEntry)
Wish API
Wish Cli reads the available API from the core it connects to using the methods
request. It is partially self documenting and can be enumerated using the help()
command.
All commands have the form some.command(arg1, arg2, argn, callback?: (err, data) => {})
, where callback
is optional. If no callback is given the answer will be stored in the global variable result
.
Example command sequence:
identity.create('John Doe')
uid = result.uid // store uid for later use
directory.publish(uid)
direcotry.find('My Friend') // will print result, if any
directory.friendRequest(result[7])
Identity
Create an identity with wish-cli
identity.create('John Andersson')
identity.list(): [Identity]
identity.remove(uid: Buffer(32)): boolean
Update identity alias
or meta data
identity.update(uid, { alias: 'John Doe' });
identity.update(uid, { telephone: '+358 80 123 1234', BCH: '1kdshfvnksdvjhnfsdkjfvnhsklf', dateOfBirth: '1982-05-05' });
Delete meta data. With an exception with alias
which cannot be deleted.
identity.update(uid, { dateOfBirth: null, telephone: null });
Parameters
CORE=9090 # connect to core on localhost at port 9090, default is 9094