Workflow automation.
Job runners, schedulers, and event-driven pipelines. Claude makes the judgment calls; cron, queues, and webhooks do the moving. Designed to run unattended for weeks at a time.
- ship
- 2–4 weeks
- best for
- back-office, ETL, ops
- engine
- Claude · cron · queue · webhooks
- handoff
- repo · keys · runbook · alerts wired
What we actually ship.
Triggers you trust
Cron, webhooks, queue events, file drops — pick the trigger shape that matches the work. Idempotent by default; replay-safe on retry.
Claude in the loop
Where the work needs judgment — classification, summarization, extraction — Claude steps in. Where it doesn't, plain code runs.
Observable + alertable
Run logs, latency, error rates, retry queues. When a run breaks at 3am, you'll know by 3:01.
Bounded cost
Token budgets per run, hard caps per day, kill-switch on the dashboard. No surprise invoices from the model provider.
How it fits together.
The skeleton we reach for first. We bend it to your stack; we don't bend your stack to it.
[ trigger ] ──▶ ┌──────────┐
cron / hook │ QUEUE │
└────┬─────┘
▼
┌──────────────┐ ┌──────────────┐
│ WORKER │ ──▶ │ CLAUDE API │
│ (idempotent)│ ◀── │ judgment │
└──┬────────┬──┘ └──────────────┘
│ │
▼ ▼
┌─────────┐ ┌────────────┐
│ TOOLS │ │ RUN LOG │
│(pg/api) │ │ + alerts │
└─────────┘ └────────────┘
Who this is for.
You are —
- Doing the same back-office workflow many times a day, and the steps are mostly the same.
- Comfortable with retries, replays, and a queue you can pause when something looks wrong.
- Willing to define a clear "done" state we can check programmatically.
You are not —
- Looking for a no-code Zapier replacement — automation here means custom code in your repo.
- Running one-off ad-hoc work — that's a copilot, not a runner.
- Without a way to monitor a long-running system once we hand it off.
Book a call.
30 minutes. We'll tell you if automation is the right shape, or if it isn't.