YubiKey Manager CLI

Python library and command line tool for configuring a YubiKey. If you’re looking for the full graphical application, which also includes the command line tool, it’s here.


For more usage information and examples, see the YubiKey Manager CLI User Manual.

Usage: ykman [OPTIONS] COMMAND [ARGS]...

  Configure your YubiKey via the command line.


    List connected YubiKeys, only output serial number:
    ykman list --serials

    Show information about YubiKey with serial number 0123456:
    ykman --device 0123456 info

  -v, --version
  -d, --device SERIAL
                                  Enable logging at given verbosity level.
  --log-file FILE                 Write logs to the given FILE instead of standard error; ignored unless --log-level is also set.
  -r, --reader NAME               Use an external smart card reader. Conflicts with --device and list.
  -h, --help                      Show this message and exit.

  config   Enable/Disable applications.
  fido     Manage FIDO applications.
  info     Show general information.
  list     List connected YubiKeys.
  mode     Manage connection modes (USB Interfaces).
  oath     Manage OATH Application.
  openpgp  Manage OpenPGP Application.
  otp      Manage OTP Application.
  piv      Manage PIV Application.



sudo apt-add-repository ppa:yubico/stable
sudo apt update
sudo apt install yubikey-manager


brew install ykman


The command line tool is installed together with the GUI version of YubiKey Manager.


pip install yubikey-manager

In order for the pip package to work, ykpers and libusb need to be installed on your system as well. Pyscard is also needed in some form, and if it’s not installed pip builds it using swig and potentially PCSC lite.


To install from source, see the development instructions.

Bash completion

Experimental Bash completion for the command line tool is available, but not enabled by default. To enable it, run this command once:

source <(_YKMAN_COMPLETE=source ykman | sudo tee /etc/bash_completion.d/ykman)