SpanDock security whitepaper
Last updated: 12 October 2026
1. Summary
SpanDock is a self-hosted observability hub for AI coding tools. Customers run hubs/servers on their own machines or private networks. Telemetry stays customer-side. spandock.com provides accounts, licensing, and billing (hosted on Vercel). This paper describes trust boundaries, encryption, licensing modes (including air-gap), and what security programmes we are building—without inventing attestations.
For your security and legal teams: SpanDock for security and legal teams (PDF, 2 pages) covers the controls, the evidence and privacy in one document to share. For a general introduction: SpanDock at a glance (PDF, 2 pages).
2. Trust boundaries
| Zone | Who controls | What lives there |
|---|---|---|
| Customer data plane | Customer | Telemetry DB, dashboards (localhost), WireGuard fabric, destination forwarders, optional Work insights |
| Customer destinations | Customer + their vendors | Langfuse, Grafana, New Relic, OTLP, model APIs the customer configures |
| SpanDock control plane | Nolatech Ltd | spandock.com accounts, license API, billing metadata via Stripe |
Implication for audits: SOC 2 (when completed) is expected to describe the control plane, not the contents of customers’ telemetry stores.
3. Network architecture
- Default path: Clients ↔ servers over WireGuard (no account required on the tunnel; no open ports by design).
- Optional: Public HTTPS endpoint with server-managed certificates.
- Dashboard: Binds to
127.0.0.1by default; use SSH tunnel or approved remote patterns for access. - Tunnel scope: Telemetry ingest, health, and client-scoped routes—not full admin/SQL/assistant surfaces (see
/docs/privacy). - Management: Approved client plus management token for remote management; sensitive actions remain on-box.
- Layered isolation over shared relays: relay admission, the server's tunnel address and pre-shared key, WireGuard and the client token are independent checks. Can this client reach this server? walks through them hop by hop.
4. Data categories
| Category | Leaves customer network? |
|---|---|
| Traces / metrics / cost / session telemetry | Only to customer-configured destinations |
| Prompts / tool payloads | Local; redacted by default in tool profiles; Work insights on-box if enabled |
| License check metadata | Yes → spandock.com (online licenses only) |
| Server notifications | Only if an administrator connects them → spandock.com: event kind, server and computer names, counts. Never telemetry |
| Account / billing | Yes → spandock.com / Stripe (payments for Nolatech Ltd) |
| Update metadata | Yes → GitHub releases (app egress) |
| Model price list | Yes → OpenRouter public list (app egress) |
| Public IP display helper | Optional lookup ~10 minutes (app egress) |
5. Controls over AI tools
These run on the customer's servers and computers. Rules are set on the server and reach every computer within a minute.
| Control | What it does | Plan |
|---|---|---|
| Redaction at the source | Tool profiles keep prompt and tool contents out of telemetry before anything is stored or forwarded | Every plan |
| MCP gateway | One MCP server for every computer's AI tools. Connectors start read-only; destructive tools need approval; permissions per person, group, tag or user type; block, read-only, approval and redact rules. Connector credentials stay on the server | Premium, Enterprise |
| Guardrails on computers | Secrets, email addresses, phone numbers, card numbers, IBANs, national IDs, word lists and custom patterns, in prompts and tool calls: block, warn, confirm or redact. Matching runs on the computer; events record the rule and outcome, never the text | Enterprise |
| Just-in-time access | No standing write access to sensitive connectors: time-limited grants with a reason, a ticket and a named approver; no self-approval | Enterprise |
| Process inventory | Optional snapshots of the AI tools (or all processes) running on each computer. Never command-line arguments, environment variables, window titles or open files. The person sees a notice | Enterprise |
| Audit log and change management | Administrative changes (field names, never values), and reports of what changed through AI tools, who approved it and the ticket | Enterprise |
These records help you produce evidence for your own audits. They don't make you compliant on their own. Details: MCP gateway, Guardrails on computers, Process inventory.
6. Licensing and air-gap
- Online license (default): Activate via spandock.com; periodic checks; 14-day grace if unreachable.
- Enterprise offline license: Import license file; suitable for true air-gap.
- Checks never include telemetry bodies—see
/docs/licensingfor the JSON shape.
Engineering maintains a verification checklist (packet capture, offline import, WireGuard exposure tests). Customers evaluating air-gap should request the latest summary under NDA if needed.
7. Cryptography and secrets (high level)
- WireGuard between agents; HTTPS to optional public endpoint and to spandock.com.
- Ed25519-signed licenses; offline verification of license material.
- OS credential stores for secrets; hashed client/management/API tokens; satellite secrets encrypted in transit to the edge, plaintext only in memory.
- Customer disk encryption recommended for data at rest.
Exact cipher suites follow platform defaults and change with them. Ask us under NDA for the current build’s details.
8. Identity on spandock.com
Email OTP (via Resend), passkeys, Google/GitHub sign-in, optional password; user-optional MFA (passkey or TOTP + backup codes). Staff console: MFA required. Enterprise SSO (OIDC/SAML) to the server dashboard: roadmap per /trust.
Support: support@spandock.com and on-site Spander chat (first-party).
9. Vulnerability management
- Report: security@spandock.com
- Good-faith research: Acceptable Use
- Independent pen test: planned; public letter of attestation after high findings fixed; full report under NDA
- Paid bug bounty: not currently offered
10. Compliance roadmap (honest)
| Programme | Intent |
|---|---|
| Pen test + letter | Near-term credibility |
| SOC 2 Type I → Type II (Security) | Enterprise unblocker; report NDA-gated |
| CSA STAR Level 1 | Free registry self-assessment |
| GDPR operational | Policies, DPA request path, cookies, DSARs—not a badge |
| HIPAA | Only if PHI; default N/A |
We do not display certification logos until earned under the issuer’s rules. We do not buy badge-mill seals.
Control-plane subprocessors: Subprocessors (Vercel, Stripe, Resend, PostHog, Vercel Analytics).
11. Customer responsibilities
- Harden hosts, patch OS, disk encryption, access control.
- Lawful basis and notice for monitoring employees.
- Choose and contract destinations/model providers.
- Decide online vs Enterprise offline licensing for network policy.
- Protect license keys/files.
12. Contact
- Security: security@spandock.com
- Privacy / DPA: privacy@spandock.com
- Sales / Enterprise offline: sales@spandock.com
- Support: support@spandock.com · on-site Spander chat
Document version: 2026-10-12 · Align with product docs when behavior changes.
Controller: Nolatech Ltd, Cyprus