You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+87Lines changed: 87 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,6 +28,93 @@ Key capabilities:
28
28
-**Visualization and observability:****MASFactory Visualizer** provides topology preview, runtime tracing, and human-in-the-loop interaction.
29
29
-**Context protocol (`ContextBlock`):** organize Memory / RAG / MCP context sources in a structured way, with automatic injection and on-demand retrieval.
30
30
31
+
## 🧭 Why Choose MASFactory
32
+
33
+
As multi-agent systems grow more capable, orchestration is still largely stuck in the age of manual assembly: either teams hand-write workflow code, or they drag and configure nodes one by one on a canvas. With Vibe Graphing, MASFactory aims to free people from tedious orchestration work: express the intent in natural language, let AI draft the collaboration structure, keep refining it with human corrections and confirmations, and finally compile the result into an executable graph workflow.
alt="Vibe Graphing pipeline from intent to executable workflow"
39
+
width="780"
40
+
/>
41
+
</p>
42
+
43
+
This shifts human effort away from low-level wiring and repetitive configuration, and back toward designing the multi-agent system itself.
44
+
45
+
Viewed more directly, today's multi-agent development frameworks roughly fall into the following categories:
46
+
47
+
| Platform Type | Representative Products | Positioning | Support for Multi-Agent Systems |
48
+
| --- | --- | --- | --- |
49
+
|**Code frameworks**|`MASFactory`, ChatDev2(DevAll), LangGraph, AutoGen | Build complex multi-agent systems | Still highly dependent on handwritten code and engineering implementation |
50
+
|**Low-code workflow platforms**|`MASFactory`, ChatDev2(DevAll), Coze, Dify | Lower the barrier to building multi-agent systems with low-code workflows | Difficult to support deep customization and complex topologies for advanced systems |
51
+
|**Vibe Graphing orchestration frameworks**|`MASFactory`| Rapidly design and iterate multi-agent systems with lower human cost | Humans do not need to spend much effort on coding or dragging nodes, only on clearly describing needs and refining the design through dialogue |
52
+
53
+
## 🏗️ System Architecture
54
+
55
+
MASFactory adopts the widely used graph-centric approach to multi-agent orchestration and abstracts the system into four layers:
56
+
57
+
<palign="center">
58
+
<img
59
+
src="docs/src/public/imgs/readme/framework.png"
60
+
alt="MASFactory framework layers"
61
+
width="860"
62
+
/>
63
+
</p>
64
+
65
+
-**Graph skeleton layer:**`Node` and `Edge` are the lowest-level abstractions, using graph structure to represent collaboration relationships, dependencies, and message flow among agents.
66
+
-**Component layer:** this layer further packages `Node` and `Edge` into reusable collaboration units, so developers do not need to assemble workflows from scratch every time and can instead build multi-agent systems like reusable blocks:
67
+
68
+
> -`Agent` is the most basic execution unit: an agent node with roles, instructions, tools, Memory, RAG, and related capabilities, responsible for concrete analysis, generation, and tool-use tasks.
69
+
>
70
+
> -`Graph` packages multiple nodes as a nestable subgraph, allowing complex workflows to be designed hierarchically and reused locally. A single phase can itself become a node inside a larger graph.
71
+
>
72
+
> -`Loop` handles iterative tasks such as repeated discussion, continuous revision, or testing until success. It turns "repeat execution until a condition is met" into a standard component.
73
+
>
74
+
> -`Switch` supports branching and dynamic routing. It can switch execution paths based on explicit conditions or use model capabilities to decide where messages should go, enabling more flexible collaboration topologies.
75
+
>
76
+
> -`Human` brings human-in-the-loop steps such as confirmation, conversational input, file review, and editing into the graph, so the system is not limited to fully automated execution and can involve people at key stages.
77
+
>
78
+
> -`ComposedGraph` and `NodeTemplate` provide two additional reuse mechanisms on top of the components above. The former focuses on "declare a structure first, then instantiate and assemble it," while the latter packages common collaboration structures into reusable components. MASFactory includes built-in graph patterns such as `InstructorAssistantGraph` and `BrainstormingGraph` for out-of-the-box use.
79
+
80
+
**Protocol layer:** through `Message Adapter` and `Context Adapter`, MASFactory unifies communication protocols together with Memory, RAG, MCP, and related context capabilities, making it easier to integrate external frameworks into the system.
81
+
82
+
-**Interaction layer:** MASFactory supports three development paradigms:
83
+
84
+
> - Natural-language workflow construction based on `Vibe Graphing`, reducing the human cost of system development.
85
+
> - Two code-centric styles, `Declarative` and `Imperative`, for developers who want more flexible control over workflow authoring.
MASFactory's advantage is not that it offers yet another way to build workflows, but that it unifies code authoring, visual editing, and natural-language-driven orchestration inside the same system. Developers can write workflows by hand, assemble them visually, or let AI draft the structure first and then compile it into an executable multi-agent workflow. These three modes are not isolated from one another; they can coexist inside the same project.
89
+
90
+
## 🎬 Flexible Combination of Three Development Modes with Unified Runtime Tracing
91
+
92
+
Whether you start from code, drag-and-drop editing, or Vibe Graphing, the resulting graph structure can enter the same Visualizer for preview, tracing, and human intervention.
93
+
94
+
### Coding with Graph Preview
95
+
96
+
<palign="center">
97
+
<imgsrc="docs/src/public/imgs/readme/coding.gif"alt="Code preview in MASFactory Visualizer"width="860" />
98
+
</p>
99
+
100
+
### Drag-and-Drop Design
101
+
102
+
<palign="center">
103
+
<imgsrc="docs/src/public/imgs/readme/drag.gif"alt="Drag and drop workflow design"width="860" />
MASFactory 的优势并不在于“再提供一种工作流搭建方式”,而在于它把代码开发、可视化编辑和自然语言驱动编排统一进了同一套系统。开发者既可以自己写,也可以自己拖拽,还可以先让 AI 起草系统结构,再编译成可运行的多智能体工作流——以上三中方式并不是相互割裂独立的,而是可以在同一个项目中同时使用。
## Step 2 — Multi-turn collaboration with Loop (edge messages)
85
89
86
90
Step 1 runs only once. In practice, a phase usually needs multiple turns to converge.
87
-
Here we introduce `Loop` and place the `Instructor → Assistant` link inside the loop body. Each turn, fields are carried by edge keys.
91
+
Here we introduce `Loop` and place the `Instructor → Assistant` link inside the loop body. To keep `user_demand` transparent, `CONTROLLER` also passes it directly to `assistant` each turn.
- This chapter is designed for quickly learning MASFactory’s declarative paradigm, so it omits some implementation details of ChatDev.
642
647
For complete reproductions, refer to: [ChatDev-Lite](https://github.com/BUPT-GAMMA/MASFactory/tree/main/applications/chatdev_lite) or [ChatDev](https://github.com/BUPT-GAMMA/MASFactory/tree/main/applications/chatdev).
## Step 2 — Multi-turn collaboration with Loop (edge messages)
73
76
74
77
Wrap Step 1 into a loop to support multi-turn convergence.
75
-
To demonstrate horizontal passing, we keep using edge keys inside the loop and iterate via `assistant_response` ↔ `instructor_guidance`.
78
+
To demonstrate horizontal passing, we keep using edge keys inside the loop and iterate via `assistant_response` ↔ `instructor_guidance`, while `CONTROLLER` keeps passing `user_demand` directly to `assistant`.
- This chapter is designed for quickly learning MASFactory’s imperative paradigm, so it omits some implementation details of ChatDev.
581
585
For complete reproductions, refer to: [ChatDev-Lite](https://github.com/BUPT-GAMMA/MASFactory/tree/main/applications/chatdev_lite) or [ChatDev](https://github.com/BUPT-GAMMA/MASFactory/tree/main/applications/chatdev).
0 commit comments