單一 Agent 的瓶頸
想像你請一個人同時做這些事:研究一個主題、寫報告、做簡報、產生配圖、發佈網頁。就算是天才,也會被壓垮。在研究筆記和簡報排版之間跳來跳去,他丟失細節。在報告草稿和網頁程式碼之間切換,他忘記前面想好的東西。
這就是你把複雜請求丟給單一 AI agent 時發生的事。一次做一件事。一個 context window。對話越長,前面的推理越模糊。它沒辦法退後一步,協調多條平行工作線。
DeerFlow 是字節跳動的回答:別讓一個 agent 做所有事。改用協調的方式讓很多 agent 一起做。
DeerFlow 到底是什麼
DeerFlow(Deep Exploration and Efficient Research Flow)是一個開源的 SuperAgent 框架。不是單一 agent。是一個協調層,負責產生、管理、合成多個子 agent 的工作。2.0 版在 2026 年 2 月 28 日上線。幾小時內登上 GitHub Trending 第一名。至今超過 89,000 顆星。
「框架」(harness)這個字很重要。框架不做拉車的工作,馬才拉。DeerFlow 不直接幫你寫程式或做簡報。它決定該產生哪些子 agent、每個拿什麼工具、帶多少 context、結果怎麼合併成完整輸出。
用廚房來比喻:單一 AI agent 是一個廚師什麼都做。DeerFlow 是廚房經理,指派備料人員切菜、甜點師傅做甜點、爐台廚師煎主菜,然後把所有人的成果組合成最終上桌的那道菜。
建在 LangGraph 和 LangChain 之上。後端 Python、前端 React。MIT 授權。支援任何 LangChain 相容模型:GPT-4、DeepSeek v3.2、Gemini 2.5 Flash(透過 OpenRouter)、字節跳動自家的 Doubao-Seed 系列等。
架構:四個層次怎麼疊起來
四個核心層次,像建築物的樓層往上疊。理解每一層,就能看懂整個系統為什麼這樣設計。
主 Agent(Lead Agent)
最上面:主 agent。接收你的請求,拆解成子任務,決定產生哪些子 agent,合成所有輸出。主 agent 是唯一看到全貌的元件。它維護高層級計畫,根據子 agent 回報即時調整。
子 Agent
每個子 agent 拿到範圍明確的任務。研究一個特定問題。寫一段程式碼。產生一張圖。子 agent 只收到它需要的 context -- 不是完整對話歷史。這是刻意的。研究電池技術趨勢的子 agent 不需要知道簡報排版子 agent 偏好什麼字體。
任務彼此獨立時,子 agent 平行執行。子 agent A 需要子 agent B 的輸出時,主 agent 安排順序。所有子 agent 回報完畢。主 agent 把結構化結果合成最終輸出。
核心模式:扇出,然後扇入。研究任務產生十二個子 agent,各自探索不同角度,收斂成一份報告。建網站任務產生分別負責內容、樣式和部署的子 agent。
沙箱
每個任務在隔離環境中執行。三種執行模式:
- 本地 -- 程式碼直接在主機跑。快。不用額外設定。沒有隔離。
- Docker -- 程式碼在容器中跑。每個任務有專屬檔案系統
/mnt/user-data/,包含uploads/、workspace/、outputs/。 - Kubernetes -- 程式碼在 K8s pod 中跑,透過 provisioner 服務。適合規模化部署。
沙箱不是裝飾品。子 agent 讀寫檔案、執行 bash 指令、檢視圖片,全在沙箱裡。子 agent 的程式碼當掉?影響範圍限制在容器內。你的主機完全不受影響。
技能和記憶
技能(Skills) 是用 Markdown 定義的結構化能力模組,包含 YAML frontmatter。每個技能描述一套工作流程:怎麼寫研究報告、怎麼做簡報、怎麼建網頁。DeerFlow 用漸進式載入,子 agent 真正需要時才拉入技能定義。Context window 保持精簡,而不是一開始塞進所有能力。
內建技能涵蓋研究、報告、簡報、網頁、圖片/影片產生。外部技能透過 Gateway API 安裝 .skill 檔案。
記憶(Memory) 跨 session 持久保存。DeerFlow 自動從對話中萃取使用者背景、事實和偏好。本地存儲,帶信心分數。Debounce 機制減少 LLM 呼叫。一週後回來,DeerFlow 記得你的專案背景、偏好的輸出格式、之前累積的知識。
值得了解的主要功能
InfoQuest 搜尋整合
DeerFlow 整合 BytePlus 的 InfoQuest 智慧搜尋和爬蟲工具。不只是搜尋包裝。InfoQuest 處理結構化爬取、內容萃取和結果排序,專為研究任務調校。子 agent 需要回答事實問題時,拿到的是過濾和結構化的搜尋結果,不是原始網頁。
Claude Code 橋接
claude-to-deerflow 技能值得注意,特別是已經在用 Claude Code 的開發者。它讓你直接從終端跟運行中的 DeerFlow 實例互動。提交研究任務。檢查狀態。管理 thread。上傳檔案。完全不離開 Claude Code。
工作流程:你在深度編碼中。忽然需要 API 遷移策略的背景研究。不用切到 DeerFlow 的網頁 UI,直接從終端送出研究任務。DeerFlow 的子 agent 扇出、研究、整理報告。你繼續寫程式。報告完成?拉回 Claude Code session。
MCP Server 支援
DeerFlow 內建核心工具(搜尋、網頁擷取、檔案操作、bash 執行),透過 Model Context Protocol(MCP)擴展。接上任何 MCP 相容 server,加入額外能力:資料庫存取、API 整合、自訂資料來源。HTTP/SSE MCP server 支援 OAuth token 流程做認證存取。
即時通訊管道
DeerFlow 連接 Telegram、Slack、飛書(Feishu/Lark),透過長輪詢或 WebSocket。不需要公開 IP。從手機的 Telegram 送出任務。DeerFlow 的子 agent 工作一小時。收到完成的報告。指令:/new、/status、/models、/memory、/help。
安裝設定
前置需求
- Python 3.12+
- Node.js 22+
- pnpm
- Docker(建議,提供沙箱隔離)
Docker 安裝(建議)
git clone https://github.com/bytedance/deer-flow.git
cd deer-flow
# 產生設定檔和環境設定
make config
# 編輯 config.yaml 加入你的模型和 API key
# 模型設定範例:
# models:
# - name: gpt-4
# display_name: GPT-4
# use: langchain_openai:ChatOpenAI
# model: gpt-4
# api_key: $OPENAI_API_KEY
# 拉取沙箱映像並啟動所有服務
make docker-init
make docker-start
在 http://localhost:2026 存取 DeerFlow。Docker 把所有東西打包(後端、前端、Nginx 反向代理、沙箱),不用個別安裝。
本地開發安裝
git clone https://github.com/bytedance/deer-flow.git
cd deer-flow
make config # 產生設定檔
make check # 驗證環境
make install # 安裝依賴
make setup-sandbox # 選用:設定 Docker 沙箱
make dev # 啟動所有服務(開發模式)
模型設定
DeerFlow 支援任何 LangChain 相容模型。config.yaml 接受模型列表,每個帶各自 provider 的參數。對 OpenAI 相容的 provider(包括透過 Ollama 或 vLLM 跑的本地模型),設定 base_url:
models:
- name: deepseek-v3
display_name: DeepSeek v3.2
use: langchain_openai:ChatOpenAI
model: deepseek-chat
api_key: $DEEPSEEK_API_KEY
base_url: https://api.deepseek.com
DeerFlow vs. 手動跑多個 CLI Agent
理論上,你可以開五個終端、跑五個獨立的 Claude Code 或 Codex CLI session,手動協調。2025 年多 agent 工作流變得可行以來,開發者一直這樣做。
問題在於協調。五個獨立 agent:
- 沒有共享計畫。 每個按自己的理解工作。你就是協調者,在它們之間傳遞資訊、解決衝突、決定下一步。
- 沒有 context 隔離。 每個累積完整對話歷史。沒有積極摘要。沒有中間結果卸載。Context window 填滿得更快。
- 沒有結構化合成。 把五個輸出合併成一份連貫交付物是人工勞動。DeerFlow 的主 agent 自動做這件事。
- 沒有持久記憶。 關掉終端,context 就沒了。DeerFlow 跨 session 保留記憶。
DeerFlow 的價值就是協調層本身。計畫。範圍化的 context 分配。平行執行。自動合成。五個音樂家在同一個房間各自演奏,和五個音樂家在交響樂團裡跟著指揮演奏的差別。
話說回來,DeerFlow 不是專職 CLI 程式碼 agent 的替代品。Claude Code 在深度單一 codebase 重構上仍然更強。Codex CLI 在快速沙箱化程式碼產生上仍然更快。DeerFlow 坐在它們上面,作為跨越研究、內容、程式碼的協調層。
監控平行子 Agent
DeerFlow 扇出多個子 agent,每個在自己的沙箱執行任務時,實際挑戰是可見度。哪個子 agent 在進展?哪個卡住了?每個現在在做什麼?
終端排版很關鍵。DeerFlow 的網頁 UI 在一個面板、後端 log 在另一個、個別子 agent 輸出在各自終端。即時調整面板大小 -- debug 時放大 log、穩定時縮小 -- 把混亂的多 process 工作流變成可管理的狀態。
限制和誠實的考量
資源需求
DeerFlow 不輕量。完整技術棧(LangGraph agent server、Gateway API、前端、Nginx、Docker 沙箱)需要相當資源。筆電上預期明顯的 CPU 和記憶體使用。Docker 比較乾淨但比單一 CLI agent 更重。
複雜度預算
DeerFlow 解決真實問題 -- 多 agent 協調。但增加一層抽象需要理解和維護。config.yaml、模型設定、技能系統、MCP server 設定、沙箱模式。都是可能壞掉的介面。簡單寫程式任務殺雞用牛刀。DeerFlow 在真正需要多個子 agent 平行做研究、產生內容、執行程式碼的任務上,才值得它帶來的複雜度。
字節跳動出品
MIT 授權開源。程式碼可完整審計。但它來自字節跳動,某些企業環境對字節跳動出品的軟體有政策限制。自行審閱原始碼並做評估。MIT 代表你可以 fork、修改、自架,完全沒有限制。
安全面
任何在沙箱裡執行程式碼、連接外部 MCP server、安裝第三方技能的系統,攻擊面都比單一 process 的 CLI agent 大。Docker 沙箱提供隔離。但技能安裝機制和 MCP OAuth 流程是值得在正式部署前審計的信任邊界。
模型成本
DeerFlow 放大模型用量。十個子 agent 就是十倍 LLM 呼叫。按 token 計費的方案下,複雜研究任務可能燒掉可觀的 API 額度。監控 token 用量,特別是在嘗試高子 agent 數量時。
誰該用 DeerFlow
DeerFlow 不是給所有人的。適合的開發者和團隊:
- 經常處理跨研究 + 程式碼 + 內容的任務。 調查主題、根據發現寫程式、產出報告或簡報 -- DeerFlow 的多 agent 協調確實省時間。
- 需要長時間任務的持久 context。 以小時計而非分鐘計。DeerFlow 的記憶和中間結果卸載處理單一 agent 會遇到的 context window 限制。
- 想把多個 AI 工具整合進同一個工作流。 MCP 支援和技能系統把搜尋、程式碼執行、圖片產生、自訂工具放在同一個協調器下。
- 團隊需要非同步 AI 任務提交。 Telegram/Slack/飛書管道讓成員不用進網頁 UI 就能提交任務和收到結果。
快速寫程式任務,用 Claude Code 或 Codex CLI 就好。跨越研究、程式碼和內容邊界的多步驟專案,DeerFlow 值得那個設定成本。
Ready to streamline your terminal workflow?
Multi-terminal drag-and-drop layout, workspace Git sync, built-in AI integration, AST code analysis — all in one app.