unsubbed.co

µTask

Released under BSD-3-Clause, µTask provides automation engine that models and executes business processes declared in YAML on self-hosted infrastructure.

Open-source automation engine, honestly reviewed. No marketing spin — just what you get when you drop it into production.

TL;DR

  • What it is: BSD-3-Clause-licensed workflow automation engine from OVH that models business processes as declarative YAML templates and executes them asynchronously [README].
  • Who it’s for: DevOps and platform engineering teams who want a lightweight, auditable task runner for operational workflows — certificate provisioning, employee onboarding pipelines, multi-step API integrations — without standing up something as heavy as Temporal or Airflow [README].
  • Cost savings: Fully self-hosted, zero licensing cost. The only infrastructure requirement is a PostgreSQL instance. Competitor Temporal Cloud charges based on execution duration; µTask on a $6/mo VPS has no metering [README].
  • Key strength: Minimal operational footprint. One binary, one Postgres database, and you have an encrypted, auditable, retry-capable workflow engine [README].
  • Key weakness: 1,366 GitHub stars tells you this is a small community project. Third-party reviews of µTask are nearly nonexistent — the tool is genuinely under-documented outside of OVH’s own README and is aimed squarely at engineers, not non-technical founders.

What is µTask

µTask is an automation engine written in Go, open-sourced by OVH — one of Europe’s largest cloud providers. It solves a specific problem: you have a multi-step operational process (provision a certificate, spin up a developer environment, route a payment through an antifraud check) that needs to run asynchronously, survive transient failures, and leave an auditable log of every intermediate state. Bash scripts don’t do that. A ticketing system doesn’t do that. µTask does [README].

The core idea is that you write task templates in YAML. A template declares the inputs a task takes, the actions it will execute, and the dependencies between those actions. When someone (or a webhook, or an API call) triggers a template, µTask handles the rest: spawning the task, executing each action in dependency order, retrying on transient errors, storing all intermediate state encrypted in Postgres, and exposing the whole thing through a REST API and a web dashboard [README].

Three things make it distinct within the lightweight orchestration space:

  1. Single-dependency simplicity. The only infrastructure requirement is PostgreSQL. No Redis, no message broker, no separate scheduler process. For teams that have been burned by the operational complexity of Airflow or Kafka-backed systems, this matters [README].
  2. Everything encrypted. Task state, inputs, outputs — all encrypted at rest. For workflows that touch credentials, API keys, or personal data (new employee onboarding, payment processing), this is a meaningful default rather than an afterthought [README].
  3. Go plugin system. You extend µTask by writing custom action types as Go plugins. The built-in action library covers HTTP calls, SSH, email, and subprocess execution. If you need something custom, you write a Go struct and register it — not a DSL, not a config file [README].

The GitHub URL — github.com/ovh/utask — tells you something about the tool’s origin: this is production infrastructure from one of Europe’s largest cloud providers, open-sourced. It is not a startup’s marketing play. It has 1,366 stars as of this writing, which is modest, and it is not trying to be Zapier.


Why People Choose It

Independent third-party reviews of µTask are sparse — the five sources provided for this review do not specifically cover the tool, and a broader search finds no major writeups on product review sites, Trustpilot, or G2. This is itself diagnostic: µTask does not have a community of non-technical users sharing Zapier-comparison blog posts. It has DevOps practitioners using it quietly in infrastructure contexts.

What draws teams to it, based on the README and OVH’s production examples, breaks down cleanly:

The “just PostgreSQL” argument. Ops teams that have debugged RabbitMQ partitions at 2am and maintained Airflow DAG state machines through version upgrades have strong opinions about dependency count. µTask’s bet is that the entire state machine — tasks, templates, execution history, encryption keys — can live in Postgres with no additional moving parts. For small-to-medium operations teams, that’s a serious selling point [README].

The audit trail requirement. Regulated industries (payments, healthcare, anything touching SOC 2) often need a verifiable record of who triggered what, when, and what the system did in response. µTask’s encrypted, append-only task history addresses this without requiring you to bolt on a separate audit logging service [README].

The “human-in-the-loop” workflow. One of the README’s highlighted real-world examples is a payment antifraud flow that can pause execution and generate a form for a human operator to fill in, then continue based on that input [README]. This pattern — automated steps, optional human approval gate, continue — is surprisingly hard to implement cleanly. µTask makes it a first-class concept.

