agopass

command module
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 30, 2026 License: GPL-3.0 Imports: 6 Imported by: 0

README

Agopass, CLI password manager made in Golang.

Agopass is a CLI password/secret manager made in Go, it's very simple, few commands is all you need.

Want to install?

Requirements:

  • Go
  • A clipboard manager:
    • xsel (X11)
    • xclip (X11)
    • wl-clipboard (Wayland)

If you're in MacOS agopass will use your system clipboard, so don't worry about it.

Compatibility:

  • Unix-like systems (Linux, MacOS)

I don't think it's compatible with windows and don't really care enough to test it.

Compile from source:

git clone https://github.com/Alvesafk/agopass --depth=1
cd agopass
go build -o bin/agopass .

Then just put on your bin directory for you to be able to access whenever.

Go install:

go install github.com/Alvesafk/agopass@latest

It will install for you, will be on your $GOPATH/bin, you should export your Go bin directory to your $PATH variable on your shell, then you can use whenever and wherever.

How to use it?

It's very simple, like i said few commands are necessary.

First you have to initialize it, i will assume your agopass binary is on your $PATH.

Use agopass init to create a Master Key, this key is the only password that you have to remember now (make sure to remember!), it's used to authenticate you on some commands that modify your DB or show your secrets, it's also used as salt when encrypting your secrets, you can't use agopass init more than one time, so make sure you don't forget it.

If you forgot your password the only thing that you can really do it's removing the DB and starting over, the Master Key can't be retrieved, it's on purpose and it's inegotiable.

After you created your Master Key you can use the other commands, in this moment the commands are:

  • add
    • It's how you insert your secrets, just do agopass add and you will be prompted to add a name and your secret key, names are case sensitive for all the commands that use them, so make sure you're writing correctly.
  • list
    • You will not be prompted to use your Master Key with this command, it shows the registered Secrets on the DB, it does not show the real secret key nor the hash.
  • get
    • This is how you retrieve your secret keys from the DB, just do agopass get <Secret> and it will be coppied to your clipboard.
  • delete
    • Delete a secret registered on your DB based on it's name, let's say i want to delete my Github password from agopass, i will do agopass delete Github, will prompt me asking if i really want to do it. Remember that names are case sensitive.
  • update
    • Update a secret registered on the DB, the name and the key can be changed, agopass update github will prompt me to update my Github key, it has a way to check typing so in most cases the program will find the key that you're looking for.
  • make
    • Creates a random 32 bit long key and puts into your clipboard, the key is created with by adding random indexes of a long string with characters, numbers and symbols, the random indexes are created by the crypto/rand, so they have enough entropy to not be easily seeded, or not seeded at all.
  • auto
    • Setup the autocomplete scripts, it's called on the init command as well, but in case you refused on the init you can always go back and setup again.

This is the project for now, some features that i want to work next:

  • Update command to update or change the registered key.
  • Autocomplete scripts, for auto completing the commands.
  • Rewrite into a TUI.
  • A way to export and import the DB, without just copying the DB binary.

Thanks for your attention, Alvesafk.

Documentation

Overview

Author © 2026 alvesafk <migueldealmeidaalves55@gmail.com>

Agopass (formerly gopass but someone had already stole my flow) is a CLI Password manager made in Go, it uses a SQLite db located on this path /home/<user>/.agopass/, all the contents of the DB are hashed or encrypted, it's simple to use, few commands but it gets the job done, to start with agopass you have to run <agopass init>, that will create the DB and prompt you to create your Master Password, the only password you'l need to remember!

Directories

Path Synopsis
The Add command is for adding secrets into the DB, the encryption part is handled inside the storage package.
The Add command is for adding secrets into the DB, the encryption part is handled inside the storage package.
The Storage package is what handles all the DB operations, beginning by creating and migrating it to Insertions and Deletes.
The Storage package is what handles all the DB operations, beginning by creating and migrating it to Insertions and Deletes.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL