TopGit
GitHub Repo Review

Hatchet: Workflow Orchestration Engine

hatchet-dev/hatchet
HTopGit review image for hatchet-dev/hatchet
Review by Topgit.dev for hatchet-dev/hatchet, with GitHub repository stats and README context.
Quick verdict

Hatchet coordinates background tasks, AI agents, and durable workflows, with its entire durability and observability stack backed by Postgres rather than a separate datastore. That keeps self-hosting lean: you get the web UI, OpenTelemetry, and Prometheus metrics without wiring together a broker and a time-series store. Reach for it if your services use Python, TypeScript, Go, or Ruby and you want durable execution without that operational overhead; skip it if raw throughput on a Redis queue matters more than persisted task history.

Stars
★ 8.2k
Forks
⑂ 523
Language
Go
License
MIT
Topic
Automation
Updated
Oct 2026
Homepage
GitHub

Understanding Hatchet's Orchestration Engine

A platform that coordinates background tasks, AI agents, and durable workflows for applications written in Python, TypeScript, Go, and Ruby. Postgres serves as the persistence layer for the task runtime and the observability system, so self-hosting requires no separate broker. Queuing, retries, durability, real-time monitoring, alerting, and logging come bundled in one deployable unit, available as Hatchet Cloud or self-hosted.

When to Choose Hatchet for Your System

  • •Running AI agent pipelines that must resume after a worker crash instead of restarting from scratch, using durable tasks.
  • •Replacing ad hoc cron scripts with scheduled runs that carry retry policies and full observability out of the box.
  • •Building DAG-based data pipelines where you want to write your own integrations rather than rely on pre-built connectors, per the README's own guidance for choosing Hatchet over Airflow-style tools.
  • •Self-hosting a task queue without operating a separate Redis or RabbitMQ broker just for durability.
  • •Coordinating multi-tenant background processing where different teams need isolated visibility into their own tasks.

Core Capabilities of Hatchet

  • ✓One-off background tasks defined as plain functions, supporting fire-and-forget calls and fire-and-wait calls with subscriptions.
  • ✓Configurable retry policies with optional exponential backoff, plus cron jobs and scheduled runs for time-based triggering.
  • ✓Durable tasks for long-running workflows that recover from failure, and DAGs for data-pipeline-style task graphs.
  • ✓Task routing via worker labels or weighted affinity rules, with pause/resume via durable sleep and event waits.
  • ✓Scale controls: priority ordering, rate limiting including per-user dynamic limits, concurrency-based fair scheduling, and worker slots that cap how much work a single worker accepts.
  • ✓Real-time web UI for monitoring, with OpenTelemetry and Prometheus metrics built in rather than added separately.
  • ✓Multi-tenancy by default with users and roles; one Hatchet instance can serve multiple teams without separate deployments.
How this repository's GitHub stars have grown over time. Source: star-history.com.View the star history ↗

Getting Started with Hatchet

The fastest path, per the README, is signing up for Hatchet Cloud even if you plan to self-host later — it's the quickest way to see what a fully-deployed instance looks like. To run locally, install the Hatchet CLI on MacOS, Linux, or WSL, which requires Docker: curl -fsSL https://install.hatchet.run/install.sh | bash hatchet --version hatchet server start Full self-hosting and cloud documentation lives at docs.hatchet.run.

Hatchet Compared to Other Platforms

Temporal — the durable-execution platform Hatchet's own README names as its closest peer; durable tasks are pitched as a drop-in replacement for Temporal workflows, with OpenTelemetry and multi-tenancy built in.Celery — a Python task queue that discards execution history once a job finishes, unlike Hatchet's Postgres-backed persisted history.BullMQ — the Node.js equivalent of Celery with the same broker-only durability trade-off the README singles out.Airflow — a DAG orchestrator aimed at data engineers with built-in connectors; per Hatchet's README, pick Airflow for out-of-the-box datastore integrations and Hatchet when you'd rather write your own integrations at higher throughput. ↗Kestra — another DAG/workflow orchestration engine in the same category, worth comparing if you're evaluating self-hosted orchestration platforms. ↗

