Model or dataset
proinsight-io/crewmeld avatar
proinsight-io/crewmeld

CrewMeld: an AI employee platform that treats SOPs as the unit of orchestration

CrewMeld — Enterprise AI Digital Workforce Platform. Manage AI employees like real team members. Visual SOP orchestration, 13 LLM providers (including China-native models), 8+ messaging channels(WeCom/DingTalk/Feishu/Telegram), knowledge base with RAG, and full private deployment support. Built with Next.js, React, TypeScript & Bun.

804 stars12 forksTypeScriptNOASSERTION

At a glance

What is it?
CrewMeld is a TypeScript and Next.js platform for running AI agents as named digital employees inside multi-role SOPs, with tool sandboxing, channel integrations and on-premise deployment. Its distinguishing choice is orchestration at step level rather than chat level, and its licence file is not a recognised open source licence.
Who is it for?
Adopt CrewMeld if you have a process that spans roles and days (an approval chain, an onboarding sequence, a recurring report) and you need the runtime inside your own network with China-native channels and models. Do not adopt it if you want a chat assistant, a single-agent library, or a project whose licence you can classify without asking a lawyer.
Can I use it commercially?
Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
Is it still maintained?
Yes. The repository last received commits 19 days ago.
What is it written in?
Mainly TypeScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

The problem CrewMeld solves is handover, not conversation

Most agent frameworks optimise a single turn: a model, some tools, a loop. CrewMeld optimises what happens between turns and between people. The README states the platform organises AI capabilities around three asset categories, Digital Employees, SOPs and Tools, and the dependency rule is explicit: tools are bound to and invoked on demand by digital employees, while digital employees and human employees are orchestrated by SOPs into multi-role collaboration flows. That sentence is the whole product thesis. An agent is not a script you run; it is a roster member with an identity, a model binding, knowledge base bindings and a runtime status that can be standby, active, paused or error. The intended user is an operations or IT team inside a company that already has a process written down somewhere and wants it executed partly by models. The onboarding wizard is a six-step sequence: choose a role or create directly, fill in name and description and persona, bind tools (only deployed instances are bindable), associate document knowledge bases many-to-many, select the LLM vendor and model, then confirm. That is configuration work, not prompt work, and it tells you who the product is for.

The SOP state machine is the actual engine

The interesting mechanism is not the canvas, it is the state machine underneath it. The README lists eight execution states: pending, running, completed, plus human-waiting, timeout, error, failed and cancelled. All transitions are validated and illegal transitions are rejected, which is a stronger claim than most orchestration tools make. Human approval is implemented as a persisted snapshot rather than a held connection: when the flow reaches an approval node the engine pauses, a full state snapshot goes to the database, notifications go out through approver-configured channels as Feishu, WeCom or DingTalk approval cards or email HTML cards, approvers decide through login-free links, and the engine resumes from the breakpoint with first-come-first-served concurrency control. That design is what makes the cross-hour and cross-day claim in the asset table plausible, because nothing depends on a process staying alive. Timeouts are handled at two levels: step-level timeouts automatically add a timeout exit, and the SOP-level maximum execution duration defaults to 24 hours and is configurable. Triggers are scheduled (cron expression plus queue scheduling), event-driven (channel messages or webhook callbacks) or manual (the admin console Run button or the Open API). Four step types exist: digital employee, human employee, human approval, and conditional branch for multi-way routing. Version management creates a new version on each save, so the canvas is not a live document.

Tools run in OpenSandbox, and credentials do not travel

Tools use a two-tier template and instance model: one template spawns many instances, each with its own parameters and credentials, deployed and run independently. Instance code executes in isolated OpenSandbox containers on either Docker or Kubernetes, separated from the main platform process, and the README states sandbox failures do not affect platform stability. JavaScript and Python are supported. Dev Studio builds and tests three service types declared by `service.type` in the tool manifest. `json` is for structured tools and APIs, with JSON request and response published through the tool invocation API. `http` is for web pages and general HTTP services, with an interactive HTML preview where methods, query strings, redirects and relative static assets are proxied intact. `sse` is for streaming HTTP services, with event-stream preview and transparent streaming and proxy buffering disabled. Publishing separates development from runtime: authentication is either API Key or anonymous, internal exposure is the default at `/services/{instanceId}/`, and a shared public origin or a service-specific domain and reverse proxy can be configured instead. Horizontal scaling allows 1 to 20 OpenSandbox replicas named `instance-0` through `instance-n`, and only ready replicas receive traffic. The gateway load-balances with Redis-backed round robin across application replicas, with a local fallback and browser-session affinity. Migration between environments is handled by ZIP import and export, and environment variables marked as secret are cleared on export and must be refilled after import. That last detail is a deliberate trade: the archive is safe to move, but it is not a complete backup.

