Labaro
Manual contents

Configuring

Sleep and memory

How Labaro puts services you aren’t using to sleep, how it still checks them for messages, and how to keep an eye on memory.

What sleeping does

A sleeping service’s page is closed completely, and all the memory it was using goes back to your Mac. Its icon dims and gets a moon, and its badge stays.

Click it to wake it. Its page loads again, still signed in.

When a service goes to sleep

A service goes to sleep once nobody has looked at it for 15 minutes. The time starts when you switch away from it. Labaro checks for idle services every few minutes, so in practice a service sleeps 15 to 20 minutes after you leave it. The service on screen never sleeps.

  • Change the time, or turn sleeping off, in Settings. Turning it off wakes every sleeping service straight away.
  • Keep one service awake by unticking Put this service to sleep when it’s idle in its Edit window.
  • Have a service you rarely use start asleep, using no memory until you click it, by ticking Start suspended when Labaro opens.
  • Debug → Suspend Inactive puts every service except the one on screen to sleep now.

How sleeping services are checked

Only services with notifications turned on are checked while they sleep. One with them off sleeps until you click it, and its badge shows whatever it last did.

Gmail, Slack, X and Instagram: every minute

On macOS 14 or later, Labaro asks these four services for their unread counts directly, with your saved sign-in. It’s a request or two of a few KB, instead of loading a page that can take hundreds of MB. It checks them every minute, asleep or awake, all at once.

These checks are also where their badges come from while they’re awake. They can tell what needs you from what can wait:

Service Red: needs you Green: can wait
Gmail Mail in the Primary tab Mail in your other inbox tabs
Slack Mentions and direct messages Other unread channels, apart from muted ones
X Messages Notifications
Instagram Direct messages Activity since you last looked

A few things follow from this:

  • A badge can be up to a minute behind the page.
  • A check that fails leaves the badge as it was, such as when you’ve been signed out. Labaro tries again a minute later.
  • These checks don’t send notifications. For those, the service needs to be awake. See Notifications.

Everything else: every 5 minutes

WhatsApp, Discord, Facebook Messenger, Bluesky, Mastodon, Steam Chat, Zoom and LinkedIn are checked differently. On macOS 13 or earlier, so are Gmail, Slack, X and Instagram.

Every 5 minutes, Labaro opens the sleeping service’s page out of sight, without its images or styling, and reads its unread count. It then closes the page again. A check takes 20 seconds at most, and services are checked one at a time, so their memory isn’t all needed at once. While a service is being checked, its moon turns into arrows going round.

To check every sleeping service now, choose Debug → Check Notifications (⌃⌥⌘N).

Not checked

Google Drive, Google Meet, Google Sheets and services you added by address are never checked. They have nothing to check for.

The memory alert

In Settings, you can have Labaro tell you when it uses more than a set amount of memory.

  • While Labaro is over the limit, the memory figure in the sidebar is red.
  • Stay over it for more than a minute and you get a notification, so a page loading won’t set it off. Click the notification to open Debug → Tasks and see which service is using it.
  • It won’t alert again until Labaro is back under 90% of the limit, so hovering around the limit doesn’t alert over and over.

Keeping memory down

  • Let services sleep. The default of 15 minutes suits most people.
  • Start services you rarely use asleep.
  • Disable the ones you don’t need for a while. They keep their setup and sign-in.
  • If one service has grown large, reload it from its right-click menu, or from Debug → Tasks, which shows each service’s memory. See Tasks, Logs and Console.

Written for Labaro 0.26. Something wrong or missing?Tell us on GitHub.