Open Source
Self-hosted uptime monitoring.
Run it on your own boxes.
The open-source engine behind ObserveOne. Every monitor type, run from your own boxes. Multi-region. Apache 2.0.
Open Source
The open-source engine behind ObserveOne. Every monitor type, run from your own boxes. Multi-region. Apache 2.0.
What it does
Same monitor types the SaaS uses, minus the SaaS. One image, one command.
HTTP and API checks with assertions. TCP and UDP reachability. Database liveness. TLS certificate health. Browser checks. Heartbeats. One worker runs them all.


For cron jobs and background workers. Your service pings a URL we give you on every successful run. We alert when a ping doesn't arrive in time. Recovery alerts fire when it comes back.




Agents pull work from the master. No inbound ports needed on the agent side. Spin one up wherever you need a check to run from.
View docs →

Sign in, add monitors, watch runs, set up status pages, wire alert channels. Built into the same image, same port. No extra service to run.


Webhook, Discord, Slack, and email. Bind any channel to any monitor. Bring your own SMTP. No third-party alert vendor sits between you and the outage.
View docs →Public status pages list your monitors plus an incident timeline you write yourself. Markdown-rendered, XSS-safe, no third party. Backups carry the timeline along with everything else.
Every failed browser run saves the Playwright trace and a screenshot to bundled S3-compatible storage (RustFS, no setup). Download from the run detail page and open locally to see exactly where it broke. Backups bring them along to the new host.
One command dumps the database and every Playwright artifact into a single tar.gz; one restores it on a fresh host. The schema-version guard refuses dumps that don't match the target's migration head, so you can't silently downgrade.
View docs →Beyond expiry: assert the full chain trusts a public root, the hostname matches the certificate's SAN, and the CN/SAN matches a regex you control. A reverse-proxy swap that quietly serves the wrong cert fails the check instead of slipping into prod.
View docs →Both are self-hosted and open source. Here's where they differ.
Browser checks
End-to-end UI flows, not just an HTTP ping.
API response assertions
Kuma matches keywords; oo-workers asserts on response shape.
Multi-region agents
Run checks from wherever you need them.
Full TLS validation
Kuma reports expiry; oo-workers validates the chain too.
TCP / UDP with payload checks
Export / import via CLI
Move a full monitor set between hosts in one command.
Heartbeats
Status pages
oo-workers status pages include an incident timeline you write yourself.
Backup & restore
DB + browser run artifacts in one .oodump.tar.gz, schema-version guard on restore.
Browser run artifacts
Playwright trace.zip + screenshot saved on failure, downloadable per run, included in backups.
License
oo-workers is the engine the SaaS runs on. Same code. You give up the hosted dashboard, account management, and our regions. You keep your data on your hardware and pick the regions yourself. Apache 2.0.
Nothing. Apache 2.0. No enterprise tier, no usage cap, no telemetry. You pay for the boxes you run it on.
Docker. The README has a copy-paste compose snippet that gets you running. After that, the in-app docs cover the rest.
Kuma is excellent and has a head start on maturity and alert provider breadth. Pick oo-workers when you need browser checks, multi-region, API response assertions, or a CLI export/import workflow. If basic HTTP monitoring from one host covers you, Kuma is the right call.
Yes, mostly. The CLI exports your monitors, API checks, alert channels, QA suites, status pages, and heartbeats. Heartbeat ping URLs are preserved across the move, so services already POSTing to /heartbeat/<token> keep working unchanged. What doesn't carry: incidents (runtime state), alert-channel routing on heartbeats (rewire on the self-host), and a few SaaS-only channel types (Teams, Telegram, SMS).
Apache 2.0 with the patent grant. Full text in the LICENSE file at the repo root.
GitHub Issues: https://github.com/Observeone1/oo-workers/issues. Discussions are open too for questions.
Start for free
Generate tests, monitor production flows, and catch failures before users report them.
No credit card required · Free plan available · Upgrade anytime