Case study · Built 2026 for a managed IT provider

The meetings were recorded. Nobody could find them.

Our technicians record every client visit and call. The recordings were good, and then they sat in a dozen private accounts, never reaching the client record where the work happens.

The real app on invented demo data: the inbox, a filed meeting, the "Needs filing" queue and the admin lock. About 90 seconds, no sound.

The problem

The recorder's shared team folder has no permissions: put a recording there and everyone sees it. So people kept their recordings private, and nothing was ever shared. There was also no route from the recorder into our PSA, where clients, tickets and contacts live.

Three rules we wouldn't break

  1. A personal recording is never pulled in. Only titles are read until the owner confirms. Personal-sounding titles are never pre-ticked.
  2. Nothing goes to AI before the owner says yes. The first sort happens on our own server.
  3. A miss is a 404, not a 403. Someone without access can't even tell a recording exists.

What's inside

AI filing, checked

The model may only pick clients and contacts that already exist in the PSA. Anything unsure goes to a "Needs filing" queue.

Encrypted at rest

Text and audio sealed with AES-256, one derived key per purpose; audio in chunks so playback can seek.

Self-hosted

One small server behind a zero-trust sign-in, no open ports, nightly encrypted backups.

Where it stands

Built with

Node · SQLite · Docker · Cloudflare Tunnel and Access · Anthropic API · 338 automated tests

Have the same problem at your firm?

We're looking for a few founding firms.

Use it at your firm →