Mastra is a TypeScript framework for building AI agents and apps on Node, with a Helm chart for production self-host, Studio as the admin UI, and an Enterprise licence that gates the production RBAC and SSO. loomcycle is one ~80 MB Go binary that ships Decision, Teams-as-one-file state machines, whole-deployment Snapshots, memory, documents, bundled dev toolchain and a headless Chromium under one Apache-2.0 licence.
The one-line difference. Mastra is a framework; the production shape is Node + Postgres + a Helm chart + an Enterprise licence for RBAC and SSO. loomcycle is a runtime; the production shape is one Go binary and a config file. Both expose MCP server and client, both route to the same providers; the daylight is the deployment artefact and what counts as "in the box" without a commercial tier.
What each one is
Mastra
what:TypeScript framework for agents and apps
runs on:Node ≥ 22.18; Helm chart with Postgres for production
providers:40+ via one interface (Anthropic, OpenAI, Bedrock, Gemini, etc.)
license:Apache-2.0 core; Enterprise licence on ee/ (RBAC, SSO, FGA)
shape:npm package embedded in a Next.js / Express / Hono app, or standalone Node server + Studio
Agent, Tools, Workflows (with suspend/resume + "workflow time travel"), Observational Memory, Agent Networks for LLM-routed multi-agent, Harness (now AgentController GA), Eval Gates with CI-fail verdicts, OTEL traces + metrics, MCP client and server (2026-07-28). The Studio UI renders chat, workflow builder, traces and datasets; Mastra Factory is a separate product that coordinates GitHub + Linear + Slack. Production self-host is a Helm chart with at least two Deployments (mastra-server + mastra-studio) and Postgres required.
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 with kind-typed model aliases. 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. OTEL + Prometheus. MCP server and client. LoomBoard canvas. Validated by two months of continuous production operation at JobEmber.ai.
Where they overlap
Both ship a durable workflow primitive with suspend/resume. Both route to many providers through one call shape. Both are MCP native on both the client and server sides. Both expose OpenTelemetry traces. Both have a browser-facing admin UI (Studio for Mastra; the loomcycle Web UI + LoomBoard for loomcycle). Both support schedules, webhooks and background tasks. If what you need is "an agent that runs a tool loop and remembers its last turn", either one will carry you.
Capability matrix
Rows marked ✦ are where loomcycle's answer is materially different from Mastra's. Some of those rows favour loomcycle, some favour Mastra; the mark flags a real divergence, not a value judgement.
Capability
Mastra
loomcycle
Deployment artefact
npm package into a Node app, or Helm chart with 2+ Deploymentsno single-binary or all-in-one container option
One ~80 MB Go binarycurl + chmod +x + ./loomcycle serve
Required external state (production)
Postgres (required by the Helm chart)no Redis / vector store required by the chart itself
SQLite default; Postgres optional for HAno required external services
RBAC + SSO in the OSS build
~dev-mode works unlicensed; production RBAC + SSO under ee/ require the Enterprise Edition licence
✓tenant isolation, operator tokens, declared principals, per-user token minting all under Apache-2.0
License (core)
Apache-2.0 for core; Mastra Enterprise License on ee/ pathsdual-licence; production RBAC/SSO sit in the Enterprise half
Apache-2.0 for the whole thingno dual-licence, no feature gating
Primary language
TypeScript (Node ≥ 22.18)first-class on Next.js, React, Hono, Express
GoTS and Python client SDKs; HTTP/gRPC/MCP wire parity
~signal providers forward events into threads; Mastra Factory bundles GitHub+Linear+Slack as a product; no reusable per-platform adapter packages
~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; agents using a browser or build tools wire them per project
✓Node, Go, Rust toolchains, git, headless Chromium bundled in the toolbox image
Multi-replica HA
✓Helm chart replicas; coordination through Postgres
✓Postgres LISTEN/NOTIFY backplane; verified in multi-replica stress tests
Air-gap / sovereign-AI deployability
~Enterprise tier: "data in your VPC"; no published air-gap guide / SOC 2 Type II / FIPS as of Oct 2026
~single binary + Ollama local runs on an isolated machine today; loomcycle enterprise SOC 2 / FIPS / audit-integrity build is scoped
Pricing (OSS self-host)
Free (Apache-2.0 core); production RBAC/SSO under commercial Enterprise licenceTeams cloud $250/mo for SSO; Enterprise custom pricing for self-host RBAC
Free (Apache-2.0, whole thing)no feature gating, no commercial tier required for production RBAC/SSO
✓ shipped~ partial or indirect✗ not present✦ material divergence between the two
Where Mastra fits better
Straightforward cases. Pick Mastra if:
Your product is a Next.js, React or Hono app and you want the agent runtime to live inside it as an npm package rather than a separate process. Mastra is designed for this; loomcycle is a separate process by shape.
Your team is TypeScript-first and will write agents, tools and workflows in TS. loomcycle's wire is identical in TS, but the primitives are authored in Go.
You want a mature workflow-builder UI with datasets, scorers and a time-travel debugger right now. Mastra Studio is further along the UI road than LoomBoard.
You want an established commercial tier ladder ($0 → $250 Teams cloud → custom Enterprise) and the counter-party is a venture-backed company. Mastra Inc. is that; loomcycle is maintained by one person with Apache-2.0 all the way down.
Your approval surface is "a GitHub bot plus a Slack ping" and Mastra Factory does what you need as a product.
Where loomcycle fits better
Also straightforward. Pick loomcycle if:
You want one binary. Not an npm package, not a Helm chart, not two Deployments and a Postgres. One ~80 MB Go binary, a config file, a SQLite file, and it serves HTTP + gRPC + MCP + WebSocket. Air-gapped machines and homelabs are first-class deployment targets.
You want RBAC, SSO, multi-tenancy and token minting in the OSS build. loomcycle's tenant isolation, operator tokens, per-user token minting and declared principals are all under Apache-2.0, no commercial tier required.
You want a Decision model as a general tool, not a classifier helper. The Decision primitive takes choice, noul or score questions and returns calibrated probabilities. Model aliases carry a kind tag so a chat model wired into a decision slot refuses config load with a named error.
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. LoomBoard renders and runs it. Mastra's Agent Networks route at runtime via an LLM; the team graph lives in code, not data.
You want a whole-deployment Snapshot that captures every def plus runtime state and restores on another box. Mastra's workflow time travel is per-workflow; loomcycle's snapshot is per-deployment with cred-scan at export.
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.
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.
A quick note on the shipping cadence
Both projects ship often. Mastra released 15 minor versions of @mastra/core between September 3 and October 15, 2026; loomcycle released six minor versions in the same window (v1.106 through v1.111, with the Decision tool, Teams-as-one-file, team decision state, walk-aware sub-agents and whole-deployment Snapshots arriving across the wave). The release-note frequency is similar; the feature mix is different: Mastra invests in dev-rel surface (Factory, Studio, Harness GA), loomcycle invests in substrate primitives (Decision, TeamDef, Snapshot, bridges).
Try loomcycle
One binary. One config file. Decision tool, Teams-as-one-file, Snapshots, memory, documents, headless Chromium, all in the box, Apache-2.0 all the way down.