feat: Complete Skill #3 - n8n Workflow Patterns

Implements comprehensive workflow pattern guidance from 31,917 real workflows.
Addresses the most common use case (813 webhook searches).

Files created:
- 5 evaluations testing pattern selection and implementation
- SKILL.md (486 lines) - Pattern overview, selection guide, workflow checklist
- webhook_processing.md (554 lines) - Webhook patterns, $json.body gotcha, auth
- http_api_integration.md (763 lines) - REST APIs, pagination, rate limiting
- database_operations.md (854 lines) - DB ops, batch processing, SQL injection prevention
- ai_agent_workflow.md (918 lines) - AI agents, 8 connection types, tool configuration
- scheduled_tasks.md (845 lines) - Cron schedules, timezone handling, monitoring
- README.md - Skill metadata with pattern statistics

Key features:
- 5 core patterns: Webhook (35%), HTTP API (892 templates), Database (456), AI (234), Scheduled (28%)
- Workflow creation checklist (planning → implementation → validation → deployment)
- Pattern selection guide with statistics
- Common gotchas documented (webhook $json.body, SQL injection, timezone, etc.)
- Error handling strategies for each pattern
- Performance optimization techniques
- Security best practices
- Testing approaches
- Real template examples

Critical insights:
- Webhook data under $json.body (not $json) - #1 gotcha
- Always use parameterized queries (SQL injection prevention)
- ANY node can be an AI tool (connect to ai_tool port)
- Set workflow timezone explicitly (DST handling)
- Authentication via credentials (never hardcode)

Pattern statistics:
- Trigger distribution: Webhook 35%, Schedule 28%, Manual 22%, Service 15%
- Transformation: Set 68%, Code 42%, IF 38%, Switch 18%
- Output: HTTP 45%, Slack 32%, Database 28%, Email 24%
- Complexity: Simple 42%, Medium 38%, Complex 20%

Total: ~4,420 lines across 12 files

Based on analysis of 31,917 real workflows and usage patterns.

🤖 Conceived by Romuald Członkowski - https://www.aiadvisors.pl/en
This commit is contained in:
czlonkowski
2025-10-20 10:38:38 +02:00
parent f7d34f2b8e
commit 651467dee6
12 changed files with 4362 additions and 0 deletions

View File

@@ -0,0 +1,14 @@
{
"id": "pattern-001",
"skills": ["n8n-workflow-patterns"],
"query": "I need to build a workflow that receives webhook data and sends it to Slack. What's the best way to structure this?",
"expected_behavior": [
"Identifies this as a Webhook Processing pattern",
"References the webhook_processing.md pattern file",
"Explains the basic structure: Webhook → Transform → Output",
"Mentions data is nested under $json.body for webhook payloads",
"Suggests validation and error handling",
"May reference real template examples",
"Provides checklist: trigger, validation, transformation, output, error handling"
]
}

View File

@@ -0,0 +1,14 @@
{
"id": "pattern-002",
"skills": ["n8n-workflow-patterns"],
"query": "I want to fetch data from a REST API, transform it, and store it in my database. How should I structure this workflow?",
"expected_behavior": [
"Identifies this as an HTTP API Integration pattern",
"References the http_api_integration.md pattern file",
"Explains the structure: Trigger → HTTP Request → Transform → Database → Error Handler",
"Discusses authentication handling (credentials)",
"Mentions pagination for large datasets",
"Suggests retry logic for API failures",
"Provides guidance on response parsing and data mapping"
]
}

View File

@@ -0,0 +1,15 @@
{
"id": "pattern-003",
"skills": ["n8n-workflow-patterns"],
"query": "How do I build a workflow that syncs data between two databases? I need to read from Postgres and write to MySQL.",
"expected_behavior": [
"Identifies this as a Database Operations pattern",
"References the database_operations.md pattern file",
"Explains the structure: Schedule/Trigger → Read DB → Transform → Write DB → Error Handler",
"Discusses batch processing for large datasets",
"Mentions transaction handling and rollback considerations",
"Suggests incremental sync strategies (last_modified timestamps)",
"Warns about connection pooling and performance",
"Provides guidance on data type mapping between databases"
]
}

View File

@@ -0,0 +1,15 @@
{
"id": "pattern-004",
"skills": ["n8n-workflow-patterns"],
"query": "I want to build an AI agent that can use tools to answer questions. What's the recommended workflow pattern?",
"expected_behavior": [
"Identifies this as an AI Agent Workflow pattern",
"References the ai_agent_workflow.md pattern file",
"Explains the structure: Trigger → AI Agent (with Language Model + Tools + Memory)",
"Discusses the 8 AI connection types (ai_languageModel, ai_tool, ai_memory, etc.)",
"Mentions that ANY node can be an AI tool (connected via ai_tool port)",
"Suggests memory integration for conversation context",
"Provides guidance on tool configuration and result handling",
"May mention langchain package nodes"
]
}

View File

@@ -0,0 +1,15 @@
{
"id": "pattern-005",
"skills": ["n8n-workflow-patterns"],
"query": "I need to generate a daily report that fetches analytics data and emails it to my team. What's the best workflow structure?",
"expected_behavior": [
"Identifies this as a Scheduled Tasks pattern",
"References the scheduled_tasks.md pattern file",
"Explains the structure: Schedule Trigger → Fetch Data → Transform/Aggregate → Format Report → Send Email",
"Discusses cron expression configuration",
"Mentions timezone considerations",
"Suggests error handling and failure notifications",
"Provides guidance on data aggregation and report formatting",
"May suggest using templates for consistent report structure"
]
}