One field, one use, no standing secret.

Skarbiec is a local credential broker for the AI agent era. Values live only as per-recipient GPG ciphertext in one vault file; machine workloads borrow exactly one field, once, through a signed one-use capability.

What Skarbiec owns#

Skarbiec stores API keys, logins, sessions, tokens, and typed fields as per-recipient ciphertext in a single local JSON vault. It supports scoped grants, finite capabilities, field-bound acquisition, injection, sharing, TOTP, rotation, recovery, emergency access, breach checks, audit verification, a loopback API, CLI, MCP server, managed browser bridge, and self-hosted ciphertext sync.

The complete local broker works without a Wisent account, network licence check, item limit, or paid seat. Skarbiec is an early public 0.1.x product; operated fleet synchronization, retained organization audit, governance, and custodied recovery are separate planned services.

The defining path#

Long-lived environment variables and copied credential files give every process that can read them the whole secret for an indefinite period. Skarbiec replaces that with a five-step contract:

  • Store — the owner writes a typed item; each value is encrypted to the item's recipient set, and the vault file never contains plaintext values.
  • Register — the operator registers one exact acquire:item#field capability and an Ed25519 workload public key for each new consumer.
  • Prove — the workload signs the consumer, item, field, workload id, timestamp, and nonce; stale proofs, capability mismatches, and replayed proof hashes are rejected.
  • Borrow once — Skarbiec issues an opaque bearer with a default 30-second TTL; the first successful matching read deletes its stored hash before returning the field.
  • Record — issuance and consumption append non-sensitive identifiers to a hash-chained local journal; values, signatures, and public keys are excluded.

Who it serves#

  • Individual operators storing and using credentials on machines they control.
  • Agent and service owners replacing standing read tokens with signed, one-use acquisition.
  • Security and platform teams defining exact consumer, item, and field grants and reviewing a hash-chained local journal.
  • Recovery custodians proving that an isolated recovery key can open a deterministic canary before an incident.
  • Self-hosting teams synchronizing ciphertext while retaining their own host, keyring, network, backup, and upgrade responsibilities.