Hamilton (DAGWorks)

Python micro-framework for writing reusable, modular dataflow functions. Hamilton turns Python functions into nodes in a directed acyclic graph (DAG) — functions declare their dependencies via argument names, and Hamilton automatically builds the execution graph. Used for feature engineering, LLM prompt chains, data transformations, and agent pipelines. Extremely lightweight: no YAML configs, no custom DSL — just plain Python functions with type hints.

Evaluated Mar 06, 2026 (0d ago) v1.x
Homepage ↗ Repo ↗ Developer Tools python dataflow dag open-source feature-engineering llm lineage
⚙ Agent Friendliness
68
/ 100
Can an agent use this?
🔒 Security
83
/ 100
Is it safe for agents?
⚡ Reliability
85
/ 100
Does it work consistently?

Score Breakdown

⚙ Agent Friendliness

MCP Quality
--
Documentation
88
Error Messages
82
Auth Simplicity
100
Rate Limits
100

🔒 Security

TLS Enforcement
85
Auth Strength
80
Scope Granularity
75
Dep. Hygiene
90
Secret Handling
88

Local framework with no network exposure. Apache 2.0 with active security-conscious development. Pure function design avoids hidden state and side effects that cause security issues. DAGWorks Platform uses standard web security for cloud features.

⚡ Reliability

Uptime/SLA
88
Version Stability
85
Breaking Changes
82
Error Recovery
85
AF Security Reliability

Best When

You want to write LLM pipelines, feature engineering, or agent data flows as clean, testable Python functions with automatic lineage tracking and minimal framework overhead.

Avoid When

You need managed scheduling, distributed execution across machines, or a visual workflow UI — Hamilton handles the 'what to execute' not 'when and where'.

Use Cases

  • Build modular LLM agent pipelines where each step (retrieval, reranking, generation, validation) is a typed Python function automatically composed into a DAG
  • Create reusable feature engineering pipelines where features depend on other features — Hamilton auto-resolves execution order
  • Track data lineage automatically through the function DAG for debugging agent pipelines and reproducing outputs
  • A/B test different implementations of pipeline steps by swapping function overrides without changing calling code
  • Define agent prompt construction logic as composable functions with Hamilton managing context assembly and caching

Not For

  • Complex scheduling or event triggers — Hamilton is a execution framework, not an orchestrator; pair with Prefect/Dagster for scheduling
  • Teams wanting a visual workflow designer — Hamilton is code-first; use Kestra or n8n for no-code workflow design
  • Long-running distributed compute — Hamilton is for in-process dataflows; use Spark or Ray for large-scale distributed execution

Interface

REST API
No
GraphQL
No
gRPC
No
MCP Server
No
SDK
Yes
Webhooks
No

Authentication

Methods: none
OAuth: No Scopes: No

Hamilton open source is a local Python library with no auth. DAGWorks Platform (cloud UI for lineage visualization) requires account. Core framework runs locally with zero auth requirements.

Pricing

Model: open_source
Free tier: Yes
Requires CC: No

Core Hamilton library is completely free. DAGWorks Platform cloud add-on provides lineage UI, observability, and team features — free for individuals, paid for teams.

Agent Metadata

Pagination
none
Idempotent
Full
Retry Guidance
Not documented

Known Gotchas

  • No REST API — agents interact via Python SDK only; hamilton.driver.Driver executes the graph in-process
  • Function argument names ARE the dependency declarations — agents generating Hamilton code must use exact output node names as argument names
  • Hamilton validates the full DAG at Driver init time — missing or misconfigured nodes cause startup failures, not runtime failures
  • Overrides and config are passed at Driver construction, not at execution time — agents must rebuild the Driver to change configuration
  • Hamilton's @config.when decorator enables conditional logic but requires understanding of Hamilton's config resolution system
  • The hamilton.plugins module is needed for dataframe integrations (pandas, polars) — not all integrations are in the core package

Alternatives

Full Evaluation Report

Detailed scoring breakdown, competitive positioning, security analysis, and improvement recommendations for Hamilton (DAGWorks).

$99

Scores are editorial opinions as of 2026-03-06.

5208
Packages Evaluated
26151
Need Evaluation
173
Need Re-evaluation
Community Powered