Local-first · macOS · works with the logins you already have

Your AI agents have a calendar now.

Stop babysitting terminals and cron scripts. Book agent work on a real calendar — Clockwork runs it in an isolated sandbox at the hour you chose and files a report you can actually read.

Free during beta · No API key · Uses your Claude Code / Codex / OpenCode / Hermes login

Clockwork month calendar with scheduled agent runs
The default view: every agent job on one month grid.
Act I — the problem

Your agents are everywhere. Their work is nowhere.

You have powerful AI agents. But the work they do lives in terminal scrollback, cron tables, CI logs and chat threads — invisible, unrepeatable, unaccountable.

cron · 2am terminal #4 CI job ✗ one calendar booked · run · reviewed · repeated
Act II — your agents' workday

Human time + agent time, on one grid.

Clockwork overlays your meetings with scheduled agent work, so you always know what ran while you were heads-down — and what needs you now.

09:00 10:00 11:00 13:00 14:00 16:00 👤 Team standup — meeting 👤 Focus time 🤖 Dependency audit — Dep Surgeon ✓ completed 👤 Lunch 🤖 Nightly test sweep — Test Doctor ✓ report ready 🤖 Force-push request — ⚑ waiting for you
Why this exists

Agents are powerful. Recurring work has no home.

Right now recurring agent chores live in crontabs, shell scripts, CI pipelines, and sticky notes. Clockwork gives that work a home on your calendar — with budgets, approvals, isolation, and searchable history built in.

Task composer with provider selection
Book a job in under a minute — prompt, repo, budget, schedule.
Provider selection between Claude, Codex, OpenCode and Hermes
Pick the engine per task: Claude Code, Codex, OpenCode, or Hermes Agent.
Run report with summary and cost
Reports worth reading: what it did, what it skipped, what it cost.
Command palette
⌘K everything: navigate, switch themes, create tasks.
The loop

Book → Run → Review → Repeat

Book

Choose an agent profile, a repo, a budget, and a time. One-off or recurring.

Run

Your own CLI engine executes unattended inside an OS-sandboxed git worktree.

Review

A human-readable report lands in your inbox — branch, diffstat, cost, transcript.

Repeat

Make it weekly. Search your run history. Trust grows with evidence.

Differentiators

Built like a product, not a demo

🗓 A real calendar

Month grid, recurrence, missed-run policies, per-repo mutex — scheduling is first-class, not an afterthought.

🔀 Provider freedom

Claude Code today, Codex / OpenCode / Hermes when you want. Switch per task without rebuilding anything.

🛡 Human-in-the-loop

Risky actions pause the run and ask you. Unanswered asks fail safe — never silently approved.

📦 Real isolation

Every run gets its own worktree and Seatbelt sandbox. Writes locked to scope. SSH keys unreadable.

🔎 Searchable history

Full-text search across your retained reports and transcripts. Your agent's track record becomes auditable.

⌨️ Keyboard-native

⌘K palette, global shortcuts, instant inbox search. Built by terminal people, for terminal people.

Agent library

Ready-to-run specialists, not blank prompts

Every profile ships with mission, constraints, safety rails, output contract, and success criteria — so "update my deps" doesn't turn into "rewrite my repo".

Dependency Surgeon

Groups upgrades, reads breaking changes, runs tests, opens PRs. Never force-pushes.

Test Doctor

Triage flaky suites, quarantine noise, propose minimal fixes.

Docs Drift Checker

Finds where docs and code disagree, drafts precise corrections.

Repo Health Monitor

Morning digest: stale branches, failing CI, security advisories.

Browse the full library in-app
Security

Trust is the feature

Sandboxed execution

macOS Seatbelt profiles per run. File writes restricted to the run's worktree.

Credential hygiene

Sanitized environment. SSH agents and credential helpers unreadable from inside a run.

Hard budget bounds

USD soft caps, turn limits, wall-clock timeouts — enforced by the supervisor, not the model's good intentions.