Getting it running, and what the README does not tell you

The README has a Quick Start section in its table of contents but the supplied text does not include its contents, so I cannot give you the install commands. The stack is stated: Next.js, React, TypeScript and Bun. Deployment is described as supporting on-premise operation, and the tool sandbox requires a Docker or Kubernetes runtime. The configuration surface visible in the material is the tool manifest, where `service.type` selects `json`, `http` or `sse`, and the platform-level keys implied by the deployment section: the internal service path `/services/{instanceId}/`, the replica count from 1 to 20, and the Redis instance used for gateway round robin. Two external resources are named for setup help: the site at crewmeld.ai and the user manual at proinsight.gitbook.io/crewmeld. Treat the manual as the install source of truth, because the repository README alone is not sufficient to bring the system up. There are no retrieved releases, so there is no versioned artefact to pin to and no changelog to read before upgrading.

Where CrewMeld is the wrong tool

The asset model is heavy, and the weight is the point, but it is also the failure mode. A digital employee requires identity fields, a persona, bound tool instances that must already be deployed, knowledge base associations, a model binding and system connections before it does anything. If your task is a single prompt against a document, you will spend more time in the onboarding wizard than writing the prompt. The template and instance split adds a second layer of indirection: you cannot bind a tool that has not been deployed as an instance, so a quick experiment becomes a deployment. The SOP engine's breakpoint resume, approval cards and first-come-first-served concurrency control are valuable for processes that genuinely pause for humans, and dead weight for processes that never do. The README also leaves real gaps. The feature list claims 13 LLM providers including China-native models and 8+ messaging channels, but the channel table shown is truncated at WeChat Official Accounts, so the count cannot be verified from the material. The licence is the larger problem: the repository metadata reports NOASSERTION and the README's licence section is not reproduced here, so neither an open source nor a proprietary classification can be confirmed. The README itself carries a Chinese translation link and China-native channels are called out as a feature, which suggests the primary market is Chinese enterprises; teams outside that context should weigh how much of the channel and model surface they will actually use.

How CrewMeld differs from agent frameworks like LangGraph and Dify

The contrast is in where orchestration lives. LangGraph models a workflow as a graph of nodes over shared state inside a single process, and persistence is something you attach through a checkpointer. CrewMeld puts the graph in a database-backed engine with validated transitions and treats the pause itself as a first-class state, which is why an approval can wait days and resume through a login-free link rather than a resumed process. Dify is closer in audience, a visual LLM application builder with knowledge base support, but its unit of composition is the app or the workflow, and its deployment story centres on the platform itself rather than on isolating each tool's code in a separate container runtime with replica counts. CrewMeld's distinguishing mechanism is the OpenSandbox boundary: tool code runs apart from the main process, in JavaScript or Python, and can scale to 20 replicas behind a Redis round-robin gateway. The cost of that boundary is operational. You need Docker or Kubernetes, you need Redis, and you need a deployment step per tool instance before an employee can use it. If you do not want to run container infrastructure, a library-level framework is the better fit, and CrewMeld is not competing for that job.

Maintenance cost and the licence question

The maintenance surface is larger than the repository suggests. Running CrewMeld means running the Next.js application, a Redis instance for gateway load balancing, and an OpenSandbox runtime on Docker or Kubernetes, plus whatever LLM provider endpoints you configure. Tool instances are deployed artefacts with their own parameters and credentials, so each one is a thing to keep working, not a line in a config file. Secret environment variables are stripped on ZIP export by design, which means every environment migration includes a manual refill step that is easy to forget and will surface as an authentication failure at runtime. Upgrades are harder to plan than usual because no releases were retrieved: there is no version number to check against, and the README's version management applies to SOP definitions, not to the platform. On licensing, the repository reports NOASSERTION. That is a statement about metadata, not about your rights. The README's licence section exists but its text is not in the supplied material, so the only safe position is that the terms are whatever the LICENSE file says and you should read that file directly. If your organisation needs a recognised OSI licence identifier before adoption, this repository does not currently provide one, and that is a procurement question rather than a technical one.

Editorial conclusion

Adopt CrewMeld if you have a process that spans roles and days (an approval chain, an onboarding sequence, a recurring report) and you need the runtime inside your own network with China-native channels and models. Do not adopt it if you want a chat assistant, a single-agent library, or a project whose licence you can classify without asking a lawyer. Before you commit, read the LICENSE file at the repository root, because the metadata reports NOASSERTION and the README only says the terms are in the repository; then confirm from the GitBook manual which LLM providers and which of the 8+ channels are actually implemented, since the README table is truncated at WeChat Official Accounts and the feature list and the table do not agree.

Official sources

  1. Issues
  2. proinsight-io/crewmeld on GitHub
  3. README
Community notes

Community notes