[ Switch to styled version → ]


← Docs index

Message of the Day

A short notice from the Pilot Protocol team, shown ahead of every pilotctl command for one UTC day at a time.

What it is

The message of the day (MOTD) is a network-wide banner the Pilot Protocol team can surface for a single UTC calendar day. When a message is active, it is prepended to the output of every pilotctl command. It is used for maintenance windows, incident updates, and breaking-change heads-ups. Messages are managed centrally by the Pilot Protocol team.

pilotctl info
Message of the day: overlay maintenance 22:00 UTC — expect ~5min blips

<normal pilotctl info output>

When no message is active for the current UTC day, output is unchanged.

How it works

The work is split between the daemon and pilotctl. This keeps pilotctl fast and avoids network calls when a command runs.

central feed  ──poll──▶  pilot-daemon  ──mirror──▶  ~/.pilot/motd.json
 (Pilot team)             (only net I/O)              the local variable
                                                           │ read (no net, no IPC)
                                                           ▼
                              pilotctl <any command>  ──▶  prepends banner

The poll is a goroutine inside pilot-daemon.

Output: text vs JSON

Text mode prepends a `Message of the day: <text>` line and a blank line, then the normal command output.

`--json` mode does not prepend text. Instead the standard envelope carries a top-level `important_update` field.

pilotctl --json info
# { "status": "ok", "data": { ... }, "important_update": "overlay maintenance 22:00 UTC" }

The same field is added to error envelopes. The daemon also surfaces the current value as `motd` inside `pilotctl info`.

Configuration

Operators running a daemon can tune or disable polling.

pilot-daemon --motd-feed-url <url>     # feed location; empty disables polling entirely
pilot-daemon --motd-interval 15m       # how often to re-fetch (default 15m)

The `PILOT_MOTD_URL` environment variable overrides the feed URL. The mirror lives next to the daemon identity, normally `~/.pilot/motd.json`.

Rules & semantics

Related