Audit journal

Every approval, denial, and state change recorded. Nothing happens off the record.

🔍 Don't take our word for it. The Seatbelt profile, the credential deny list and the run-environment allowlist are published under Apache-2.0 with the tests that prove them — the suite writes a fake secret into ~/.ssh and ~/.aws, then runs a real cat inside a real sandbox and asserts it fails. Read it, run it on your own Mac, and see what it does not prove. Clockwork itself stays proprietary; the security boundary is open.

The honest constraint: jobs run when your machine is awake. Clockwork keeps a plugged-in laptop awake through booked windows and tells you loudly when sleep caused a miss. For true overnight runs, use an always-on machine. We'd rather tell you now than disappoint you at 2am.

Providers

Bring the engines you already pay for

Claude Codesubscription login · default
Codex CLIOpenAI
OpenCodemulti-model
Hermes AgentNous Research
Agent profiles library
Detection is automatic — if the CLI is installed, it appears.
Get started

Give your agents a workday.

Download Clockwork for Mac, connect once, book your first chore tonight.

Download Clockwork for Mac

Apple silicon · macOS 14+ · 3.4 MB · SHA-256 checksum

Clockwork is not notarised by Apple yet.
An Apple Developer certificate costs $99/year and this is an early build, so the app is unsigned. macOS will refuse to open it until you clear the download quarantine flag. We would rather tell you that plainly than have Gatekeeper call it “damaged”.

Install with Homebrew (recommended)

brew tap vimoxshah/clockwork
brew trust vimoxshah/clockwork
brew install --cask clockwork
xattr -dr com.apple.quarantine /Applications/Clockwork.app

brew trust is required because Homebrew refuses casks from third-party taps by default — you are explicitly saying you trust this one. Homebrew verifies the SHA-256 before installing, then you clear the quarantine flag yourself — Homebrew 6 removed the --no-quarantine option, so there is no way to skip it. You are still clearing quarantine on a binary whose hash was checked for you, which is why this beats a raw download.

Or install the DMG by hand

# 1. verify what you downloaded
shasum -a 256 ~/Downloads/Clockwork_0.4.0_aarch64.dmg

# 2. open the DMG, drag Clockwork to Applications, then:
xattr -dr com.apple.quarantine /Applications/Clockwork.app

# 3. launch it
open -a Clockwork

Step 1 should print the hash shown in checksums-sha256.txt. If it does not match, do not install it — tell us instead. Step 2 removes the quarantine flag macOS adds to downloaded files; you are telling your Mac you trust this specific app. Only run it on a file whose checksum you just verified.

Pricing

Free today. BYOK, always.

Bring your own API keys — Clockwork never marks up provider charges. Whatever Clockwork costs later, it will never be a markup on your provider usage — those stay separate bills.

Personal

Free during beta

  • Local agents in sandboxed worktrees
  • Unlimited recurring schedules
  • All BYOK providers and CLI engines
  • Human approval gates
  • Budget guardrails
  • Run history and reports (30 days)

Approvals and budget caps are never paywalled — they are the brakes on unattended code.

Pro

Not yet priced

  • Everything in Free
  • Run history kept for a year
  • Policy engine — restrict engines, models and spend
  • Audit log (30 days)
  • Up to 50 event-triggered agents

These are the pieces teams ask for. They are built, but not for sale — I would rather find out what is worth paying for than guess at a number. Beta users keep their history either way.

Teams & Enterprise

Talk to us

  • Unlimited audit log with export
  • Extended retention (2 years)
  • Policy engine across the team
  • SSO / SCIM (planned)

Clockwork is proprietary software — previously FSL-1.1, now under the LICENSE in the repository. No payment is collected on this site yet.

Get in touch

Questions, bugs, or want to try it on your repo?

Clockwork is an early build and I read every message. Tell me what broke, what you expected, or what would make it worth paying for.

Email me

vmoksh.shah179@gmail.com · or open an issue on the Homebrew tap