Communitygithub.com

N8n 自動化與 AI 技能套件

包含 17 項代理與自動化基礎設施技能:RAG、MCP 伺服器、提示工程、n8n 與運行環境。

N8n 自動化與 AI 技能套件 是什麼?

此技能套件為開發者與 AI 代理提供建構生產級 n8n 工作流程自動化、自訂節點與整合的完整能力。它涵蓋了自託管與 npm 安裝方式、工作流程 JSON 結構設計、常見觸發類型(如 Webhook、排程觸發、表單觸發)、表達式語法(Luxon 日期格式化、JMESPath 查詢)、錯誤處理模式、JavaScript 與 Python 的 Code 節點範例,以及 12 條關鍵開發規則。此外,還包含流程控制、資料轉換、開發者工具與 AI 節點等類別的節點清單。支援平台包括 Docker 自託管、npm 全域安裝,以及自訂節點開發。這套技能適用於 Claude Code、Cursor、Codex 等 AI 編碼代理,幫助使用者快速建立可靠的自動化流程。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add poorvith-mp/skills-agents

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

n8n

您是建置生產級 n8n 工作流程自動化、自訂節點與整合的專家。 請閱讀以下詳細參考檔案以獲取全面的模式:

設定檢查清單

自託管 (Docker)

docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n

自訂節點開發

npx n8n-node-dev new        # 建立一個新節點
npm link                     # 將節點連結到本地 n8n
n8n start                   # 啟動時載入自訂節點

npm (全域安裝)

npm install n8n -g
n8n start

核心模式

工作流程 JSON 結構

{
  "name": "My Workflow",
  "nodes": [
    {
      "parameters": {},
      "id": "unique-id",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2,
      "position": [250, 300]
    }
  ],
  "connections": {
    "Webhook": {
      "main": [[{ "node": "Next Node", "type": "main", "index": 0 }]]
    }
  },
  "settings": { "executionOrder": "v1" }
}

常見觸發類型

觸發器使用案例
n8n-nodes-base.webhookHTTP 請求、API 端點
n8n-nodes-base.scheduleTrigger基於 Cron 的排程任務
n8n-nodes-base.formTrigger使用者表單提交
n8n-nodes-base.emailReadImap接收電子郵件
n8n-nodes-base.workflowTrigger被其他工作流程呼叫

表達式語法

{{ $json.fieldName }}                    // 目前節點資料
{{ $input.first().json.field }}          // 第一個輸入項目
{{ $('NodeName').first().json.field }}   // 來自特定節點的資料
{{ $now.toFormat('yyyy-MM-dd') }}        // Luxon 日期格式化
{{ $if($json.age > 18, "adult", "minor") }}  // 條件判斷
{{ $jmespath($json, "items[?price > `100`]") }}  // JMESPath 查詢

錯誤處理模式

{
  "nodes": [
    {
      "name": "Main Task",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueErrorOutput",
      "retryOnFail": true,
      "maxTries": 3,
      "waitBetweenTries": 1000
    }
  ]
}

Code 節點 (JavaScript)

// 在 Code 節點中 — 處理所有項目
const results = [];
for (const item of $input.all()) {
  results.push({
    json: {
      processed: item.json.name.toUpperCase(),
      timestamp: new Date().toISOString(),
    }
  });
}
return results;

Code 節點 (Python)

# 在 Code 節點中 — 處理所有項目
results = []
for item in _input.all():
    results.append({
        "json": {
            "processed": item.json["name"].upper(),
            "timestamp": str(datetime.now()),
        }
    })
return results

關鍵規則

  1. 每個工作流程都需要一個觸發節點 — Webhook、排程、表單觸發或應用觸發器啟動執行
  2. 項目是陣列 — 每個節點接收並輸出項目陣列;務必處理多個項目
  3. 優先使用表達式而非 Code 節點 — 表達式執行更快且易於維護;僅在處理複雜邏輯時使用 Code
  4. 設定 executionOrder: "v1" — 確保新工作流程中節點按可預測順序執行
  5. 錯誤工作流程是獨立的 — 在工作流程設定中設定專用的錯誤工作流程以捕捉失敗
  6. 憑證在靜態時加密 — 永遠不要將秘密寫死在節點參數中;使用 n8n 的憑證系統
  7. Webhook 路徑必須唯一 — 重複路徑會導致路由衝突
  8. 二進位資料需要明確處理 — 使用「移動二進位資料」節點在二進位與 JSON 之間轉換
  9. 先手動執行測試 — 在啟用生產環境前務必手動測試工作流程
  10. 開發時使用固定資料 — 使用節點上的固定資料來測試下游邏輯,無需重新觸發
  11. 子工作流程以實現重用 — 將共用邏輯提取到透過「執行工作流程」節點呼叫的子工作流程中
  12. 遵守速率限制 — 在呼叫有限速的 API 時,使用 SplitInBatches 節點和等待節點

關鍵節點類別

類別節點
流程IF, Switch, Merge, SplitInBatches, Loop Over Items
轉換Set, Code, HTML Extract, Markdown, XML, Date & Time
資料HTTP Request, GraphQL, FTP, RSS, Read/Write Files
開發者Webhook, Execute Command, Execute Workflow, Function
AIAI Agent, Text Classifier, Summarization Chain, Vector Store

使用 $ARGUMENTS 了解使用者想要建置的內容。在撰寫程式碼前請閱讀參考檔案以獲取詳細模式。


輸出格式

  • 以使用者要求的結果為首。
  • 使用清晰的標題和項目符號清單(如適用)。
  • 在結尾處說明假設與待確認問題。
  • 專注於 n8n 工作流程的具體內容;避免通用填充。

驗證與品質檢查清單

  • 程式碼編譯成功,且所有自動化測試與型別檢查均通過,無新的警告。
  • 邊界情況、邊界條件與錯誤狀態已明確處理,而非假設。
  • 未引入硬編碼的機密、憑證或不安全的預設設定。
  • 變更有測試覆蓋,且該測試在沒有變更時會失敗。

反模式與限制

  • 絕不削弱或跳過一個失敗的測試以讓變更通過。
  • 絕不靜默吞下錯誤或在生產路徑中留下未處理的拒絕。
  • 絕不引入破壞性的 API 變更而未附帶版本號提升與遷移路徑。

相關技能