johnlindquist/mdflow
Multi-backend CLI for executable markdown prompts. Run .md files against Claude, Codex, Gemini, or Copilot.
解決的問題
mdflow 是一種面向智能體工作流程的 Git 原生控制平面。它透過允許使用者將特定任務(如程式碼審查或發行說明)定義為版本控制的 Markdown 檔案,解決了 AI 智能體任務不一致、不可重複的問題。這使得提示詞成為一等的 CLI 命令,可被串接、鏈結,並透過行為評估加以保護。
工作原理
- Markdown 作為命令:以特定模式命名的檔案(如
task.claude.md)會自動對應至 CLI 引擎(如 Claude、Codex 或 Gemini)。Markdown 正文作為提示詞,YAML 前置元資料則轉換為 CLI 標誌。 - 引擎解析:使用解析優先級鏈來決定執行哪個 AI 引擎,優先順序高於預設值:明確的 CLI 標誌、環境變數與檔案名稱。
- 上下文隔離:預設情況下會移除環境上下文(如使用者設定或會話持久化),以確保執行是隔離且可重複的,但可透過
_isolated: false選項停用此行為。 - 生命週期鈎子:使用者可將 TypeScript 檔案(鈎子)附加至流程中,於特定事件(如
userPromptSubmit)期間注入上下文或阻止操作。 - 行為評估:內建
md eval命令,可在隔離的工作區中執行行為測試案例,確保提示詞修改不會引入回歸問題。 - 演化協議:
md evolve命令允許使用者根據回饋提出並驗證提示詞改進方案,而無需立即覆蓋原始檔案。
適用對象
希望將 AI 智能體提示詞當作程式碼來處理的開發者與團隊,支援版本控制、回歸測試,並以標準化方式在不同 CLI 基礎的 LLM 引擎上執行 AI 任務。
核心亮點
- Git 原生:流程儲存在
./flows目錄中,可在拉取請求中進行差異比對。 - Unix 哲學:支援 stdin/stdout,允許將智能體透過管道串接(例如
git diff | md review.md)。 - 流程工作台:提供互動式 CLI 界面,用於搜尋與執行專案、全域及已安裝的流程。
- 引擎無關:支援多種引擎,包括
pi、claude、codex、copilot、gemini和agy。 - 模板變數:支援透過前置元資料變數、CLI 標誌與互動式表單提示實現動態輸入。
相關
- 專案
- 專案
- 專案
- 專案
- 專案