概念百科 · 空軍 · 台海

動態工作流與 Multi-Agent 平行架構參考(pi-dynamic-workflows)

2026-06-10★★★★★待查證

動態工作流與 MultiAgent 平行架構參考 本文件記錄 pidynamicworkflows 的設計理念與對本系統的應用方向,供未來改進 agentv3pipeline 架構時參考。 核心理念:從「串列 Agent」到「動態分派 Subagent」 傳統做法(本系統現況) Pipeline 主線(串列): Step 1 → Step 2 → Step

動態工作流與 Multi-Agent 平行架構參考

本文件記錄 pi-dynamic-workflows 的設計理念與對本系統的應用方向,供未來改進 `agent-v3-pipeline` 架構時參考。

---

核心理念:從「串列 Agent」到「動態分派 Sub-agent」

傳統做法(本系統現況)

```

Pipeline 主線(串列):

Step 1 → Step 2 → Step 3 → Step 4 → Step 5

如果 Step 3 卡住,後面全停。

```

pi-dynamic-workflows 的突破

```

Orchestrator(主控模型)

↓ 產生分派腳本(JavaScript / Python)

├─ SubAgent A(獨立 Session,完整工具)

├─ SubAgent B(獨立 Session,完整工具)

├─ SubAgent C(獨立 Session,完整工具)

└─ SubAgent D(獨立 Session,完整工具)

↓ 彙整所有結果

最終輸出(Aggregated Result)

```

關鍵特性:

  • 每個 SubAgent 跑在獨立的工作階段(Session)裡,互不干擾
  • 每個 SubAgent 具備完整的 coding 工具(讀檔、執行指令、回傳結構化結果)
  • 使用者只需用自然語言下達指令,模型自動產生分派腳本並執行
  • 即時進度廣播,可隨時 Esc 中止

---

對本系統的應用設計

現況 vs. 改進後架構對比

面向現況改進後
執行方式串列(一個接一個)平行(多個同時)
失敗影響範圍一個失敗,全線停止單一 SubAgent 失敗,其他繼續
議題深度分析一個 Agent 依序分析所有議題每個議題一個 SubAgent 同步深度分析
進度可見性只能看 log即時廣播每個 SubAgent 狀態
記憶體隔離共用 context各 SubAgent context 完全隔離

建議的本系統 Dynamic Workflow 架構

```yaml

建議的 workflow 分派格式(YAML)

workflow:

name: "每日情報分析管線"

orchestrator: "Antigravity"

subagents:

  • id: "mnd_crawler"

task: "抓取 MND 即時軍事動態,解析 ADIZ 資料"

tool: "_tools/extract_adiz_weekly.py"

output: "adiz_weekly.json"

  • id: "news_fetcher"

task: "抓取外電新聞(Reuters, BBC, NHK)台海相關報導"

tool: "_tools/fetch_external_news.py"

output: "external_news.json"

  • id: "wiki_syncer"

task: "掃描 wiki/ 新增文件,更新 _index.md 與語意索引"

tool: "_tools/wiki_compiler.py"

output: "wiki_update_report.json"

  • id: "analyst_0{n}"

task: "對議題 {n} 進行深度分析"

tool: "_agents/02_deep_analyst.py"

output: "issue_{n}_analysis.md"

parallel: true # 可同時啟動多個

aggregator:

task: "彙整所有 SubAgent 結果,生成綜合報告"

output: "YYYYMMDD_中共軍事動態綜合分析報告.md"

```

---

分三期實作建議

第一期:平行化爬蟲(最低成本,立即可做)

```python

在 daily_pipeline.py 加入:

from concurrent.futures import ThreadPoolExecutor, as_completed

def run_parallel_crawlers():

tasks = {

"mnd": run_mnd_crawler,

"news": run_news_fetcher,

"wiki": run_wiki_syncer,

}

with ThreadPoolExecutor(max_workers=3) as executor:

futures = {executor.submit(fn): name for name, fn in tasks.items()}

for future in as_completed(futures):

name = futures[future]

result = future.result()

print(f"[{name}] 完成: {result}")

```

第二期:Git Worktree 隔離環境

```bash

為每個 SubAgent 建立獨立工作區

git worktree add ../worktree-mnd feature/gas-automation

git worktree add ../worktree-analyst feature/gas-automation

各 SubAgent 在自己的 worktree 工作,不互相干擾

```

第三期:完整 Orchestrator 實作

  • Orchestrator 讀取 `workflow.yaml` → 產生分派腳本
  • 每個 SubAgent 接受指令 → 執行 → 回傳 JSON 結果
  • Supervisor 即時監控所有 SubAgent 狀態
  • Aggregator 彙整結果並觸發通知鏈

---

與現有架構的整合點

現有元件對應角色改進方向
`daily_pipeline.py`Orchestrator改為讀取 workflow 定義後動態分派
`02_deep_analyst.py`Maker SubAgent改為可接受參數、平行啟動多個
`knowledge_quality_gate.py`Supervisor SubAgent改為即時監控而非事後審查
`HANDOVER.md`外部記憶每個 SubAgent 完成後自動更新對應段落
Git Worktree隔離環境已有基礎,可擴充

---

參考資源

  • pi-dynamic-workflows GitHub:https://github.com/Michaelliv/pi-dynamic-workflows
  • Claude Code Dynamic Workflow(靈感來源):Anthropic 官方文件
  • 本系統 Supervised Engineering 架構:`artifacts/supervised_engineering_design.md`