Strengths

  • ✓Using Postgres for both the task runtime and the observability system means self-hosting skips a separate broker or time-series store — the README calls this out as a key self-hosting advantage.
  • ✓One orchestration engine covers four languages (Python, TypeScript, Go, Ruby), letting polyglot teams share the same queue and observability layer instead of running one per language.
  • ✓Monitoring is built in from day one: real-time web UI, OpenTelemetry, and Prometheus metrics ship with the platform rather than requiring separate tooling.
  • ✓Scale controls are granular — worker affinity, dynamic per-user rate limits, concurrency-based fair scheduling, and worker slots — which matters once multiple task types compete for the same workers.
  • ✓MIT license imposes no copyleft requirement if you embed or modify the code.

Considerations for Using Hatchet

  • △The README acknowledges higher resource use than Redis- or RabbitMQ-backed queues; load-tested to 10k tasks/second, but a pure in-memory broker will still outperform it on raw throughput.
  • △Native SDKs are Python, TypeScript, Go, and Ruby only — no Java or .NET SDK is mentioned, so JVM or .NET teams would need to call it over HTTP.
  • △The quick-start assumes Docker; non-Docker or bare-metal self-hosting paths aren't documented in the README.
  • △Cloud pricing beyond "autoscaling and pay-as-you-go plans" isn't spelled out in the README, requiring direct inquiry before budgeting.

Common Questions About Hatchet

What programming languages does Hatchet support?

Hatchet supports applications written in Python, TypeScript, Go, and Ruby, per the README, allowing polyglot teams to share one orchestration engine across services.

Can Hatchet be self-hosted or is it cloud-only?

Hatchet can be self-hosted or run as the managed Hatchet Cloud service; the README recommends trying Hatchet Cloud first, even for self-hosters, to see what a fully-deployed instance looks like before setting one up yourself.

How does Hatchet compare to Temporal or Celery?

Hatchet's durable tasks are pitched as a drop-in replacement for Temporal or DBOS workflows, with OpenTelemetry observability built in. Against Celery or BullMQ, the key difference is persistence: Hatchet keeps full execution history in Postgres instead of only holding tasks on the broker while they run.

What is the license for the Hatchet project?

Hatchet is released under the MIT license, so there's no copyleft requirement if you embed or modify the code.

Does Hatchet provide real-time monitoring and observability?

Hatchet ships a real-time web UI for monitoring, plus OpenTelemetry support and Prometheus metrics, per the README's feature list.

What is Hatchet Cloud and what features does it offer?

Hatchet Cloud is the managed, hosted version of Hatchet; the README lists autoscaling, pay-as-you-go plans, multi-region deployments, SSO, and improved performance for monitoring, logging, and observability as distinguishing features.

The problem it solves

Celery- and BullMQ-style queues keep jobs on a Redis or RabbitMQ broker only while they run, losing the ability to replay or debug once a task finishes. Airflow-style DAG platforms, by contrast, are built for data engineers connecting to common datastores rather than high-volume application traffic. Teams running AI agents and background tasks have needed to pick one side. Hatchet addresses this by persisting full execution history in Postgres so you get replayable tasks and durable workflows without a separate broker or observability stack.

Who should try it — and who should skip

Try Hatchet if your team already runs Python, TypeScript, Go, or Ruby services and wants durable execution — retries, DAGs, cron, event triggers — without operating a separate broker and observability stack; the Postgres-backed design keeps the self-hosted footprint small. Skip it if you're on the JVM or .NET without an HTTP integration strategy, or if your workload needs more throughput than a durable system can deliver.

Related repositories

Source & attribution

Facts and quotes sourced from the hatchet-dev/hatchet GitHub repository (github.com/hatchet-dev/hatchet), including its README.

GitHub data · last synced Aug 13, 2026Reviewed by Henry
← Back to TopGit

Is hatchet worth your time?

ChatGPT, Claude and Perplexity can all read this page. Ask one of them what it makes of hatchet.

GitHub