Context for the tools you use to think, work, schedule, build, plan, and automate.

Turn daily calls into
AI memory.

Cyrano is an audio-driven information relay. It carries the conversation you are in, and the window, screenshot, or passage in front of you, to ChatGPT, Claude, Codex, or another MCP client, so none of it has to be explained again by hand. MCP receives text, never raw audio.

  • Mac, Apple silicon and Intel
  • iPhone and iPad companion
  • Claude, ChatGPT, Codex, any MCP client

v1.0.22068 MB DMGmacOS 14+notarized3 Pro days free

How it works

Sessions in.
Context out.

Three steps, and none of them is copy and paste.

Session

Whatever you are already in.

Recording MicSystem audioDictation

A call, a dictated thought, or whatever is playing through your Mac. Nothing is captured until you start a visible session.

Cyrano

Becomes text on your Mac.

On device
  • YouShip the beta Thursday?
  • DanaPricing page has to land first.
  • YouMine. You will have it Wednesday.
Task · Pricing page first

Transcription and speaker labels run locally. Topics, tasks, and open questions build up while people are still talking.

Live AI chat

Your assistant already knows.

MCP · text only

What did we just commit to?

Beta ships Thursday, and the pricing page is yours by Wednesday. Want me to draft it?

Claude, ChatGPT, Codex, or any other MCP client reads the running session and answers from it. Text only, never the audio.

The Sessions window

A finished call. Click anything.

The session map: topics, tasks, asks, and next moves laid out as a graph, coloured by speaker and category.

The session map: topics thicken as they are returned to, and every task, ask and next move hangs off the topic it came from.A demo call, mapped by the app’s own map builder. Click a green seal for a task and the line that produced it, shift-click on through its topics to draw a stream, and use ← → to step through the call. Click in, then scroll or pinch to zoom. Review lists the same call, and Both puts the two side by side: pick a row and the map finds it.

What Cyrano does

Give your AI
the conversation.

Stop rebuilding context by hand.

Transcribe, extract, map, ask, deliver.

On device

A transcript that knows who spoke

Microphone and system audio become text on your Mac, with speaker labels you can rename once and reuse.

On device

The call, drawn as it happens

Topics, tasks, and open questions build into a map while people are still talking, so you can see the shape of the call before it ends.

Any MCP client

Ask the session

Your assistant reads the running call and answers from it. Text only, never the audio.

Pro

Dictate into any app

Hold a key and speak into whatever has focus. Cleanup, your own dictionary, and corrections it learns from.

On device

Hand over what is on screen

The front window, a pasted screenshot, or the clipboard. Text is read on your Mac, so no call has to be running.

Pro

Decisions leave the call ready to use

Send what came out of a session to your agent, a vault, a calendar, or a webhook, as it finishes or as a daily digest.

Your call

Nothing outstays its welcome

Every session carries a retention choice. Let it expire, hold it a day, or pin the ones worth keeping.

The app

Five surfaces,
one running session.

One rendered loop. Five real screenshots.

Live while they talk.

Still there in review.

Rendered loop: the menu-bar popover on the left fills with speaker-labelled lines while the session map on the right grows a topic for each. Pricing thickens as it is returned to, and a click on it opens the exact line behind the point.
Choose a Cyrano surface to preview

Start and end a session, ask the call a question, and watch the last lines land. This is where most of the day happens.

The transcript as it is written, speaker by speaker, with tasks and asks accumulating beside it.

The same session as a graph. Topics thicken as they are returned to, and the map is live while people talk.

After the call: what was decided, what is still open, and what to do next, above the transcript it came from.

Connect an assistant, choose where finished sessions go, and decide what this particular device is allowed to do.

The Cyrano menu bar popover: a running session with its elapsed time and source, quick questions to ask about the call, and the last few lines of the live transcript. A live session window: the speaker-labelled transcript on the left, with tasks and open asks collecting alongside it as the call runs. The session map: topics, tasks, asks, and next moves laid out as a graph, coloured by speaker and category. A reviewed session: tasks, open asks, subtext, and next moves grouped above the full speaker-labelled transcript. Cyrano's Connections settings: connect an agent, delivery integrations, Obsidian export, encrypted sync, and per-device behaviour.

The relay

Everything it hears,
everywhere it lands.

Goes in

  • Calls
  • System audio
  • Dictation
  • Meetings
  • Clipboard
  • Front window
  • Screenshots
  • Typed notes
  • Voice memos

Comes out

  • Claude
  • ChatGPT
  • Codex
  • Cursor
  • Any MCP client
  • Obsidian
  • Google Drive
  • Calendar
  • Webhooks
  • Markdown

