Privacy Policy
This policy explains how Hermes Conduit handles information in the iPhone, iPad and Apple Watch apps (including CarPlay, widgets, Live Activities, Shortcuts and the share extension), the optional Hermes Conduit Notifier plugin that runs on your Hermes host, and the optional Conduit push relay used to deliver Apple Push Notification service (APNs) notifications, calls and Apple Watch traffic.
Summary
- Conduit has no advertising SDKs, third-party analytics or crash-reporting SDKs, and no cross-app tracking. Its developer does not receive your conversations, voice, health, location, calendar or contacts. A crash or freeze report, or a chat trace, reaches the developer only when you tap Send.
- Your conversations, attachments, settings and credentials go to the Hermes dashboard and gateway that you configure, not to a hosted Hermes service operated by Conduit.
- Live voice calls send your voice and some conversation context to the voice provider you choose (Google, OpenAI, xAI or Alibaba Cloud), or to your own speech server. Classic voice can stay on your device, or use Apple's speech recognition, your Hermes host's speech engine (and the provider it uses) or your own speech server.
- The optional push relay processes only what it needs to pair your host and deliver notifications, calls, Lock Screen progress and Apple Watch traffic. With end-to-end encryption on, it can't read notification content, clarify answers, Watch audio or Watch tool results.
- Optional Apple Health, location, calendar, reminders, phone status, contacts and alarms sharing goes from your device directly to your own Hermes host, encrypted end to end, and never through the relay or any server operated by Conduit.
- Personal information is not sold.
Information stored on your device
Conduit stores on your device the dashboard addresses you add, dashboard session information, app preferences, notification and call registration credentials, end-to-end encryption keys, profile pictures, your Chats lists and recent conversations (so the app opens straight to them while it connects), messages waiting to be sent, items you shared into Conduit that haven't been sent yet, and cached attachments. Credentials and keys are kept in the iOS Keychain, available to this device only after it is first unlocked. Optional Face ID or Touch ID protects saved credentials; the check happens in iOS and Conduit never receives biometric data. Each dashboard's saved chats remain until you sign out of it, remove it, or use Delete saved chats in Settings.
Diagnostic information Conduit keeps, such as voice call timelines, the Apple Watch call log, chat traces and device reports iOS provides to the app, stays on your device. It leaves your device only if you copy or share it yourself, or send a crash or freeze report or a chat trace as described below. In Conduit's system logs, web addresses are replaced with a placeholder.
After Conduit crashes or freezes, iOS gives it a report about what happened, and Conduit asks you once whether to send it to its developer. Only if you tap Send does it go, over HTTPS to the developer's Conduit relay, even if you run your own relay for notifications. A report holds the app's call stacks and exception and termination codes as iOS wrote them, Conduit's version and build, the iOS version and the device model. It holds no messages, voice, file names or account details, and is not linked to your notification registration. A report can include Conduit's chat trace: what the chat screen did just before, such as scrolling, rows arriving, sizes and timings, with no message text, titles or file names. You can also send a chat trace on its own from Settings > Connection > Diagnostics & logs, for example after a chat jumps or stops responding; it goes the same way and is kept the same way. The relay keeps reports for at most 90 days; only the developer can read them, to find and fix the fault. Your IP address is used only for rate limits, as for other relay requests.
Your Hermes dashboard and gateway
When you sign in, send a message, load a chat, change a model or setting, run a command, upload an attachment or profile picture, or use Shortcuts, widgets, Siri, CarPlay or Ask Hermes about my screen, Conduit communicates with the dashboard and gateway that you configured. Sign-in uses your dashboard's own login, including any single sign-on provider it offers, in a Safari window. The operator of that Hermes installation (you, or a host such as a hosted Hermes service) controls the storage, processing, retention and security of that data, including saved voice call transcripts. Your Hermes agent sends what it works on to the AI model provider it is configured to use, under that provider's terms. If you use Pulse, a follow-up on something said in a chat can search the web through the search provider your Hermes agent uses, under that provider's terms: at most 10 searches a day, never with a web address in them. If you connect to a gateway operated by someone else, their privacy terms also apply.
Voice
Conduit uses the microphone only while you use voice, a voice call or a wake phrase you turned on in the app.
- Wake phrases are recognized on your device.
- Classic voice and dictation turn speech into text with the engine you pick: on your device; Apple's speech recognition, which may use Apple's servers for languages your device can't recognize offline; your Hermes host's speech-to-text; or your own speech server through your Hermes host. Replies and Read Aloud are spoken on your device, by your Hermes host's text-to-speech, or by your own speech server through your host. What your Hermes host uses for speech is set on that host, and its provider's terms apply.
- Live voice calls stream your voice to the voice provider of the mode you choose, which also receives what the voice model needs to talk with you: instructions that can include your Hermes agent's personality and memory, the title and recent replies of the chat you call from, a summary and recent turns of an earlier call you resume, notes on recent typed turns, and the results of lookups and tools it asks for. With Gemini Live your device connects to Google directly with a single-use token from your Hermes host, and quick questions may use Google Search. With Qwen Live your device connects to Alibaba Cloud (DashScope) directly with a short-lived temporary key from your Hermes host. With GPT-Live your host starts the session with its own OpenAI or ChatGPT sign-in and your device then sends audio to OpenAI directly. With Grok Live your device connects only to your host, which connects to xAI. With Local Live your device connects only to your host, which connects to the speech server and model you configured. Providers you reach directly also see your device's IP address. Their privacy terms apply to what they receive. Provider keys and sign-ins stay on your Hermes host.
- Call transcripts are saved as chats on your Hermes host when the call ends, unless you turn that off.
- The Apple Watch app talks to your iPhone, and when your iPhone is out of reach it uses the push relay. Gemini Live on the Watch connects to Google directly, and Qwen Live to Alibaba Cloud directly. GPT-Live, Grok Live and Local Live calls on the Watch stream audio between the Watch and your Hermes host through the relay, and the Watch's lookups and jobs travel the same way; all of it is encrypted end to end with a key for that call, so the relay can neither read nor change it.
- CarPlay uses the same voice modes as your iPhone.
Optional push notifications, calls and Lock Screen progress
If you enable notifications, Conduit sends the following information to the Conduit notification relay:
- Your APNs device token and, for the features you use, your iPhone and Apple Watch call (VoIP) tokens, location request token and Live Activity tokens, plus a randomly generated installation identifier. To prove the device token is yours, the relay sends your device a one-time code through APNs that your device returns when it registers.
- Notification preferences, such as enabled event categories, sound, and preview settings.
- A gateway display name, plugin version and randomly generated, revocable pairing credentials.
- For notification delivery: event type, event identifier, session identifier, profile name, gateway identifier, how much a Pulse notification, or one Hermes marked quiet, may interrupt (passive, active or time-sensitive), an opaque hash naming the earlier notification it replaces (a scheduled job's, or one Hermes keyed), and limited notification title and body text supplied by your gateway. This text can reach the relay even when notification previews are disabled, unless end-to-end encryption is on for that pairing (see below). A Pulse notification about someone's birthday or anniversary, or about a gift, a surprise, health or money, carries only “Pulse has something for you.” in place of its words unless you turn off Hide private reminders on the Lock Screen in Settings > Pulse (while Pulse can't read its own records, it hides them whatever that setting says), so its words never reach the relay or Apple.
- For approval and clarify cards: the routing identifier (the session identifier used as an approval session key, or a clarify request ID), approval description or clarify questions, available choice labels, and, for clarify responses, the answers you submit.
- For calls from Hermes: a call identifier, the kind of call and the related session identifiers, and, with previews on, the call's title and reason; and when a call stops ringing, how it ended. For a call answered on your Apple Watch that stays on your iPhone's headset, whether it is muted or ended, and which device said so. Your device shows the caller name from your profile.
- For room invites from people you've linked: the identifiers of the link and the room, which take a tapped notification to the invite, and the room's name and who invited you. For a reply, a failed turn, a finished background task or an approval in a group room your own Hermes hosts: the room's identifier, which takes a tapped notification to the room.
- For Lock Screen and Dynamic Island progress while a turn runs: the turn's phase (such as thinking or running a tool), a general tool category from a fixed list, the number of tools used and how full the context is. The chat's title stays on your device.
- Basic request metadata used for security, rate limiting, diagnostics, and abuse prevention, such as request path, response status and time. The relay uses your IP address to apply rate limits and does not write it to its logs or saved state.
Notification previews control the title and body shown in the APNs alert, and Chat names shows the chat's title and profile without the reply's text; they do not control what the plugin sends to the relay. Decision cards have a separate preference, enabled by default, that controls structured decision content in the APNs payload. Turning off previews or decision cards does not prevent that content from reaching the relay.
To limit content before it leaves your Hermes gateway, enable the plugin's profile-specific redaction setting with hermes conduit-push redact on. Redaction removes notification title and body text, removes the tool category from Lock Screen progress, and replaces approval descriptions and clarify questions with generic text. Routing identifiers still reach the relay. Choice labels also remain for both card types: approval labels are limited to the fixed once, session, always, and deny vocabulary, while clarify labels remain as supplied. Answers you submit for clarify cards are sent to the relay for the gateway to retrieve, even when redaction is enabled.
When end-to-end encryption is on for a pairing (Conduit turns it on by itself with Hermes Conduit Notifier 0.5 or later), Conduit creates a secret for that pairing on your device and sends it to your Hermes gateway over your own dashboard connection, never through the relay. The plugin then encrypts notification titles, bodies, session identifiers, profile names, decision content, call details, a room invite's name and sender, and the room a turn's notification opens with it, and your device encrypts clarify answers. A notification that can't be encrypted goes out without its content, keeping only the identifiers that route it, a room's among them. The relay and Apple can't read that content; they still process the event type, opaque identifiers, a keyed thread token, timing, size and how much a Pulse notification, or one Hermes marked quiet, may interrupt. A pairing that has turned on encryption does not send unencrypted content again. Lock Screen progress and the notice that a call stopped ringing are not encrypted and carry only the information listed above.
The relay uses this information solely to authenticate paired installations, enforce notification preferences, prevent duplicate delivery, relay clarify answers and Apple Watch traffic to your gateway, troubleshoot failures, and send notifications, calls and Live Activity updates through APNs. Apple processes the device tokens and notification payloads under Apple's applicable privacy terms.
Optional Apple Health sharing
Conduit can share Apple Health data with your Hermes gateway so your agent can read it. It is off until you turn it on, and you choose the categories (activity, heart, sleep, workouts, body measurements, vitals, fitness) and how far back to share. Conduit reads Health data only with your permission in the system Health prompt and never writes to Health.
- Health data goes from your device directly to the Hermes gateway you configured, over your dashboard connection. It never passes through the Conduit notification relay or any server operated by Conduit, and Conduit's developer never receives it.
- Conduit encrypts every upload end to end with a key that your device and your gateway agree on, in addition to any HTTPS, so it can only be read on your gateway.
- By default Conduit shares hourly and daily totals, nightly sleep summaries, sleep stages and workouts. Individual readings are shared only for categories where you turn on detailed readings.
- Your agent can read this data when it answers you, which means it is sent to the AI model provider your Hermes agent uses (and, for a hosted agent, to its host). Their privacy terms apply to what they receive.
- If you also let a voice mode read your health data in Conduit's Settings > Health, a live voice call in that mode can read it too: your device fetches it from your gateway, encrypted end to end, and passes what the voice model asked for to that voice provider. Their privacy terms apply. This is off by default and separate from sharing with your agent.
- Health data is not used for advertising, marketing or data mining, is not sold, and is not stored in iCloud. Conduit keeps only sync progress on your device, excluded from backups.
- You can turn sharing off at any time and delete the copy on your gateway from Conduit's Health settings.
Optional location sharing and maps
Conduit can share your location with your Hermes gateway so your agent can use it, for example to tell how far you are from an appointment, follow rules you set for places such as home or work, or not call you at places you choose. It is off until you turn it on, with two separate settings: sharing while you talk to your agent (a location when you send a message or start a voice call) and sharing in the background (arriving at and leaving places you save, and significant moves). For each you choose the precision: place names only, approximate area, or precise.
- Location goes from your device directly to the Hermes gateway you configured, over your dashboard connection, encrypted end to end with a key that your device and your gateway agree on. It never passes through the Conduit notification relay or any server operated by Conduit, and Conduit's developer never receives it.
- When your agent asks for your current location or a maps lookup from your phone, the relay sends your device a silent request through Apple's push service. The request contains no location or search; your device answers your gateway directly, and only while background sharing is on and not paused.
- Your saved places stay on your device. Your gateway receives their names and how far you are from them, not their coordinates. Places you mark private are reported only as "a private place".
- Maps lookups your agent asks your phone for (searches, travel times, directions), and the maps, place details and directions Conduit shows in chats and calls, use Apple Maps on your device, so Apple receives those queries under its own privacy terms. If you let your Hermes host look things up itself, it uses Apple's Maps Server API with a short-lived access token it gets from the relay; the relay never sees what is looked up. You can keep maps on your phone in Settings.
- If you use Pulse, its reports, morning brief, follow-ups and what it saved for a place can look places up on Apple Maps the same way before they bring something up, at most 20 times a day: only between places they name, never where you are or your saved places unless you turn on Where you are.
- If you turn on Where you are in Conduit's Settings > Pulse (off by default), Pulse reads your location while you share it in the background: it can look up where you are before it brings something up, and when you arrive at or leave a saved place (never a private one) it can remind you of something you said you'd do there, or bring up something its daily look ahead saved for that moment. Your gateway keeps each arrival and departure Pulse hears about for a day, the place you named with what Pulse remembers for as long as it remembers it, and the saved place something from the look ahead waits for until it comes up. Pulse's reads appear in Conduit's location read log. Turning Where you are or Pulse off, or deleting your location from your gateway, deletes the arrivals and departures Pulse kept.
- With Where you are on and background sharing at Precise, Pulse can also ask Conduit to watch a few kinds of shop near you (a florist before an anniversary, or a shop you said you'd stop at). Your gateway sends Conduit only the words to search for; Conduit searches Apple Maps on your iPhone and watches the nearest few. When you come near one, Conduit tells your gateway the shop's name, when, and how far from it your iPhone was then, but not its coordinates. Your gateway keeps each for 30 days, to check how quickly iOS noticed, and deletes them when you turn Where you are, Pulse or walking past off, or delete your location from your gateway. You can turn it off with
hermes conduit-push pulse spots off. - Your agent can read your location when it answers you, which means it is sent to the AI model provider your Hermes agent uses (and, for a hosted agent, to its host). Their privacy terms apply to what they receive. Conduit shows you when your agent read your location.
- If you also let a voice mode read your location in Conduit's Settings > Location, a live voice call in that mode can read it too: your device fetches it from your gateway, encrypted end to end, and passes what the voice model asked for to that voice provider. Their privacy terms apply. This is off by default and separate from sharing with your agent.
- Your gateway keeps location history for the period you choose (7 days by default). Location is not used for advertising, marketing or data mining, is not sold, and is not stored in iCloud.
- You can pause or turn off sharing at any time and delete the copy on your gateway from Conduit's Location settings.
Optional Calendar, Reminders, Focus, phone status, contacts and alarms
Conduit can share your calendars, reminders, which Focus is on, a snapshot of your phone (battery, charging, Low Power Mode, CarPlay, audio route, network type and motion activity such as walking or driving), the alarms and timers it set for you, and contacts you pick one by one, with your Hermes gateway so your agent can use them. Each is off until you turn it on, and you choose which calendars and lists, how far back and ahead, and whether event notes and attendees are included. Conduit reads calendars, reminders and motion only with your permission in the system prompts. Conduit never reads your whole address book, only the people you pick: it receives the contacts you choose in the system contact picker, with the relationship you type. If you also allow Contacts access (choosing only some contacts is enough), Conduit reads those same picked people again when it syncs, so edits you make to them reach your Hermes, and reads no one else.
- This data goes from your device directly to the Hermes gateway you configured, over your dashboard connection, encrypted end to end with a key your device and your gateway agree on. It never passes through the Conduit notification relay or any server operated by Conduit, and Conduit's developer never receives it.
- Event notes, attendee names and links are shared only when you turn on "Include notes and attendees", and attendee email addresses only when you also turn that on. Your gateway discards them otherwise. Only the latest phone status and Focus are kept, never a history.
- Your agent can ask Conduit to add, change or delete events and reminders and to set or cancel alarms and timers. Conduit asks you before each change unless you let it add new items without asking; changes, deletions, cancellations and anything on a shared calendar or list always ask. To tell your phone that a change is waiting, your gateway sends a notification through the relay, encrypted like other notifications when end-to-end encryption is on; the change itself comes from your gateway.
- If you use Pulse, it never changes your calendar or reminders itself. When an event or reminder would help, it can suggest one on a card, which is added only when you tap Add. Your gateway keeps each suggestion, with what it would add, for 30 days, or longer while its card is still on the Pulse screen. With Pulse's memory on, when your agent says in a chat that it set a reminder, an alarm or a timer, added an event or did something similar, your gateway also keeps what it said, with the calls it made in that turn, for 30 days, or until you turn Pulse off, to check that something was actually made.
- Your agent and, if you use it, Pulse can read this data when they answer you, look at the next two weeks or at the events that ended since Pulse's last report, check on something you asked to be told about or look something up before Pulse brings it up, which means it is sent to the AI model provider your Hermes agent uses (and, for a hosted agent, to its host). Pulse reads the calendars and reminders you share and the names, relationships and birthdays of the contacts you pick. If you allow a voice mode to use it in Settings, a live voice call in that mode can read it and add items too, and what the voice model asked for goes to that voice provider. Their privacy terms apply to what they receive.
- This data is not used for advertising, marketing or data mining and is not sold.
- You can turn sharing off at any time and delete the copy on your gateway from Conduit's Calendar & phone settings.
Optional events from Shortcuts automations
Conduit's Log to Hermes action lets a Shortcuts automation you set up send an event to your Hermes gateway, so your agent can look it up later: for example a notification from an app you pick, a message, an email, a Wallet payment, an NFC tag or a sound the phone hears. Nothing is sent until you add the action to an automation, and an event carries only what that automation passes to it (who it's from, a title, details, an amount and what triggered it). Because these can be other people's notifications, messages and emails, they may contain other people's words.
- Events go from your device directly to the Hermes gateway you configured, over your dashboard connection, encrypted end to end with a key your device and your gateway agree on. They never pass through the Conduit notification relay or any server operated by Conduit, and Conduit's developer never receives them.
- Anything that looks like a sign-in code or sign-in link is dropped, on your device and again on your gateway.
- When your gateway can't be reached, events wait on your device for the next run or until Conduit connects, in a file excluded from backups.
- Your gateway keeps each event for 30 days and at most 5,000 per device, oldest out first.
- Your agent and, if you use it, Pulse can read these events when they answer you, check on something you asked to be told about or look for deadlines, which means they are sent to the AI model provider your Hermes agent uses (and, for a hosted agent, to its host). Their privacy terms apply to what they receive.
- With Pulse's memory on, your gateway keeps the deadlines Pulse finds in these events, like a free trial ending or a bill due, with the words they came from and who sent them, to remind you before each one. It deletes each one a day after it's taken care of, otherwise about a week after its date, and at once when you delete the event it came from. You can turn this off in Settings > Pulse, which deletes the ones kept.
- Events are not used for advertising, marketing or data mining and are not sold.
- You can see and delete what your device logged, one event or everything, from Conduit's Settings > Shortcuts inbox, and stop logging by removing the action from your automations.
Other connections
- To tell you when a Conduit plugin update is available, Conduit reads the plugin's public version file from GitHub (
raw.githubusercontent.com) at most once an hour. - To draw diagrams and math in messages, Conduit loads fixed, integrity-checked versions of Mermaid and KaTeX from the jsDelivr CDN when a message contains one.
- Images and pages in your chats, rich cards and Artifacts can load from the web addresses your agent or its tools include, so those sites receive your device's IP address and the request, under their own terms.
- Setting up Ask Hermes about my screen reads a public file from this site and opens Apple's Shortcuts link it names.
Retention and deletion
On-device information remains until you remove it, sign out, disable the related feature, or uninstall the app. Notification registrations remain active until notifications are disabled, the registration is invalidated, or deletion is requested; when the relay is full, it removes the longest-inactive registrations first. Disabling notifications prevents further delivery and revokes the app's local notification credential. Short-lived pairing codes and device token checks expire after ten minutes, and event identifiers used to prevent duplicate delivery expire after approximately 24 hours. Clarify decision records, including questions, choices, and submitted answers, expire after approximately two hours. Call rings and Lock Screen progress are kept only in the relay's memory (a ring's mute and end for as long as the call lasts, at most four hours), and Apple Watch grants end with the call, after at most 30 minutes. When the relay processes state, it removes expired records from its in-memory state; an expired record may remain in the saved file until a later state update rewrites that file.
To request deletion of notification relay information, contact support@milim.dev. We may ask for limited installation information to locate the registration. Information stored by your Hermes gateway must be deleted through that gateway's operator, and information sent to a voice or AI model provider through that provider.
Sharing
Information is shared only with service providers necessary to provide the requested function, including Apple for APNs delivery and infrastructure providers used to operate the notification relay and this support site, and the voice providers you choose to call. Information may also be disclosed when required by law, to protect users or the service, or as part of a business transfer subject to appropriate safeguards.
Security
Conduit uses HTTPS and secure WebSocket connections when communicating with configured services; plain connections are allowed only to addresses on your local network or private tunnels such as Tailscale. Notification credentials are randomly generated, scoped, revocable, and stored as cryptographic hashes on the relay where applicable. End-to-end encryption uses ChaCha20-Poly1305 with keys derived by HKDF. Its keys are set up over your dashboard connection, so they are only as private as that connection: use HTTPS or a private tunnel such as Tailscale, since someone who can intercept a plain connection while the keys are set up could read what is encrypted with them. No method of transmission or storage can guarantee absolute security.
Children
Hermes Conduit is a developer and productivity tool and is not directed to children under 13. We do not knowingly collect personal information from children.
International processing
The notification relay, the voice providers you choose and their service providers may process information in countries other than your own. By enabling notifications or a voice provider, you request this processing to provide the feature.
Changes
This policy may be updated as Conduit changes. The effective date above will be revised when material changes are published.
Contact
For privacy questions or requests, email support@milim.dev. For general help, visit the support page.