concealer

The local-only secret manager for the AI-coding era.

Encrypted with SOPS + age. No cloud, no telemetry, no account. Your agents use secrets without ever seeing them.

🔒 Local-only 🤖 AI-safe by design ⭐ Open source (MIT) 🧩 CLI · Web · TUI · MCP
$ brew install fxerkan/tap/concealer
Why concealer

Built for how we code now

Coding assistants read your files. The moment a key lands in a .env it can leak. concealer keeps secrets encrypted, scoped, and out of every transcript.

🤖

AI-era by design

An MCP server lets agents list names and inject values into a command's environment — plaintext is redacted from everything they see. Registration + rate limits stop bulk exfiltration.

🧳

Portable, not machine-bound

The vault decrypts on any machine with just the master password — not tied to a Keychain or TPM. Copy the files, type the password, done.

Open source & inspectable

One readable Python script, MIT-licensed. No black box, no account, no telemetry — verify with a firewall that nothing phones home.

🔐

SOPS + age crypto

All encryption is delegated to battle-tested tools: AES-256-GCM over age X25519. The age private key never touches disk in plaintext — key-at-rest.

🧾

Tamper-evident audit

Every read, write, copy and inject is appended to an HMAC-chained log with a monotonic seq and a tail anchor. Names and actions only — never values.

🎯

One place, many projects

Disambiguate the same value across repos by tenant / project / environment / repo. The most-specific scope wins at inject time.

Four ways in

CLI · Web UI · TUI · MCP

The same encrypted vault, however you like to work.

Web UI

A professional local console

Type-aware forms, searchable multi-select filters, per-secret deploy renderers, clipboard copy with auto-clear, and a tamper-evident audit viewer. Bilingual (TR/EN), dark/light/matrix themes, localhost only.

concealer web → http://127.0.0.1:8787

concealer Web UI — searchable, scoped secrets
TUI

Full terminal interface

Browse, search, add, delete and reveal secrets without leaving the terminal — arrow keys, instant filtering, type-aware editing.

concealer tui

concealer TUI — terminal secret browser
MCP · Agents

Agents use secrets, never see them

Register an agent, hand it a revocable token, and it can inject a DB password to run a query — while the value stays redacted from its context. Every call is audited with source=mcp.

concealer agent register claude

Agent listing concealer secrets over MCP — names only, never values
Quick start

Up and running in a minute

# install (pulls in sops, age, expect) brew install fxerkan/tap/concealer # create the vault — prints recovery codes + a CLI token, once concealer init # unlock your shell session (~8h token) — `cer` is the short alias for `concealer` eval "$(cer unlock)" # store & use a secret — the value never hits your terminal cer set --name OPENAI_API_KEY --project web --env prod 'sk-DUMMY-123' cer run --project web --env prod npm run deploy

Read the full guide →

Stop pasting keys into chat windows.

Local-only. Portable. Open source. Built for the AI-coding era.

Docs
Support

Questions, bugs or feedback?

Reach out directly — we read every message and usually reply within a day.