runwright

Scheduled jobs, without Airflow

Still running important jobs through cron or GitHub Actions?

Runwright gives scheduled scripts, notebooks and container jobs shared logs, alerts, reruns and AI failure diagnosis, without adopting a full workflow orchestrator.

Enter your email to join the early-access list:

Early users will be invited to test Runwright with one real scheduled job. No spam.

RecentTypeNameNext runLast run
pydaily_kpis.pyin 14hSucceeded
notebookretrain_model.ipynbin 3dSucceeded
pysync_partner_feed.pyin 22mFailed

09:31 sync_partner_feed.py failed after 12 seconds · View logs · Rerun

AI diagnosis KeyError: 'region'. The feed dropped the region column · View suggested fix

Where do your scheduled jobs live today?

Move recurring code into one place, without rewriting it

Runwright is built for the jobs that already work, but are hard to operate: scripts on laptops, notebooks run by hand, cron jobs on forgotten servers, and scheduled tasks buried in CI/CD.

cron

Using cron?

Keep the simplicity, add shared logs, history, alerts, ownership and one-click reruns.

ci

Using GitHub Actions?

Keep your code in Git, but get a UI designed for recurring business jobs rather than deployments.

py

Using a simple scheduler?

Keep the easy job setup, add containers, team controls, richer run operations and private-network execution.

dag

Considering Airflow?

Use Runwright when you need reliable scheduled jobs, not a full orchestration framework or platform project.

Runwright fits the awkward middle ground.

More visibility than cron. A fraction of the overhead of an orchestrator.

Everything you need to operate recurring code

Stop wondering whether the job ran

Runwright gives recurring jobs the visibility they are usually missing.

Scheduling you can trust

Cron with a timezone, validated before it saves. Or skip the schedule and run jobs on demand.

See every run

View status, duration, logs and the exact source version used.

Rerun in one click

Repeat a failed or previous run without rebuilding its configuration.

Know when it breaks

Failure alerts land in Slack with a link straight to the failing run.

AI on every run

Know what went wrong before opening the logs

Runwright analyses each run and gives you a plain-English summary of what happened, what looks unusual and what to try next.

Failures explained

Understand the likely cause without digging through raw logs.

Fixes suggested

Get a reviewable code change or practical next step.

Ask your run history

Ask questions such as “Why has this job slowed down this week?”

$ python sync_partner_feed.py

Loaded 18,422 partner records

KeyError: 'region'

AI diagnosis

The latest feed no longer contains the expected region column.

Suggested fix

Validate the incoming schema before transforming the feed, or update the mapping for the new field name.

Run history signal

Row count is down 38% versus the previous seven successful runs.

Silent failures caught

Runwright can flag empty outputs, unusual warnings or major changes even when a job exits successfully.

Built for real recurring work

From notebook reports to operational scripts

py

Replace a fragile cron job

Move a script off someone's laptop or undocumented server. Keep its schedule, logs and history in one place.

notebook

Schedule a notebook

Run an .ipynb automatically and keep its output history for every run.

container

Run an existing container

Use your own image when a job needs specialised packages, system dependencies or another language.

Bring what you already have

No rewrite required

py

Python scripts

Run an existing .py file with your selected Python version and dependencies.

notebook

Jupyter notebooks

Execute notebooks on a schedule via papermill. Cell output lands straight in the run log.

container

Containers

Bring an existing image and command. Any language that runs in the container can run through Runwright.

git

Git repositories

Each run pulls fresh from your repo and records exactly which commit was executed.

S3 and mounted file shares as job sources are on the roadmap.

Run it where your data lives

Simple for users. Controlled by your platform team.

Runwright manages jobs, schedules and run history while execution happens inside your own cloud, VPC or network. The runner connects outbound, so you do not need to expose inbound ports.

  • No inbound access: the runner opens the connection, so you expose no ports.
  • Your credentials stay yours: jobs read your internal services directly; nothing sensitive leaves your network.
  • Revocable per team: each runner has its own token, shown once and revocable anytime.
Runwright Cloud
jobs · schedules · alerts · run history
outbound only · no inbound ports
Private runner
installed once inside your environment
runs your job
Your systems
databases · S3 · file shares · internal APIs · private packages

Early access

Your scheduled jobs shouldn't be this much work.

No spam. Just product updates and an invitation when your workspace is ready.