
rebaño
Flock es una plataforma de bajo código de flujo de trabajo para construir rápidamente chatbots, trapo y coordinar equipos de múltiples agentes, impulsados por Langgraph, Langchain, Fastapi y Nextjs.
3 years
Works with Finder
795
Github Watches
94
Github Forks
795
Github Stars
📃 Flock (Flexible Low-code Orchestrating Collaborative-agent Kits)
简体中文 | English | 日本語 | Getting Started
[!NOTE]
🎉 What's New 2025/3/10
- MCP Tools Support: Added MCP Node with support for Model Context Protocol (MCP) tools, enabling seamless integration with MCP servers! Key features:
- 🛠️ Convert MCP tools into LangChain tools for use with LangGraph agents
- 📦 Connect to multiple MCP servers and dynamically load tools from them
- 🔄 Support both stdio and SSE transport modes for flexible communication
- 🔗 Seamless integration with existing LangChain workflows
![]()
🎉 What's New 2025/2/25
- Parameter Extractor Node: Added parameter extraction node that can automatically extract structured information from text and output in JSON format!
🎉 What's New 2025/1/21
Subgraph Node Support: Added subgraph node that allows you to encapsulate and reuse complete sub-workflows!
- 📦 Modular: Encapsulate complex workflows as standalone subgraph nodes
- 🔄 Reusable: Reuse the same subgraph node across different workflows
- 🎯 Maintainable: Update and maintain sub-workflow logic independently
🎉 What's New 2025/1/8
- Human Node: Added a new human-in-the-loop node supporting key scenarios:
- 🛠️ Tool Call Review: Human review, edit, or approve tool calls requested by the LLM
- ✅ LLM Output Validation: Human review, edit, or approve content generated by the LLM
- 💡 Context Provision: Enable LLM to request human input for clarification or additional details
🎉 What's New 2024/12/23
- Multimodal Chat Support: Added support for multimodal chat (currently only supports image modality, with more modalities coming soon)!
![]()
🎉 What's New 2024/12/18
- If-Else Node: Added If-Else node to support conditional logic in workflows! The node supports various condition types including Contains, Not contains, Start with, End with, Is, Is not, Is empty, and Is not empty. Multiple conditions can be combined using AND/OR operators for complex conditional logic, allowing you to create sophisticated branching workflows based on your data.
🎉 What's New 2024/12/7
- Code Execution Node: Added Python code execution capabilities to workflows! This node allows you to write and execute Python scripts directly within your workflow, supporting variable references and dynamic data transformations. Perfect for arithmetic operations, data processing, text manipulation, and custom logic that goes beyond preset node functionalities.
🎉 What's New 2024/11/12
Intent Recognition Node: New Intent Recognition node that can automatically identify user input intent based on preset categories, supporting multi-classification routing!
CrewAI Node Support: Now you can leverage CrewAI's powerful multi-agent capabilities in your workflows! Create sophisticated agent teams and orchestrate complex collaborative tasks with ease.
Flock is a workflow-based low-code platform for rapidly building chatbots, RAG applications, and coordinating multi-agent teams. Built on LangChain and LangGraph, it provides a flexible, low-code orchestrating solution for collaborative agents, supporting chatbots, RAG applications, agents, and multi-agent systems, with the capability for offline operation.
🤖️ Overview

Work Flow

