Skip to content
Automation
Skill

/n8n

Build, test, and deploy n8n workflows via REST API with incremental testing. Expert automation for n8n. USE THIS SKILL WHEN user says "create workflow", "build automation", "deploy to n8n", "activate workflow", needs to list, update, delete, or test workflows, mentions webhook

From plugin
benai-skills
77152 skills17 agents1 hook4 MCP

Claude Code

$ npx -y skills add naveedharri/benai-skills --skill n8n --agent claude-code

SKILL.md

n8n.SKILL.md
name: n8n
description: Build, test, and deploy n8n workflows via REST API with incremental testing. Expert automation for n8n. USE THIS SKILL WHEN user says "create workflow", "build automation", "deploy to n8n", "activate workflow", needs to list, update, delete, or test workflows, mentions webhook execution, checking executions, debugging workflow runs, asks about n8n nodes, expressions, credentials, or Code nodes, needs JavaScript or Python code for n8n Code nodes, mentions expressions, $json, $input, or $node references, or asks about AI Agent, OpenAI, Anthropic, Google Sheets, Airtable, Slack, or other n8n nodes.
disable-model-invocation: true

n8n Automation Skill

Build, test, and deploy n8n workflows via REST API with incremental testing.

---

When This Skill Loads (DO THIS IMMEDIATELY)

Step 1: Read Reference Files

Use the Read tool to read these files NOW:
1. Read references/pitfalls.md (critical command format rules)
2. Read references/build-process.md (step-by-step build workflow)

Step 2: Check .env Configuration

Read the .env file in the working directory to verify:
- N8N_API_URL is set
- N8N_API_KEY is set
- N8N_CREDENTIALS_TEMPLATE_URL is set

If any values are missing, ask the user for ALL of them in a single prompt.

Step 3: Create a Todo List

After understanding the user's request, create a todo list using TaskCreate.

SKILL LOADS -> READ FILES IMMEDIATELY -> CHECK .env -> THEN respond to user

---

Critical Rules

1. USE THE TOOLS THE USER SPECIFIES

**If the user mentions specific tools, nodes, or services - YOU MUST USE THEM.**

User says "use Apify" -> You use Apify node
User says "use OpenAI" -> You use OpenAI Chat Model

Never substitute, skip, or defer user-requested tools.

2. NEVER Simplify When Hitting Errors - FIX THE ISSUE

Loop node has error -> Debug why -> Fix the loop configuration

Don't switch to "simpler" approaches. Keep the correct architecture.

3. Only Use Nodes From Credentials Template

Never add nodes requiring authentication unless: 1. The node exists in the user's credentials template, OR 2. The user explicitly asks to use that specific tool/service

4. Only Use Node Types/Versions That Are INSTALLED

Always copy `type` AND `typeVersion` from the credentials template.

5. One Node at a Time

ADD NODE -> TEST -> ADD NEXT NODE -> TEST -> REPEAT

**NEVER add 2+ nodes without testing between them.**

6. NEVER Delete or Deactivate Workflows - UPDATE Instead

Node fails -> Debug the error -> Update the same workflow (PUT)

One workflow ID for the entire build process.

7. Use Native Nodes First

| Priority | Use When | |----------|----------| | 1. Native node | Built-in exists (Slack, Sheets, etc.) | | 2. AI Agent node | For ANY AI/LLM task | | 3. Loop node | For processing multiple items | | 4. HTTP Request | Native has issues OR no node exists | | 5. Code node | Complex logic only |

8. No Mock Data

Never use placeholder URLs, fake IDs, or "REPLACE_ME" values.

9. Test with 2 Items

Always set `limit=2` on data-fetching nodes for fast testing.

10. Only Work With User-Specified Workflows

Never check, run, or modify workflows the user didn't mention.

---

Build Process

Step 0: Fetch Schema (If Database Involved)

1. Create temp workflow: Webhook + getSchema/getAll node
2. Execute to fetch actual field names
3. Use exact field names in main workflow

Step 1: Create Workflow with Trigger

1. Read references/triggers.md
2. Create workflow with trigger only
3. Test trigger

Step 2: Add Each Node

1. Read relevant reference file for this node type
2. Add ONE node to workflow
3. Test workflow
4. If ERROR -> fix -> retry
5. If SUCCESS -> move to next node

Step 3: Final Verification

