Security News
Weekly Downloads Now Available in npm Package Search Results
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.
@proton/cli
Advanced tools
Proton CLI
Install CLI (NPM)
npm i -g @proton/cli
Install CLI (Yarn)
yarn global add @proton/cli
If you get a missing write access error on Mac/Linux, first run:
sudo chown -R $USER /usr/local/lib/node_modules
sudo chown -R $USER /usr/local/bin
You can skip this step if you already have NodeJS installed
1. Install NVM
MacOS/Linux/WSL:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
Windows 7/10/11:
Download nvm-setup.zip and run it here. After installation, open a new PowerShell window as administrator.
2. Install NodeJS
nvm install 16
nvm use 16
$ npm install -g @proton/cli
$ proton COMMAND
running command...
$ proton (--version)
@proton/cli/0.1.88 darwin-arm64 node-v16.18.0
$ proton --help [COMMAND]
USAGE
$ proton COMMAND
...
proton account ACCOUNT
proton account:create ACCOUNT
proton action CONTRACT [ACTION] [DATA] [AUTHORIZATION]
proton block:get BLOCKNUMBER
proton boilerplate [FOLDER]
proton chain:get
proton chain:info
proton chain:list
proton chain:set [CHAIN]
proton contract:abi ACCOUNT
proton contract:clear ACCOUNT
proton contract:enableinline ACCOUNT
proton contract:set ACCOUNT SOURCE
proton encode:name ACCOUNT
proton encode:symbol SYMBOL PRECISION
proton faucet
proton faucet:claim SYMBOL AUTHORIZATION
proton generate:action
proton generate:contract CONTRACTNAME
proton generate:inlineaction ACTIONNAME
proton generate:table TABLENAME
proton help [COMMAND]
proton key:add [PRIVATEKEY]
proton key:generate
proton key:get PUBLICKEY
proton key:list
proton key:lock
proton key:remove [PRIVATEKEY]
proton key:reset
proton key:unlock [PASSWORD]
proton msig:approve PROPOSER PROPOSAL AUTH
proton msig:cancel PROPOSALNAME AUTH
proton msig:exec PROPOSER PROPOSAL AUTH
proton msig:propose PROPOSALNAME ACTIONS AUTH
proton network
proton permission ACCOUNT
proton permission:link ACCOUNT PERMISSION CONTRACT [ACTION]
proton permission:unlink ACCOUNT CONTRACT [ACTION]
proton psr URI
proton ram
proton ram:buy BUYER RECEIVER BYTES
proton rpc:accountsbyauthorizers AUTHORIZATIONS [KEYS]
proton scan ACCOUNT
proton table CONTRACT [TABLE] [SCOPE]
proton transaction JSON
proton transaction:get ID
proton transaction:push TRANSACTION
proton version
proton account ACCOUNT
Get Account Information
USAGE
$ proton account [ACCOUNT] [-r] [-t]
FLAGS
-r, --raw
-t, --tokens Show token balances
DESCRIPTION
Get Account Information
See code: lib/commands/account/index.js
proton account:create ACCOUNT
Create New Account
USAGE
$ proton account:create [ACCOUNT]
DESCRIPTION
Create New Account
See code: lib/commands/account/create.js
proton action CONTRACT [ACTION] [DATA] [AUTHORIZATION]
Execute Action
USAGE
$ proton action [CONTRACT] [ACTION] [DATA] [AUTHORIZATION]
ARGUMENTS
CONTRACT
ACTION
DATA
AUTHORIZATION Account to authorize with
DESCRIPTION
Execute Action
See code: lib/commands/action/index.js
proton block:get BLOCKNUMBER
Get Block
USAGE
$ proton block:get [BLOCKNUMBER]
DESCRIPTION
Get Block
See code: lib/commands/block/get.js
proton boilerplate [FOLDER]
Boilerplate a new Proton Project with contract, frontend and tests
USAGE
$ proton boilerplate [FOLDER] [-h]
FLAGS
-h, --help show CLI help
DESCRIPTION
Boilerplate a new Proton Project with contract, frontend and tests
See code: lib/commands/boilerplate.js
proton chain:get
Get Current Chain
USAGE
$ proton chain:get
DESCRIPTION
Get Current Chain
ALIASES
$ proton network
See code: lib/commands/chain/get.js
proton chain:info
Get Chain Info
USAGE
$ proton chain:info
DESCRIPTION
Get Chain Info
See code: lib/commands/chain/info.js
proton chain:list
All Networks
USAGE
$ proton chain:list
DESCRIPTION
All Networks
See code: lib/commands/chain/list.js
proton chain:set [CHAIN]
Set Chain
USAGE
$ proton chain:set [CHAIN]
ARGUMENTS
CHAIN Specific chain
DESCRIPTION
Set Chain
See code: lib/commands/chain/set.js
proton contract:abi ACCOUNT
Get Contract ABI
USAGE
$ proton contract:abi [ACCOUNT]
DESCRIPTION
Get Contract ABI
See code: lib/commands/contract/abi.js
proton contract:clear ACCOUNT
Clean Contract
USAGE
$ proton contract:clear [ACCOUNT] [-a] [-w]
FLAGS
-a, --abiOnly Only remove ABI
-w, --wasmOnly Only remove WASM
DESCRIPTION
Clean Contract
See code: lib/commands/contract/clear.js
proton contract:enableinline ACCOUNT
Enable Inline Actions on a Contract
USAGE
$ proton contract:enableinline [ACCOUNT] [-p <value>]
ARGUMENTS
ACCOUNT Contract account to enable
FLAGS
-p, --authorization=<value> Use a specific authorization other than contract@active
DESCRIPTION
Enable Inline Actions on a Contract
See code: lib/commands/contract/enableinline.js
proton contract:set ACCOUNT SOURCE
Deploy Contract (WASM + ABI)
USAGE
$ proton contract:set [ACCOUNT] [SOURCE] [-c] [-a] [-w] [-s]
FLAGS
-a, --abiOnly Only deploy ABI
-c, --clear Removes WASM + ABI from contract
-s, --disableInline Disable inline actions on contract
-w, --wasmOnly Only deploy WASM
DESCRIPTION
Deploy Contract (WASM + ABI)
See code: lib/commands/contract/set.js
proton encode:name ACCOUNT
Encode Name
USAGE
$ proton encode:name [ACCOUNT]
DESCRIPTION
Encode Name
See code: lib/commands/encode/name.js
proton encode:symbol SYMBOL PRECISION
Encode Symbol
USAGE
$ proton encode:symbol [SYMBOL] [PRECISION]
DESCRIPTION
Encode Symbol
See code: lib/commands/encode/symbol.js
proton faucet
List all faucets
USAGE
$ proton faucet
DESCRIPTION
List all faucets
See code: lib/commands/faucet/index.js
proton faucet:claim SYMBOL AUTHORIZATION
Claim faucet
USAGE
$ proton faucet:claim [SYMBOL] [AUTHORIZATION]
ARGUMENTS
SYMBOL
AUTHORIZATION Authorization like account1@active
DESCRIPTION
Claim faucet
See code: lib/commands/faucet/claim.js
proton generate:action
Add extra actions to the smart contract
USAGE
$ proton generate:action [-o <value>] [-c <value>]
FLAGS
-c, --contract=<value> The name of the contract for table. 1-12 chars, only lowercase a-z and numbers 1-5 are
possible
-o, --output=<value> The relative path to folder the the contract should be located. Current folder by default.
DESCRIPTION
Add extra actions to the smart contract
See code: lib/commands/generate/action.js
proton generate:contract CONTRACTNAME
Create new smart contract
USAGE
$ proton generate:contract [CONTRACTNAME] [-o <value>]
ARGUMENTS
CONTRACTNAME The name of the contract. 1-12 chars, only lowercase a-z and numbers 1-5 are possible
FLAGS
-o, --output=<value> The relative path to folder the the contract should be located. Current folder by default.
DESCRIPTION
Create new smart contract
See code: lib/commands/generate/contract.js
proton generate:inlineaction ACTIONNAME
Add inline action for the smart contract
USAGE
$ proton generate:inlineaction [ACTIONNAME] [-o <value>] [-c <value>]
ARGUMENTS
ACTIONNAME The name of the inline action's class.
FLAGS
-c, --contract=<value> The name of the contract for table. 1-12 chars, only lowercase a-z and numbers 1-5 are
possible
-o, --output=<value> The relative path to folder the the contract should be located. Current folder by default.
DESCRIPTION
Add inline action for the smart contract
See code: lib/commands/generate/inlineaction.js
proton generate:table TABLENAME
Add table for the smart contract
USAGE
$ proton generate:table [TABLENAME] [-t <value>] [-s] [-o <value>] [-c <value>]
ARGUMENTS
TABLENAME The name of the contract's table. 1-12 chars, only lowercase a-z and numbers 1-5 are possible
FLAGS
-c, --contract=<value> The name of the contract for table. 1-12 chars, only lowercase a-z and numbers 1-5 are
possible
-o, --output=<value> The relative path to folder the the contract should be located. Current folder by default.
-s, --singleton Create a singleton table?
-t, --class=<value> The name of Typescript class for the table
DESCRIPTION
Add table for the smart contract
See code: lib/commands/generate/table.js
proton help [COMMAND]
display help for proton
USAGE
$ proton help [COMMAND] [--all]
ARGUMENTS
COMMAND command to show help for
FLAGS
--all see all commands in CLI
DESCRIPTION
display help for proton
See code: @oclif/plugin-help
proton key:add [PRIVATEKEY]
Manage Keys
USAGE
$ proton key:add [PRIVATEKEY]
DESCRIPTION
Manage Keys
See code: lib/commands/key/add.js
proton key:generate
Generate Key
USAGE
$ proton key:generate
DESCRIPTION
Generate Key
See code: lib/commands/key/generate.js
proton key:get PUBLICKEY
Find private key for public key
USAGE
$ proton key:get [PUBLICKEY]
DESCRIPTION
Find private key for public key
See code: lib/commands/key/get.js
proton key:list
List All Key
USAGE
$ proton key:list
DESCRIPTION
List All Key
See code: lib/commands/key/list.js
proton key:lock
Lock Keys with password
USAGE
$ proton key:lock
DESCRIPTION
Lock Keys with password
See code: lib/commands/key/lock.js
proton key:remove [PRIVATEKEY]
Remove Key
USAGE
$ proton key:remove [PRIVATEKEY]
DESCRIPTION
Remove Key
See code: lib/commands/key/remove.js
proton key:reset
Reset password (Caution: deletes all private keys stored)
USAGE
$ proton key:reset
DESCRIPTION
Reset password (Caution: deletes all private keys stored)
See code: lib/commands/key/reset.js
proton key:unlock [PASSWORD]
Unlock all keys (Caution: Your keys will be stored in plaintext on disk)
USAGE
$ proton key:unlock [PASSWORD]
DESCRIPTION
Unlock all keys (Caution: Your keys will be stored in plaintext on disk)
See code: lib/commands/key/unlock.js
proton msig:approve PROPOSER PROPOSAL AUTH
Multisig Approve
USAGE
$ proton msig:approve [PROPOSER] [PROPOSAL] [AUTH]
DESCRIPTION
Multisig Approve
See code: lib/commands/msig/approve.js
proton msig:cancel PROPOSALNAME AUTH
Multisig Cancel
USAGE
$ proton msig:cancel [PROPOSALNAME] [AUTH]
DESCRIPTION
Multisig Cancel
See code: lib/commands/msig/cancel.js
proton msig:exec PROPOSER PROPOSAL AUTH
Multisig Execute
USAGE
$ proton msig:exec [PROPOSER] [PROPOSAL] [AUTH]
DESCRIPTION
Multisig Execute
See code: lib/commands/msig/exec.js
proton msig:propose PROPOSALNAME ACTIONS AUTH
Multisig Propose
USAGE
$ proton msig:propose [PROPOSALNAME] [ACTIONS] [AUTH] [-b <value>] [-x <value>]
FLAGS
-b, --blocksBehind=<value> [default: 30]
-x, --expireSeconds=<value> [default: 604800]
DESCRIPTION
Multisig Propose
See code: lib/commands/msig/propose.js
proton network
Get Current Chain
USAGE
$ proton network
DESCRIPTION
Get Current Chain
ALIASES
$ proton network
proton permission ACCOUNT
Update Permission
USAGE
$ proton permission [ACCOUNT]
ARGUMENTS
ACCOUNT Account to modify
DESCRIPTION
Update Permission
See code: lib/commands/permission/index.js
proton permission:link ACCOUNT PERMISSION CONTRACT [ACTION]
Link Auth
USAGE
$ proton permission:link [ACCOUNT] [PERMISSION] [CONTRACT] [ACTION] [-p <value>]
FLAGS
-p, --permission=<value> Permission to sign with (e.g. account@active)
DESCRIPTION
Link Auth
See code: lib/commands/permission/link.js
proton permission:unlink ACCOUNT CONTRACT [ACTION]
Unlink Auth
USAGE
$ proton permission:unlink [ACCOUNT] [CONTRACT] [ACTION] [-p <value>]
FLAGS
-p, --permission=<value>
DESCRIPTION
Unlink Auth
See code: lib/commands/permission/unlink.js
proton psr URI
Create Session
USAGE
$ proton psr [URI]
DESCRIPTION
Create Session
See code: lib/commands/psr/index.js
proton ram
List Ram price
USAGE
$ proton ram
DESCRIPTION
List Ram price
See code: lib/commands/ram/index.js
proton ram:buy BUYER RECEIVER BYTES
Claim faucet
USAGE
$ proton ram:buy [BUYER] [RECEIVER] [BYTES] [-p <value>]
ARGUMENTS
BUYER Account paying for RAM
RECEIVER Account receiving RAM
BYTES Bytes of RAM to purchase
FLAGS
-p, --authorization=<value> Use a specific authorization other than buyer@active
DESCRIPTION
Claim faucet
See code: lib/commands/ram/buy.js
proton rpc:accountsbyauthorizers AUTHORIZATIONS [KEYS]
Get Accounts by Authorization
USAGE
$ proton rpc:accountsbyauthorizers [AUTHORIZATIONS] [KEYS]
DESCRIPTION
Get Accounts by Authorization
See code: lib/commands/rpc/accountsbyauthorizers.js
proton scan ACCOUNT
Open Account in Proton Scan
USAGE
$ proton scan [ACCOUNT]
DESCRIPTION
Open Account in Proton Scan
See code: lib/commands/scan/index.js
proton table CONTRACT [TABLE] [SCOPE]
Get Table Storage Rows
USAGE
$ proton table [CONTRACT] [TABLE] [SCOPE] [-l <value>] [-u <value>] [-k <value>] [-r] [-p] [-c <value>]
[-i <value>]
FLAGS
-c, --limit=<value> [default: 100]
-i, --indexPosition=<value> [default: 1]
-k, --keyType=<value>
-l, --lowerBound=<value>
-p, --showPayer
-r, --reverse
-u, --upperBound=<value>
DESCRIPTION
Get Table Storage Rows
See code: lib/commands/table/index.js
proton transaction JSON
Execute Transaction
USAGE
$ proton transaction [JSON]
DESCRIPTION
Execute Transaction
See code: lib/commands/transaction/index.js
proton transaction:get ID
Get Transaction by Transaction ID
USAGE
$ proton transaction:get [ID]
DESCRIPTION
Get Transaction by Transaction ID
See code: lib/commands/transaction/get.js
proton transaction:push TRANSACTION
Push Transaction
USAGE
$ proton transaction:push [TRANSACTION] [-u <value>]
FLAGS
-u, --endpoint=<value> Your RPC endpoint
DESCRIPTION
Push Transaction
See code: lib/commands/transaction/push.js
proton version
Version of CLI
USAGE
$ proton version
DESCRIPTION
Version of CLI
See code: lib/commands/version.js
FAQs
Proton CLI
The npm package @proton/cli receives a total of 8 weekly downloads. As such, @proton/cli popularity was classified as not popular.
We found that @proton/cli demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.
Security News
A Stanford study reveals 9.5% of engineers contribute almost nothing, costing tech $90B annually, with remote work fueling the rise of "ghost engineers."
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.