DEV.co
Open-Source DevOps · ovh

utask

µTask is a lightweight workflow automation engine written in Go that executes business processes defined in YAML. It requires only a PostgreSQL database and handles task scheduling, execution, and state management across multiple instances with built-in encryption and audit trails.

Source: GitHub — github.com/ovh/utask
1.4k
GitHub stars
100
Forks
Go
Primary language
BSD-3-Clause
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositoryovh/utask
Ownerovh
Primary languageGo
LicenseBSD-3-Clause — OSI-approved
Stars1.4k
Forks100
Open issues85
Latest releasev1.34.0 (2026-03-18)
Last updated2026-06-10
Sourcehttps://github.com/ovh/utask

What utask is

µTask coordinates workflow execution through a single PostgreSQL backend (9.5+), with multiple instances using distributed locking to avoid collisions. Tasks are modeled as directed acyclic graphs with built-in support for action plugins (Go), custom functions, and encrypted state persistence. Supports async execution with transient error handling and state recovery.

Quickstart

Get the utask source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/ovh/utask.gitcd utask# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Infrastructure Provisioning & Configuration

Kubernetes ingress TLS provisioning, VM spawning, cloud resource orchestration, and multi-step infrastructure workflows triggered by webhooks or API calls.

Asynchronous Business Process Workflows

Multi-step approval chains, fraud detection pipelines with human intervention points, and long-running processes requiring state persistence and resumability across service instances.

Team Onboarding & Identity Management

Automated account creation across multiple systems, SSH key registration, repository setup, and notification workflows with human approval gates.

Implementation considerations

  • PostgreSQL 9.5+ is a hard dependency; plan for HA, backup, and key rotation procedures documented in the README.
  • Authentication is delegated to a reverse proxy (x-remote-user header); in-built basic-auth is development-only and unsuitable for production.
  • Task templates are version-controlled YAML files; establish a git workflow and code review process for template changes.
  • Custom actions require Go plugin development and compilation; factor in Go expertise and plugin build/deployment pipelines.
  • Multiple µTask instances coordinate via the database; horizontal scaling requires load balancing and careful regional configuration.

When to avoid it — and what to weigh

  • Real-time, Low-latency Requirements — µTask is designed for eventual consistency and asynchronous processing; not suitable for sub-second response requirements or streaming workloads.
  • Minimal Database Operations — Requires PostgreSQL and creates tight coupling; if you need a fully serverless or database-free architecture, µTask adds operational overhead.
  • Complex Conditional Logic at Scale — While YAML templates support conditionals, complex business rules may become unmaintainable; consider rules engines or DSLs if logic complexity is high.
  • No Custom Go Plugin Capability — If your organization cannot or will not develop/maintain Go plugins for custom actions, you are limited to built-in action types.

License & commercial use

BSD 3-Clause License: permissive OSI-approved license allowing commercial use, modification, and distribution with attribution and liability disclaimer. No copyleft restrictions.

BSD 3-Clause is a permissive license suitable for commercial deployment. Owned by OVH, a public cloud provider. No explicit warranty or indemnification; review liability implications for mission-critical use. No commercial support model is stated in the provided data; confirm with OVH or community for production SLA requirements.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityModerate
DEV.co fitGood
Assessment confidenceHigh
Security considerations

Data is encrypted at rest (symmecrypt library); key rotation procedure documented. All task state is encrypted and only visible to authorized users per README claim. Authentication delegated to reverse proxy; no native auth means security depends on proxy configuration. Basic-auth for development only. No vulnerability disclosure process, security audit results, or CVE history provided in data. Audit trail is maintained encrypted in database. Review encryption strength, key management, and proxy security model before production deployment.

Alternatives to consider

Apache Airflow

Large-scale workflow orchestration with rich UI, extensive integrations, and enterprise support; heavier operational footprint (metadata DB, scheduler, workers), but mature ecosystem.

Temporal / Cadence

Distributed workflow engine with durable execution and replay semantics; higher complexity but better suited to microservices with strict consistency requirements.

n8n / Make (formerly Zapier)

Low-code workflow SaaS with hundreds of pre-built connectors; no self-hosted operational burden but less customization and vendor lock-in.

Software development agency

Build on utask with DEV.co software developers

Deploy µTask with Docker Compose in minutes. Review the architecture guide and plugin examples on GitHub, then customize with Go plugins for your specific use case.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

utask FAQ

Can µTask scale to millions of tasks?
Unknown. Project lacks published benchmarks. Scaling depends on PostgreSQL capacity and network throughput. Architecture supports multiple instances but no load test results provided.
What authentication methods are supported?
Production: delegated to reverse proxy via x-remote-user header (allows SSO if proxy provides it). Development: optional basic-auth configstore. No native OIDC, SAML, or LDAP documented.
Can I use µTask without writing Go code?
Yes, for simple workflows using built-in actions. Custom actions require Go plugin development. Task templates are YAML and do not require code.
How is state recovered if an instance crashes?
Tasks are held in the database with encrypted state. If an instance crashes mid-execution, another instance will re-collect and resume the task from its last checkpoint.

Work with a software development agency

DEV.co helps companies turn open-source tools like utask into production software. Our software development services cover the full lifecycle — architecture, web development, integration, and maintenance — delivered by software developers and web developers who ship. Engage our software development agency to implement or customize it for your open-source devops stack.

Ready to Automate Your Workflows?

Deploy µTask with Docker Compose in minutes. Review the architecture guide and plugin examples on GitHub, then customize with Go plugins for your specific use case.