Changelog
Every release, newest first · updates arrive automatically
0.7 5 August 2026
- A run gets an hour before it is cut off, instead of ten minutes. Ten was too short for the job most people write first — read what came out overnight, write me a brief — and the way it failed was the worst available: the run was killed part way through and recorded as a failure, so a job that was working reported itself broken. If you raised this yourself, your setting is untouched.
- The menu on a job now says Stop run and Pause schedule. While a job is running those two sit next to each other and do different things — one cancels the run in front of you, the other leaves it going and stops the next one — and a plain “Pause” reads as the first.
0.6 3 August 2026
- A harness installed somewhere unusual is found. Crontender used to
look in the six directories these tools normally land in, which is fine until yours is
the seventh — pi installed under a node version manager was reported as missing
while
which pianswered straight away in a terminal. It now asks your own login shell where it looks for commands, so anywhere you can run a harness, so can Crontender. - The app stays responsive while a job runs. Crontender could ignore clicks for the whole length of a run, with a processor core pinned and memory climbing. The run itself was always fine — files were written throughout. A running job went on looking due to the scheduler, which woke to start it, found it already going, and immediately arranged to wake again: hundreds of times a second, until the job finished.
- Long runs no longer accumulate memory. Everything a job printed was being kept for the length of the run, three times over. Output is now read as it arrives and only its tail is kept.
- Output that is not plain English is no longer damaged. Accented and non-Latin characters could fall on the boundary between two reads, and the whole block was discarded when they did.
- The name field in a new job looks like a field. It was drawn flat, which made a box you have to type in look the same as the rows that only display something — and the Schedule button stays off until it is filled in. The button now also says what it is waiting for, and the cursor starts in the right place.
0.5 1 August 2026
- There is now a way to quit Crontender. It lives at the bottom of the panel. Before this the only way out was a keyboard shortcut that worked while the panel was open and was never mentioned anywhere.
0.4 1 August 2026
- Two jobs finishing at the same moment no longer lose one from the record. Both ran, and both showed in the panel, but only one could survive a restart — and a run Crontender could no longer see might be run a second time.
- The app icon’s timer now matches the one in the menu bar. The mark at twelve pointed out of the dial instead of into it, so the two were mirror images.
0.3 31 July 2026
- Activating a licence no longer freezes Crontender. Opening the activation link from your receipt could leave the app unresponsive with nothing on screen. If that happened to you, quit Crontender, install this update and click the link again — your licence is fine and nothing was lost.
0.2 31 July 2026
Notifications
- A finished run reports reliably again, leads with how it went, and makes a sound.
- If notifications are switched off for Crontender, the panel now says so and links straight to the setting.
A tighter sandbox
- Runs are now kept clear of personal folders — mail, messages, photos and mounted drives — on top of being held to the folder a job is pointed at.
- Fewer macOS permission prompts, and the ones that remain say what they are for.
Fixes
- Running a job no longer crashes the app.
- Deleting a job really deletes it.
- Folders with a space in the name work everywhere.
- Remove from this Mac removes the licence.
- The version is now shown in Settings.
0.1 30 July 2026
The first release. Schedule Claude Code, Codex, opencode and pi from the menu bar; pick a folder, a permission level and a time, and Crontender wakes to run it and goes back to sleep. Everything above read-only is held to its folder by an operating-system sandbox. Nothing leaves your Mac but the agent's own API calls.