Skip to main content

A Python library and command line interface for 1Password

Project description

A command line interface (and Python library) for reading passwords from 1Password.

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

The name you pass on the command line must exactly match the name of an item in your 1Password keychain.

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.

Contributors

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. I do hope they like it though.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

1pass-0.1.5.tar.gz (3.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page