Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
178 changes: 100 additions & 78 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@

### Form your AI crew

**Open-source AI Agent Orchestration Platform**
**Open-source AI Agent Orchestration Platform β€” with all 3 agentic protocols**

The first platform with native **MCP** (Tools) + **A2A** (Agent-to-Agent) + **AG-UI** (Frontend Streaming)

[![License: AGPL v3](https://img.shields.io/badge/License-AGPL_v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)
[![CI](https://github.com/CrewForm/crewform/actions/workflows/ci.yml/badge.svg)](https://github.com/CrewForm/crewform/actions/workflows/ci.yml)
Expand Down Expand Up @@ -75,87 +77,89 @@
</table>
</details>

## πŸ”Œ Protocols & Standards

CrewForm is the **first platform with native support for all three agentic protocols**:

| Protocol | Direction | What It Does |
|---|---|---|
| **MCP** (Model Context Protocol) | πŸ”Œ Client + πŸ”§ Server | **Client:** Agents discover and call tools from any MCP server. **Server:** Expose your agents as MCP tools for Claude Desktop, Cursor, and other MCP clients. |
| **A2A** (Agent-to-Agent Protocol) | ↔️ Bidirectional | **Consume:** Delegate tasks to external A2A agents. **Publish:** Expose your agents for other AI systems to call. Cross-framework agent interop. |
| **AG-UI** (Agent-User Interface) | πŸ“‘ Streaming | Real-time SSE event streaming from agent to frontend. Supports text deltas, tool calls, state transitions, and rich interactions (approval, confirmation, choices). |

> **Why this matters:** Most platforms support zero or one protocol. CrewForm gives your agents access to thousands of tools (MCP), cross-framework interop (A2A), and real-time UI streaming (AG-UI) β€” all out of the box.

## ✨ Features at a Glance

<table>
<tr>
<td align="center" width="25%">
πŸ€–<br/><strong>16 LLM Providers</strong><br/>OpenAI, Anthropic, Gemini, Groq, Ollama, and more
πŸ”Œ<br/><strong>MCP Client + Server</strong><br/>Use external tools & expose agents as MCP tools
</td>
<td align="center" width="25%">
πŸ”€<br/><strong>3 Team Modes</strong><br/>Pipeline, Orchestrator, and Collaboration
🀝<br/><strong>A2A Bidirectional</strong><br/>Agent-to-Agent interop β€” consume & publish
</td>
<td align="center" width="25%">
πŸͺ<br/><strong>Agent Marketplace</strong><br/>Browse, install, and publish agent templates
πŸ–₯️<br/><strong>AG-UI Streaming</strong><br/>Real-time SSE events with rich interactions
</td>
<td align="center" width="25%">
πŸ”‘<br/><strong>BYOK</strong><br/>Your API keys, your cost β€” zero markup
πŸ€–<br/><strong>16 LLM Providers</strong><br/>OpenAI, Anthropic, Gemini, Groq, Ollama, +11 more
</td>
</tr>
<tr>
<td align="center" width="25%">
🏠<br/><strong>Self-Hostable</strong><br/>Docker Compose β€” your data, your infra
πŸ”€<br/><strong>3 Team Modes</strong><br/>Pipeline, Orchestrator, and Collaboration
</td>
<td align="center" width="25%">
πŸ”Œ<br/><strong>MCP Protocol</strong><br/>Use external tools & expose agents as MCP tools
πŸ“š<br/><strong>Knowledge Base (RAG)</strong><br/>Hybrid search: pgvector + full-text + reranking
</td>
<td align="center" width="25%">
πŸ“š<br/><strong>Knowledge Base (RAG)</strong><br/>Upload docs, chunk, embed, and search
🎨<br/><strong>Visual Workflow Canvas</strong><br/>Drag-and-drop with live execution visualization
</td>
<td align="center" width="25%">
🧠<br/><strong>Team Memory</strong><br/>pgvector semantic search across runs
🐳<br/><strong>Local AI via Ollama</strong><br/>Air-gapped β€” zero data leaving your network
</td>
</tr>
<tr>
<td align="center" width="25%">
🀝<br/><strong>A2A Protocol</strong><br/>Agent-to-Agent interop with external AI systems
πŸ’¬<br/><strong>Chat Widget</strong><br/>Embed agents on any website β€” one script tag
</td>
<td align="center" width="25%">
πŸ–₯️<br/><strong>AG-UI Protocol</strong><br/>Real-time SSE streaming for frontend integration
πŸ“‘<br/><strong>Observability</strong><br/>OpenTelemetry + Langfuse tracing
</td>
<td align="center" width="25%">
⚑<br/><strong>Zapier + Channels</strong><br/>7,000+ apps, Discord, Slack, Telegram, Email
</td>
<td align="center" width="25%">
πŸ“Š<br/><strong>Analytics</strong><br/>Track tokens, costs, and agent performance
</td>
</tr>
<tr>
<td align="center" width="25%">
🎨<br/><strong>Visual Workflow Canvas</strong><br/>Drag-and-drop orchestration with live execution visualization
</td>
<td align="center" width="25%">
πŸ”„<br/><strong>Fallback Models</strong><br/>Auto-switch to backup models on failure
πŸͺ<br/><strong>Agent Marketplace</strong><br/>Browse, install, and publish agent templates
</td>
<td align="center" width="25%">
🐳<br/><strong>Local AI via Ollama</strong><br/>Air-gapped setup β€” zero data leaving your network
</tr>
<tr>
<td align="center" width="25%">
πŸŽ™οΈ<br/><strong>Voice Profiles</strong><br/>Control agent tone, style, and brand voice consistency
πŸ”€<br/><strong>Fan-Out Branching</strong><br/>Parallel pipeline steps with merge agents
</td>
<td align="center" width="25%">
πŸ“<br/><strong>Output Templates</strong><br/>Format results with {{variable}} templates
πŸ“¦<br/><strong>Export & Import</strong><br/>Portable JSON for agents and teams
</td>
<td align="center" width="25%">
πŸ”€<br/><strong>Fan-Out Branching</strong><br/>Parallel pipeline steps with merge agents
πŸ”„<br/><strong>Fallback Models</strong><br/>Auto-switch to backup models on failure
</td>
<td align="center" width="25%">
πŸ›‘οΈ<br/><strong>RBAC & Workspaces</strong><br/>Role-based access, multi-tenant isolation
🏠<br/><strong>Self-Hostable</strong><br/>Docker Compose β€” your data, your infra
</td>
</tr>
<tr>
<td align="center" width="25%">
πŸ’¬<br/><strong>Chat Widget</strong><br/>Embed agents on any website with one script tag
πŸ”‘<br/><strong>BYOK</strong><br/>Your API keys, your cost β€” zero markup
</td>
<td align="center" width="25%">
πŸ“¦<br/><strong>Export & Import</strong><br/>Portable JSON for agents and teams
🧠<br/><strong>Team Memory</strong><br/>pgvector semantic search across runs
</td>
<td align="center" width="25%">
πŸ“‘<br/><strong>Observability</strong><br/>OpenTelemetry + Langfuse tracing
πŸ›‘οΈ<br/><strong>RBAC & Workspaces</strong><br/>Role-based access, multi-tenant isolation
</td>
<td align="center" width="25%">
🀝<br/><strong>Rich Interactions</strong><br/>Agents ask for approval, confirmation, or choices
πŸ“Š<br/><strong>Analytics</strong><br/>Track tokens, costs, and agent performance
</td>
</tr>
</table>
Expand Down Expand Up @@ -193,6 +197,7 @@ npm run dev

## Table of Contents

- [Protocols & Standards](#-protocols--standards)
- [Why CrewForm?](#why-crewform)
- [How It Works](#how-it-works)
- [Who It's For](#who-its-for)
Expand Down Expand Up @@ -362,30 +367,39 @@ CrewForm uses an **open-core** model: a free Community Edition under AGPL-3.0 an
## Architecture

```
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ CrewForm UI β”‚
β”‚ React + TypeScript + Tailwind β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ EE Feature Gating (ee/) β”‚
β”‚ License Validation Β· Feature Flags β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Supabase Layer β”‚
β”‚ Auth Β· Database Β· Realtime Β· Storage β”‚
β”‚ Edge Functions (REST API) β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Task Runner β”‚
β”‚ Node.js Β· Multi-Provider LLM Support β”‚
β”‚ (Anthropic Β· Google Β· OpenAI Β· More) β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Protocol Layer β”‚
β”‚ MCP (Tools) Β· A2A (Agents) Β· AG-UI (Frontend) β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Integrations β”‚
β”‚ Channels Β· Output Routes Β· Zapier Β· Webhooks β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Your LLM Providers β”‚
β”‚ (BYOK β€” Your Keys, Your Cost) β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ CrewForm UI β”‚
β”‚ React + TypeScript + Tailwind + ShadCN β”‚
β”‚ Visual Workflow Canvas Β· AG-UI SSE Streaming Β· Chat Widget β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Supabase Layer β”‚
β”‚ Auth Β· PostgreSQL Β· Realtime Β· Storage β”‚
β”‚ Edge Functions (REST API) Β· pgvector (RAG) β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Task Runner β”‚
β”‚ Node.js Β· Multi-Provider LLM β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚ β”‚ OpenAI Β· Anthropic Β· Gemini Β· Groq Β· Mistral Β· Cohere β”‚ β”‚
β”‚ β”‚ NVIDIA Β· Perplexity Β· Together Β· OpenRouter Β· HuggingFaceβ”‚ β”‚
β”‚ β”‚ MiniMax Β· Moonshot Β· Venice Β· Ollama (local) Β· xAI β”‚ β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Protocol Layer β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚ β”‚ MCP Protocol β”‚ β”‚ A2A Protocol β”‚ β”‚ AG-UI Protocol β”‚ β”‚
β”‚ β”‚ Client+Server β”‚ β”‚ Bidirectionalβ”‚ β”‚ SSE + Rich Interactionsβ”‚ β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Integrations β”‚
β”‚ Channels (Discord Β· Slack Β· Telegram Β· Email) Β· Output Routes β”‚
β”‚ Zapier (7,000+ apps) Β· Webhooks Β· Chat Widget Β· REST API β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Observability β”‚
β”‚ OpenTelemetry Β· Langfuse Β· Datadog Β· Jaeger β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Your LLM Providers β”‚
β”‚ BYOK β€” Your Keys, Your Cost β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
```

## Tech Stack
Expand All @@ -394,13 +408,14 @@ CrewForm uses an **open-core** model: a free Community Edition under AGPL-3.0 an
|-------|-----------|
| **Frontend** | React 18 Β· TypeScript Β· Vite Β· Tailwind CSS Β· ShadCN UI |
| **State** | TanStack Query Β· Zustand |
| **Backend** | Supabase (Auth, Database, Realtime, Edge Functions) |
| **Task Runner** | Node.js Β· Multi-provider LLM integration |
| **Vector Search** | pgvector (team memory + knowledge base RAG) |
| **Protocols** | MCP (Model Context Protocol) Β· A2A (Agent-to-Agent) Β· AG-UI (Agent-User Interface) |
| **Integrations** | Zapier Β· Discord Β· Slack Β· Telegram Β· Email Β· Webhooks |
| **Backend** | Supabase (Auth, PostgreSQL, Realtime, Edge Functions) |
| **Task Runner** | Node.js Β· 16 LLM providers + Ollama (local) |
| **Vector Search** | pgvector β€” hybrid search (cosine + full-text + reranking) |
| **Protocols** | MCP (client + server) Β· A2A (bidirectional) Β· AG-UI (SSE + rich interactions) |
| **Observability** | OpenTelemetry Β· Langfuse Β· Datadog Β· Jaeger |
| **Integrations** | Zapier Β· Discord Β· Slack Β· Telegram Β· Email Β· Webhooks Β· Chat Widget |
| **Validation** | Zod |
| **Deployment** | Vercel Β· Docker |
| **Deployment** | Vercel Β· Docker Compose |

## Contributing

Expand Down Expand Up @@ -453,7 +468,11 @@ Yes! CrewForm supports Docker-based self-hosting. See our [self-hosting guide](h
<details>
<summary><strong>What LLM providers are supported?</strong></summary>

CrewForm supports **16 providers**: OpenAI, Anthropic, Google Gemini, Groq, Mistral, Cohere, NVIDIA NIM, Perplexity, Together, OpenRouter, HuggingFace, MiniMax, Moonshot, Venice, and **Ollama** (local models). More providers can be added via the modular provider architecture.
CrewForm supports **16 cloud providers + Ollama** for local models:

OpenAI, Anthropic, Google Gemini, Groq, Mistral, Cohere, NVIDIA NIM, Perplexity, Together, OpenRouter, HuggingFace, MiniMax, Moonshot, Venice, xAI, and **Ollama** (local β€” Llama 3, Mistral, Phi, etc.).

Ollama enables fully air-gapped setups β€” zero API keys, zero data leaving your network. More providers can be added via the modular provider architecture.
</details>

<details>
Expand All @@ -470,23 +489,26 @@ CrewForm is a **visual, UI-first platform** β€” you create agents, teams, and ta

## How CrewForm Compares

| Capability | CrewForm | Most Alternatives |
|---|---|---|
| **Visual UI** | βœ… Drag-and-drop workflow canvas with live execution | Often code-only or basic flow editors |
| **Multi-Agent Teams** | βœ… 3 modes β€” Pipeline, Orchestrator, Collaboration | Usually single-mode or code-defined |
| **All 3 Agentic Protocols** | βœ… MCP + A2A + AG-UI β€” native | Typically zero or one |
| **BYOK (zero markup)** | βœ… 16 providers, your keys, your cost | Often limited providers or markup fees |
| **Local Models (Ollama)** | βœ… Native β€” zero API keys, fully air-gapped | Varies |
| **Self-Hosting** | βœ… One-command Docker Compose | Often cloud-only or complex setup |
| **RAG / Knowledge Base** | βœ… Built-in with pgvector + hybrid search | Sometimes available, often requires plugins |
| **Embeddable Chat Widget** | βœ… One-line script tag, streaming, domain security | Rare β€” usually requires custom dev |
| **Data Portability** | βœ… JSON export/import for agents and teams | Usually locked to platform |
| **Agent Marketplace** | βœ… Browse, install, and publish templates | Rare in open-source tools |
| **Team Memory** | βœ… pgvector semantic search across runs | Typically not available |
| **Integrations** | βœ… Zapier (7K+ apps), Discord, Slack, Telegram, Trello, webhooks | Usually API-only |
| **Open Source** | βœ… AGPL-3.0 | Varies |

> **CrewForm is the first platform to support all three agentic protocols** (MCP + A2A + AG-UI) β€” giving your agents access to thousands of tools, cross-framework interop, and real-time UI streaming out of the box.
| Capability | CrewForm | Dify | n8n | CrewAI | LangGraph |
|---|---|---|---|---|---|
| **Visual UI** | βœ… Drag-and-drop canvas + live execution | βœ… Flow editor | βœ… Flow editor | ❌ Code-only | ❌ Code-only |
| **Multi-Agent Teams** | βœ… 3 modes (Pipeline, Orchestrator, Collab) | ❌ Single-agent | ❌ Node-based | βœ… Code-defined | βœ… Code-defined |
| **MCP Protocol** | βœ… Client + Server (bidirectional) | ❌ | βœ… Client only | ❌ | ❌ |
| **A2A Protocol** | βœ… Bidirectional (consume + publish) | ❌ | ❌ | ❌ | ❌ |
| **AG-UI Protocol** | βœ… SSE + rich interactions | ❌ | ❌ | ❌ | ❌ |
| **LLM Providers** | βœ… 16 + Ollama (local) | ~10 | Via nodes | Code | Code |
| **BYOK (zero markup)** | βœ… Your keys, your cost | βœ… | βœ… | βœ… | βœ… |
| **Local Models (Ollama)** | βœ… Native, air-gapped | βœ… | βœ… | βœ… | βœ… |
| **RAG / Knowledge Base** | βœ… Hybrid search + retrieval tester | βœ… | Via nodes | Code | Code |
| **Chat Widget** | βœ… One script tag, streaming | βœ… | ❌ | ❌ | ❌ |
| **Observability** | βœ… OTLP + Langfuse | βœ… LangSmith | ❌ | βœ… | βœ… |
| **Fan-Out (Parallel)** | βœ… Built-in branching + merge | ❌ | βœ… | ❌ | βœ… |
| **Agent Marketplace** | βœ… Browse, install, publish | βœ… Templates | βœ… Templates | ❌ | ❌ |
| **Data Portability** | βœ… JSON export/import | βœ… DSL export | βœ… JSON export | N/A | N/A |
| **Self-Hosting** | βœ… Docker Compose | βœ… Docker | βœ… Docker | N/A (library) | N/A (library) |
| **Open Source** | βœ… AGPL-3.0 | βœ… Apache-2.0 | βœ… Fair-code | βœ… MIT | βœ… MIT |

> **CrewForm is the only platform with all three agentic protocols** (MCP + A2A + AG-UI) β€” giving your agents access to thousands of tools, cross-framework interop, and real-time UI streaming out of the box.

## License

Expand Down
Loading