Node Types and Functions
Flock's workflow system consists of various node types, each serving a specific purpose:
- Input Node: Processes initial input and converts it into a format the workflow can handle.
- LLM Node: Utilizes large language models for text generation and processing.
- Retrieval Node: Fetches relevant information from knowledge bases.
- Tool Node: Executes specific tasks or operations, extending workflow functionality.
- Retrieval Tool Node: Combines retrieval capabilities with tool functionality.
- Intent Recognition Node: Automatically identifies user input intent based on preset categories and routes to different processing flows.
- Answer Node: Generates final answers or outputs, integrating results from previous nodes.
- Subgraph Node: Encapsulates a complete sub-workflow, allowing for modular design.
- Start and End Nodes: Mark the beginning and end of the workflow.
Future planned nodes include:
- File Upload Node
- Parameter Extraction Node
These nodes can be combined to create powerful and flexible workflows suitable for various complex business needs and application scenarios.
Image Tools use
Knowledge Retrieval
Human in the loop (human approval or let the LLM rethink or ask human for help)
Inspired by the StreetLamb project and its tribe project , Flock adopts much of the approach and code. Building on this foundation, it introduces some new features and directions of its own.
Some of the layout in this project references Lobe-chat, Dify, and fastgpt. They are all excellent open-source projects, thanks🙇.
👨💻 Development
Project tech stack: LangChain + LangGraph + React + Next.js + Chakra UI + PostgreSQL
[!NOTE]
🤖 Model System
Flock supports various model providers and makes it easy to add new ones. Check out our Models Guide to learn about supported models and how to add support for new providers.
🛠️ Tools System
Flock comes with various built-in tools and supports easy integration of custom tools. Check out our Tools Guide to learn about available tools and how to add your own.
💡RoadMap
1 APP
- ChatBot
- SimpleRAG
- Hierarchical Agent
- Sequential Agent
- Work-Flow
- Intent Recognition Node - Automatically identify user input intent and route to different processing flows
- CrewAI Integration
- More muti-agent ---On Progress
2 Model
- OpenAI
- ZhipuAI
- Siliconflow
- Ollama
- Qwen
- Xinference
3 Ohters
- Tools Calling
- I18n
- Langchain Templates
🏘️Highlights
- Persistent conversations: Save and maintain chat histories, allowing you to continue conversations.
- Observability: Monitor and track your agents' performance and outputs in real-time using LangSmith to ensure they operate efficiently.
- Tool Calling: Enable your agents to utilize external tools and APIs.
- Retrieval Augmented Generation: Enable your agents to reason with your internal knowledge base.
- Human-In-The-Loop: Enable human approval before tool calling.
- Open Source Models: Use open-source LLM models such as llama, Qwen and Glm.
- Multi-Tenancy: Manage and support multiple users and teams.
How to get started
1. Deploy with Docker Compose
1.1 Method 1: Pull Frontend and Backend Images from Docker Hub
# Clone the repository
git clone https://github.com/Onelevenvy/flock.git
# Navigate to the docker directory
cd flock/docker
# Copy the environment configuration file
cp ../.env.example .env
# Modify environment variables in .env file as needed
# If deploying locally, you can keep the default values
# If deploying on a server, modify API_URL and NEXT_PUBLIC_API_URL values, for example:
API_URL=http://192.168.1.166:8000
NEXT_PUBLIC_API_URL=http://192.168.1.166:8000
# Start docker compose
docker compose up -d
1.2 Method 2: Locally Build Frontend and Backend Images
# Clone the repository
git clone https://github.com/Onelevenvy/flock.git
# Navigate to the docker directory
cd flock/docker
# Copy the environment configuration file
cp ../.env.example .env
# First, build the frontend and backend images
docker compose -f docker-compose.localbuild.yml build
# Then start docker compose
docker compose -f docker-compose.localbuild.yml up -d
2. Start with Local Source Code
2.1 Preparation
2.1.1 Clone the Code
git clone https://github.com/Onelevenvy/flock.git
2.1.2 Copy Environment Configuration File
cp .env.example .env
# Modify environment variables in .env file as needed
2.1.3 Generate Secret Keys
Some environment variables in the .env file have default values set to 'changethis'. You must change these to secret keys. To generate a secret key, you can run the following command:
python -c "import secrets; print(secrets.token_urlsafe(32))"
Copy the output and use it as your password/key. Run the command again to generate another secure key.
2.1.4 Install postgres, qdrant, redis
cd docker
docker compose --env-file ../.env up -d
2.2 Run Backend
2.2.1 Install Basic Environment
Server startup requires Python 3.12.x. It's recommended to use pyenv for quick Python environment installation.
To install additional Python versions, use pyenv install:
pyenv install 3.12
To switch to the "3.12" Python environment, use the following command:
pyenv global 3.12
Follow these steps: Navigate to the "backend" directory:
cd backend
Activate the environment:
poetry env use 3.12
poetry install
2.2.2 Initialize Data
# Migrate database
alembic upgrade head
2.2.3 Run unicorn
uvicorn app.main:app --reload --log-level debug
2.2.4 Run celery (not required unless you want to use rag functionality)
poetry run celery -A app.core.celery_app.celery_app worker --loglevel=debug
2.3 Run Frontend
2.3.1 Enter web directory and install dependencies
cd web
pnpm install
2.3.2 Start web service
cd web
pnpm dev
# or pnpm build then pnpm start
Star History
相关推荐
🔥 1Panel proporciona una interfaz web intuitiva y un servidor MCP para administrar sitios web, archivos, contenedores, bases de datos y LLM en un servidor de Linux.
🧑🚀 全世界最好的 llM 资料总结(数据处理、模型训练、模型部署、 O1 模型、 MCP 、小语言模型、视觉语言模型) | Resumen de los mejores recursos del mundo.
Traducción de papel científico en PDF con formatos preservados - 基于 Ai 完整保留排版的 PDF 文档全文双语翻译 , 支持 支持 支持 支持 支持 支持 支持 支持 支持 支持 支持 支持 等服务 等服务 等服务 提供 提供 提供 提供 提供 提供 提供 提供 提供 提供 提供 提供 cli/mcp/docker/zotero
⛓️Rulego es un marco de motor de regla de orquestación de componentes de alta generación de alto rendimiento, de alto rendimiento y de alto rendimiento para GO.
Plataforma de automatización de flujo de trabajo de código justo con capacidades de IA nativas. Combine el edificio visual con código personalizado, auto-anfitrión o nube, más de 400 integraciones.
Cree fácilmente herramientas y agentes de LLM utilizando funciones Plain Bash/JavaScript/Python.
😎简单易用、🧩丰富生态 - 大模型原生即时通信机器人平台 | 适配 Qq / 微信(企业微信、个人微信) / 飞书 / 钉钉 / Discord / Telegram / Slack 等平台 | 支持 Chatgpt 、 Deepseek 、 DiFy 、 Claude 、 Gemini 、 Xai 、 PPIO 、 Ollama 、 LM Studio 、阿里云百炼、火山方舟、 Siliconflow 、 Qwen 、 Moonshot 、 Chatglm 、 SillyTraven 、 MCP 等 LLM 的机器人 / Agente | Plataforma de bots de mensajería instantánea basada en LLM, admite Discord, Telegram, WeChat, Lark, Dingtalk, QQ, Slack
Reviews

