Agent Witness
A PWA that acts as a remote ssh-agent. Private keys are wrapped, encrypted, and stored locally in the phone's IndexedDB; the vault can only be unwrapped with a secret derived from a passkey, and all key handling and signing happens locally through the browser's Web Crypto APIs as non-extractable CryptoKey objects. Incoming signing requests arrive as push notifications showing the agent-supplied reason, the command being run, and the key requested; after passkey authorization the PWA signs the request and only the resulting signature is returned, so the private key never leaves the phone.
What it addresses
Authorizing an AI agent's SSH signature requests remotely without private keys ever leaving the phone.
Shared over time
Each entry reflects what was shared on that date. Details may have changed since then.
Agent Witness
A PWA that acts as a remote ssh-agent. Private keys are wrapped, encrypted, and stored locally in the phone's IndexedDB; the vault can only be unwrapped with a secret derived from a passkey, and all key handling and signing happens locally through the browser's Web Crypto APIs as non-extractable CryptoKey objects. Incoming signing requests arrive as push notifications showing the agent-supplied reason, the command being run, and the key requested; after passkey authorization the PWA signs the request and only the resulting signature is returned, so the private key never leaves the phone.
Problem: Authorizing an AI agent's SSH signature requests remotely without private keys ever leaving the phone.
Posted by @evanpurkhiser · Original comment ↗
“Agent Witness runs as a PWA and is essentially a remote ssh-agent. The private keys are wrapped, encrypted, and stored in IndexedDB locally on the phone. The vault can only be unwrapped with a secret derived from a passkey, and all key handling and signing happens locally through the browser's Web Crypto APIs.”