自然語言搭建自動化工作流

👤 七仔的AI工具箱 📦 v1.0.0 ⭐ 4.4 ⬇️ 69 下載
🤖 AI-Agent 免費

📖 技能介紹


name: nl2flow description: 把自然語言描述的固定高頻任務,「去 LLM 化」固化成一次生成、永久免費本地執行的自動化工作流,並帶護欄地部署到 定時任務/WorkBuddy automation。三層架構:Parser(自然語言→FlowManifest) → Generator(Manifest→可執行指令碼) → Renderer(確認卡);含「固化閉環」(模板結構指紋匹配,相似任務零成本命中不調 LLM)、「執行期失敗告警兜底」、以及「模型批准關卡(成本鐵律)」。觸發詞:NL2Flow、自然語言搭工作流、自動化工作流、定時任務部署、去 LLM 化沉澱、固化自動化、跑通的活固化成模板、便宜供應商切換、模型批准關卡、不燒 LLM、自治任務防燒錢。 agent_created: true


NL2Flow(自然語言 → 自動化工作流 · 去 LLM 化沉澱層)

它解決什麼

固定、高頻的任務(每天抓新聞總結、每週讀文件出報告、監控價格告警)如果每次都現問 LLM,既慢又持續燒錢。 NL2Flow 把它們一次生成、永久免費本地跑:自然語言 → 結構化 Manifest → 可執行指令碼 → 帶護欄地註冊定時/觸發執行。 跑通的任務還能固化成模板,下次相似請求零成本命中、不調 LLM。

準確定位:它是 WorkBuddy 內的「去 LLM 化沉澱層 / skill-creator 的治理約束層」,不是通用自動化平臺,也不是造 skill 的元技能。 完整設計見 nl2flow-framework-design.md,Manifest 欄位見 nl2flow-manifest-schema.json,場景示例見 nl2flow-examples.md

訪問小蔥技能站7w4.net,解鎖更多實用的AI技能外掛。

三層架構 + 固化閉環

自然語言
  → [Parser]     nl2flow_parser.py      NL → FlowManifest(JSON,純規則)
  → [Matcher]    template_matcher.py    先查本地模板庫(結構指紋 _fp + match_keywords),命中則零成本複用
  → [Generator]  nl2flow_generator.py    Manifest → flow.py + crontab
  → [Renderer]   nl2flow_renderer.py     Manifest → 普通人能看懂/改的確認卡
  → [Runtime]    nl2flow_runtime.py      fetch/filter/llm_summarize/send_email… 離線可降級
  → [Deploy]     deploy.py + nl2flow_cli.py deploy   註冊 schtasks/crontab/WorkBuddy automation

