Given a TOTP seed, you can generate one-time passcodes on your CLI, also receiving the time remaining for a particular code. Passing the -c
option will also immediately copy it to the clipboard.
topt-seed-cli -s BD6ZWNRLEOG5JUQHC2YW6BXX2K675AZX
╔════════════╗
║ ║
║ 047232 ║
║ ║
╚════════════╝
9 seconds remaining for this code.
- Install it globally using
npm i -g totp-seed-cli
. - Pass it a seed and use the optional
-c
flag to copy the code to your clipboard:totp -s ABCDEFGH -c
. - Pass the optional
-w
if you'd like it to generate another code once time expires.
To use totp
locally in your CLI, install it globally using npm:
npm i -g totp-seed-cli
Use -s
to pass in your seed:
totp -s ABCDEFGH
This will output the code to the console.
To display the code and the time remaining, but also copy it to the clipboard, pass -c
:
totp -s ABCDEFGH -c
To save the seed in a local file for future use, pass -S
totp -s ABCDEFGH -S
From here on, you can just call totp
.
Using your shell of choice, you can create an alias so you can call this from anywhere without having to pass your seed.
If you're using zsh
, use your editor to edit your .zshrc
:
vi ~/.zshrc
Add an alias with your seed and the copy command, such as:
alias otp="totp -s ABCDEFGH -c"
Save the file and restart your terminal. You can now simply call otp
from anywhere.
Acknowledgements: the source for the TOTP
Class is entirely sourced from the Blendist's TOTP.io project, which is the web equivalent of this project and where I got the inspiration to do this from.
Non-ESM packages specifically to work with node v16.15.0
.