Threshold Vault is Vaulkyrie’s MPC wallet mode. Instead of generating one Ed25519 private key and storing it on one machine, Vaulkyrie runs FROST DKG to create participant key packages. A threshold subset of participants can later cooperate to produce a normal Ed25519 signature for Solana.Documentation Index
Fetch the complete documentation index at: https://docs.vaulkyrie.xyz/llms.txt
Use this file to discover all available pages before exploring further.
User-facing idea
A Threshold Vault is still a Solana wallet from the outside. The difference is how signatures are produced.DKG implementation
The browser DKG flow is implemented in:src/services/frost/frostService.tssrc/services/frost/dkgOrchestrator.tscrates/vaulkyrie-frost-wasm/src/lib.rs
frostService.ts loads the WASM module lazily and exposes typed wrappers around:
dkgRound1dkgRound2dkgRound3signingRound1signingRound2aggregateSignatureverifySignaturerunLocalDkgsignLocal
Signing implementation
Threshold signing is implemented in:src/services/frost/signingOrchestrator.tssrc/services/frost/signTransaction.tssrc/services/frost/cosignerThresholdSigner.ts
Relay choices
Vaulkyrie has two relay implementations.| Relay | Source | Notes |
|---|---|---|
| Same-origin tab relay | src/services/relay/channelRelay.ts | Uses BroadcastChannel. Useful for local testing or multiple tabs. |
| Cross-device relay | src/services/relay/websocketRelay.ts and relay-server/src/server.ts | Uses WebSocket sessions, invite auth tokens, participant assignment, heartbeat, stale cleanup, and room forwarding. |
Server cosigner
The relay server can store one cosigner share and join a signing session when requested. Relevant source:relay-server/src/cosigner.tssrc/services/cosigner/cosignerClient.tssrc/services/frost/cosignerThresholdSigner.ts
registerCosignerSharevalidates and stores a cosigner key package.getCosignerStatusreturns metadata without exposing the key package.requestCosignerSignaturestarts a WebSocket signing session for a registered vault.runCosignerSessionjoins the relay session, emits signing commitments, and returns a signature share.
Example: local FROST smoke test
The CLI exposes DKG harness commands fromcrates/vaulkyrie-cli/src/cmd/dkg.rs.