CLI 速查(入口 nl2flow_cli.py,全程用 python nl2flow_cli.py <子命令>

# 自然語言 → 先查模板(命中零成本) → 未命中則解析 Manifest
python nl2flow_cli.py build "每天早上8點抓取36kr AI新聞前10條用AI總結3條要點發到郵箱"

# 解析 → 確認卡(人先看懂再生成)
python nl2flow_parser.py "…" | python nl2flow_renderer.py

# 固化閉環:列出/固化/命中複用 模板
python nl2flow_cli.py list-templates
python nl2flow_cli.py save-template news_daily "…原始自然語言…"
python nl2flow_cli.py build "…變體請求…"        # 自動命中 news_daily,零成本

# 生成 + 離線試執行(NL2FLOW_OFFLINE=1:自動確認、不聯網、不真發郵件)
python nl2flow_cli.py run-template news_daily --gen

# 部署(預設 dry-run,只打印命令絕不註冊;--deploy 才真註冊,且先過護欄)
python nl2flow_cli.py deploy news_daily                 # dry-run
python nl2flow_cli.py deploy news_daily --backend windows --deploy
python nl2flow_cli.py unregister news_daily --backend windows
python nl2flow_cli.py list-deployed --backend workbuddy
python nl2flow_cli.py export-skill news_daily          # 反向生成可分享 skill.yaml

🔒 四大鐵律(改動/部署時不可繞過)

  1. 模型批准關卡(成本鐵律):任何含 llm_summarize 的流程,deploy --deploy必須問過使用者、使用者同意 用哪個模型/供應商,登記進 nl2flow-approvals.json 才放行;非互動環境(排程器/CI)未批准則直接拒絕註冊。執行時(llm_summarize)即使離線/部署,未批准也 絕不構造 OpenAI 客戶端、強制降級本地摘要、不花一分錢。→ 詳見 model_approval.py

  2. 便宜供應商一行切換(base_url 透傳)llm_summarizeOPENAI_BASE_URL 傳給 OpenAI 客戶端(OpenAI 相容協議)。DeepSeek / 通義千問 / 本地 Ollama 全靠設環境變數切換,零程式碼改動。對照表見 README 第 5.1 節。

  3. 頻率下限 ≥ 60 分鐘deploy 拒絕 * * * * **/30 * * * * 等高頻 cron(防 spam / token 爆炸)。如需更頻繁須手動且自擔風險。

  4. 誠實失敗 + 離線可降級:沙箱攔截 schtasks 時明確報「未成功」絕不謊報;執行時缺網/缺金鑰自動降級,不崩。執行期失敗自動發 ERROR 告警落盤({flow}.alerts.jsonl) + 心跳標記({flow}.last_run.json),用 health/alerts 子命令可讀。

python nl2flow_cli.py health news_daily     # 讀執行期健康(失敗與否你看得見)
python nl2flow_cli.py alerts news_daily     # 讀失敗告警

驗證(誠實閉環)

任何改動後必須迴歸全綠才算閉環(當前 115 項斷言,覆蓋 parser→matcher→generator→離線執行→部署護欄→執行期告警→模型批准關卡):

python tests/run_regression.py

任一斷言失敗即 sys.exit(1);全綠列印「全部通過」才算交付。迴歸使用臨時批准檔案、mock 真實註冊,不會汙染你真實的 nl2flow-approvals.json、不會真實註冊系統任務。

關鍵檔案

檔案 作用
nl2flow_cli.py CLI 入口(build/save-template/list-templates/run-template/deploy/unregister/list-deployed/export-skill/health/alerts)
nl2flow_parser.py 解析層:NL → Manifest(純規則)
nl2flow_generator.py 生成層:Manifest → Python 指令碼 + crontab
nl2flow_renderer.py 確認卡渲染器
template_matcher.py 固化閉環:結構指紋匹配本地模板
nl2flow_runtime.py 執行時工具庫(fetch/summarize/send,離線可降級,base_url 透傳)
deploy.py 部署層:頻率護欄/dry-run/schtasks·crontab·workbuddy 註冊/誠實失敗
model_approval.py 模型批准登記冊(成本鐵律關卡)
nl2flow-templates/ 已固化模板(news_daily / weekly_report / price_monitor)
tests/run_regression.py 迴歸套件(硬門禁)

🤖 AI 評測

這個 Skill 質量不錯,能把日常重複任務自動生成指令碼並定時跑,省時省錢。它的安全護欄設計到位,不會悄悄亂花錢或亂髮通知。文件詳細、測試覆蓋全,出問題也能追查。美中不足的是,遇到新型別任務可能需要調大模型幫忙,且需要先配置好模板庫才能發揮最大威力。總體適合有固定重複任務、想省心省錢的使用者。

📊 多維度評分

適應性4.4
規範性4.3
有效性4.6
可靠性4.3
可信度4.8

📁 包含檔案 (25 個)

📄 README.md 13 KB
📄 SKILL.md 6.1 KB
📄 build_skillhub_zip.py 2.5 KB
📄 deploy.py 23.1 KB
📄 model_approval.py 2.7 KB
📄 nl2flow-examples.md 4.5 KB
📄 nl2flow-framework-design.md 15 KB
📄 nl2flow-manifest-schema.json 6.1 KB
📄 nl2flow-templates/news_daily.json 2.9 KB
📄 nl2flow-templates/price_monitor.json 3 KB
📄 nl2flow-templates/weekly_report.json 3.1 KB
📄 nl2flow_cli.py 16 KB
📄 nl2flow_generator.py 10.1 KB
📄 nl2flow_llm_fallback.py 4.6 KB
📄 nl2flow_parser.py 13.4 KB
📄 nl2flow_renderer.py 6.1 KB
📄 nl2flow_runtime.py 15.6 KB
📄 template_matcher.py 10.1 KB
📄 tests/fixtures/news_daily.source.txt 100 B
📄 tests/fixtures/price_monitor.source.txt 105 B
📄 tests/fixtures/weekly_report.source.txt 141 B
📄 tests/run_regression.py 21.3 KB
📄 tests/test_p0_fixes.py 6.3 KB
📄 tests/test_p1_fixes.py 4.8 KB
📄 weekly_report.md 0 B