Privacy Policy
Effective August 17, 2026 · Last updated November 14, 2026
Armadai stores your projects, workspace state, and optional session recordings on your Mac. Content used by an agent can be sent to its selected AI provider, and websites and connected services receive the actions you authorize. An Armadai account is required to use Armadai. This policy explains the data handled when you sign in, use agents and optional features, request a download link, use Armadai on iPhone, visit the website, or contact us. Armadai is operated by Dynamic Alpha LLC.
1. Who this covers
This Privacy Policy applies to the Armadai macOS application, the Armadai iPhone app, the armadai.sh website, and the account and licensing services that support them (together, “Armadai”). Armadai is operated by Dynamic Alpha LLC (“Dynamic Alpha,” “we,” “us”), which is responsible for the information described here. It does not cover third-party products you choose to run inside Armadai — such as AI coding agents, websites you browse, or code repositories you connect — which are governed by their own providers’ policies.
2. Information we collect
We deliberately collect as little as possible. The categories below are the whole of it.
Account information
Armadai requires an account. You can sign in with a one-time code sent to your email address, with a password if you set one, or with Apple, Google, or X, and you can connect several of these sign-in methods to the same account. We store your email address, an account identifier, and the authentication state needed to keep you signed in. A password is stored only as a one-way hash, never in readable form. When you use Apple, Google, or X, we also store what that service shares with us: an identifier for your account there and, depending on the service and your choices, your email address (with Sign in with Apple this can be a private relay address from Hide My Email), your name or username, and a link to your profile picture. We use these only to sign you in and show which account you are using.
Subscription & billing
Payments are processed by Stripe. Checkout happens in your web browser, on Stripe’s pages — the app never sees or stores your card number. We receive from Stripe the information needed to manage your subscription (for example, plan, status, trial and renewal dates, and a customer identifier), not your full payment details.
Requested download emails
If you ask us to email a download link, we use your email to send that one message through Resend. This does not create an account or enroll you in marketing. We keep the request, delivery status, campaign tags, and whether its link was opened for 30 days, with daily cleanup. A keyed hash of the requesting IP address is used to limit abuse; the request table does not store the IP address itself.
Jev (optional, Mac)
If you turn on “Use Jev” in the Mac app, Armadai asks TypeSafe’s Jev model quick questions to make decisions faster. Each request passes through our server to TypeSafe, which runs the model. Jev is off unless you turn it on, and while it is off none of the following is sent. With it on, a request can contain:
- while one of your agents operates an app on your computer, the agent’s goal and the text of that app (control names and values), so it can include whatever text is on screen in that app;
- a short message you type to the master agent on the Mac or on your iPhone, to tell whether Armadai can carry it out at once (for example “show the shop workspace”), and, if you choose the master’s “Auto” model, your message to the master, to pick the Claude model that answers it;
- the last lines an agent wrote in its terminal, to read whether its work finished, failed or is waiting for you, or what an unfamiliar screen means;
- an agent’s request for approval (the command or file change it asks to make), to score how risky it is;
- the text of an app’s controls with a purpose, to pick out the ones that matter.
Secrets Armadai recognises (keys, tokens, passwords) are removed from terminal text and approval requests before they are sent. A separate switch, “Let Jev see screenshots”, is also off unless you turn it on. With both on, when an agent needs a control that has no readable name, or asks to tap something in an iOS Simulator tile, a screenshot of that one app window or simulator screen is sent the same way, so Jev can point to the control. It is never a screenshot of Armadai’s own window or of your whole display. We do not log or store the content of any Jev request; we record the number of requests and their size to apply your account’s monthly Jev allowance and limits.
Grok Bots (optional, Mac)
If you connect your own Grok Bot in the Mac app, a message you or one of your agents sends it goes from your Mac to Grok Bot, which Cursor runs for xAI, under their terms. Grok Bot has no way to hand a bot’s answer back directly, so each message carries a one-time link to our server: your bot posts its answer there and your Mac collects it. We keep that answer only until your Mac collects it, and delete it then, or an hour after the message was sent if it is never collected. With it we store your account identifier, the bot’s name and a one-way hash of the link, never the link itself or the message you sent. A bot may also post short progress updates before its answer, which are handled the same way.
If you turn on a bot’s inbox, the bot can also message your Mac on its own through a private link of its own. We keep only a one-way hash of that link, and each message until your Mac collects it, deleting it then, or after seven days if it is never collected. You can replace the link or turn the inbox off at any time, which stops the old link at once.
If you let your bots message each other, a message one bot addresses to another reaches your Mac the same way as its other inbox messages (we also store the name of the bot it is for), and your Mac sends it on to that bot through Grok Bot and hands its answer back to the first. Each bot’s chat in the Mac app (what you, your master, your agents and your other bots sent it, and its answers and messages) is kept only on your Mac. You can delete a chat at any time, and removing a bot deletes its chat.
You can also let your Grok Bots use Armadai on your Mac (see your open projects, start a chat thread and read its answer, or message you): you send a bot Armadai’s address and approve the connection on a page at armadai.sh. Grok Bot’s sign-in comes from Cursor, which runs it, so that page names Cursor. For each connection we keep your account identifier, the name the app gave itself, the site its access goes to, a one-way hash of its key (never the key), and when it was approved and last used. A connection ends after 30 days, or at once when you disconnect it in the Mac app. We also keep the one choice you made for what your bots may do, so that a request it does not allow is refused before it reaches your Mac.
What a connected bot asks of Armadai (which tool it used and what it sent, such as the task for a thread or a message, with the bot’s name if it gave one) waits on our server for your Mac, and your Mac’s answer (such as the names of your open projects, or a thread’s answer) is passed back to the bot. We delete a request and its answer as soon as it is answered, or as soon as your Mac has not answered in time. Two kinds wait longer when your Mac is off: a request to start a thread and a message for you wait up to seven days for your Mac, and are deleted when it collects them. For a thread a bot started we keep, for one day, the bot’s own reference for that request (not the task), so that a repeated request does not start a second thread. These requests reach our server through Cloudflare, which forwards them and keeps none of their content.
On a Mac, that approval page asks the Armadai app who you are, so you do not sign in again: the app opens the page with a one-time pass for that one approval, which we sign and do not store. If you sign in on the page with an emailed code instead, the page remembers your email address in that browser only, so it is filled in next time.
Support communications
If you email us, we keep your message and contact details to respond and to improve the product.
Website & app operational data
Our website host and backend keep standard technical logs (such as IP address and request metadata) to operate the service securely and prevent abuse. The app contacts our servers to check for product updates, to authenticate your account, and to check your plan entitlement.
Armadai on iPhone
If you use Armadai on iPhone (Armadai Remote), we keep a registry of your linked devices, push tokens for your iPhones, encrypted status for widgets and Live Activities, and relay connection metadata. Section 6 describes exactly what that includes.
3. What stays on your device
The core of Armadai runs entirely on your Mac. The following never leave your device through Armadai, and we cannot see them:
- Your code & projects
- Files you open, edit, or build stay in your local file system. When you first set up Armadai, it suggests recent projects from the folders your Claude Code and Codex sessions ran in, reading only each session’s recorded folder from ~/.claude and ~/.codex on your Mac; nothing from those sessions is sent anywhere.
- Terminals & agents
- Terminal output and agent sessions run locally. Anything sent to an AI provider is sent by that agent’s own tool, under its own policy — not by Armadai. If you use Cursor, it also reads your Claude Code setup on your Mac (its settings, hooks, permission rules, plugins, skills and CLAUDE.md files in ~/.claude) and registers your Claude Code plugin marketplaces with your Cursor account. Cursor does this itself, in Armadai as in any terminal, and it has no setting to turn it off. When you hand a chat to another agent, switch it to another agent’s model or continue a canvas agent’s conversation in chat, the conversation so far goes to that agent, and through it to that agent’s AI provider; a handoff to a terminal agent is saved as a file in the project’s .armadai/handoffs folder on your Mac. Continuing in chat reads that agent’s own conversation record on your Mac (in ~/.claude, ~/.codex, ~/.grok or ~/.cursor). Agents in a workspace can also read that workspace’s chat threads through Armadai’s chat_thread_read tool, so a chat’s messages can reach the AI provider of the agent that reads them.
- Session recordings
- Off by default. When enabled, recordings are stored only on your Mac (see below).
- Browsing
- Browser tiles keep cookies, history, and site data locally in the app’s storage.
- Workspace state
- Your canvas layout, notes, and task boards are saved locally.
- Agent Activity
- Working-time tracking stores timing and provider, app, project, session and task metadata on your Mac. Tracking, supported external-agent observation and background observation start on; you can turn each off, exclude apps or folders, or clear history in Agent Activity. The observer does not retain prompts, terminal output, credentials or screenshots. It reads bounded local status events and, when macOS Accessibility permission is already granted, recognized app status controls. Background observation requires macOS permission and does not keep agents or your Mac awake. Detailed records are kept for ninety days, then reduced to daily totals until cleared. The tracker does not upload history to Armadai; a summary requested through your master agent can be included in that agent’s selected AI provider conversation.
- Password Manager
- Logins, cards, secure notes, and authenticator secrets you save are encrypted on your Mac. Your vault password unlocks the vault; optional Touch ID uses a Secure Enclave key and an encrypted envelope in this Mac’s Keychain. Separately enabled unattended login access keeps the selected login’s automation key in the local Keychain. Importing from Chrome reads saved passwords and available card data already on this Mac. Protected filling sends credentials directly to the authorized website, without including passwords or authenticator codes in the agent’s conversation. The destination is restricted to the item’s approved websites unless you explicitly let agents choose websites. Item summaries are visible to authorized agents, and note content reaches their AI provider only if you enable “Share note content with agents.” Vault files are not uploaded to Armadai’s servers. Recovery-kit and backup files you export are saved to the location you choose.
- Agent accounts & API keys
- Extra Claude Code, Codex or Grok logins sign in through those tools’ own sign-in, and Armadai never reads their credentials. Cursor keeps one sign-in per Mac user, so extra Cursor accounts are API keys. API keys you add are kept in your Mac’s Keychain and given only to that provider’s tool; “Test” sends a key only to its own provider. Usage limits are read on your Mac through Claude Code, Codex and Grok; Cursor doesn’t report its usage to other apps.
- Armadai for Chrome
- If you install and connect the extension, authorized agents can open or use assigned Chrome tabs with that profile’s existing sign-ins. The extension sends tab titles and URLs, page text and controls, requested screenshots, and browser action results over a local connection to the Mac app. Relevant observations and action results can be included in the selected agent provider’s conversation; computer-use approval review and optional Jev screenshot review follow the settings described in this policy. The extension has no separate cloud service or advertising analytics.
- Screen recordings
- An agent that you allow to use the computer can record one app’s window, or a whole display, to a movie file. Recordings are saved on your Mac, in Movies › Armadai Recordings, and Armadai never uploads them. While anything is being recorded, Armadai’s sidebar shows who is recording and what, with Stop, and macOS shows its own screen-recording indicator. A recording ends and is saved when the agent’s use of the computer ends. The agent receives the file’s location, not the pictures, but it can open its own recording with the tools it has, so anything it reads from one can be included in that agent provider’s conversation.
- Agents outside Armadai
- Off unless you turn it on. When on, an agent you start yourself in another terminal can ask to use Armadai’s computer use, Chrome extension and saved logins through a helper on your Mac. Armadai identifies the program asking from what macOS reports about it, asks you before a new one may act, and keeps your choices in this Mac’s Keychain. A separate switch, also off by default, lets an agent you have let in send instructions to your master agent. None of this is sent to Armadai; what those agents read or do goes to the provider of the agent you started.
4. How we use information
We use the limited information we collect to:
- sign you in and keep your session secure;
- create and manage your subscription, trial, and renewals;
- send a download link you request and provide customer support;
- run Armadai on iPhone — keep your device list, route encrypted messages between your devices, deliver encrypted widget and Live Activity status, and send content-free alerts;
- run Jev when you turn it on, and apply its monthly allowance;
- measure aggregate website visits, demo plays, download starts, and verified signups to improve the download experience;
- operate, secure, and improve the service and prevent fraud or abuse;
- comply with legal obligations.
We do not sell your personal information. When you allow optional website measurement, X receives website-event and browser information to help attribute visits and downloads to ads. Email addresses and app workspace content are not sent to X.
5. Session recording
Armadai can record a terminal’s output so a work session can be turned into a provenance record. This feature is off by default and asks for your consent the first time. When it is on:
- only terminal output is saved — never the keystrokes you type;
- recordings are written only to your Mac, in a private folder, and are never uploaded by Armadai;
- you can turn recording on or off at any time, and delete, export, or set automatic retention and disk limits from Settings.
Because terminal output can include commands, file paths, and secrets printed to the screen, you control whether it is captured and how long it is kept.
6. Armadai on iPhone
Armadai on iPhone (also called Armadai Remote) is an optional app that lets you send requests to the master agent on your Mac, see what your agents are doing, and answer agent approvals. Remote is off by default on each Mac, and answering approvals from iPhone is a separate setting you turn on. You sign in with the same Armadai account you use on your Mac. To make it work we handle the following:
- Device registry
- For each Mac and iPhone you use with Remote: the device name you see in the app, its kind (Mac or iPhone), its operating-system and app versions, its public encryption key, when it was added and last seen, when it was revoked (if ever), and which of your Macs approved a linked iPhone. Private keys are created and kept on each device and never reach us.
- Push tokens
- An Apple push notification token for each iPhone, stored only so we can send content-free alerts: “An agent needs approval.” and, when your Mac invites the phone to link, “Your Mac is ready to link.” Alerts never include agent, project, command, or message content. A phone’s push token is deleted when you revoke that phone or delete your account.
- Widgets & Live Activities
- If you use the Workspace Overview widget or follow work in the Dynamic Island and on the Lock Screen, we store the push tokens Apple issues for them and the latest status snapshot from your Mac. The snapshot is encrypted on your Mac with a key only your iPhone and that Mac hold; we store and forward it but cannot read it. You can turn off the Dynamic Island and Lock Screen activity in the app’s Account screen. A revoked iPhone’s widget and Live Activity tokens stop working at once and are deleted when they expire or when you delete your account.
- Relay metadata
- Your Mac and iPhone connect to our relay, which forwards messages between them. The relay sees which of your devices are connected, connection times, and the size and timing of messages, so it can route and rate-limit traffic. It does not see message content.
- TestFlight beta
- If you join the beta through Apple’s TestFlight, Apple shares with us crash reports, install and session counts, your device model and iOS version, and any feedback or screenshots you choose to send. Apple may also show us the name and email address you use with TestFlight. Apple’s own TestFlight terms cover what Apple collects.
- Jev usage
- The app shows the share of your account’s monthly Jev allowance that has been used, read from our server. It is never shown in dollars.
Messages between your iPhone and your Mac — your requests, the master’s replies, agent activity, and approval details — are end-to-end encrypted on your devices (X25519 key agreement with ChaCha20-Poly1305). Armadai’s servers, our relay, and Apple’s push service cannot read them, and the relay does not log message payloads. A phone can talk only to the master and your Mac’s scheduled tasks; Remote provides no shell, no access to your Mac’s files, and no Environment Vault access. Photos and files you choose to attach are the one thing a phone can put on your Mac (see below).
Your master agent and AI providers
On your Mac, the master agent reads what you send from your iPhone and acts on it. The master runs an AI coding tool you install and sign in to yourself — Claude Code, Codex, Grok or Cursor — so your messages, voice transcripts, scheduled-task instructions, and the photos and files you attach are sent by that tool to its provider, Anthropic, OpenAI, xAI or Anysphere (Anysphere, Inc., which makes Cursor and runs the model you choose in it), under that provider’s terms and privacy policy, not this one. The same goes for a message you send from your iPhone to an agent running on your Mac. The app asks for your permission before your first message is sent, and asks again before your next one when a provider is added to that list, and you can withdraw it at any time in the app’s Account screen (“Send messages to my master”). With it off, you can still follow your agents and answer approvals.
Voice
The microphone is used only while you hold the mic button. Apple’s speech recognition turns what you say into text: on your iPhone when its on-device model is available, and otherwise through Apple’s speech service, under Apple’s privacy policy. Audio is never sent to us or to your Mac; the resulting text is sent to your Mac like a typed message.
Photos and files you attach
With Armadai for Mac 1.6 or later, the + button next to the message field lets you attach photos (from your photo library or the camera) or files to a message for the master. Only what you pick is sent. Before a photo leaves your iPhone it is made smaller and its location and other details are removed. Attached photos and files travel end-to-end encrypted to your Mac, which keeps them in the master’s folder there and gives them to the master with your message; the master’s tool then sends them to its provider, as described above. They are never stored on our servers. A file you attach but don’t send is deleted from your Mac after 30 minutes, or when you revoke the phone. Choosing photos or files doesn’t give the app access to your whole library, and the camera is used only when you choose Take Photo. The app asks for your permission before your first photo or file is sent.
Texting a photo or video
If you ask the master to text someone, your iPhone shows the request and you choose what to do. When a photo or video is needed, the app finds it in your photo library (with your permission) or lets you pick it, and opens Messages with it attached for you to send yourself. The photo or video stays on your iPhone; only the outcome (sent, cancelled, or not possible) is sent to your Mac.
Linking, revoking, and deleting
You can revoke any linked iPhone from your Mac (Settings → Remote → Linked iPhones) or from the phone. Revoking disconnects the device, prevents it from reconnecting, and deletes its notification push token. Signing out of Armadai on your Mac also revokes its Remote links. You can delete your account from the iPhone app (Account → Delete account); if you signed in with Apple, deleting your account also revokes Armadai’s access to your Apple sign-in. There are no purchases in the iPhone app.
7. Third-party services
We rely on a small number of providers to run Armadai. They process data only as needed to provide their service:
- Stripe — payment processing and subscription management.
- Supabase — authentication, subscription-entitlement, Jev allowance, Grok Bot answers and requests on their way to and from your Mac, your Grok Bot connections, and Armadai on iPhone device-registry backend.
- Vercel and Cloudflare — website hosting, cookieless page-view analytics (Vercel), and installer delivery; Cloudflare also runs the Armadai Remote relay, which forwards end-to-end encrypted messages it cannot read.
- Apple — Sign in with Apple, if you choose it; the Apple Push Notification service, which delivers content-free alerts and encrypted widget and Live Activity status to your iPhone; and speech recognition, as described in section 6.
- Google and X — sign-in, if you choose them.
- TypeSafe — runs the Jev model, only when you turn on “Use Jev” in the Mac app (and receives screenshots only when you also turn on “Let Jev see screenshots”).
- Resend — delivery of requested emails.
- X — optional website advertising measurement, only with your permission.
Products you choose to use inside Armadai — for example AI agents (such as Claude Code, Codex, Grok or Cursor, which send what you ask them, including requests from your iPhone, to Anthropic, OpenAI, xAI or Anysphere, Inc.), a Grok Bot you connect (which Cursor runs for xAI), a code host you connect to publish a pull request, or websites you browse — send data according to their terms and privacy policies, not this one. Armadai facilitates those tools locally but is not their operator.
8. Cookies & analytics
We count website visits, demo plays, and download starts by date, device category, button, and campaign tags. These first-party aggregate counters do not store IP addresses, email addresses, browser fingerprints, or cross-visit user identifiers. A random event ID prevents counting the same event twice and is deleted after seven days. Campaign tags may be kept in your browser’s session storage for 30 minutes to connect a visit with its download button.
We also compare introductions to Armadai: a quick overview, a detailed walkthrough, and a page that lets you choose. A first-party cookie remembers only your assigned group for 30 days; its value is shared by everyone in that group and does not identify you. A separate, signed first-party cookie identifies a single 30-minute browsing visit so that returning to a page, choosing an introduction, downloading, or requesting a download email does not count the same visit twice. The cookie expires after 30 minutes. The temporary visit record and its random ID are deleted after seven days; aggregate counts by group, displayed version, device category, and campaign remain. These records are not connected to your email, account, other visits, or other websites. This comparison is disabled for browsers sending Do Not Track or Global Privacy Control signals.
We also use Vercel Web Analytics to see which pages are read and which sites send visitors. It sets no cookies. Visits are counted with a short-lived anonymous value that is discarded after a day, so it cannot follow you from one day to the next or across other sites. It records the page address, the referring site, and the country, browser, operating system, and device type. On the homepage it also records which introduction you were shown. Across the site it counts a few actions: selecting a download button, requesting a download email, choosing an introduction, how far a page was scrolled, which sections came into view, starting a video, and opening a question. These counts never include your email address or anything you type. It is not loaded if your browser sends a Do Not Track or Global Privacy Control signal.
Optional X measurement is off until you select “Allow measurement.” X may then use cookies or similar browser identifiers to associate website visits and actions with ads, under X’s privacy policy. We do not send email addresses or app data to X. We respect Global Privacy Control signals by not loading X measurement. You can change your choice using “Privacy choices” on the homepage. Your choice is saved in local storage; required authentication and billing storage is separate.
Download-email requests can be matched to subsequently verified accounts with the same email for internal campaign reporting. Other signups remain unattributed. Campaign attribution is retained with the account until that account is deleted; the original email request is still removed after 30 days. These account-level matches are not sent to X.
9. Data retention
We keep account and subscription information for as long as your account is active and as needed to provide the service, meet legal and accounting obligations, and resolve disputes. Download-email requests and abuse-prevention hashes are removed by a daily cleanup after 30 days. Event deduplication IDs are removed by a daily cleanup after seven days. Aggregate totals may be retained without the underlying identifiers. Armadai on iPhone device records are kept while your account exists so you can see and manage your devices; a revoked device’s record is kept, marked as revoked, and its push token is deleted at once. Encrypted widget and Live Activity status is replaced by each update and expires on its own. A Grok Bot’s answer is deleted when your Mac collects it, or an hour after its message was sent; its updates and its inbox messages are deleted when your Mac collects them, or after seven days. A connected Grok Bot’s request is deleted when it is answered, or after seven days if it waits for a Mac that is off; a connection’s record (never its key) is kept, marked as ended once it ends, and deleted with your account. Relay connection metadata is kept only in short-lived operational logs. All Remote device records and push tokens are deleted when you delete your account. Operational logs are kept for a limited period. Local data on your device — including recordings — is retained under your control and removed when you delete it or per the limits you set.
10. Your rights & choices
Depending on where you live, you may have the right to access, correct, export, or delete your personal information, and to object to or restrict certain processing. You can:
- manage or cancel your subscription through the customer portal;
- sign out to remove your stored credentials from your device;
- revoke any Armadai on iPhone device from your Mac or iPhone;
- withdraw permission to send messages to your master agent, in the iPhone app’s Account screen;
- delete your account from within the Mac app or the iPhone app — this deletes your account, your Remote device records, and your push tokens, cancels your subscription, and, if you signed in with Apple, revokes Armadai’s access to your Apple sign-in;
- delete local data — recordings, browser data, and workspace state — from within the app;
- contact us to request access to or deletion of the account data we hold.
We will respond to verified requests as required by applicable law. We will not discriminate against you for exercising these rights.
11. Security
We use reasonable technical and organizational measures to protect your data, including encrypted transport, scoped credentials, and local files written with restrictive permissions. No system is perfectly secure, but we design Armadai to keep the most sensitive material — your code and terminal activity — on your device rather than on our servers.
12. Children
Armadai is intended for professional developers and is not directed to children. We do not knowingly collect personal information from anyone under 16. If you believe a child has provided us personal information, please contact us and we will delete it.
13. Changes to this policy
We may update this policy as Armadai evolves. When we make material changes, we will update the “Last updated” date above and, where appropriate, notify you. Your continued use of Armadai after an update means you accept the revised policy.
14. Contact us
Armadai is operated by Dynamic Alpha LLC, 1606 S Carter Pl, Sioux Falls, SD 57105-2019, United States.
Questions about privacy, or a request about your data? Email privacy@armadai.sh. For general support, support@armadai.sh.