Skip to content
The slightly more awesome standard unix password manager for teams
Go Makefile
Branch: master
Clone or download
dominikschulz Update dependencies (#1230)
Signed-off-by: Dominik Schulz <>
Latest commit 4736d4d Dec 19, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Add stale bot configuration Jun 7, 2018
docs Update (#1217) Dec 19, 2019
pkg Update dependencies (#1230) Dec 19, 2019
tests Follow the rsync convention for the source directory in cp/mv commands ( Feb 4, 2019
.appveyor.yml Replace with across all s… May 29, 2018
.codeclimate.yml Adjust codeclimate and codecov settings (#603) Jan 4, 2018
.codecov.yml Add experimental crypto backend (#645) Feb 20, 2018
.errcheck.excl Update terminal UI libs (#789) May 21, 2018
.gitignore Generate global wrapper and manifest files for JSON API (#780) May 15, 2018
.goreleaser-upstream.yml Improve release automation (#808) May 29, 2018
.goreleaser.yml Enhanced notifications for Mac Systems (#1189) Oct 21, 2019
.revive.toml Codequality: add revive linter (#822) Jun 1, 2018
.travis.yml Update dependencies (#1230) Dec 19, 2019 Tag 1.8.6 Jul 26, 2019 Add release instructions Nov 19, 2018
Dockerfile Update Docker image to Go 1.12 (#1186) Oct 20, 2019
LICENSE Initial commit Feb 2, 2017
Makefile Migrate to go modules (#1157) Jul 26, 2019 Fix mailing list typo (#1219) Dec 19, 2019
VERSION Tag 1.8.6 Jul 26, 2019
app.go running with native_host requires initialized first (#903) Aug 10, 2018
app_test.go Increase test coverage (#604) Jan 4, 2018
commands.go Add git status subcommand (#1174) Dec 19, 2019
commands_test.go Fix/tests (#1151) Jul 22, 2019
commands_xc_test.go Fix/tests (#1151) Jul 22, 2019
context.go Ensure GOPASS_DEBUG works as documented (#1058) Feb 10, 2019
context_test.go Rewrite imports paths May 28, 2018
go.mod Update dependencies (#1230) Dec 19, 2019
go.sum Update dependencies (#1230) Dec 19, 2019
logo-small.png Add more desktop notifications (#435) Oct 30, 2017
logo.png readme improvements (#24) Feb 3, 2017
logo.svg readme improvements (#24) Feb 3, 2017
main.go Tag 1.8.6 Jul 26, 2019
main_test.go Rewrite imports paths May 28, 2018

gopass Gopher by Vincent Leinweber, remixed from the Renée French original Gopher


Build Status Go Report Card MIT License Github All Releases codecov CII Best Practices Download

The slightly more awesome Standard Unix Password Manager for Teams. Written in Go.

Table of Contents

  1. Abstract
  2. Demo
  3. Features
  4. Installation
  5. Development
  6. Credit & License
  7. Community
  8. Integrations
  9. Mobile apps
  10. Contributing
  11. Acknowledgements
  12. Further Documentation


Password management should be simple and follow Unix philosophy. With pass, each secret lives inside of a gpg encrypted file whose filename is the title of the website or resource that requires the secret. These encrypted files may be organized into meaningful folder hierarchies, copied from computer to computer, and, in general, manipulated using standard command line file management utilities. -

gopass is a rewrite of the pass password manager in Go with the aim of making it cross-platform and adding additional features. Our target audience are professional developers and sysadmins (and especially teams of those) who are well versed with a command line interface. One explicit goal for this project is to make it more approachable to non-technical users. We go by the UNIX philosophy and try to do one thing and do it well, providing a stellar user experience and a sane, simple interface.




Please see docs/ for an extensive list of all features along with several usage examples.

Feature pass gopass State Description
Secure secret storage stable Securely storing secrets encrypted with GPG
Recipient management beta Easily manage multiple users of each store
Multiple stores beta Mount multiple stores in your root store, like file systems
password quality assistance beta Checks existing or new passwords for common flaws
Binary support alpha Special handling of binary files (automatic Base64 encoding)
K/V and YAML support alpha Special handling for Key/Value and YAML content in secrets
password leak checker alpha Perform offline checks against known leaked passwords
PAGER support stable Automatically invoke a pager on long output
JSON API stable Allow gopass to be used as a native extension for browser plugins
Automatic fuzzy search stable Automatically search for matching store entries if a literal entry was not found
gopass sync beta Easy to use syncing of remote repos and GPG keys
Desktop Notifications beta Display desktop notifications and completing long running operations
OTP support (✔) stable Generate HOTP/TOTP tokens based on the stored secret
Multiple Crypto Backends alpha Extensible crypto backend support (GPG, NaCl)
Editing Recipients per Secret beta Select recipients per secret when encrypting
Extensions Extend gopass with custom commands


If you have Go 1.12 (or greater) installed:

go get

Otherwise, please see docs/


To upgrade with Go installed, run:

go get -u

Otherwise, use the setup docs mentioned in the installation section to reinstall the latest version.


This project uses GitHub Flow. In other words, create feature branches from master, open an PR against master, and rebase onto master if necessary.

We aim for compatibility with the latest stable Go Release only.

Credit & License

gopass is maintained by the nice folks from JustWatch and licensed under the terms of the MIT license.

Maintainers of this repository:

Please refer to the Git commit log for a complete list of contributors.


gopass is developed in the open. Here are some of the channels we use to communicate and contribute:


  • gopassbridge: Browser plugin for Firefox, Chrome and other Chromium based browsers
  • kubectl gopass: Kubernetes / kubectl plugin to support reading and writing secrets directly from/to gopass.
  • gopass alfred: Alfred workflow to use gopass from the Alfred Mac launcher

Mobile apps


We welcome any contributions. Please see the file for instructions on how to submit changes. If your are planning on making more elaborate or controversial changes, please discuss them on the gopass-developers mailing list or on IRC before sending a pull request.


gopass was initially started by Matthias Loibl and Dominik Schulz. The majority of its development has been sponsored by JustWatch.

Further Documentation

External Documentation

You can’t perform that action at this time.