Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

1pass

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

1pass

A Python library and command line interface for 1Password

  • 0.2.1
  • PyPI
  • Socket score

Maintainers
1

===== 1pass

A command line interface (and Python library) for reading passwords from 1Password <https://agilebits.com/onepassword>_.

Command line usage

To get a password::

1pass mail.google.com

By default this will look in ~/Dropbox/1Password.agilekeychain. If that's not where you keep your keychain::

1pass --path ~/whatever/1Password.agilekeychain mail.google.com

Or, you can set your keychain path as an enviornment variable::

export ONEPASSWORD_KEYCHAIN=/path/to/keychain

1pass mail.google.com

By default, the name you pass on the command line must match the name of an item in your 1Password keychain exactly. To avoid this, fuzzy matching is made possible with the --fuzzy flag::

1pass --fuzzy mail.goog

If you don't want to be prompted for your password, you can use the --no-prompt flag and provide the password via standard input instead::

emit_master_password | 1pass --no-prompt mail.google.com

Python usage

The interface is very simple::

from onepassword import Keychain

my_keychain = Keychain(path="~/Dropbox/1Password.agilekeychain")
my_keychain.unlock("my-master-password")
my_keychain.item("An item's name").password

An example of real-world use

I wrote this so I could add the following line to my .muttrc file::

set imap_pass = "`1pass 'Google: personal'`"

Now, whenever I start mutt, I am prompted for my 1Password Master Password and not my Gmail password.

The --no-prompt flag is very useful when configuring mutt and PGP. mutt passes the PGP passphrase via standard in, so by inserting 1pass into this pipline I can use my 1Password master password when prompted for my PGP keyphrase::

set pgp_decrypt_command="1pass --no-prompt pgp-passphrase | gpg --passphrase-fd 0 ..."

Contributors

  • Pip Taylor https://github.com/pipt
  • Adam Coddington https://github.com/latestrevision
  • Ash Berlin https://github.com/ashb
  • Zach Allaun https://github.com/zachallaun
  • Eric Mika https://github.com/kitschpatrol

License

1pass is licensed under the MIT license. See the license file for details.

While it is designed to read .agilekeychain bundles created by 1Password, 1pass isn't officially sanctioned or supported by AgileBits <https://agilebits.com/>_. I do hope they like it though.

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc