What a virtual pet is doing on a work machine

The desktop pet is one of the oldest ideas in personal computing and it has never quite gone away, because the thing it provides is not productivity. It is company. A quiet room with a small animated creature in the corner of the screen feels different from a quiet room without one, and that is the entire product.

CatPod is a pixel-art cat that lives on macOS, with one addition that changes what it is for: a focus timer whose completed sessions are what feeds the cat. Everything below is in the shipping version.

The cat, and where it lives

The cat sits in a window on your desktop. It has moods and animations that shift with two stats it carries - energy and happiness - and it idles, sleeps and reacts rather than looping one animation forever.

The CatPod pixel cat sitting on a macOS desktop, awake and idling beside open windows
The cat lives on the desktop rather than in a window you have to keep open.

Turn on Roam on Desktop and it stops staying put: it wanders along the bottom edge of the screen, above the Dock, picking its own path. It does not wander through a focus session: it walks to the nearer edge and curls up there for the length of it, which is the detail that makes roaming usable at all - a cat crossing your screen is charming right up until it is doing that while you are trying to work. Leave the desk for three minutes and it falls asleep with a Zzz, and coming back earns a stretch. Turn roaming off and it stays where you left it, which is the setting for people who like the company but not the movement. Clicking it pets it, hearts float up, and after a minute's cooldown that pet also counts for happiness, up to a daily cap - deliberately, so affection cannot be farmed and the cat cannot be maxed out by clicking at it for ten minutes.

Both stats decay slowly while you are away, on the order of a point every forty five to ninety minutes, with a floor underneath so the cat is never in real trouble. It is a pet, not a Tamagotchi you can kill by going on holiday.

The focus timer that feeds it

The timer is where the two halves connect. You start a session, the cat curls up beside you, and finishing the session feeds it energy.

A CatPod focus session running, its countdown above the cat's energy and happiness bars
A session in progress. Finishing it is what feeds the cat.

Three chips cover most of it - 15, 25 and 50 minutes - and a slider runs anywhere from 5 to 120 when none of them is the shape of what you are doing. The names come from the length rather than the chip, and you meet them at the end: a session up to half an hour is a Catnap, up to an hour a Deep Purr, and anything longer a Marathon Mew.

Sessions finished on the same calendar day stack a combo, which multiplies what the next one is worth, rising to a cap at the fifth session of the day. The combo resets at midnight. Abandoning a session part-way costs a couple of points of happiness and clears the combo, which is the only negative feedback in the entire app - and it is small on purpose. Guilt is what makes people uninstall productivity software.

Streaks, milestones and one forgiven day

A day with a completed session extends your streak, and the streak is the number most people end up caring about.

The CatPod stats view showing the current daily streak, its milestones and the available streak freeze
The streak, its milestones at 3, 7 and 30 days, and the freeze that covers a missed day.

Milestones unlock at 3, 7 and 30 days. More usefully, the cat holds a streak freeze: miss a day and the freeze is spent instead of the streak breaking. It refills on its own over time and caps at one, so it covers the bad Tuesday without turning a streak into something meaningless.

That single mechanic is the difference between a streak that motivates and one that punishes. A chain of forty days that a single fever wipes out does not make you work on day forty-one; it makes you delete the app.

The milestones, and what earns them

Six milestones sit under the streak, and there is nothing else underneath. Three are the streak itself - three days, seven, thirty - and three come from the timer: your first finished session, five sessions finished in one day, and one session of sixty minutes or more. That last one is worth knowing about, because the 50-minute chip does not reach it; it wants the slider.

They live in Stats, each row showing either the day you earned it or the one line that says how to earn it, and the Stats button carries a dot until you have looked - a milestone normally unlocks with the popup closed, so without it a thirty-day streak would land in silence.

They are badges, not currency - nothing in the app is gated behind them, no screen asks you to collect the set, and there is nothing to spend anything in. There are no XP, no levels and no bond score.

All of it is reachable from a menu bar popup, which is the deliberate split: the cat lives on the desktop where you can see it, and everything you might want to adjust lives in the menu bar, where it is not in the way.

The settings you will actually touch

There are six worth knowing about, and they all sit in General.

Roam on Desktop and Walk on top of the Dock decide whether the cat moves and where its floor is - along the Dock's top edge, or along the very bottom of the screen. Together they are the difference between a pet that sits in one corner and one that crosses the screen, which is also the difference between the people who find that charming and the people who find it unbearable.

Cat lives on decides which display the cat roams. The default follows the pointer: a couple of seconds on another screen and the cat walks in from the edge it would have crossed, keeping whatever it was doing - a session curls it up again on the new screen, an empty desk keeps it asleep. You can pin it to one display instead, and unplugging that display moves the cat without rewriting the choice, so reconnecting brings it home.

Step aside for full-screen apps parks the cat while another app runs full screen on its display - a presentation, a film, a game - and puts it back exactly where it was. A merely zoomed window does not count. Turn it off if you want your cat over the film.

Start break automatically chains a break onto a finished session and the next session onto that break. It is what turns the timer from something you restart into something that runs the afternoon, and it is equally the setting to leave off if you would rather each session stayed a decision.

Appearance is Auto, Light or Dark, with Auto following the system, and the language picker covers English, Turkish, German and Spanish.

The rest of the popup is a keyboard away: roaming, the stats window, Settings and Quit all carry a shortcut, so nothing needs the pointer to land on a moving cat.

What it deliberately does not do

It does not block anything and does not watch what you do. There is no website list, no app monitoring, no report at the end of the week telling you that you spent three hours somewhere. The timer only knows whether a session you started was finished.

There are no ads, no account and no third-party tracking. The cat, its stats and its history are Core Data on your Mac and go nowhere.

The animations are deliberately small and quiet. The cat is a few dozen pixels doing very little; if it demanded attention it would be a game, and a game on a work machine is the opposite of what this is for.

What it costs, and what else to look at

CatPod runs on macOS 14 or later, on Apple Silicon and Intel, and takes about 40 MB. It is pay what you want with a suggested price of $3.99, and that genuinely includes zero. The full specification is on the CatPod page.

CatPod's timer is a reward loop, not a method. If what you want is the actual Pomodoro structure - work, short break, long break, cycles - that is Pawodoro, which pays out its own break in cat videos and is covered in a menu bar Pomodoro timer for Mac. If what you want is not a timer at all but the one task you committed to, visible all day, that is Anchored. There is a comparison of all three in the best focus apps for Mac.