Pixel Pet Notifications: Timing Nudges Without Breaking Focus
2026-10-22
Pixel pet notifications are the small nudges your Codex companion can surface while a run is going. What deserves one, when to fire it, and why most reminder settings should stay switched off.
What a pixel pet notification actually is
Pixel pet notifications are the small nudges your companion surfaces while Codex is working. A pet can react when a run finishes, when a command blocks waiting on you, or after a stretch where nothing has moved. None of it touches your model, your prompts or your code. It is a desktop companion telling you that something happened, and the only real design question is whether you wanted to be told.
I expected to hate this. Notifications from a decorative pet sounded like the least useful category of interruption anyone could invent. Three weeks later I keep one rule switched on, and the reason is narrower than I expected: it is good at exactly one job, which is telling me a long run finished while I was reading something else.
That is the honest framing. A pet notification is not a productivity system and it will not make you focused. It is a way to stop glancing at the terminal every ninety seconds, and it only works while the bar for firing one stays high.
- Run finished: the pet changes state and holds that state until you look up
- Run blocked: something needs input and the queue has stopped moving
- Idle too long: the pet has been waiting on you rather than the other way round
- Error: the run failed and whatever it produced is already wrong
Codex pet reminder settings: the four knobs that matter
Codex pet reminder settings live in pet.json, the same file that holds displayName and the animation map. There is no separate preferences screen and nothing is relayed off your machine. Whatever you set applies to that one pet folder on that one computer.
Most pets ship with every notification off. That default is correct, and I would leave it alone for the first few days. Switch one on only after you catch yourself refreshing the terminal deliberately, waiting for a result.
Four fields change anything at all: whether a nudge fires, how long the run has to be before it qualifies, whether quiet hours apply, and whether an unanswered nudge repeats. Everything else in the file is cosmetic and has no bearing on timing.
- enabled: the master switch. Off means the pet animates freely and never tries to get your attention
- minRunSeconds: skip short runs. Set it above your median command length or every nudge turns into noise
- quietHours: a window where the pet animates silently. Point it at whatever your regular meeting block or bedtime is
- repeat: whether an unanswered nudge fires again. I keep this off, because a repeat is a second decision I never asked for
Pet notification timing: when a nudge lands well
Pet notification timing is mostly about run length, not hour of day. A nudge after a four second command is an insult. A nudge after a six minute build is the entire reason the feature exists. Put minRunSeconds above your median command and the pet stops commenting on things you were going to see anyway.
The second factor is whether you were already looking. If Codex is the frontmost window, the animation is visible without help and a nudge adds nothing. Timing rules that account for window focus do real work here. Timing rules that ignore it are a noise generator with a pet drawn on top.
Third, what happens afterwards matters more than the nudge itself. A pet that moves into a distinctive state and stays there beats one that flashes and resets, because you might not look up for another minute. The pet should still be telling the story when you arrive.
- Long runs: fire. This is the case the feature was built for
- Short runs: never. You will read the result before the animation finishes
- Codex already focused on screen: skip it unless the run failed
- Blocked runs: fire, and hold that state until you respond
Do pet notifications help focus? What three weeks of notes showed
Do pet notifications help focus? For me the answer is yes in one narrow way and no in every other configuration I tried. The narrow win: I stopped switching windows to check whether a run had finished. Across a week that was maybe sixty fewer glances, and each one used to cost me a paragraph of whatever I was reading.
The losses were real as well. With repeat switched on, an unanswered nudge became a low grade irritation that pushed me toward closing Codex altogether. Without quiet hours set, a late session meant the pet was commenting on builds at an hour I should not have been working at all.
I tracked it the same way I track mood in the journal method at /blog/coding-mood-journal-pixel-pet: one line a day, noting whether the pet interrupted something I cared about. Three weeks in, the number settled at roughly one genuinely useful nudge per day, with the rest of the animation being decoration I happened to like.
- Notifications off: zero interruptions, but I checked the terminal about 12 times a day
- Run finished only, 60 second minimum: about 4 nudges a day, 1 of them worth having
- Run finished plus repeat: about 9 nudges a day, and I switched the whole thing off on day four
- Every category enabled: I lasted six hours before uninstalling the pet
Where notification settings go wrong
Every one of these annoyed a pet out of my rotation, and the failure is always the same: the rule was written for the settings screen instead of for an actual working day.
- Switching everything on because the fields were there. Most people uninstall within a day
- Setting minRunSeconds below your median command length, so the pet comments on everything
- Forgetting quiet hours, which makes the pet most talkative exactly when you should have stopped
- Assuming reminder settings travel with the pet when you copy it to another machine. They do not, and /blog/sync-codex-pet-across-machines explains what does move
- Giving blocked and error the same animation, so the one nudge you actually needed is unreadable
Where to go from here
Generate a pet on codexpetgenerator.com and leave every notification off for the first week. The moment you notice yourself checking the terminal on purpose, switch on the single rule that covers it, and nothing else.
Which states are worth nudging on is broken down at /blog/codex-pet-9-animation-states, and whether a nudge reads as helpful or smug depends on the persona work at /blog/pixel-pet-personality. If you run the same pet on a second machine, /blog/sync-codex-pet-across-machines covers what does and does not copy over. Everything else is listed at /blog.
Frequently asked questions
Do pet notifications help focus?
In one narrow way, yes. A run-finished nudge stops you from checking the terminal every couple of minutes. Every other notification category I tried cost more attention than it returned, and repeat nudges were the worst of them.
How many notifications should a Codex pet send?
Start with one rule: fired only when a run crosses a length threshold you set yourself. Four nudges a day is plenty for most people. If you are counting more than that, the threshold is too low.
Can I change codex pet reminder settings without reinstalling the pet?
Yes. The reminder block lives in pet.json inside the pet folder. Edit it, restart Codex, and the new rules apply to the pet you already have installed. Nothing about the spritesheet changes.
Do pet notifications work on both macOS and Windows?
They run the same way on both, because the pet reads the same pet.json on either. The one thing that differs is how the operating system handles notification permissions, so check your system settings if a nudge never appears.
Related posts
Try it yourself
Ready to turn your own photo into a pixel-art pet? Upload it on PetGen and get your spritesheet + pet.json in minutes.
Generate your pet now →