N8n Workflows
vibeeval/vibecosystem
n8n otomasyon workflow'lari. An agent skill from vibeeval/vibecosystem.
Architecture patterns for n8n workflows covering webhooks, HTTP APIs, databases, AI agents, scheduled jobs and batch processing, with advice on choosing between them.
$ npx skills add czlonkowski/n8n-skills --skill n8n-workflow-patterns -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install czlonkowski/n8n-skills n8n-workflow-patterns --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/czlonkowski/n8n-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/n8n-workflow-patterns .claude/skills/n8n-workflow-patterns && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "n8n-workflow-patterns" agent skill from https://github.com/czlonkowski/n8n-skills/tree/main/skills/n8n-workflow-patterns into .claude/skills/n8n-workflow-patterns/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "n8n-workflow-patterns", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/czlonkowski/n8n-skills/tree/main/skills/n8n-workflow-patternsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add czlonkowski/n8n-skills --skill n8n-workflow-patterns -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install czlonkowski/n8n-skills n8n-workflow-patterns --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/czlonkowski/n8n-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/n8n-workflow-patterns .agents/skills/n8n-workflow-patterns && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "n8n-workflow-patterns" agent skill from https://github.com/czlonkowski/n8n-skills/tree/main/skills/n8n-workflow-patterns into .agents/skills/n8n-workflow-patterns/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "n8n-workflow-patterns", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add czlonkowski/n8n-skills --skill n8n-workflow-patterns -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install czlonkowski/n8n-skills n8n-workflow-patterns --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/czlonkowski/n8n-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/n8n-workflow-patterns .cursor/skills/n8n-workflow-patterns && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "n8n-workflow-patterns" agent skill from https://github.com/czlonkowski/n8n-skills/tree/main/skills/n8n-workflow-patterns into .cursor/skills/n8n-workflow-patterns/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "n8n-workflow-patterns", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/czlonkowski/n8n-skills.git --path skills/n8n-workflow-patterns--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add czlonkowski/n8n-skills --skill n8n-workflow-patterns -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install czlonkowski/n8n-skills n8n-workflow-patterns --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/czlonkowski/n8n-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/n8n-workflow-patterns .gemini/skills/n8n-workflow-patterns && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "n8n-workflow-patterns" agent skill from https://github.com/czlonkowski/n8n-skills/tree/main/skills/n8n-workflow-patterns into .gemini/skills/n8n-workflow-patterns/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "n8n-workflow-patterns", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install czlonkowski/n8n-skills n8n-workflow-patternsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add czlonkowski/n8n-skills --skill n8n-workflow-patterns -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/czlonkowski/n8n-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/n8n-workflow-patterns .github/skills/n8n-workflow-patterns && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "n8n-workflow-patterns" agent skill from https://github.com/czlonkowski/n8n-skills/tree/main/skills/n8n-workflow-patterns into .github/skills/n8n-workflow-patterns/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "n8n-workflow-patterns", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add czlonkowski/n8n-skills --skill n8n-workflow-patterns -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install czlonkowski/n8n-skills n8n-workflow-patterns --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/czlonkowski/n8n-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/n8n-workflow-patterns .opencode/skills/n8n-workflow-patterns && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "n8n-workflow-patterns" agent skill from https://github.com/czlonkowski/n8n-skills/tree/main/skills/n8n-workflow-patterns into .opencode/skills/n8n-workflow-patterns/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "n8n-workflow-patterns", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
n8n-workflow-patternsArchitecture patterns for n8n workflows covering webhooks, HTTP APIs, databases, AI agents, scheduled jobs and batch processing, with advice on choosing between them.
The skill names six core patterns and gives each a pipeline shape. Webhook processing runs from webhook to validate, transform and respond. HTTP API integration goes from trigger to request, transform, action and error handler. Database operations run on a schedule through query, transform, write and verify. AI agent workflows combine a model, tools and memory. Scheduled tasks fetch, process, deliver and log, and batch processing splits large datasets with SplitInBatches and accumulates the results.
A selection guide matches situations to patterns with examples, such as a Stripe payment webhook that updates a database and sends a confirmation, or fetching GitHub issues to create Jira tickets. It also applies to speeding up slow workflows that handle many items, looking at node count, `batchSize` and all-items versus per-item processing. Separate files cover webhook, API, database, AI agent and scheduled patterns, alongside a README.
10 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 19cd793. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are javascript).
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
drive.google.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
n8n Workflow Patterns loads about 5.1k tokens when it runs. Until then it costs about 188 tokens; SKILL.md has 2,194 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from czlonkowski/n8n-skills at commit 19cd793, republished under its MIT licence (© czlonkowski). 2,194 words, ~5,098 tokens.
.claude/skills/n8n-workflow-patterns/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.Proven architectural patterns for building n8n workflows.
Based on analysis of real workflow usage:
Webhook Processing (Most Common)
Batch Processing (below)
Webhook Processing - Use when:
HTTP API Integration - Use when:
Database Operations - Use when:
AI Agent Workflow - Use when:
Scheduled Tasks - Use when:
Batch Processing - Use when:
All patterns share these building blocks:
Reading a filtered/projected slice of a nested API response for one field or payload? A single {{ $jmespath($json, "…") }} replaces a Split Out → Filter → Aggregate chain (quoting rules in n8n-expression-syntax).
When building ANY workflow, follow this checklist:
activateWorkflow operationBuilding the nodes is the start, not the finish. Before a workflow goes live, run it through four gates — and remember the headline rule: validation passing is necessary, not sufficient. A workflow can validate clean and still drop items, pick the wrong Merge input, or post Slack messages as plain text. Clean validation means the shapes are right, not that the logic is.
validate_workflow on the full JSON during build, or n8n_validate_workflow({ id }) once the workflow exists on the instance. Fix every error and re-validate. This catches schema, node-config, expression, and reference errors — the structural layer.n8n_get_workflow({ id }) and read the connections object directly. Validation confirms connections aren't broken; it doesn't confirm they're correct. This is where you catch the valid-but-wrong wiring: a Merge whose useDataOfInput doesn't line up with the connection slot, a Switch fallback that connects to nothing, a fan-out branch that was never wired onward, an error output that goes nowhere. (See the n8n Node Configuration skill's NODE_FAMILY_GOTCHAS.md for the silent ones.)n8n_test_workflow and inspect the output via n8n_executions. Confirm the output shape matches what consumers expect, fan-outs all produced data, and (for webhook APIs) the status/body/headers are right. Real side effects fire during a test — writes commit, messages send, external APIs are called. If any node has a user-visible side effect, confirm with the user before running, or test against safe data first.n8n_update_partial_workflow with the activateWorkflow operation. Don't activate straight off a clean validation; an active workflow that drops data or double-sends is worse than one that never started.Skipping any gate trades a few minutes now for debugging a live, possibly stateful, possibly traffic-bearing workflow later. The trade is never worth it.
Trigger → Transform → Action → EndUse when: Simple workflows with single path
Trigger → IF → [True Path]
└→ [False Path]Use when: Different actions based on conditions
Trigger → [Branch 1] → Merge
└→ [Branch 2] ↗Use when: Independent operations that can run simultaneously
Trigger → Split in Batches → Process → Loop (until done)Use when: Processing large datasets in chunks
Main Flow → [Success Path]
└→ [Error Trigger → Error Handler]Use when: Need separate error handling workflow
The SplitInBatches node splits a large dataset into smaller chunks for processing. Understanding its outputs is critical:
main[0] = done — fires ONCE after all batches completemain[1] = each batch — fires per batch (this is the loop body)Prepare Items → SplitInBatches → [main[1]: Process Batch] → (loops back)
[main[0]: Done] → Limit 1 → AggregateAlways add a Limit 1 node after the done output.
A SplitInBatches loop re-runs its whole body once per iteration — ~0.8 ms/iteration of engine overhead plus the body's own cost — so total ≈ ⌈items / batchSize⌉ × (overhead + body). batchSize is a direct speed dial:
batchSize: 1 is the expensive extreme — one full engine pass per item. Use it only when you must act on a single item at a time (nested-loop control, or an API that takes exactly one id).After the loop, $('Node Inside Loop').all() returns ONLY the last batch's items. To accumulate across all iterations, use $getWorkflowStaticData('global') in a Code node inside the loop. See the n8n Code JavaScript skill for the full pattern.
When processing N categories × M items per category (where an API has a batch limit):
Define Categories (N items)
→ Outer Loop (SplitInBatches, batchSize=1)
→ Prepare category data
→ Inner Loop (SplitInBatches, batchSize=1000)
→ API Call → Verify → (loops back to Inner Loop via main[1])
→ Inner done[0] → Rate Limit Delay → back to Outer Loop
→ Outer done[0] → Limit 1 → Final AggregateWiring gotcha: The inner done[0] must connect back to the OUTER loop input, not to the aggregate. The outer done[0] feeds the final aggregate.
For APIs without multi-ID filtering, use id_from + date windowing for efficient pagination:
Schedule → Set Date Window → Fetch Page → Process
→ IF has more? → [true] Update id_from → Fetch Page (loop)
→ [false] → Aggregate → OutputWhen testing with API write nodes disabled (for dry runs), downstream verification nodes receive the request body instead of the response. Make verification tolerant:
// In verification Code node
const body = $input.first().json;
const looksLikeRequest = body.method && body.parameters && !body.status;
if (looksLikeRequest) {
return [{ json: { status: 'SKIPPED', message: 'Upstream disabled for testing' }}];
}
// Normal response verification below...When a workflow processes thousands of items with little I/O, its speed is set by how many times n8n crosses a per-item / per-iteration boundary — each crossing sets up an execution context and copies the items. Four architecture choices dominate:
But profile first. Most production workflows are I/O-bound — sequential HTTP / DB / Sheets calls (hundreds of ms each) dwarf all of the above. These rules matter when transform work is the floor, or when an anti-pattern (Each-Item Code, batchSize 1, long per-item chains) turns a cheap operation into a slow one. Below a few hundred items, none of it matters. The n8n Code JavaScript skill has the full measured model.
append on sheets with formula columns — it breaks formulas. Use Google Sheets API values.update (PUT) via HTTP Request node with a googleApi credentialADD() formulas. Use parseFloat() in a Code nodeconvertToGoogleDocument: true creates a Google Doc (text), NOT a Google Sheet — to upload a CSV for download, omit this option entirelyhttps://drive.google.com/uc?id={fileId}&export=download — use instead of /view linksWhen comparing values (prices, quantities, metrics), always check both directions:
// ❌ Only catches increases
if (diff > threshold) { flag(); }
// ✅ Catches both spikes AND crashes — both are data-quality signals
if (Math.abs(diff) > threshold) { flag(); }Problem: Can't access webhook payload data
Solution: Data is nested under $json.body
❌ {{$json.email}}
✅ {{$json.body.email}}See: n8n Expression Syntax skill
Problem: Node processes all input items, but I only want one
Solution: Use "Execute Once" mode or process first item only
{{$json[0].field}} // First item onlyProblem: API calls failing with 401/403
Solution:
Problem: Nodes executing in unexpected order
Solution: Check workflow settings → Execution Order
Problem: Expressions showing as literal text
Solution: Use {{}} around expressions
These skills work together with Workflow Patterns:
n8n MCP Tools Expert - Use to:
tools_documentation({topic: "ai_agents_guide", depth: "full"}) for AI pattern guidancen8n_manage_datatablen8n_manage_foldersn8n Expression Syntax - Use to:
n8n Node Configuration - Use to:
n8n Validation Expert - Use to:
Common workflow patterns:
Most Common Triggers:
Most Common Transformations:
Most Common Outputs:
Average Workflow Complexity:
1. Webhook (path: "form-submit", POST)
2. Set (map form fields)
3. Slack (post message to #notifications)1. Schedule (daily at 9 AM)
2. HTTP Request (fetch analytics)
3. Code (aggregate data)
4. Email (send formatted report)
5. Error Trigger → Slack (notify on failure)1. Schedule (every 15 minutes)
2. Postgres (query new records)
3. IF (check if records exist)
4. MySQL (insert records)
5. Postgres (update sync timestamp)1. Webhook (receive chat message)
2. AI Agent
├─ OpenAI Chat Model (ai_languageModel)
├─ HTTP Request Tool (ai_tool)
├─ Database Tool (ai_tool)
└─ Window Buffer Memory (ai_memory)
3. Webhook Response (send AI reply)1. Manual Trigger (for testing)
2. HTTP Request (GET /api/users)
3. Split In Batches (process 100 at a time)
4. Set (transform user data)
5. Postgres (upsert users)
6. Loop (back to step 3 until done)For comprehensive guidance on each pattern:
From n8n template library:
Template #2947: Weather to Slack
Webhook Processing: Most common pattern
HTTP API: Common pattern
Database Operations: Common pattern
AI Agents: Growing in usage
Use search_templates and get_template from n8n-mcp tools to find examples!
Key Points:
Next Steps:
Related Skills:
© czlonkowski, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 6 other files in skills/n8n-workflow-patterns of czlonkowski/n8n-skills.
Open the folder on GitHubat commit 19cd793
n8n Workflow Patterns next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| n8n Workflow Patterns this skillczlonkowski/n8n-skills | 6.4k | — | ~5.1k | Automated safety check: Pass | MIT | |
| N8n Workflowsvibeeval/vibecosystem | 531 | — | ~3.3k | Automated safety check: Pass | MIT | |
| N8n Workflow Patternsdavila7/claude-code-templates | 32k | 1 repos | ~2.8k | Automated safety check: Pass | MIT | |
| AI Automation WorkflowsNeverSight/learn-skills.dev | 216 | 1 repos | ~2.6k | Automated safety check: Pass | None | |
| N8n Expression Syntaxdavila7/claude-code-templates | 32k | 4 repos | ~2.4k | Automated safety check: Pass | MIT | |
| Openclaw N8n OrchestratorLeoYeAI/openclaw-master-skills | 2.2k | — | ~4.1k | Automated safety check: Notes | MIT |
vibeeval/vibecosystem
n8n otomasyon workflow'lari. An agent skill from vibeeval/vibecosystem.
davila7/claude-code-templates
Proven workflow architectural patterns from real n8n workflows.
NeverSight/learn-skills.dev
Build automated AI workflows combining multiple models and services.
davila7/claude-code-templates
Validate n8n expression syntax and fix common errors. An agent skill from davila7/claude-code-templates.
LeoYeAI/openclaw-master-skills
When the user wants to connect an OpenClaw agent to n8n workflows, create n8n webhook skills for OpenClaw, route agent API calls through n8n for credential isolation, build bidirectional…
aiskillstore/marketplace
n8n workflow automation patterns and API integration. An agent skill from aiskillstore/marketplace.
czlonkowski/n8n-skills
Explains how n8n keeps file bytes in $binary apart from structured $json data, and how to read, write and preserve binary across nodes, agent tools and chat.
czlonkowski/n8n-skills
Guides writing JavaScript in n8n Code nodes: picking an execution mode, reading input data, returning items, using built-in helpers and avoiding common errors.
czlonkowski/n8n-skills
Explains how to write native Python in n8n Code nodes, including the two input variables, blocked imports and fixes for common errors.
czlonkowski/n8n-skills
Explains the n8n Custom Code Tool's actual runtime contract so an AI-agent-callable tool doesn't get written like a regular workflow Code node.
czlonkowski/n8n-skills
Wires n8n workflows so failures are visible and recoverable: per-node error outputs, retries, error workflows and correct 4xx and 5xx webhook responses.
czlonkowski/n8n-skills
Keeps an n8n MCP session pointed at the right n8n instance, with rules for discovering, switching and verifying the target before credential writes and for recovering from misroutes.
Works with
Categories
Architecture patterns for n8n workflows covering webhooks, HTTP APIs, databases, AI agents, scheduled jobs and batch processing, with advice on choosing between them. The skill names six core patterns and gives each a pipeline shape. Webhook processing runs from webhook to validate, transform and respond.
n8n Workflow Patterns fits situations like: designing the structure of a new n8n workflow; choosing between a webhook, scheduled or batch design for an automation; speeding up an n8n workflow that processes thousands of items.
Run `npx skills add czlonkowski/n8n-skills --skill n8n-workflow-patterns -a claude-code`. Or copy the skill folder (skills/n8n-workflow-patterns in czlonkowski/n8n-skills) into .claude/skills/n8n-workflow-patterns in your project. Claude Code loads it when a task matches its description.
Run `npx skills add czlonkowski/n8n-skills --skill n8n-workflow-patterns -a codex`. Or copy the skill folder (skills/n8n-workflow-patterns in czlonkowski/n8n-skills) into .agents/skills/n8n-workflow-patterns in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add czlonkowski/n8n-skills --skill n8n-workflow-patterns -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/n8n-workflow-patterns, .gemini/skills/n8n-workflow-patterns, .github/skills/n8n-workflow-patterns and .opencode/skills/n8n-workflow-patterns in your project.
SKILL.md names no scripts, command-line tools or credentials: n8n Workflow Patterns is instructions for the agent only. Our summary lists: An n8n instance.
SKILL.md names 1 domain. In commands or code: drive.google.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
n8n Workflow Patterns is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 5.1k tokens (SKILL.md is roughly 20k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with n8n Workflow Patterns: N8n Workflows (vibeeval/vibecosystem, 531 stars), N8n Workflow Patterns (davila7/claude-code-templates, 32k stars), AI Automation Workflows (NeverSight/learn-skills.dev, 216 stars) and N8n Expression Syntax (davila7/claude-code-templates, 32k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
czlonkowski (a GitHub user) maintains it in czlonkowski/n8n-skills, which has 6,387 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on September 16, 2026.
Source: czlonkowski/n8n-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.