A vibecoded keyboard-focused 1Password TUI
Find a file
2026-06-25 01:00:59 +00:00
.forgejo/workflows chore(deps): update github actions 2026-06-25 01:00:59 +00:00
cmd/opt chore(deps): update charm libraries to v2 2026-05-31 15:02:23 +02:00
internal chore(deps): update charm libraries to v2 2026-05-31 15:02:23 +02:00
.editorconfig ci: add goreleaser and renovate workflows 2026-05-17 22:54:29 +02:00
.gitignore feat: intial release 2026-05-16 18:46:37 +02:00
.golangci.yml feat: intial release 2026-05-16 18:46:37 +02:00
.goreleaser.yaml ci: remove goreleaser build steps 2026-05-18 20:19:39 +02:00
.renovaterc.json add renovate preset 2026-05-24 20:55:05 +02:00
go.mod fix(deps): update go dependencies to v2.0.4 2026-06-13 01:01:09 +00:00
go.sum fix(deps): update go dependencies to v2.0.4 2026-06-13 01:01:09 +00:00
README.md feat(ui): Add Shift+C to copy secret reference 2026-05-17 17:08:43 +02:00
Taskfile.yml feat: intial release 2026-05-16 18:46:37 +02:00

opt

A keyboard-focused 1Password TUI built with Bubble Tea.

Features

  • Panes layout: Vaults → Entries → Fields → Value (only two visible at a time)
  • Desktop app integration (default) or service-account token authentication
  • Fuzzy filtering on every list pane (/)
  • Secret masking for passwords, OTP codes, etc. (m to toggle)
  • Clipboard copy (c or y)
  • Read-only — no editing

Installation

go install git.karolak.fr/nicolas/opt/cmd/opt@latest

Authentication

Desktop App (default)

If the 1Password desktop app is installed and unlocked, opt will connect using desktop app integration. The account is resolved in this order:

  1. The -a flag
  2. The OP_ACCOUNT environment variable
  3. The op CLI (if signed in with a single account)
opt

You can specify an account explicitly:

opt -a myaccount

Service Account Token

export OP_SERVICE_ACCOUNT_TOKEN="your-token"
opt -t

Usage

Key Action
h / left / shift+tab Move focus left
l / right / tab Move focus right / drill down
enter Select / drill down
j / k Navigate within active pane
/ Toggle fuzzy filter on active list
m Toggle secret masking
c / y Copy value to clipboard
C Copy secret reference to clipboard
q / ctrl+c Quit

Development

# Format
task fmt

# Lint
task lint

# Test
task test

# Build
task build

License

MIT