Skip to main content
loomcycle
§ comparison

Dify vs loomcycle.

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.

What each one is

Dify

what: visual agentic workflow + RAG studio

runs on: 16-container Docker Compose stack, 8 GiB RAM floor

providers: 1000+ model integrations

license: Dify Open Source License (modified Apache-2.0 + no-SaaS-resale + branding clause)

shape: Python API + worker + agent-backend + plugin-daemon + Next.js web + Postgres + Redis + Weaviate + sandbox + nginx + ssrf-proxies

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.

loomcycle

what: a complete agentic system you self-host

runs on: one ~80 MB Go binary, laptop / VPS / container / k8s

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:

Dify production stack (docker compose up)

16 containers
  • api
  • api_websocket
  • worker
  • worker_beat
  • web
  • plugin_daemon
  • agent_backend
  • weaviate (vector DB)
  • db_postgres
  • redis
  • nginx
  • ssrf_proxy
  • agent_ssrf_proxy
  • sandbox
  • local_sandbox
  • init_permissions (one-shot)

Minimum 2 vCPU + 8 GiB RAM; idle ~2.5 GiB, 4-6 GiB during indexing.

loomcycle production (one binary)

1 process
  • loomcycle (~80 MB Go binary)

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
Visual workflow builder ✓Dify's headline feature; drag-and-drop canvas with Chatflow / Workflow / Agent / BasicChat types; Note / Iteration / Loop nodes ✓LoomBoard canvas renders TeamDef state machines; decision-node routing visualised
Agent paradigm ReAct + function-calling, inside a sandboxE2B cloud sandbox backend added v1.17.0 AgentDef with the loomcycle tool loopInterruption, Decision, Memory, Documents, Teams, Skill tools in-process
RAG / knowledge base ✓Knowledge Pipeline + 6+ vector DBs (Weaviate / Qdrant / pgvector / Milvus / TiDB / Chroma); PDF/PPT/Notion/web ingestion ✓Document primitive with chunked graph, per-piece derived search units at 0.966 recall@5; Markdown round-trip
Memory primitive Conversation memory onlyno bi-temporal / subject-document identity; no published memory benchmark Bi-temporal + subject-document identity; LoCoMo 0.74per-piece derived search units at 0.966 recall@5; vector + SQL memory in the same binary
Decision model primitive ✗prompt-the-agent-for-JSON pattern; no typed-answer / probability-vector API ✓Decision tool (v1.107) with choice, noul, score; kind-typed aliases; LoCoMo rerank recall@5 lifted 0.588 → 0.740
Teams-as-one-file (declarative DAG with decision + consolidator + pushback) ✗multi-agent patterns live in a workflow graph on the canvas, not as a declarative team file ✓TeamDef substrate: nodes (agent / decision / parallel / consolidator), transitions, pushback edges, iteration caps in one declarative file
MCP support ✓two-way (v1.6.0, HTTP-only); MCP spec 2025-06-18 (v1.10.0) ✓MCPServerDef + stdio + HTTP; per-tenant transport; 21+ meta-tools; serves 2026-07-28
A2A protocol ✗ ✓A2AServerCardDef + A2AAgentDef substrate; agents federate across runtimes
Workflow triggers (schedule / webhook / SaaS event) ✓v1.10.0 shipped Schedule, Webhook and SaaS Integration Event triggers ✓ScheduleDef + WebhookDef primitives; verify-before-parse HMAC envelopes
RBAC + SSO in the OSS build ~self-host RBAC limited; SSO Enterprise-tier-only ✓tenant isolation, operator tokens, declared principals, per-user token minting all under Apache-2.0
Whole-deployment Snapshot ~build-time home snapshots (v1.17.0) are config-only; no whole-deployment snapshot primitive ✓one Snapshot op captures every def plus runtime state; restore replays the whole deployment; cred-scan at export
Observability ✓logs, performance monitoring, dataset management, model comparison in Studio ✓OTEL + Prometheus /metrics + per-scope token-usage ledger with enforceable budgets
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:

Where loomcycle fits better

Also straightforward. Pick loomcycle if:

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.

curl -L https://github.com/denn-gubsky/loomcycle/releases/latest/download/loomcycle-$(uname -s | tr A-Z a-z)-$(uname -m) -o loomcycle
chmod +x loomcycle
./loomcycle serve --config loomcycle.yaml