Security
Your graph is your business.
Milyoo holds what you and your agents know: people, plans, files and the work in between. Here's how we protect it, as the Service runs today.
Pre-launch version.This page describes how the Service works today and will be reviewed before launch. We hold no security certifications yet, and we'll say so here until we do.
Infrastructure
- The application runs on Vercel's serverless platform in the United States. The database is Neon managed Postgres, and uploaded files are kept in Neon object storage.
- All traffic is served over HTTPS. Our hosting providers encrypt stored data at rest.
- Connection tokens for calendars, Gmail, Google Drive and Outlook are additionally encrypted by our application (AES-256-GCM) before they are stored.
Accounts and access
- Sign in with Google, or with an email and password. Passwords are hashed with scrypt and never stored in readable form.
- Sessions use HTTP-only, SameSite cookies, marked Secure in production.
- Roles set what each person can see and change, down to the record type.
- On Pro, a lock keeps a record private to the person who locked it: the record, and everything linked under it, does not exist for the other person or their agents. Not greyed out, absent.
Agents
- Each agent connects over MCP with its own key or OAuth sign-in, and you can revoke any agent at any time.
- Every change an agent makes passes one commit: matched against what's already there, sourced, and recorded with a receipt that names the agent and the person. Any change can be undone.
- What you drop in is treated as data, never as instructions to your agents.
- Every request has a ceiling on what it may read and send, and each workspace has a monthly data pool and an hourly limit, so a runaway agent can't read without bound.
Wake webhooks
- An agent can ask to be woken at its own web address when something it cares about happens. Each notice is signed with HMAC-SHA256 over a timestamp and the body, and receivers should refuse a timestamp more than five minutes old. The signing secret is shown once, when the webhook is made.
- We only call HTTPS addresses on public hosts, never local or private network addresses. Failed calls are retried with backoff, and a webhook that keeps failing pauses itself.
- An agent with no address gets the same notices in its hosted Wake Inbox, which never leaves the Service.
Audio files
- Audio and video files you drop in are sent from our servers to Deepgram for transcription. Our provider keys never leave our servers.
- Meeting recording and the Mac app are not available yet. This page will describe how they work before they ship.
AI and your data
- We send transcripts and notes to Anthropic only to deliver features you use, such as suggested updates and answers.
- Your workspace is not used to train AI models, and it is not for sale.
Billing and email
- Payments run through Stripe Checkout and Stripe's customer portal. Card details go to Stripe, never to our servers, and Stripe's notices to us are signature-checked.
- Account email (invitations and welcomes) is sent through Resend from mail.consellations.com, with a send-only key.
Vendors
We use a short list of subprocessors. See the current list.
Report a vulnerability
If you believe you've found a security issue, email support@milyoo.ai. Please give us a reasonable time to fix it before any public disclosure. We won't take legal action against good-faith research that respects our users' privacy and data.
Security reviews
Need answers for your own security review, or our data processing addendum? Email support@milyoo.ai.