Give AI sessions a handle, not the key.
Anything a model can read, a prompt injection can send away. Keyward answers an AI session with a reference, puts the value into the process that needs it, and asks you, with Windows Hello, before a value ever reaches the model.
What changes when the model gets a handle
Nothing leaves in the conversation. The session sees kw://web-shop/prod/STRIPE_SECRET_KEY and what is known
about it. The value goes into npm publish, or git push, or the test suite, as an environment variable for that
one command.
A reveal is a decision you make. When a session really needs a value in its context, Keyward Desktop asks you: which program, which secret, the reason the model gave, for how long. You answer with Windows Hello. The lease is minutes, and the audit remembers that the secret was exposed.
The caller is who it is, not who it says. The Keyward Service reads the signature of the program that asks. Claude Code is Claude Code because Anthropic signed it; a script that claims to be Claude Code gets references only.
One door for every client
Claude Code, Codex and Claude Desktop talk to the service on your computer. claude.ai, ChatGPT and Codex in the cloud talk to the Keyward server behind OAuth through Exprezoe Identity, which is what a custom connector is. Same tools, same policy, same rule.
Where it stands
Keyward Server 1.0.0-alpha.1 is the first build. Keyward Desktop, the Service and the connectors are designed and not built. The status page says what exists and what is next, and nothing on this page will be promised before it is proven.
Keyward Server 1.0.0-alpha.1 is being built; Keyward Desktop is designed
A secrets, credentials and machine-identity platform you run yourself, and a vault on your own Windows computer that gives AI sessions handles instead of secrets. In early access, licenses go to Exprezoe's staff and to the testers we invite; one license covers Keyward Desktop and the command line.