You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On macOS, agent-manager can render the correct heartbeat/schedule crontab preview, but applying it fails because the system crontab command cannot write its temporary file and exits with Operation not permitted.
This blocks updating the actual installed heartbeat frequency even when the desired agent config is already correct.
Environment
Repo: fractalmind-ai/agent-manager-skill
Host: macOS
Workspace desired heartbeat: */10 * * * *
Actual installed crontab heartbeat remained: */30 * * * *
A stdin-based compatibility change was already merged in fix: use stdin when syncing crontab #148, but this environment still fails because the macOS crontab implementation appears to create an internal temp file anyway.
So the remaining problem is no longer schedule rendering; it is OS-level crontab write failure on this machine.
Impact
Desired heartbeat/schedule config can diverge from the actually installed crontab
Auto frequency changes (for example */30 -> */10) cannot be applied reliably
Users may think heartbeat frequency changed when the real scheduler did not
Current workaround used locally
A per-user LaunchAgent was installed as a workaround to run the main heartbeat every 600 seconds, while the old crontab entry remains at */30.
That restores effective 10-minute scheduling for this machine, but it does not solve crontab sync itself.
Suggested follow-ups
Detect and surface this macOS failure mode more explicitly in CLI output
Consider a first-class launchd/LaunchAgent backend for macOS scheduling
Persist and show “desired schedule vs installed schedule” drift more prominently
Summary
On macOS,
agent-managercan render the correct heartbeat/schedule crontab preview, but applying it fails because the systemcrontabcommand cannot write its temporary file and exits withOperation not permitted.This blocks updating the actual installed heartbeat frequency even when the desired agent config is already correct.
Environment
fractalmind-ai/agent-manager-skill*/10 * * * **/30 * * * *Expected
Running either:
python3 .agent/skills/agent-manager/scripts/main.py heartbeat syncpython3 .agent/skills/agent-manager/scripts/main.py schedule syncshould update the user crontab to the rendered schedule.
Actual
Preview is correct, but apply fails.
Desired preview includes
# daily-yesterday-work-report# heartbeat [HB]*/10 * * * * ... heartbeat run main --timeout 8mActual crontab still shows
Attempts tried
1) agent-manager sync dry run
Command:
Result:
*/102) agent-manager sync apply
Command:
Result:
3) direct stdin crontab write
Command:
crontab - < /tmp/agent-manager-crontab-preview.txtResult:
4) direct file crontab write
Command:
Result:
Notes
crontabimplementation appears to create an internal temp file anyway.Impact
*/30 -> */10) cannot be applied reliablyCurrent workaround used locally
A per-user LaunchAgent was installed as a workaround to run the main heartbeat every 600 seconds, while the old crontab entry remains at
*/30.That restores effective 10-minute scheduling for this machine, but it does not solve crontab sync itself.
Suggested follow-ups