Assistants read over MCP and receive text. Delivery destinations go straight from your Mac, with no server of ours in between.

Privacy

MCP receives text.
Never raw audio.

Local by default. Explicit when shared.

Audio that leaves your Mac

Zero bytes. Transcription and speaker labels run on your Mac.

  1. You control recording

    Nothing is captured until you start.

  2. You control access

    Connect assistants individually. Revoke them anytime.

  3. You control retention

    Expire now, keep 24 hours, or pin.

See every connection the app can make

  • Native Swift
  • On-device transcription
  • No account required
  • Notarized
  • Encrypted sync through your own iCloud

Pricing

Start local.
Add intelligence.

Every install includes three Pro days. No card.

On device

Free · forever

  • Local transcription & speaker labels
  • Session map & review
  • Manual export
  • Assistants read a session once it goes quiet

Copilot · hosted

$1.99 /mo, billed annually

  • Hosted analysis
  • Everything in Pro
  • No keys or local model

Reads to

Claude, ChatGPT, Codex, Cursor, or any MCP client. Your choice.

Connecting an assistant on your Mac is free on every plan and needs no account. Reading a session while it is still happening, and replying into it, is where the paid line sits: without Pro, an assistant reads a session 45 minutes after its last audio. That wait is a commercial line, not a technical one, and everything it applies to stays on your machine either way.

USD. Tax may apply. Cancel anytime. BYO backend supported.

Network traffic

Every byte,
accounted for.

Cyrano touches a lot of your Mac: the mic, the screen, other apps. Touching is not sending. This is the complete map of what crosses the wire, drawn from the code, and the same map the app computes live under Settings, Where your data goes.

How you run it
Opt-ins, all off by default

Audio and transcript both stay on this Mac. The only traffic is an update check and a license check, and neither carries a word you said. Audio stays on this Mac. Transcript text goes to a backend you run, or straight to your own model account. Cyrano is not in the loop. Audio stays on this Mac. Transcript text transits Cyrano’s server to the model, is never logged, and is deleted when the session ends unless you keep it. Audio stays on this Mac, and so does analysis. With a remote assistant paired, live session text transits Cyrano’s server while the session runs, then is deleted within the hour. Fast transcription is on: your audio, both sides of the call, streams to ElevenLabs under your own key. That is the one way audio ever leaves. Transcript text still follows the plan you picked.

Your Mac Nothing here has a route out unless an arrow says so Mic and system audio only while a session runs On-device transcription Apple Speech · no network Transcript text in memory · on disk only if kept On-device analysis Pro · a local model, no network Analysis comes back results, whispers · text only Voice signature memory only · never saved or sent Assistant apps on this Mac Claude Desktop · Claude Code Codex · Cursor · Zed 127.0.0.1:42617 only · bearer token · text nothing off this Mac can reach it leaves your Mac Update manifest one public file · no identifiers hourly · version.json Cyrano server Cloudflare Worker · no user database trial / license check no content transcript text · TLS · never logged deleted at session end unless you keep it The model OpenAI · Cyrano’s key Your own backend or key your Worker · Anthropic · OpenRouter transcript text · your key Cyrano never receives it claude.ai · ChatGPT OAuth 2.1 · revocable text only · never audio live session text, only while it runs deleted within the hour, even if pinned past sessions: from this Mac, stored nowhere ElevenLabs your own API key · your account terms raw audio · both sides · the only path audio ever takes Your iCloud ciphertext Apple cannot read ciphertext only keys never leave Stripe checkout in your browser · no content subscription only Never: raw audio to a Cyrano server · analytics or crash SDK Contacts · Location · a port open to the internet · voiceprints
Arrows appear only in the mode or opt-in that creates them. The protocol between the app and any backend has no audio field, so no Cyrano server can receive audio even by mistake.

How an assistant reads a session

Three routes. The first never leaves the Mac. The other two go through Cyrano’s server, and this is exactly what the server holds on each.

On this Mac Free on every plan · off until you connect an app · nothing leaves Claude Desktop, Codexor any MCP client stdio cyrano-mcp helperdumb translator · no files 127.0.0.1 · bearer Cyrano appscope and mute gates reads Session in memory or disktext, never audio Remote assistant, live session Opt-in · pair with a one-time code · revoke any time claude.ai · ChatGPTOAuth 2.1 · 1 h access token asks for context Cyrano servercopy lives only while the session runs streams live text Your Mactranscribes on device Deleted at session end. Hard ceiling of one hour after, even for a pinned session. Remote assistant, past session Opt-in · your Mac answers each request itself · the server stores nothing but titles claude.ai · ChatGPTasks for one session which session? Cyrano serverrelays the reply · keeps no copy asks your Mac · 8 s timeout answers from disk Your Macre-checks consent per request Kept on the server: an index of session titles, times, and tags, for 30 days. Not the transcript.
What the assistant receives is always text, never audio. Speaker names stay on the Mac; a remote assistant sees numbered speaker slots.

