Skip to content
/ expresso Public

expresso is a command line interface to control the ExpressVPN app

License

Notifications You must be signed in to change notification settings

sttz/expresso

Repository files navigation

Expresso CLI for ExpressVPN

expresso is a command line interface to control the ExpressVPN app. It uses the same native messaging interface as the open-source ExpressVPN browser extension.

Setup

Download the latest release here. expresso is a self-contained executable and has no dependencies.

Or you can install via Homebrew using sttz/homebrew-tap, see the tap readme for instructions.

Alfred Workflow

expresso also comes with an Alfred workflow, which enables to easily choose locations, connect and disconnect from Alfred.

Download the workflow here. The workflow bundles expresso, so you don't need to install anything else.

Alfred Workflow Screenshot

Alfred Workflow Screenshot

Legend

  • ⚡️Connected location
  • ❤️Location favorited in the ExpressVPN app
  • 🕙Recent location
  • 👍Recommended «Smart Location»

Usage

expresso v1.3.0

USAGE: expresso [--help] [--version] [--verbose...] [--quiet] [--timeout <arg>] 
                <action> 

GLOBAL OPTIONS:
 -h, --help       Show this help 
     --version    Print the version of this program 
 -v, --verbose    Increase verbosity of output, can be repeated 
 -q, --quiet      Only output necessary information and errors 
 -t, --timeout <arg>  Override the default connect/disconnect timeout (in 
                  milliseconds) 


---- LOCATIONS:
     List all available VPN locations 

USAGE: expresso [options] locations 


---- STATUS:
     Show the current VPN connection status 

USAGE: expresso [options] status 


---- CONNECT:
     Connect to a VPN location 

USAGE: expresso [options] connect [--change] [--random] [--toggle] [<location>] 

OPTIONS:
 -c, --change     Change current location when already connected 
     --random     Choose a random location in the given country 
     --toggle     Disconnect instead when already connected (to the given 
                  location with --change) 
 <location>       Location to connect to, either location id, country or 
                  keyword 


---- DISCONNECT:
     Disconnect from the current VPN location 

USAGE: expresso [options] disconnect 


---- ALFRED:
     Output the main options for the Alfred workflow 

USAGE: expresso [options] alfred [--locations] 

OPTIONS:
     --locations  Output the locations for the Alfred workflow 


---- REPL:
     Interactively communicate with the helper 

USAGE: expresso [options] repl