# danielrobbins/keychain

A manager for ssh-agent and gpg-agent, now in Python.

Repository: https://github.com/danielrobbins/keychain
Canonical: https://ross.abutalabs.com/products/keychain
Homepage: https://kernel-seeds.org/projects/keychain/
Language: Python
License: GPL-3.0
License Family: copyleft
Topics: gpg, gpg-key, security, security-tools, ssh, ssh-client, ssh-key, python
Last push: 2026-08-29T04:25:14+00:00

## Health v2 (maintenance only)
Score: 100/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 100, release rhythm 99, longevity 100
- inputs: {"age_days": 6256, "days_push": 4, "days_rel": 4, "gap_med": 3.0, "n_releases_24m": 19}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1077, forks 125 (observed 2026-09-01T02:14:00.697400+00:00)

## What it is
Keychain is a Python-based CLI manager for ssh-agent and gpg-agent that maintains a single long-running agent per user and host, so passphrases are entered once per reboot. It ships as a self-contained zipapp with no third-party dependencies and writes agent environment files that shells, cron jobs, and scripts can reuse.

## Use cases
- stop re-entering my ssh passphrase in every terminal
- make cron jobs able to use my ssh keys
- share one ssh-agent across multiple terminal sessions
- cache gpg signing keys so they are ready to use
- run git pushes from scripts without passphrase prompts
- manage ssh-agent on a headless server for background tasks

## When to choose
- you open many terminals or editors and want one shared ssh-agent
- you need cron jobs or scripts to authenticate with cached SSH/GPG keys
- you want a single-file, dependency-free tool you can drop into PATH
- you use PKCS#11 hardware keys or GPG signing keys regularly

## When to avoid
- you want a full GUI secrets manager or password vault
- you need agent forwarding management or SSH config file management
- you prefer a desktop keyring integration like gnome-keyring

## Facets
- artifact type: cli-tool
- maturity: stable
- function: security, cli, developer-tools
- domain: security, developer-tools
- platform: cross-platform, cli, python
- tags: ssh-agent, gpg-agent, ssh-keys, passphrase-caching, zipapp, cron, command-line, linux, macos

## Member repositories
- danielrobbins/keychain (main) score 100

## Provenance
- Observed fields: from GitHub, fetched 2026-09-01T02:14:00.697400+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T06:53:36.395526+00:00, confidence not recorded.
  - readme: https://github.com/danielrobbins/keychain (fetched 2026-09-01T02:14:00.697400+00:00, sha e59de4c2b8fb)
  - homepage: https://kernel-seeds.org/projects/keychain/ (fetched 2026-08-29T12:55:41.712044+00:00, sha b1ecd0af944a)
  - site_page: https://kernel-seeds.org/projects/keychain/releases (fetched 2026-08-29T12:55:41.721548+00:00, sha 4fa29fe91c18)
- Data as of 2026-08-30T08:39:29.467469+00:00.
