dsh-vault
Encrypted credential vault for DeepSeek Harness: store and retrieve usernames, emails, phone numbers, passwords, TOTP secrets, SSH/API-key/OAuth developer credentials through model tools and a Settings UI page.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Ox0400/dsh-vault说明文档
阅读完整 README ↗dsh-vault — Encrypted Credential Vault for DeepSeek Harness
English | 中文
dsh-vault is a security-focused plugin for DeepSeek Harness that stores sensitive credentials — usernames, emails, phone numbers, passwords, TOTP secrets, and developer credentials like SSH connections, API keys, secrets, and OAuth access/refresh tokens — encrypted at rest, and exposes them to the model through CRUD, search, password generation, and TOTP tools, plus a Settings UI page.
Security & Implementation
- Zero external crypto dependencies: everything is built on Node's built-in
node:crypto(AES-256-GCM authenticated encryption, scrypt key derivation, RFC 6238 TOTP). - Master password: every entry is encrypted with a 256-bit key derived via
scrypt(master password, salt)and AES-256-GCM. The key never touches disk; after unlock it is cached in-process and re-derived on restart. - Tamper-evident: GCM auth tags plus a fixed-plaintext verification envelope — a wrong master password or modified ciphertext fails immediately, never returning garbage.
- No plaintext at rest: the on-disk document contains no plaintext credentials; each entry uses an independent random nonce.
- Atomic writes: reuses the harness
writeFileAtomic+ file lock; in-process writes are serialized, cross-process writers take the lock. - Search never leaks:
vault_searchreturns summaries only (id/title/kind/username/email/phone/host/port/url/tags) — never passwords, keys, tokens, or TOTP secrets. Full credentials are readable only via explicitvault_getby id.