OVH provenance. Using software that was built to run at OVH scale and then open-sourced is a different risk profile than betting on a two-person startup’s automation engine. It does not guarantee future maintenance — OVH open-sourced it; they did not necessarily promise to keep it on life support — but it does signal that the tool was tested against real operational load.


Features

Based on the README and merged profile:

Workflow engine:

  • YAML template system: define inputs, action graph, dependencies [README]
  • Asynchronous execution with automatic retries on transient errors [README]
  • Human-in-the-loop steps: pause execution pending a form submission [README]
  • Full encrypted audit trail of every state transition [README]
  • REST API with OpenAPI spec exposed at /unsecured/spec.json [README]
  • Web dashboard for task creation, monitoring, and template browsing [README]
  • Sub-tasks: a task can spawn child tasks [README]

Built-in action types (plugins):

  • HTTP requests [README]
  • SSH execution [README]
  • Email sending [README]
  • Subprocess/script execution [README]
  • Custom action types via Go plugin interface [README]

Infrastructure features (from merged profile):

  • Docker and Docker Compose deployment [profile]
  • Kubernetes deployment [profile]
  • PostgreSQL as sole data store [README]
  • Webhooks as task triggers [profile]
  • Two-factor authentication [profile]
  • REST API for programmatic control [profile]

What it does not have:

  • A visual drag-and-drop flow builder (YAML only)
  • A marketplace of pre-built integrations (unlike n8n’s 400+ nodes or Activepieces’ 600+)
  • A managed cloud SaaS tier
  • Native connectors to Slack, Gmail, HubSpot, or the other app categories that Zapier covers
  • Any AI or LLM integration built in

If you came here looking for a no-code Zapier replacement, µTask is not it. It is an engineer’s tool.


Pricing: SaaS vs Self-Hosted Math

µTask is fully open-source under BSD-3-Clause. There is no paid tier, no managed cloud offering, no per-execution pricing, and no commercial license variant. The software is free; you provide the infrastructure.

Self-hosted cost:

  • µTask binary: $0 [README]
  • PostgreSQL: bundled in the docker-compose setup, or use an existing managed instance ($5–25/mo on managed Postgres if you don’t have one)
  • VPS to run it: $5–10/mo on Hetzner or Contabo for a small ops team’s workload

What you’re replacing:

  • If you’re currently using Temporal Cloud, pricing is based on state transitions and storage — small workflows can run $10–50/mo; complex high-volume pipelines scale into hundreds. µTask on your own VPS is a flat $5–10/mo regardless of execution volume.
  • If you’re running Apache Airflow on managed cloud (Astronomer, Google Cloud Composer), the infrastructure overhead is typically $50–200/mo before you’ve written a single DAG. µTask’s minimal footprint makes it meaningfully cheaper for operational workflows that don’t need Airflow’s data pipeline features.
  • There is no meaningful Zapier comparison here. µTask is not a Zapier replacement. If someone told you it was, they misread the README.

Concrete math for a platform team: If you’re running 50+ recurring operational workflows (certificate renewals, user provisioning, incident response runbooks) and currently paying for Temporal Cloud or a managed Airflow instance at $100–200/mo, µTask on a $10 VPS with your existing Postgres saves you $90–190/mo. Over a year, that’s $1,000–$2,000. The trade-off is engineering time to migrate templates and the operational burden of running it yourself.


Deployment Reality Check

The quick-start path in the README is:

mkdir utask && cd utask
wget https://github.com/ovh/utask/releases/latest/download/install-utask.sh
sh install-utask.sh
docker-compose up

That gets you a running instance on localhost with basic auth (admin / 1234) and a working dashboard. From there, the dashboard is available at http://localhost:8081/ui/dashboard and the API spec at http://localhost:8081/unsecured/spec.json [README].

What you actually need for production:

  • Linux server with Docker and docker-compose
  • A PostgreSQL instance (the default docker-compose bundles one; for production you probably want it external and backed up)
  • A reverse proxy (nginx or Caddy) for HTTPS
  • A domain name if you want to expose it beyond localhost
  • An understanding of YAML enough to write your first task template

