Telemetry
Telemetry is opt-in. A town hall sends nothing until its owner says yes, in the setup of the town or in myrtille init (--telemetry yes|no answers without the question; an empty answer is a no). It sends nothing at all when MYRTILLE_TELEMETRY=off is set in its environment, whatever the owner answered, and nothing from the demo town. The owner can change the answer at any time at /setup?step=telemetry of the town (the address of the town followed by that path), where the button See what will be sent shows the exact document.
With a yes, the town hall sends one report a day to https://telemetry.myrtille.eu/v1/report. The same call is the version check: the answer says the latest version and whether the running one has a security update, which then appears in the mail as a high item, once per version. Every other field of the answer is dropped. MYRTILLE_TELEMETRY_URL sends the reports to another collector, over https only.
What a report holds
Section titled “What a report holds”Every field is a count, a closed list or a fixed format. The schema is packages/engine/src/telemetry/schema.ts, the only source of these fields, and a test fails if any field that is not closed enters it (a text, an email, an address, a field that takes anything).
| Field | What it is |
|---|---|
schema |
The version of this document (1). |
instance |
A random identifier made once by the instance, linked to nobody. |
version |
The version of the town hall. |
mode |
selfhost or cloud. |
system.os, system.arch |
The operating system (linux, darwin, win32, freebsd) and processor family (x64, arm64, arm), or other. |
districts, buildings |
How many the town has. |
citizens |
How many citizens of each kind (service, database, automation, agent, mcp, server, preview, local). |
adapters |
How many adapters configured in the town hall, by type (coolify, webhook, …), any other type counted as other. The local agents of Claude Code are not adapters of the town hall, and are not counted here. |
mail.created, mail.decided |
Items of the mail created and decided over the last 7 days. |
actions.executed |
Actions executed over the last 7 days. |
What a report never holds
Section titled “What a report never holds”No name (of the town, a district, a citizen or a person), no address or URL, no content (of an event, a log or the mail), no identifier of a user, and no IP address kept by the collector. The collector keeps each report 90 days, then deletes it. The aggregated figures are published every month in the log of the project.