Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

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:


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

1pass --path ~/whatever/1Password.agilekeychain

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.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.


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.

Release History

History Node


History Node


History Node


History Node


History Node


History Node


This version
History Node


History Node


History Node


Download Files

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

Filename, Size & Hash SHA256 Hash Help File Type Python Version Upload Date
(3.6 kB) Copy SHA256 Hash SHA256
Source None Feb 19, 2013

Supported By

Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Google Google Cloud Servers