# KeePassXC for Raycast

URL: https://www.raycast.com/zkytech/keepassxc

> Access the KeePass database with the KeepassXC-cli. Please make sure KeePassXC is installed.

- Install: raycast://extensions/zkytech/keepassxc
- Author: [yquVbzd](https://www.raycast.com/zkytech)
- Installs: 315
- Updated: 2022-04-05
- Source: https://github.com/raycast/extensions/tree/321658d70200322f743f42a7392b4d3f11951bd2/extensions/keepassxc/

## Commands

- **Search Passwords**: Search Password in KeepassXC

## README

### KeepassXC Extension for Raycast

This is a Raycast extension to access keepass database.

#### Requirements

- [KeePassXC.app](https://keepassxc.org) installed.(`keepassxc-cli` in `KeepassXC.app` is required to access keepass database

#### Setup

There are 3 parameters required for this extension to work:

- path of `KeePassXC.app` (default `/Applications/KeePassXC.app`)
- a keepass database file
- password to access database

![preference](https://github.com/raycast/extensions/raw/321658d70200322f743f42a7392b4d3f11951bd2/extensions/keepassxc//media/preferences.png)

#### Usage

![example](https://github.com/raycast/extensions/raw/321658d70200322f743f42a7392b4d3f11951bd2/extensions/keepassxc//media/example.gif)

##### Shortcuts

- `Enter` : Copy and Paste Password
- `Cmd`+`Enter` : Copy Password
- `Cmd`+`B` : Copy Username

#### Password Security Note

This extension works by using `keepassxc-cli`(inside `KeePassXC.app`) in command line to access keepass database:

- Main password is stored by raycast. (encrypted)
- Main password will be send to `keepassxc-cli` by simulating command line interaction with nodejs api [subprocess.stdin.write](https://nodejs.org/api/child_process.html#subprocessstdin).

##### Related commands

```bash
# List entries
keepassxc-cli locate -q /path/to/database.kdbx /

# Get password by entry
keepassxc-cli show -q -a Password /path/to/database.kdbx entry_name

# Get username by entry
keepassxc-cli show -q -a Username /path/to/database.kdbx entry_name

```