What can go wrong:

  • µTask’s documentation lives primarily in the README. There is no hosted docs site with tutorials, examples library, or community forum. If you get stuck past the basics, you’re reading Go source code or opening a GitHub issue [README].
  • Third-party plugin ecosystem is essentially nonexistent. If you need a custom action type, you write Go. This is a hard requirement that eliminates non-engineering teams from self-service use.
  • The project has 1,366 stars and comes from OVH’s internal tooling — the maintenance cadence and future development roadmap are not publicly documented. Betting your critical operational workflows on this tool means accepting that maintenance may slow down if it stops being a priority for OVH.
  • The web UI, based on the README screenshots, is functional and clean but not polished to commercial product standards. This is a tool built to run workflows, not to impress a procurement committee.

Realistic time estimates:

  • Technical user with Docker experience: 30–60 minutes to a running instance, 2–4 hours to a first working task template
  • Engineering team migrating from ad-hoc scripts: 1–2 days to model existing processes as µTask templates
  • Non-technical user: not the right tool

Pros and Cons

Pros

  • BSD-3-Clause license. The most permissive major open-source license. Use it, fork it, embed it in your product, redistribute it — no commercial restrictions, no “fair-code” asterisk [README].
  • Single infrastructure dependency. Only PostgreSQL required. No message broker, no secondary cache, no separate scheduler. Simple to operate and simple to debug [README].
  • Encrypted by default. All task state encrypted at rest. For workflows that handle credentials, payment data, or PII, this is a meaningful default [README].
  • Human-in-the-loop workflows. First-class support for pausing execution pending human input via generated forms. Uncommon in lightweight tools [README].
  • OVH provenance. Built and battle-tested at a major cloud provider before being open-sourced. Not a side project [README / GitHub org].
  • Full REST API. Every operation accessible programmatically. Easy to integrate into existing internal tooling [README / profile].
  • Kubernetes-native deployment. Helm chart available for teams already on K8s [profile].
  • Free, forever. No pricing page to check. No “this feature is enterprise-only.” No sales call required [README].

Cons

  • YAML-only workflow definition. There is no visual builder. Every workflow is code. Non-technical users cannot use this tool without engineering support [README].
  • No integration marketplace. You are not getting 600+ pre-built connectors to SaaS apps. Built-in action types cover HTTP, SSH, email, subprocess. Everything else is a Go plugin you write yourself [README].
  • Tiny community. 1,366 GitHub stars, no major review sites covering it, no active forum or Slack community visible from public sources. When you hit a problem, you’re largely on your own.
  • No managed cloud tier. µTask is self-hosted only. If you want zero ops burden, there is no “µTask Cloud” to sign up for. You run the server [README].
  • Documentation gaps. The README is thorough for a README. It is not a documentation site. Production deployment guides, troubleshooting runbooks, and best-practice templates are not centrally published [README].
  • Go plugin requirement for extensions. Custom action types require Go code. For teams without Go engineers, the built-in action library is the ceiling [README].
  • Maintenance uncertainty. OVH open-sourced this tool but has not published a public roadmap. The project’s future development pace is unclear.

Who Should Use This / Who Shouldn’t

Use µTask if:

  • You’re a DevOps or platform engineering team running multi-step operational workflows (certificate renewal, employee provisioning, runbook automation) and you’re tired of maintaining ad-hoc scripts with no retry logic or audit trail.
  • You value minimal infrastructure footprint — one binary, one Postgres, done.
  • You need an auditable, encrypted execution history for compliance reasons.
  • You have at least one Go engineer on the team who can write custom action types as needed.
  • You want a BSD-3-licensed tool you can embed in your own product or resell without a commercial agreement.
  • You’re replacing something like Temporal Cloud and the per-execution cost is becoming material.

Skip it (pick n8n or Activepieces instead) if:

  • You’re a non-technical founder looking for a Zapier replacement with a drag-and-drop interface and pre-built connectors to Gmail, HubSpot, and Slack.
  • Your team doesn’t have Go experience and you’ll need custom action types.
  • You want a large community, extensive documentation, and third-party integrations.
  • You need built-in AI/LLM workflow steps out of the box.

Skip it (pick Temporal or Argo instead) if:

  • You’re building high-volume, long-running workflows with complex state machines, versioning requirements, and enterprise-grade observability.
  • You need a large ecosystem of language SDKs (Python, Java, TypeScript) rather than just Go.
  • You’re on Kubernetes and want a workflow engine designed natively for that environment.