user_HKJRRmFm
As a dedicated user of MCP applications, I must say that Flock by Onelevenvy is a fantastic tool. It offers seamless integration and outstanding performance. Highly recommended for those looking to enhance their productivity.

user_Mt2GsuoX
Flock by Onelevenvy is a fantastic application on MCP! It streamlines team collaboration and productivity in a seamless manner. The intuitive interface and efficient features make it a must-have for any team looking to enhance their workflow. Highly recommend giving it a try!

user_w5h912lw
As a dedicated user of MCP applications, I am thoroughly impressed with "Flock" by Onelevenvy. It's a remarkable tool that truly enhances productivity and collaboration. The seamless integration and user-friendly interface make it a must-have for any team. Highly recommended!

user_XrtpJeKR
As a dedicated user of MCP applications, Flock by Onelevenvy has truly impressed me. The seamless integration and user-friendly interface make it an invaluable tool for collaboration. It optimizes workflow and boosts productivity, making teamwork more efficient and enjoyable. Highly recommend!

user_XILGBPcL
Flock by Onelevenvy is an exceptional tool for managing and organizing collaborative projects. Its intuitive interface and robust features make teamwork seamless and efficient. Highly recommend to anyone looking to streamline their project management process!

user_XkwlfUOX
I've been using Flock by Onelevenvy and it's truly transformed my workflow. The seamless integration and intuitive design make collaboration a breeze. Every feature is thoughtfully crafted, accommodating both casual users and professionals. The welcoming interface ensures a great start, and the language options are vast, catering to a global audience. Highly recommend this for anyone looking to enhance their team productivity!