How shroudb/shroudb-sdk-ruby works
ShrouDB is a unified Ruby SDK for database, encryption, identity, and other ShrouDB engines. A caller configures a Client for Moat or direct engine connections, invokes a namespaced engine command, and receives parsed results or a typed response. The client selects transports; engine namespaces serialize commands, while transport implementations handle HTTP or RESP3 communication. The README and sampled sources confirm several engine capabilities and the multi-engine routing model; implementation details for unsampled engines are limited to their modules and paths.
Main entry points: client.rb Unified Client · interface.rb Transport Interface · resp3.rb RESP3 Transport · shroudb.rb Encrypted KV
Components 22
Client Routing
- Unified Client
lib/shroudb/client.rb
Engine Commands
- Encrypted KV
lib/shroudb/engines/shroudb.rb - Encryption Service
lib/shroudb/engines/cipher.rb - Credential Envelopes
lib/shroudb/engines/sigil.rb - Veil Engine
lib/shroudb/engines/veil.rb - Sentry Engine
lib/shroudb/engines/sentry.rb - Forge Engine
lib/shroudb/engines/forge.rb - Keep Engine
lib/shroudb/engines/keep.rb - Courier Engine
lib/shroudb/engines/courier.rb - Chronicle Engine
lib/shroudb/engines/chronicle.rb - Stash Engine
lib/shroudb/engines/stash.rb - Event Log
lib/shroudb/engines/scroll.rb
Transport Layer
- Transport Interface
lib/shroudb/transport/interface.rb - RESP3 Transport
lib/shroudb/transport/resp3.rb - HTTP Transport
lib/shroudb/transport/http.rb - Connection Pool
lib/shroudb/transport/resp3.rb
Response Models
- KV Responses
lib/shroudb/types/shroudb.rb - Cipher Responses
lib/shroudb/types/cipher.rb - Sigil Responses
lib/shroudb/types/sigil.rb
Other components
- Ruby Application
- Moat Gateway
- Engine Servers
Connections 33
- Ruby Application → Unified Client: configures and calls
- Unified Client → Encrypted KV: routes commands
- Unified Client → Encryption Service: routes commands
- Unified Client → Credential Envelopes: routes commands
- Unified Client → Veil Engine: routes commands
- Unified Client → Sentry Engine: routes commands
- Unified Client → Forge Engine: routes commands
- Unified Client → Keep Engine: routes commands
- Unified Client → Courier Engine: routes commands
- Unified Client → Chronicle Engine: routes commands
- Unified Client → Stash Engine: routes commands
- Unified Client → Event Log: routes commands
- Unified Client → HTTP Transport: creates HTTP transport
- Unified Client → RESP3 Transport: creates RESP3 transport
- Encrypted KV → Transport Interface: executes commands
- Encryption Service → Transport Interface: executes commands
- Credential Envelopes → Transport Interface: executes commands
- Veil Engine → Transport Interface: executes commands
- Sentry Engine → Transport Interface: executes commands
- Forge Engine → Transport Interface: executes commands
- Keep Engine → Transport Interface: executes commands
- Courier Engine → Transport Interface: executes commands
- Chronicle Engine → Transport Interface: executes commands
- Stash Engine → Transport Interface: executes commands
- Event Log → Transport Interface: executes commands
- Transport Interface → RESP3 Transport: implemented by
- Transport Interface → HTTP Transport: implemented by
- RESP3 Transport → Connection Pool: uses connections
- HTTP Transport → Moat Gateway: POSTs commands
- RESP3 Transport → Engine Servers: sends RESP3 commands
- Encrypted KV → KV Responses: builds responses
- Encryption Service → Cipher Responses: builds responses
- Credential Envelopes → Sigil Responses: builds responses