{"id":16003504,"url":"https://github.com/nhatthm/authenticator-cli","last_synced_at":"2025-07-23T02:31:51.932Z","repository":{"id":226138520,"uuid":"760159071","full_name":"nhatthm/authenticator-cli","owner":"nhatthm","description":"Managing and generating one-time passwords for multiple accounts","archived":false,"fork":false,"pushed_at":"2025-07-15T08:42:36.000Z","size":1067,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-15T19:42:54.583Z","etag":null,"topics":["2fa","authenticator","authy","cli","go","golang","mfa","otp","totp"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nhatthm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-02-19T22:23:46.000Z","updated_at":"2025-07-15T08:40:41.000Z","dependencies_parsed_at":"2024-03-25T17:32:50.577Z","dependency_job_id":"4c115528-b52a-4a18-966b-0ddad01d4d69","html_url":"https://github.com/nhatthm/authenticator-cli","commit_stats":null,"previous_names":["nhatthm/authenticator-cli"],"tags_count":27,"template":false,"template_full_name":null,"purl":"pkg:github/nhatthm/authenticator-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nhatthm%2Fauthenticator-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nhatthm%2Fauthenticator-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nhatthm%2Fauthenticator-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nhatthm%2Fauthenticator-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nhatthm","download_url":"https://codeload.github.com/nhatthm/authenticator-cli/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nhatthm%2Fauthenticator-cli/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266606024,"owners_count":23955204,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-23T02:00:09.312Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["2fa","authenticator","authy","cli","go","golang","mfa","otp","totp"],"created_at":"2024-10-08T10:21:03.154Z","updated_at":"2025-07-23T02:31:51.876Z","avatar_url":"https://github.com/nhatthm.png","language":"Go","funding_links":["https://www.paypal.com/donate/?hosted_button_id=PJZSGJN57TDJY"],"categories":[],"sub_categories":[],"readme":"# Authenticator\n\n[![GitHub Releases](https://img.shields.io/github/v/release/nhatthm/authenticator-cli)](https://github.com/nhatthm/authenticator-cli/releases/latest)\n[![Build Status](https://github.com/nhatthm/authenticator-cli/actions/workflows/release-edge.yaml/badge.svg)](https://github.com/nhatthm/authenticator-cli/actions/workflows/release-edge.yaml)\n[![Go Report Card](https://goreportcard.com/badge/github.com/nhatthm/authenticator-cli)](https://goreportcard.com/report/github.com/nhatthm/authenticator-cli)\n[![GoDevDoc](https://img.shields.io/badge/dev-doc-00ADD8?logo=go)](https://pkg.go.dev/github.com/nhatthm/authenticator-cli)\n[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/donate/?hosted_button_id=PJZSGJN57TDJY)\n\n\u003c!--\n[![codecov](https://codecov.io/gh/nhatthm/authenticator-cli/branch/master/graph/badge.svg?token=eTdAgDE2vR)](https://codecov.io/gh/nhatthm/authenticator-cli)\n--\u003e\n\nCLI tool for managing and generating one-time passwords for multiple accounts.\n\n## Prerequisites\n\n- `Go \u003e= 1.24`\n\n### Keyring\n\nSupport **OS X**, **Linux/BSD (dbus)** and **Windows**.\n\n#### OS X\n\nThe OS X implementation depends on the `/usr/bin/security` binary for\ninterfacing with the OS X keychain. It should be available by default.\n\n#### Linux and *BSD\n\nThe Linux and *BSD implementation depends on the [Secret Service][SecretService] dbus\ninterface, which is provided by [GNOME Keyring](https://wiki.gnome.org/Projects/GnomeKeyring).\n\nIt's expected that the default collection `login` exists in the keyring, because\nit's the default in most distros. If it doesn't exist, you can create it through the\nkeyring frontend program [Seahorse](https://wiki.gnome.org/Apps/Seahorse):\n\n* Open `seahorse`\n* Go to **File \u003e New \u003e Password Keyring**\n* Click **Continue**\n* When asked for a name, use: **login**\n\n## Install\n\nYou can download the [latest stable version](https://github.com/nhatthm/authenticator-cli/releases/latest) or\nthe [nightly build](https://github.com/nhatthm/authenticator-cli/releases/tag/edge) (`edge` version).\n\nOnce downloaded, the binary can be run from anywhere. Ideally, though, you should move it into your `$PATH` for easy use. `/usr/local/bin` is a popular location\nfor this.\n\nTo update the tool to the newest version, run `authenticator self-update`.\n\n### Install from source\n\nIf you have `go` installed, you can run the following command to install the latest version:\n\n```bash\n$ /bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/nhatthm/authenticator-cli/HEAD/install.sh)\"\n```\n\nThe binary will be installed to `$GOBIN` or `$GOPATH/bin` (when `$GOBIN` is empty) directory. If you don't know where it is, you can run `go env` to find out.\n\nIn order run the binary from anywhere, the `$GOBIN` or `$GOPATH/bin` directory should be added to your `$PATH`.\n\n## Usage\n\n### Add a new account\n\nRun `authenticator account add` to add a new account. If you don't specify the namespace, the tool will ask you to input it.\n\nIf you have a QR code, you can use `--qr` flag to tell the tool to [scan the QR code](#scan-a-qr-code). Otherwise, [input the account and the totp secret manually](#manually-input-all-the-information).\n\n```bash\n$ authenticator account add -h\nAdd an account\n\nUsage:\n  authenticator account add [-n \u003cnamespace\u003e] [--qr \u003c/path/to/qr-code-image\u003e] [flags]\n\nFlags:\n  -h, --help               help for add\n  -n, --namespace string   namespace\n      --qr string          qr code\n\nGlobal Flags:\n  -d, --debug     debug output\n  -v, --verbose   verbose output\n```\n\n### Generate an OTP\n\nAfter [adding an account](#add-a-new-account), you can generate an OTP by running `authenticator otp \u003cnamespace\u003e \u003caccount\u003e`. For example:\n\n```bash\n$ authenticator otp -n demo john.doe@example.com\n103281\n```\n\nIf you want to generate and copy the OTP to the clipboard, use the `--copy` flag, for example:\n\n```bash\n$ authenticator otp -n demo john.doe@example.com --copy\n```\n\n\u003e [!TIP]\n\u003e You can add an alias to your shell startup file, such as `.bashrc` or `.zshrc`, to make it easier to use. For example:\n\u003e\n\u003e ```bash\n\u003e alias cotp='authenticator otp demo john.doe@example.com --copy'\n\u003e ```\n\u003e\n\u003e Later, you can just run `cotp` to generate and copy the OTP to the clipboard.\n\u003e\n\u003e If your terminal allows you to customize the shortcuts, you can also create a shortcut for the alias\n\u003e\n\u003e \u003cp align=\"center\"\u003e\n\u003e     \u003cimg width=\"70%\" alt=\"image\" src=\"https://github.com/nhatthm/authenticator-cli/assets/1154587/41488032-a691-49fd-81aa-5bee9aea306a\"\u003e\n\u003e \u003c/p\u003e\n\n## Examples\n\n### Manually input all the information\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"./resources/docs/demo1.gif\" alt=\"demo 1\" width=\"100%\" height=\"auto\" /\u003e\u003cbr/\u003e\n    \u003ci\u003eManually input all the information\u003c/i\u003e\n\u003c/p\u003e\n\n### Scan a QR code\n\nExample QR code:\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"./resources/fixtures/qr.png\" alt=\"qr\" height=\"auto\" /\u003e\u003cbr/\u003e\n    \u003ccode\u003etotpauth://otp/john.doe%40example.com?secret=NBSWY3DP\u0026issuer=example.com\u003c/code\u003e\n    \u003cbr/\u003e\n    \u003cbr/\u003e\n    \u003cimg src=\"./resources/docs/demo2.gif\" alt=\"demo 2\" width=\"100%\" height=\"auto\" /\u003e\u003cbr/\u003e\n\u003c/p\u003e\n\n## Donation\n\nIf this project help you reduce time to develop, you can give me a cup of coffee :)\n\n### Paypal donation\n\n[![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://www.paypal.com/donate/?hosted_button_id=PJZSGJN57TDJY)\n\n\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;or scan this\n\n\u003cimg src=\"https://user-images.githubusercontent.com/1154587/113494222-ad8cb200-94e6-11eb-9ef3-eb883ada222a.png\" width=\"147px\" /\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnhatthm%2Fauthenticator-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnhatthm%2Fauthenticator-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnhatthm%2Fauthenticator-cli/lists"}