Dify is a visual workflow + RAG studio with 158k GitHub stars and a drag-and-drop canvas aimed at mid-sized teams. The production shape is a 16-container Docker Compose stack with an 8 GiB RAM floor, under a modified Apache licence that forbids multi-tenant SaaS resale. loomcycle is one ~80 MB Go binary that owns the agent loop end-to-end, under one Apache-2.0 licence with no feature gating.
The one-line difference. Dify is a studio you deploy as a stack; loomcycle is a runtime you deploy as a binary. If what you want is a drag-and-drop canvas for citizen developers plus a mature RAG pipeline, Dify is the better fit. If what you want is a self-hosted agent runtime with the Decision tool, Teams-as-one-file, bi-temporal memory and whole-deployment Snapshots in one process, loomcycle is the better fit.
Visual workflow builder with Chatflow, Workflow, Agent and BasicChat types. Drag-and-drop canvas with Note / Iteration / Loop nodes. Knowledge Pipeline for document ingestion into Weaviate / Qdrant / pgvector / Milvus / TiDB. Two-way MCP support since v1.6.0. Workflow triggers (schedule / webhook / SaaS event) since v1.10.0. v1.17.0 added an E2B cloud sandbox backend for agents and build-time home snapshots; v1.17.1 shipped per-dataset API keys and keyboard navigation on the canvas. SSO is Enterprise-tier-only.
providers:Anthropic direct, OpenAI, DeepSeek, Ollama, Gemini, Bedrock, more
license:Apache-2.0, the whole thing, versioned to v1.111.0
shape:HTTP + gRPC + MCP + WebSocket + TS + Python surface, one process
The runtime that owns the agent loop. Bi-temporal memory with subject-document identity and a published LoCoMo 0.74. The Decision tool as a general primitive. Teams-as-one-file state machines with declarative decision nodes, parallel + consolidator, pushback. Whole-deployment Snapshots covering every substrate def plus runtime state. Multi-replica HA on Postgres LISTEN/NOTIFY. Bundled dev toolchain + headless Chromium. Validated by two months of continuous production operation at JobEmber.ai.
The box count
The headline difference between the two deployment stories, in boxes:
SQLite file by default; Postgres optional for HA. Idle ~80 MB RAM; runs on a 1 GiB VPS. Headless Chromium bundled in the toolbox image if you want it.
Where they overlap
Both support many model providers through one abstraction. Both ship MCP support on both the client and server sides. Both expose a browser-facing admin UI. Both have a tool / plugin system for extending the agent's capability. Both have a schedule and webhook trigger surface. Both are Apache-2.0-derived, both are self-hostable, both can run entirely without the vendor's cloud. If what you need is "a chat UI backed by an agent that reads a corpus and answers," either one will carry you.
Capability matrix
Rows marked ✦ are where loomcycle's answer is materially different from Dify's. Some of those rows favour loomcycle, some favour Dify; the mark flags a real divergence, not a value judgement.
Capability
Dify
loomcycle
Deployment artefact
16-container Docker Compose stackno single-binary or single-container option as of v1.17.1
One ~80 MB Go binarycurl + chmod +x + ./loomcycle serve
Smallest viable deployment
2 vCPU + 8 GiB RAM VPSdocs' official minimum is 4 GiB; 8 GiB is the real floor for a working workload
1 GiB VPS (comfortably)idle footprint ~80 MB RAM; runs on a laptop
Idle memory footprint
~2.5 GiB (spikes to 4-6 GiB during document indexing)Weaviate alone takes ~500 MiB
~80 MBsingle process, no bundled vector DB
License
Dify Open Source License (modified Apache-2.0)no multi-tenant SaaS resale; the Dify logo and copyright may not be removed
Apache-2.0 for the whole thingno feature gating, no additional restrictions
Primary language
Python backend + TypeScript (Next.js) frontend
GoTS and Python client SDKs; HTTP/gRPC/MCP wire parity
Pre-built chat-platform bridges (Slack / Discord / Teams / WhatsApp)
~Slack via build-your-own plugin SDK; Discord/Teams/WhatsApp through third-party Zapier/Yoom only
~Teams bridge shipped; Slack / Discord / GitHub / Linear / Telegram / Twilio adapters in the Bridges design, under RFC-first implementation
Bundled dev toolchain + headless Chromium
✗bring your own; E2B cloud sandbox for code execution
✓Node, Go, Rust toolchains, git, headless Chromium bundled in the toolbox image
Admin UI
✓Dify's acknowledged strength; Ctrl+K command palette (v1.17.0); mature workspace model
✓loomcycle Web UI + LoomBoard canvas; younger UI than Dify's
Pricing (OSS self-host)
Free (under the Dify OSS License)no multi-tenant SaaS resale allowed
Free (Apache-2.0, no restrictions)multi-tenant SaaS resale allowed, as the licence permits
Pricing (hosted cloud)
$0 Sandbox / $59 Professional / $159 Team / Enterprise customLLM API costs separate across all tiers
No hosted cloud todayself-host or roll your own; the one-binary shape is designed for operators
✓ shipped~ partial or indirect✗ not present✦ material divergence between the two
Where Dify fits better
Straightforward cases. Pick Dify if:
Your buyer is a non-engineer who wants a drag-and-drop canvas to build a chat workflow or a RAG agent without reading YAML. Dify's visual builder is the most mature in the category; LoomBoard's canvas is thinner.
Your workload is RAG-heavy and you want a Knowledge Pipeline that ingests PDF, PPT, Notion and web into one of six vector databases out of the box. loomcycle's Document primitive is good, but Dify's RAG surface is deeper.
You want an established hosted cloud with a published tier ladder ($0 → $59 → $159 → custom) and don't want to self-host anything. loomcycle has no hosted offering today.
You want a plugin marketplace with a creator profile system and the critical mass that comes with 158k stars. The Dify plugin ecosystem is bigger than loomcycle's today.
Your product is a chat-UI-plus-corpus for internal users, and the operator time to run a 16-container stack is a cost you are happy to pay for the UI polish.
Where loomcycle fits better
Also straightforward. Pick loomcycle if:
You want one binary, not sixteen containers. One process. 80 MB of RAM. A 1 GiB VPS. A laptop. A homelab NAS. An air-gapped machine. Dify's deployment floor is 8 GiB RAM and a Postgres plus a Redis plus a Weaviate plus a Next.js app; loomcycle's floor is a Go binary and a config file.
You want a Decision model as a general primitive. The Decision tool takes choice, noul or score questions and returns calibrated probabilities. Model aliases carry a kind tag; a chat model wired into a decision slot refuses config load. Dify agents prompt the model for JSON and parse; the probability vector and the kind-typed slots are a loomcycle-only cell.
You want teams as a single file. A TeamDef declares nodes (agent, decision, parallel, consolidator), transitions, pushback edges and iteration caps in one declarative document. Dify's multi-agent story lives in a workflow graph on the canvas, which is powerful but is not a one-file artefact an operator can version-control, diff and ship.
You want a whole-deployment Snapshot. One Snapshot op captures every def plus runtime state and restores on another box with cred-scan at export. Dify's build-time home snapshots are config-only.
You care about memory quality with a published number. Bi-temporal + subject-document identity with LoCoMo 0.74; the reranker lift from a decision model is a published 0.588 → 0.740. Dify's memory is per-conversation and has no published benchmark.
You want RBAC, SSO and multi-tenancy in the OSS build. loomcycle's tenant isolation, operator tokens, per-user token minting and declared principals are all under Apache-2.0. Dify's SSO is Enterprise-tier-only.
You intend to run a multi-tenant SaaS on top. loomcycle's Apache-2.0 permits it; the Dify Open Source License forbids reselling Dify as a multi-tenant SaaS without a commercial licence.
You want a bundled dev toolchain and headless Chromium so an agent can lint, test, build or scrape without the operator provisioning them per project.
A note on the licence difference
Dify's licence is often described in third-party coverage as "Apache-2.0" — it is not. It is the Dify Open Source License, a modified Apache 2.0 with two added conditions: (a) you may not resell Dify as a multi-tenant SaaS without a commercial licence, and (b) the Dify logo and copyright may not be removed. Loomcycle is Apache-2.0 with no additional conditions. For teams whose end product is an internal tool this doesn't matter; for teams whose product is a hosted SaaS built on top of the runtime, it is the difference between "ship it" and "contact sales."
Try loomcycle
One binary. One config file. No 16-container stack to operate, no 8 GiB RAM floor, no vector DB to run alongside the runtime. Apache-2.0 all the way down.