Mac Build Finished Alerts: A Guide for Long Terminal Jobs

Know when a long Mac terminal job finishes with Notchy’s zsh command islands. Set up the hook, check success versus failure, and troubleshoot missing alerts.

By · Published

A build that takes a minute does not need a minute of attention. Notchy’s Long Command Islands can show a running zsh command in the Mac’s notch and display its completion status and elapsed time. You can return to another task, then inspect the terminal output when the job ends.

Choose the signal you need

Use command completion tracking when you want to know whether a local shell job is still running. Use the terminal log when you need warnings, errors, or individual test results. Use a CI service’s status when the actual job runs remotely. Those signals answer different questions.

Notchy’s terminal command feature starts showing an island only after a command has been running for ten seconds. Short commands stay out of the way. It reports elapsed time rather than estimating progress, so a timer at 45 seconds does not mean the build is almost finished.

Enable Long Command Islands

Enable Long Command Islands in Notchy. The feature appends a marker-bounded integration block to ~/.zshrc. That block reports command start and completion through a local Unix socket to Notchy. Turning the feature off removes its block.

Open a fresh interactive zsh session after enabling the integration so it reads the updated configuration. The supported shell is zsh; switching terminal apps does not add support for bash or fish. The hook belongs to the shell, which is why it can work in Terminal, iTerm2, and integrated terminals that actually run zsh.

If you maintain a custom shell setup, inspect the integration alongside your existing hooks. Keep your usual terminal configuration intact and use the feature toggle to manage Notchy’s block rather than copying fragments from an unrelated setup guide.

Test with a harmless long command

Keep Notchy running, open the new zsh session, and run this command:

sleep 12

The command waits for twelve seconds without changing your files. After the ten-second threshold, look for a running island; after completion, check its success indicator and duration. This isolates the integration from your build tooling.

Then try a foreground build or test command you already use. There is no need to deploy anything just to prove the notification works. Avoid a background command ending with & for the first test: the shell can return to its prompt before the background work finishes.

Read the completion result correctly

A success indicator means the command reported a successful exit status. It does not mean there were no warnings, that every expected file was generated, or that a deployment is healthy. Return to the terminal output for the evidence that matters to your task.

For a pipeline or a compound command, the reported status depends on how the shell evaluates that command and on your shell options. Likewise, a local command that merely submits a remote job may finish while that job is still running. Use the remote system’s completion result for the remote work.

If your goal is following an AI coding task, see Claude Code notifications. If the question is how much allowance remains, use an AI usage tracker. A command duration is not a token-usage measurement.

Troubleshoot a missing island

  • The job ended too quickly: it needs to cross the ten-second threshold.
  • The terminal was already open: try a new zsh session after enabling the hook.
  • The shell is different: check that the session actually runs zsh.
  • Notchy is closed: keep the app running so it can receive the local event.
  • The job runs elsewhere: check whether you launched it through SSH, in a container, or in CI instead of the integrated local shell.

Retest with sleep 12 after changing one thing. Before presenting terminal work, review the screen-sharing checklist; command text on an overlay is part of the content you may be showing.

Common questions

Does Notchy track commands in bash or fish?

Long Command Islands supports zsh. It can work across different terminal apps when their interactive session runs zsh and loads the Notchy integration.

Does a green completion indicator prove a build is ready to release?

It reports the command’s successful exit status. Review the build output, required checks, and any remote job status separately before deciding the work is ready to release.