This page describes Calíope 1.5, the version we are building right now. 1.4 is finished and in App Review, and the store serves 1.3 on the Mac and 1.2 on iPad. The changelog says which version each feature landed in.
Adds an “Open in Calíope” button to every topic. It only works with the app installed.
What it shows, what you have to turn on here for it to show anything, and why a Mac that is switched off does not leave the screen green.
Where it is: Calíope › Preferences › General
On the Apple TV, Calíope only reads. It is not a separate app: the same App Store page and the same purchase install it there too. It opens no connection, runs no query and touches no server: it shows, as a dashboard, what Calíope measures from this computer and publishes to iCloud.
What you have to turn on here, in this order
1. The Health Monitor, set up and running, with the servers you want to see. That is what produces the figures; without it there is nothing to publish.
2. Preferences › General › Apple TV › Publish server status to iCloud. It starts off.
And the Apple TV signed in to the same iCloud account as this computer.
What leaves this computer
Each watched server's alias, host, port and metrics. Never passwords, never the content of your queries. Turning the switch off removes what was already published, instead of leaving it up there showing stale figures.
If you have declared replication groups in Topology, they travel with this same switch and the television shows each one with the severity of its worst member.
Why the television cannot do more
tvOS has neither iCloud Drive nor iCloud Keychain. Neither your connection profiles nor your passwords ever reach that device, so «it only reads» does not rest on an app behaving well: the platform holds it up.
A Mac that is off does not leave the screen green
Every server travels with the cadence it was published at, and the television works out freshness itself: once a figure has gone more than three times that cadence without being renewed — with a floor of 90 seconds — it stops being shown as current. Polling every 15 seconds it holds for 45; every 5 minutes, for a quarter of an hour. The ceiling is derived from your setup because whoever published cannot know that they have stopped publishing.
The thresholds are Calíope's
What counts as red and what counts as amber is decided where the servers and the credentials are, not on the television, which only paints. For the same reason a state is never told apart by colour alone: each severity also carries its own shape, so the dashboard can be read from four metres away and without telling red from green.
If the screen is empty
The television tells five causes apart and says which device fixes each one: no iCloud account, Calíope has never published, it publishes but watches no server, the query cannot be made, or the network failed. Four of the five are fixed here. And it always offers a demo, so you can see what the dashboard would look like with data.
Its three settings — demo, keep the screen awake, and language — belong to that Apple TV and never leave it.
It reads the mailbox of what Calíope records while you are not watching. Two switches here and two permissions on the watch.
Where it is: Calíope › Preferences › General
On the watch, Calíope only reads. It is not a separate app: it travels inside the iPhone app, on the same App Store page and under the same purchase — but it installs on its own and works without an iPhone nearby. It only reads, and what it reads are the system messages Calíope records while you are not watching — backups and reports that finish or fail, queries that run long or return too much, SSH tunnels that drop and come back, and servers close to your thresholds.
What you have to turn on here
Both live in Preferences › General › System messages, and you need both:
1. Record system messages — without this there is nothing to read.
2. Sync messages with iCloud — without this the messages never leave this computer. It starts off.
What leaves this computer is the profile or server alias, the backup or report name, the machine that produced it and the figures in the message — seconds, rows, percentage. Never the host, the port, the user or the text of your queries.
There are two permissions on the watch, and they are not the same one
Reading the mailbox when you open the app and buzzing your wrist at three in the morning are not the same authorisation. The iCloud one lets the watch read; the alerts one lets it interrupt, and that system permission is asked for right when you turn it on, which is the only moment the app can say what it wants it for. Both start off.
Alerts are filtered by group, not by message type
Seven switches instead of seventeen, which on a 40 mm screen is the difference between a list you scroll and one you give up on. It also ages well: a new message type falls inside a group you already decided about, instead of turning up switched on without anyone saying so. And whatever the watch cannot name is always shown.
How often it looks, and why that is a minimum
With the app open, the cadence you pick — 1, 5, 15, 30 or 60 minutes — is honoured. With the app closed it is not a promise: watchOS hands out wake-ups on its own budget — battery, usage, whether it is on the watch face — and in practice it is about one an hour. The number you pick is the soonest it can be asked for, not when it happens. That is why the factory value is 15 minutes and not one.
A missed wake-up loses no alerts: the watch delivers everything above the last message it already told you about, not just the last quarter of an hour.
The first time, a hundred of them do not arrive
When you turn alerts on, the first cycle simply notes where the mailbox stands, without notifying anything: turning them on with months of history up there would be the worst possible first impression of something whose entire value is not interrupting more than it must. And turning them off forgets that mark, so switching them back on a month later does not deliver the month.
The watch may well be in a different language from this computer, and usually is: the message travels untranslated and the sentence is composed on the wrist.
The same app as on the Mac and the iPad, in your pocket: it connects, it queries, and it reads what your other devices published.
Where it is: Calíope › Preferences › General
The iPhone runs Calíope itself, not a separate app: the same App Store page installs it on your Mac, your iPad and your phone, and a single purchase covers all three. It connects to your databases, runs your queries and brings the same tools — on the screen it has.
What it shares with your other computers
Everything that already travels between the Mac and the iPad travels to the phone too, with the same switches and with none “for the iPhone”:
- Connections, SQL snippets and preferences, with Sync Calíope with iCloud. Passwords travel separately, through the iCloud Keychain.
- Query history — its switch is in the SQL Log, on that tool's own bar.
- AI assistant conversations — its switch is in the assistant panel.
- App error log — Preferences › General › Sync the error log with iCloud.
- System messages — Preferences › General › Sync messages with iCloud.
And what you edit there shows up here. The connections file has several authors on purpose, and that is why it is merged instead of replaced: what one device does not understand about a profile is not lost.
What is not on the phone yet
The widget that summarises the fleet's health. It lived in the separate iPhone app, which stopped existing when the family was consolidated into a single App Store page, and putting it back means deciding who writes its data on the phone. Meanwhile the fleet is visible in full in the Health Monitor inside the app, and as a dashboard on the Apple TV.
Notifications work as they do on the watch: reading and interrupting are different permissions and are asked for separately, and the background cadence is a floor — iOS rarely goes below a quarter of an hour, whatever the setting says.
Its help is this one. It is the same app, so it is the same Help: what you are reading now reads the same from the phone.
What the Apple TV sees, what the watch sees and what the iPhone sees, one by one — and what they will never see.
Where it is: Calíope › Preferences › General
This topic looks from the receiving device: when you turn on the Apple TV or raise your wrist, what should you be seeing? What leaves this computer — by which mechanism and with which switch — is in What syncs, and how. Same question from both ends, and neither list repeats the other.
Three conditions that apply to all of them
- Both devices on the same iCloud account.
- Every channel has its own switch, and they all start off. Turning on Sync Calíope with iCloud turns on none of them: they are separate consents, not levels of the same one.
- Any computer running Calíope publishes, not just the Mac: the iPad and the iPhone publish too, and no tab has to be open. What is required is that the computer has been on, with the switch set, at least once.
Your Mac, your iPad and your iPhone tell each other almost everything. Connection profiles, SQL editor tabs, health monitor configuration, saved snippets and preferences; and, if you turn on their own switches, the query history, the assistant conversations, the app error log and the system messages. Passwords travel separately, through the iCloud Keychain.
On the Apple TV, Calíope sees exactly one thing: the state of the servers the health monitor watches, with any replication groups you have declared. No queries, no backups, no reports, no messages. Turn it on with Publish server status to iCloud, in Preferences › General › Apple TV. And you need both things — the switch and a monitor watching something — because the switch alone publishes an empty list.
On the watch, Calíope also sees exactly one thing: the system messages. Turn it on with Sync messages with iCloud, in Preferences › General › System messages, and grant iCloud permission on the watch itself, which starts off. The watch sees no servers, no queries and no connections.
On the iPhone, Calíope is the whole app, so it is not a device that reads: it is another of your computers running Calíope. It sees what your Mac and your iPad see — your connections and your SQL snippets, the query history, the assistant conversations, the app error log and the system messages — with the same switches, and there is no switch “for the iPhone”. And it also connects and runs queries, which is what the television and the watch never do.
What reaches no device today, even though the screen exists: the run history of backups and reports, and the last saved result of a report. The mechanism is written, but there is still no switch anywhere that sets it publishing, so that data does not leave this computer. That is expected, not a fault.
And what never leaves, whatever you have turned on: passwords and SSH keys outside the Keychain, the diagnostic log, the schema cache behind autocompletion, and the file permissions macOS granted you, which are only valid on the computer where you granted them. The text of your queries never reaches the TV or the watch: it travels only between your own devices running Calíope — Mac, iPad and iPhone — and with its own switch.
Keywords: devices, what reaches, what is visible, apple tv, watch, iphone, companion, icloud, channels, switches, sync, publish
The trail of what Calíope does and spots while you are not watching: what is recorded, how long it is kept, and what leaves this computer.
Where it is: Calíope › Preferences › General
A nightly backup that finishes cleanly, a scheduled report that fails, an SSH tunnel that drops at four in the morning and comes back on its own, a server brushing your connection threshold: things that happen with nobody watching. They used to exist only as a notification you saw once, which left no trace. System messages are that trace.
It is a different log from the other two: the app error log keeps what happened to the app, and the run history keeps what ran. This one keeps the notice.
What gets recorded. Seventeen kinds of notice across seven groups — backups, reports, queries, connections, servers, sync and the app itself — each with its severity (info, success, warning or error) and, where there is one, the figure behind it: the seconds it took, the rows it returned, the percentage reached.
Two switches, and they are independent, in Preferences › General › System messages:
- Record system messages keeps them on this computer. Without it there is nothing to sync, which is why the second one is disabled.
- Sync messages with iCloud publishes them. It starts off: taking backup names, report names and profile aliases out of here is permission asked for separately.
How long they are kept.Keep the log for offers 30, 90, 180 or 365 days, or unlimited; the factory setting is 90. The pruning is real in both places — it deletes here and deletes in iCloud, once a day. A deletion that left the copy in the cloud would pull it back down on the next sync, which is worse than not having the option.
What leaves, and in which language it arrives. Out goes the profile or server alias, the backup or report name, which computer produced it, and the figures in the notice. Never the host, the port, the user or the text of your queries. And the message does not travel translated: what travels is the identifier of the notice with its raw values, and the device reading it composes the sentence, in its own language and its own number format. That is why a watch set to French shows its messages in French even with the Mac in Spanish. If that device is an older version and does not know a new kind of notice, it shows the fallback text that travelled inside, in the language Calíope had when it was issued — the only time you will see an untranslated message.
If the phone or the watch is not seeing them, this section tells you before they do:
- “Could not be written…” — the local log failed. It shows even with iCloud off, which is exactly when this log is all that is left.
- “N pending upload” — there is a queue. It usually clears itself.
- A notice with the last sync failure, with its text.
Without those three signals, “the phone sees nothing” could be the switch, the queue, an iCloud failure or genuinely nothing having happened: four things that look identical and are fixed differently.
Who reads them: your other devices running Calíope — Mac, iPad and iPhone — and Calíope on the watch. On the watch they are filtered by group, not by kind of notice — seven switches instead of seventeen — so a new kind of notice lands in a group you already decided about.
An empty screen is not one problem but several: the ladder of causes in order, and the three that look almost the same and are not.
Where it is: Calíope › Preferences › General
Neither the Apple TV nor the watch says a bare “nothing here”: each one tells its causes apart and names the device where it is fixed, because most of them are not fixed where you are looking. So the first step is to read what the screen says — that is already half the answer.
The ladder, in order. It is almost always one of these five steps, and it is worth walking them in this order:
1. The same iCloud account on both devices, signed in. Fixed in the settings of the device that is empty.
2. The channel switch, on in Calíope, on the Mac, the iPad or the iPhone. Every channel has its own and they all start off: the fleet one for the TV, the messages one for the watch and for the phone’s messages tab. This is the most frequent cause.
3. The receiving device’s own read permission. The watch has one and it starts off; the iPhone’s comes on; the TV has none.
4. That something was ever published. The publishing computer must have been on, with the switch set, at least once. A Calíope that never published looks exactly like one that publishes and has nothing to report.
5. That there is genuinely something. The TV cannot show servers if the health monitor is watching none.
The three screens that mislead. They look almost the same and do not mean the same:
- “Never published” versus “no messages”. On the watch, an empty inbox can be the good news: nothing has happened. On the TV panel it never is, because an empty health panel is indistinguishable from a calm one — which is why it is never taken at face value there.
- “Cannot be queried”. The channel exists, but an index is missing in iCloud or the schema has not reached this device yet. Nothing is missing from your activity: configuration is. No switch fixes it, and it is worth telling us.
- “N were lost on the way”. The query worked but the read came back incomplete. Going in again is usually enough.
And one that is not a fault: on the watch, turning all seven groups off hides every message. The watch says so in those words, rather than handing you the good news that nothing has happened.
Green is not the same as recent. The television marks the data as stale when the publishing computer has been silent for more than three times its own cadence (never less than a minute and a half). A green panel with a stale timestamp does not say all is well: it says nobody is looking. That is the Mac switched off on Friday.
And from this end.Preferences › General › System messages shows the pending queue and the last sync failure; the Apple TV section does the same for the fleet. If there is a queue or an error here, the problem is not on the other device.
Keywords: empty, nothing shown, blank screen, not appearing, not arriving, troubleshooting, apple tv, watch, iphone, companion, icloud, stale, freshness