The ledger

Every connection the Mac app can make, with what it carries and what is kept on the other end. If it is not on this list, the app does not do it.

ConnectionWhat crossesWhenKept on the other end
On every plan
Update checkA request for one public file. No identifiers, no cookies.Hourly, and on wake.Nothing about you.
Trial or license checkYour license key or a one-way hash of the hardware id, a random device id, this Mac’s name, the app version. No session content.Hourly on the free trial, weekly with a Pro license.A license record, so the key works on your Macs and not on someone else’s.
Apple speech modelAn OS-managed download from Apple. No content.First run, and on model updates.Nothing.
Bug reportWhat you typed, an optional reply address, and app and OS versions if you leave that switch on. The report has no field for transcripts or audio.Only when you press send.The report, until answered and pruned.
Hosted copilot only
Session socketTranscript text, one line at a time, plus the watch categories you named and your retention choice. Never audio: the protocol has no audio field.While a session runs.Deleted when the session ends. Or 24 hours, or pinned until you delete it. Never written to logs; content logging is switched off in the production build.
The modelWindows of transcript text, forwarded from Cyrano’s server on Cyrano’s key. Sessions go to OpenAI; dictation polish and day refinement go to Anthropic.As the session is analysed.Not stored by Cyrano. The provider’s own API terms apply.
Re-analyse, Ask, Polish, RefineThe text you point at: a finished transcript, a question with its context, a dictation, or one section of your day document.Only when you ask.Nothing. These routes pass through and store nothing.
BillingCheckout happens on Stripe, in your browser. Cyrano holds a subscriber id, the subscription status, and a spend meter. No card, no transcript.On subscribe, on renewal.The subscription record.
Your own key or backend only
Your Worker, or your model accountTranscript text, to a backend you run, or straight to Anthropic or OpenRouter under your key.While a session runs.Whatever your deployment and your provider keep. Cyrano is not in the loop and cannot read, disclose, or delete it.
Opt-ins, off by default
Assistant on this MacSession text over 127.0.0.1, port 42617, with a bearer token in a file only your user can read. The listener binds loopback only; nothing off this Mac can reach it.When you connect an app.Nothing leaves the Mac.
Remote assistantLive session text through Cyrano’s server while the session runs; an index of session titles, times, and tags; past sessions pulled from this Mac on demand and relayed without storage.When you pair claude.ai or ChatGPT.The live copy, at most one hour after session end, even when pinned. The title index, 30 days. Transcripts of past sessions, nowhere.
Device syncSession ciphertext through your own iCloud. Keys exist only on your paired devices. Record ids are blinded so even the id is not readable.When you pair a device.Ciphertext in your iCloud account. Cyrano’s servers are not involved.
Fast transcriptionRaw 16 kHz audio of the whole session, both sides, streamed to ElevenLabs under your own key. The single way audio ever leaves.While a session runs, if enabled.Per your ElevenLabs account terms.
Fast voiceThe text of a whisper cue, to ElevenLabs under your own key, for speech synthesis.Per whisper, if enabled.Per your ElevenLabs account terms.
Context sharingYour clipboard, or a single window read on this Mac and turned into text. The app name and window title travel with it. The image itself leaves only if you send it to your agent.At the moment you press attach.With the session, per its retention. Discarded after use unless you keep it.
DeliveriesThe session export, to a webhook, Google Drive, Google Calendar, or Arepo destination you created.When a session ends, per your rules.At the destination you chose.
Never
Analytics, crash, or ad SDKNone in the app. No taps, no screens, no advertising identifier.
Contacts, LocationNot requested. Not used.
Screen, clipboardRead only when you press attach, or for naming a call from its window title if you switch that on. Nothing from either leaves without a deliberate action.
VoiceprintsSpeaker grouping uses an in-memory signature that is discarded at session end. Nothing acoustic is saved or uploaded.
An inbound portNo listener reachable from the internet. Remote reads arrive over a connection your Mac opened, and the Mac decides whether to answer.

Prelaunch

Request access to Cyrano.

Downloads are paused while we complete legal review. We will email you when access opens.

The promo

Cyrano. Turn daily calls into AI memory. A session map of a call's topics, one point opened to the exact line behind it.

The 90-second promo, interactive — pause it, click anything in the frame, zoom in. Watch it here.

Prelaunch

Give your AI the context you already have.

Request access