Open source · Local-first · Windows

Tired of pasting API keys into every coding IDE?

Put all your keys in one vault. Let Meta LLMs guard it from the requestors. OpenVault is the wallet for agents: Cursor, Claude Code, Codex and VS Code ask for a scoped capability, a local Meta model vets the request, you approve — and the key itself is never shown to the agent, the chat, or the model.

# what your agent sees now $ export STRIPE_KEY=sk-live-•••••••• # pasted. in the transcript. forever. # what your agent sees with OpenVault agent → request_capability(stripe, charges.read, "list failed charges") marshal (llama3.2:3b, on-device) → risk LOW, approval required you → Approve once vaultd → injects key in-daemon → tool result only → grant expired # the key appeared in zero chats, zero prompts, zero logs

The problem

Your keys are already leaked. You just haven't seen the bill yet.

Three failure modes, one root cause: the key was somewhere it never needed to be. In a transcript. In a tool's storage. In someone else's cloud.

Rotation fatigue

Stop rotating keys because you pasted them

Every paste into a chatbox, an IDE prompt, or a support ticket is a future 2 a.m. rotation. Transcripts persist. Context windows get logged. The key outlives the conversation.

The nightmare scenario

Keys stored in a tool get leaked. Next morning: a $4,000 bill.

It has happened to teams again and again — credentials sitting inside a dev tool are exfiltrated, and bots burn them within hours. If the key was never in the tool, there is nothing to steal.

Cloud trust

Stop trusting cloud password managers with agent access

Cloud vaults were built for humans logging in, not autonomous agents asking mid-task, fifty times a day. OpenVault keeps keys on your machine, encrypted at rest, under your OS keychain.

How it works

A dumb vault. A smart warden.

Like a crypto wallet — except the payloads are API requests, and they are far more complex than a signature.

Layer 1 · The vault

Dumb by design

Encrypted keys, hard policy ceilings, expiring grants. No intelligence, no surprises. Secure with the model switched off.

Layer 2 · The warden

Smart by design

A Meta LLM assesses every requestor and every request: scope, history, intent. It never sees plaintext keys. Ever.

01Store once

Add each key once. AES-256-GCM at rest, master key in your OS keychain.

02Agent requests a capability

Via one MCP snippet in any IDE: stripe · charges.read — never the key.

03The warden assesses

A local Meta model risk-scores the requestor, scope, and history. It can narrow or escalate — never widen.

04You approve

One click in the desktop app. Writes always ask. Reads can earn standing approval.

05Injection + tripwire

The daemon injects the key into that single call, returns only the result, then the grant dies. TTL and event tripwires auto-revoke.

LLM Security Levels

Stronger warden. Stronger vault.

The vault is secure with no model at all — deterministic policy is the floor.

Each warden tier adds judgement on top of that floor: spotting writes phrased as reads, slow scope-creep, and malicious requests from rogue agents you are testing. The floor itself never moves.

LevelWardenRunsWhat you get
STANDARD · LOWNone — policy onlyAnywhereHard ceilings, expiry, manual approval for everything sensitive. Safe, blunt.
GUARDED · MEDIUMLlama 3.2 3B (Q4)On-device, 8 GB GPURisk scoring, scope recommendation, one-line explanations. The default.
FORTIFIED · HIGHMuse Glimmer 30BOn-device, 24 GB GPUHistory pattern-spotting, injection resistance, senior-investigator judgement.
MAXIMUMMuse Spark / Muse WonderMeta Model APIFrontier reasoning auditing every request. Metadata only — still no keys, ever.

Request Logs

Know exactly what is being requested.

One timeline per request, with the model named on every warden row. If an agent asked for something at 3 a.m., you will see it — and exactly what happened next.

Always logged

Who asked, what, and what happened

Agent and IDE, requested scope, the warden's assessment, the policy decision, your approval or denial, execution, expiry, revocation. Timestamped, in order.

Never logged

The secret itself

No key value, fragment, or hash ever reaches the log — or any transcript. A canary test scans 17 surfaces in CI and fails the build on a single hit.

146automated tests, all passing
100%safety rate, live brain eval (17 attack scenarios)
17external surfaces scanned by the canary test — zero leaks
401what an agent gets if it tries to approve its own request

Distribution

Download. Open source. Yours.

Windows first. OpenVault is Apache-2.0 open source — audit it, fork it, run it air-gapped. A browser extension for agent request approval is on the roadmap.

From the team behind Keythings Wallet — we have shipped key management people trust with real assets. OpenVault is the same discipline, for the agent era. The future: hardened devices, secure enclaves, fully air-gapped vaults. Secure, easy, and full of possibility.