Security

Your data never leaves
your machines.

Neku carries sealed frames between your hosts and the devices you paired. The relay routes what it cannot read; the account server knows only your plan and your device keys.

End-to-end encrypted Fail-closed approvals No code upload
Architecture

What crosses the wire

Three parties, two of them yours. Each link below is labelled with what actually travels along it.

What crosses the wire: your hosts to the relay to your devices, with the account server off to the side Your hosts seal every frame and send it through the encrypted relay to your paired devices, which decrypt it locally and send back signed decisions. The relay only forwards sealed bytes it cannot open — it sees ciphertext, the destination device, size and time, never code, commands, transcripts or decisions. The account server, off to the side, holds only your sign-in, plan, seats and device public keys, and never receives a frame. metadata Your hosts daemon seals every frame code, transcripts & keys stay here Encrypted relay forwards sealed frames it cannot open them Your devices decrypt locally, you decide approvals signed on device Account server plan · seats · device keys metadata only, no content
Sealed payloads travel host to device and back; the relay only sees ciphertext, the destination device, size and time — never your code, commands, transcripts or decisions. The account server never receives a frame.
  • gold — sealed frames (state, spans, held calls)
  • grey — your signed decisions
  • dashed — sign-in, plan & device public keys (metadata only)

Entitlements gate cloud push fan-out only — the terminal, transcripts, diffs and tunnel approvals keep working offline. An offline device makes no decisions, and held calls keep counting down.

The details

How each part behaves

Keys are made on the device

Pairing generates a keypair on the device. The public half goes to the account server; the private half never leaves. Hosts seal every frame to the keys you paired.

private key never uploaded

What the relay can see

Ciphertext, which device it is for, size and time.

Not your code, commands, diffs or verdicts.

routing metadata only

Approvals fail closed

A held call runs only if you say so. The countdown denies at zero, the circuit breaker opens after repeated denials, and a device that cannot reach the host cannot decide at all. Ed25519-signed on device, verified against a pinned key, each nonce single-use — the cloud can never forge one.

timeout · breaker · offline → deny

Pairing and revocation

A device joins with a short code and a fingerprint you confirm on both ends. Revoke it and hosts stop sealing to that key, so queued frames for it become unreadable.

neku pair · revoke from Account > Devices

Retention is host-side

Session history lives on the host and follows your tier: 7 days on Free, 90 on Pro, 365 on Team. The relay keeps an undelivered frame only until a device picks it up.

7d / 90d / 365d · delete on revoke

Self-host or skip the relay

Point the daemon at a relay you operate, or keep hosts and devices on one network and pair them directly. Approvals still work; push wake-ups need a relay that can reach your device.

[SELF-HOST GUIDE] · air-gapped LAN mode

Report and verify

Responsible disclosure

Found something? Tell us before you tell the internet.

Mail [SECURITY EMAIL] with a description and, if you can, a way to reproduce it. We acknowledge within [RESPONSE TIME] and will credit you in the changelog unless you would rather we did not.

pgp [PGP FINGERPRINT]

please do not test against other people's hosts

Compliance status
  • SOC 2[SOC 2 STATUS]
  • Data processing agreement[DPA ON REQUEST]
  • Third-party penetration test[PEN TEST STATUS]
  • Subprocessor list[SUBPROCESSORS]

We list no certification we do not hold.

Read the threat model, then install it.

The daemon is the only piece that touches your code, and it stays on your machine.

runs on your machines · end-to-end encrypted · timeouts deny