Skip it (stay on your current stack) if:

  • Your “workflows” are simple enough to be a cron job plus a shell script. µTask is overhead for simple scheduled tasks.
  • Your team has zero interest in maintaining self-hosted infrastructure and no ops budget to pay someone who does.

Alternatives Worth Considering

  • Temporal — The serious workflow engine for engineering teams. Much richer SDK support (Go, Java, TypeScript, Python), better observability, larger community, and a managed cloud offering. Trade-off: far more infrastructure complexity and cloud pricing that scales with execution. Choose Temporal if your workflows are complex and long-lived.
  • Apache Airflow — Designed for data pipelines rather than operational workflows. Vastly larger community and integration ecosystem, but significantly heavier to operate. Not a direct replacement; different use case.
  • Prefect — Data workflow orchestration with a polished managed cloud tier. Python-native. Closer to Airflow than to µTask.
  • Argo Workflows — Kubernetes-native DAG execution engine. More powerful than µTask for K8s environments, more complex to set up and maintain.
  • Windmill — Newer, script-first automation platform with a visual interface and a growing community. Supports Python, TypeScript, Go, and Bash. Probably the closest open-source alternative for teams that want µTask’s self-hosted control but a better UI and broader language support.
  • n8n — If your use case is connecting SaaS apps with automated flows rather than running operational pipelines, n8n is the correct comparison. Different problem domain.
  • Activepieces — MIT-licensed Zapier alternative. Clean UI, non-technical-friendly, 600+ integrations. Again, entirely different use case from µTask.

The realistic shortlist for µTask’s actual use case — lightweight operational workflow orchestration with minimal dependencies — is µTask versus Windmill versus writing it yourself in a task queue. Windmill has a better DX and broader language support; µTask has a simpler infrastructure footprint and cleaner encryption story.


Bottom Line

µTask is a focused tool solving a specific problem: you have multi-step operational processes that currently live in bash scripts, runbooks, or “that one engineer’s brain,” and you need them to be async, auditable, retry-capable, and encrypted. OVH built this for their own infrastructure, open-sourced it under BSD-3, and it works. It is not trying to be Zapier, n8n, or Temporal. It is trying to be the simplest possible thing that handles real operational workflow orchestration without requiring a distributed system to run it.

The honest caveat: with 1,366 stars, thin third-party documentation, and no public roadmap, you are accepting dependency on OVH’s internal prioritization. If µTask stops being useful to OVH’s ops teams, maintenance may slow. For teams that can absorb that risk — and for many small-to-medium engineering orgs with Go capability, this is an acceptable bet — the tool delivers meaningful value at zero licensing cost. If you want a safer long-term bet with a larger community, Windmill is worth the evaluation. But if minimal footprint and BSD-3 freedom matter, µTask earns a genuine look.


Sources

  1. The Homelab Wiki — Self Hosted Application Reviews (Noted.lol) (contextual reference, not µTask-specific). https://thehomelab.wiki/books/helpful-tools-resources/page/self-hosted-application-reviews-notedlol
  2. OpenClaw — Key Features and Use Cases (contextual reference, self-hosting use cases). https://openclawn.com/openclaw-features-use-cases/
  3. Yash Patel, XDA Developers — “5 self-hosted LLMs I use for specific tasks” (contextual reference, self-hosted tooling context). https://www.xda-developers.com/self-hosted-llms-i-use-for-specific-tasks/
  4. IceHrm Documentation — Time & Attendance (contextual reference). https://icehrm.com/docs/time-attendance/
  5. Afam Onyimadu, MakeUseOf — “I manage all my tasks with this self-hosted tool for free” (Jan 6, 2026; contextual reference on self-hosted task management psychology). https://www.makeuseof.com/i-manage-all-my-tasks-with-this-self-hosted-tool-for-free/

Primary sources:

  • GitHub repository and README: https://github.com/ovh/utask (1,366 stars, BSD-3-Clause license, OVH)
  • µTask merged tool profile (stars, license, feature list, category metadata)

Note: Independent third-party reviews of µTask specifically were not available in the sources provided. All tool-specific claims are sourced directly from the GitHub README and repository metadata.

Features

Authentication & Access

  • Two-Factor Authentication

Integrations & APIs

  • Plugin / Extension System
  • REST API
  • Webhooks