1. All nodes added and tested
2. Workflow activated
3. Report success to user

---

API Methods Quick Reference

| Operation | Method | Endpoint | |-----------|--------|----------| | Create | POST | `/api/v1/workflows` | | Update | **PUT** | `/api/v1/workflows/{id}` | | Activate | **POST** | `/api/v1/workflows/{id}/activate` | | Deactivate | **POST** | `/api/v1/workflows/{id}/deactivate` | | Delete | DELETE | `/api/v1/workflows/{id}` | | Execute | POST | `/webhook/{path}` |

---

API Call Format

**CRITICAL RULES:** 1. **NEVER write JSON files to disk** - Always use API directly 2. **NEVER use `\` line continuations** - Causes errors 3. **Always single-line commands** - Or heredoc for large JSON

**GET:**

export $(cat .env | grep -v '^#' | xargs) && curl -s "${N8N_API_URL}/api/v1/ENDPOINT" -H "X-N8N-API-KEY: ${N8N_API_KEY}" | jq .

**POST/PUT (large JSON):**

export $(cat .env | grep -v '^#' | xargs) && curl -s -X POST "${N8N_API_URL}/api/v1/workflows" -H "X-N8N-API-KEY: ${N8N_API_KEY}" -H "Content-Type: application/json" -d "$(cat <<'EOF'
{
  "name": "My Workflow",
  "nodes": [...],
  "connections": {},
  "settings": {"executionOrder": "v1"}
}
EOF
)"

---

Workflow JSON Structure

{
  "name": "Workflow Name",
  "nodes": [
    {
      "id": "unique-node-id",
      "name": "Node Display Name",
      "type": "n8n-nodes-base.nodeName",
      "typeVersion": 1,
      "position": [250, 300],
      "parameters": {},
      "credentials": {}
    }
  ],
  "connections": {
    "Source Node Name": {
      "main": [[{"node": "Target Node Name", "type": "main", "index": 0}]]
    }
  },
  "settings": {"executionOrder": "v1"}
}

---

Reference Files

Read these files as needed using the Read tool:

Core API & Build Process

| File | Contents | |------|----------| | [references/api-reference.md](references/api-reference.md) | All API commands (CRUD, executions, tags, variables) | | [references/build-process.md](references/build-process.md) | Step-by-step build-test workflow | | [references/pitfalls.md](references/pitfalls.md) | **CRITICAL**: Command format rules, comm

Read more
@naveedharri
Ships withbenai-skills

Expert automation skills for Claude Code, organized by department.

77152 skills17 agents4 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
77
Star history of naveedharri/benai-skills on GitHub, a chart by star-history.com

Other skills on benai-skills.

ads-audit

ads-audit

Full multi-platform paid advertising audit with parallel subagent delegation. Analyzes Google Ads, Meta Ads, LinkedIn Ads, TikTok…

ads-budget

ads-budget

Budget allocation and bidding strategy review across all ad platforms. Evaluates spend distribution, bidding strategy…

ads-competitor

ads-competitor

Competitor ad intelligence analysis across Google, Meta, LinkedIn, TikTok, and Microsoft. Analyzes competitor ad copy, creative…

ads-creative

ads-creative

Cross-platform creative quality audit covering ad copy, video, image, and format diversity across all platforms. Detects creative…

ads-google

ads-google

Google Ads deep analysis covering Search, Performance Max, Display, YouTube, and Demand Gen campaigns. Evaluates 74 checks across…

ads-landing

ads-landing

Landing page quality assessment for paid advertising campaigns. Evaluates message match, page speed, mobile experience, trust…

More skills from other plugins.

agent-builder

agent-builder

Load immediately after an Agent intent, before the first agent_builder_* call. Governs how you create, configure, test, and…

n8n11d209k
@n8n-io@n8n-ioInstall Skill
browser-use

browser-use

Direct browser control via CDP for web interaction: automation, scraping, testing, screenshots, and site/app work. Also covers…

@browser-use@browser-useInstall Skill
agent-browser

agent-browser

Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling…

@vercel-labs-2@vercel-labs-2Install Skill
add-anydoc

add-anydoc

Add local office-document-to-Markdown conversion to NanoClaw agent containers with the pinned Firecrawl AnyDoc CLI. Use when…

@nanocoai@nanocoaiInstall Skill

Questions about n8n.

Which coding agents can use n8n?
n8n installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.