The split between the two modes is the useful part: a share is a snapshot with a lifetime, while a workspace holds one address as the document evolves, which is what makes it a handoff channel between sessions rather than a paste bin. Writes lose to whoever committed first and hand back their content for you to merge. The security model is stated plainly by the project and worth repeating: handing someone the link hands them the key — including the model provider on the other end of the agent — and the 24-hour clock, not the encryption, is what bounds that.
An end-to-end encrypted staging area for content that should not sit in the conversation: text and files encrypted on your machine, uploaded to vnsh, and read back by link.
- Text or a local file encrypted locally and uploaded, returning a shareable URL with a time to live
- Links decrypted locally on the way back in — the key rides in the URL fragment, which HTTP never transmits, so the server stores ciphertext and never the key
- A workspace that keeps one URL as its content changes, so a handoff link stays valid across sessions and tools
- Version-checked writes: an unconditional write is refused and a stale one comes back with the current content, so a second agent's work returns rather than disappearing
- Version history on a workspace, an earlier version restored as the new latest, and its lifetime renewed without an edit
- A workspace decrypted to a local temp file and opened in the browser, for HTML reports, dashboards and diagrams meant to be looked at rather than read into context
- Two link tiers on the same document: one that can read and write, and a read-only one whose holder can decrypt every version but cannot derive a write token
Nothing to configure for anonymous use: no account and no key. Content is deleted 24 hours after the last write, and each write restarts that clock; a workspace's lifetime can be set up to 168 hours. Reading depends on the link fragment being intact, because that is where the decryption key lives. Sharing a file reads it from disk, so it has to sit on the machine running the server. An account and a token keep documents until you delete them. MIT.
One command plus a key — claude mcp add vnsh -- npx -y vnsh-mcp@1.8.2, then supply credentials
