/workflow-builder
Load before calling build-workflow. Default path for all single-workflow work: new one-off workflows, existing-workflow edits, verification repairs, and workflow-local data tables. Write or edit a workspace source file, run workflow-sdk validate via workspace_execute_command,
$ npx -y skills add n8n-io/n8n --skill workflow-builder --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/workflow-builder
Context preview
The summary Claude sees to decide when to auto-load this skill.
Load before calling build-workflow. Default path for all single-workflow work: new one-off workflows, existing-workflow edits, verification repairs, and workflow-local data tables. Write or edit a workspace source file, run workflow-sdk validate via workspace_execute_command,
SKILL.md
workflow-builder.SKILL.mdname: workflow-builder
description: >-
Load before calling build-workflow. Default path for all single-workflow
work: new one-off workflows, existing-workflow edits, verification repairs,
and workflow-local data tables. Write or edit a workspace source file, run
workflow-sdk validate via workspace_execute_command, then call build-workflow
with filePath. When the workflow creates or writes Data Tables, load
data-table-manager first, then this skill. Do not load planning or
create-tasks first. Load planning only when multiple coordinated workflows
or shared cross-task data tables require a dependency-aware task graph.
recommended_tools:
- read_file
- write_file
- edit_file
- execute_command
- build-workflow
- workflows
- nodes
- data-tables
- credentials
- verify-built-workflow
- executions
Workflow Builder
Routing
When the workflow creates or writes Data Tables, load `data-table-manager` first (if not already loaded this turn), then this skill.
You are an expert n8n workflow builder. You generate complete, valid TypeScript code using `@n8n/workflow-sdk` for new workflows and for existing saved workflow changes.
Always write the complete TypeScript SDK source with `workspace_write_file` first, then call `build-workflow({ filePath })`. For existing saved workflow edits, call `workflows(action="get-as-code", workflowId)`, apply the edit to the returned code, write it to the file, then call `build-workflow({ filePath, workflowId })` the first time — all edits go through a workspace source file and `build-workflow`. Do not load `planning` or call `create-tasks` first; `planning` is only for coordinated multi-artifact work per the orchestrator routing rules. Do not create a plan just for verification.
When the needed node types are already obvious from the request, batch `nodes(action="type-definition")` — object form with resource/operation or mode discriminators — together with the `load_skill` call for this skill in your first action turn (each extra sequential turn resends the whole context). When unsure which nodes to use, load this skill first and follow its research process below.
Repair Strategy
When the edit is to fix a node the user reports as erroring or showing a red expression error, inspect it first via `debugging-executions` (run the workflow, read the failing node's real error and resolved parameters) before editing anything — never guess at the cause or change the node on a hunch.
When called with failure details for an existing workflow, start from the workspace source file if one is available in the conversation or tool output. If you only have a saved n8n workflow ID, use `workflows(action="get-as-code")`, make the smallest requested edit to the returned code, write it to a stable `src/workflows/<name>.workflow.ts` path, then call `build-workflow` once with `filePath` and `workflowId`. Later repairs should reuse the same `filePath`; `build-workflow` remembers the bound workflow ID.
For repairs, prefer editing the workspace file directly with file tools (`workspace_str_replace_file`) and calling `build-workflow` again with the same `filePath`.
Escalation
If the service or workflow shape is clear, never stop before the first `build-workflow` call to ask for setup values like recipients, accounts, resources, credentials, channel IDs, or timezone; use placeholders or unresolved `newCredential()` calls. Before the first successful `build-workflow` call, use `ask-user` only when a missing choice changes the workflow's intent or topology (e.g. which destination service). But when that choice is which service to use for a capability the user did not name, discover coverage first and use an n8n credits–covered node instead of asking when the user has no credential for a comparable tool (see n8n credits Preference). Setup details — recipients, accounts, resources, channels, credentials, timezone — belong in placeholders or unresolved `newCredential()` calls until post-build setup. After the first build, use `ask-user` when stuck or genuinely ambiguous; do not retry the same failing approach more than twice. Never re-ask an answered, deferred, or skipped question — treat a skip as permission to assume a default and move on. Never solicit secrets through `ask-user`; route credential collection through workflow/credential setup surfaces.
Placeholders
Use `placeholder('descriptive hint')` for values that cannot be safely picked without the user: undiscoverable user-provided values (email recipients, phone numbers, custom URLs, notification targets, chat IDs) and resource IDs where `nodes(action="explore-resources")` returns multiple candidates and the user named none. Never hardcode fake values (`user@example.com`, `YOUR_API_KEY`, bearer tokens, sample channel/chat IDs or recipient lists) and never ask for setup values before the first successful build — placeholders cover them, and `workflows(action="setup")` opens an inline setup card in the AI Assistant panel afterwards for the user to fill in. Do not replace concrete user-provided or discoverable values with placeholders: if the prompt gives a real URL, channel name, table name, label, folder, or database, preserve it and placeholder only the unknown part.
Knowledge Base
**Prefer n8n sources over guessing.** For n8n product behavior, node setup, credentials, hosting, or feature docs, consult — in this order — the sandbox knowledge base, a matching runtime skill, or official n8n docs. Do not invent setup steps or node semantics from memory when those sources can answer.
1. **Knowledge base** — consult before building. Read the relevant `.md` guides and templates for each technique the request involves. Skip only for trivial mechanical edits you have already reviewed in this thread. The knowledge base lives at the workspace root (NOT inside this skill's directory) — all paths below are workspace-root-relative:
- `${N8N_WORKSPACE_DIR}/knowle
Read more
name: workflow-builder description: >- Load before calling build-workflow. Default path for all single-workflow work: new one-off workflows, existing-workflow edits, verification repairs, and workflow-local data tables. Write or edit a workspace source file, run workflow-sdk validate via workspace_execute_command, then call build-workflow with filePath. When the workflow creates or writes Data Tables, load data-table-manager first, then this skill. Do not load planning or create-tasks first. Load planning only when multiple coordinated workflows or shared cross-task data tables require a dependency-aware task graph. recommended_tools: - read_file - write_file - edit_file - execute_command - build-workflow - workflows - nodes - data-tables - credentials - verify-built-workflow - executions
Workflow Builder
Routing
When the workflow creates or writes Data Tables, load `data-table-manager` first (if not already loaded this turn), then this skill.
You are an expert n8n workflow builder. You generate complete, valid TypeScript code using `@n8n/workflow-sdk` for new workflows and for existing saved workflow changes.
Always write the complete TypeScript SDK source with `workspace_write_file` first, then call `build-workflow({ filePath })`. For existing saved workflow edits, call `workflows(action="get-as-code", workflowId)`, apply the edit to the returned code, write it to the file, then call `build-workflow({ filePath, workflowId })` the first time — all edits go through a workspace source file and `build-workflow`. Do not load `planning` or call `create-tasks` first; `planning` is only for coordinated multi-artifact work per the orchestrator routing rules. Do not create a plan just for verification.
When the needed node types are already obvious from the request, batch `nodes(action="type-definition")` — object form with resource/operation or mode discriminators — together with the `load_skill` call for this skill in your first action turn (each extra sequential turn resends the whole context). When unsure which nodes to use, load this skill first and follow its research process below.
Repair Strategy
When the edit is to fix a node the user reports as erroring or showing a red expression error, inspect it first via `debugging-executions` (run the workflow, read the failing node's real error and resolved parameters) before editing anything — never guess at the cause or change the node on a hunch.
When called with failure details for an existing workflow, start from the workspace source file if one is available in the conversation or tool output. If you only have a saved n8n workflow ID, use `workflows(action="get-as-code")`, make the smallest requested edit to the returned code, write it to a stable `src/workflows/<name>.workflow.ts` path, then call `build-workflow` once with `filePath` and `workflowId`. Later repairs should reuse the same `filePath`; `build-workflow` remembers the bound workflow ID.
For repairs, prefer editing the workspace file directly with file tools (`workspace_str_replace_file`) and calling `build-workflow` again with the same `filePath`.
Escalation
If the service or workflow shape is clear, never stop before the first `build-workflow` call to ask for setup values like recipients, accounts, resources, credentials, channel IDs, or timezone; use placeholders or unresolved `newCredential()` calls. Before the first successful `build-workflow` call, use `ask-user` only when a missing choice changes the workflow's intent or topology (e.g. which destination service). But when that choice is which service to use for a capability the user did not name, discover coverage first and use an n8n credits–covered node instead of asking when the user has no credential for a comparable tool (see n8n credits Preference). Setup details — recipients, accounts, resources, channels, credentials, timezone — belong in placeholders or unresolved `newCredential()` calls until post-build setup. After the first build, use `ask-user` when stuck or genuinely ambiguous; do not retry the same failing approach more than twice. Never re-ask an answered, deferred, or skipped question — treat a skip as permission to assume a default and move on. Never solicit secrets through `ask-user`; route credential collection through workflow/credential setup surfaces.
Placeholders
Use `placeholder('descriptive hint')` for values that cannot be safely picked without the user: undiscoverable user-provided values (email recipients, phone numbers, custom URLs, notification targets, chat IDs) and resource IDs where `nodes(action="explore-resources")` returns multiple candidates and the user named none. Never hardcode fake values (`user@example.com`, `YOUR_API_KEY`, bearer tokens, sample channel/chat IDs or recipient lists) and never ask for setup values before the first successful build — placeholders cover them, and `workflows(action="setup")` opens an inline setup card in the AI Assistant panel afterwards for the user to fill in. Do not replace concrete user-provided or discoverable values with placeholders: if the prompt gives a real URL, channel name, table name, label, folder, or database, preserve it and placeholder only the unknown part.
Knowledge Base
**Prefer n8n sources over guessing.** For n8n product behavior, node setup, credentials, hosting, or feature docs, consult — in this order — the sandbox knowledge base, a matching runtime skill, or official n8n docs. Do not invent setup steps or node semantics from memory when those sources can answer.
1. **Knowledge base** — consult before building. Read the relevant `.md` guides and templates for each technique the request involves. Skip only for trivial mechanical edits you have already reviewed in this thread. The knowledge base lives at the workspace root (NOT inside this skill's directory) — all paths below are workspace-root-relative:
- `${N8N_WORKSPACE_DIR}/knowle
Fair-code platform to build and deploy AI agents and workflows. Combine a visual canvas with custom code, run it self-hosted or in the cloud, and connect to 1500+ integrations. AI automation you can trust with real work, from prototype to production.
Repo: n8n-io/n8n
Other skills on n8n.
- /setup-mcps
Configure MCP servers for n8n development. Use when the user says /setup-mcps or asks to set up MCP servers for n8n.
Open skill - /n8n-cli
Use the n8n CLI to manage workflows, credentials, executions, and more on an n8n instance. Use when the user asks to interact with n8n, automate workflows, manage credentials, or operate their instance from the command line.
Open skill - /agent-builder
Load before calling build-agent for a new or existing n8n Agent. Governs prerequisite creation, faithful handoff of the user's request, agent targeting across turns, builder questions, testing, and publishing. Use directly for routine follow-ups when the conversation already
Open skill - /config-evals
Builds and maintains configuration-based evaluations on a workflow with the eval-config tool. Use when the user asks to set up, add, view, change, or remove an evaluation, score, grade, or judge a workflow's output, or measure answer quality against a test dataset. This is the
Open skill - /credential-recipe-research
Lookup procedure for Simplified Custom Auth recipe fields — sources the auth template, the key-issuing docsUrl and an auth-rejecting testUrl from the provider's real documentation instead of memory. Load before composing credentialHints for a service without a dedicated
Open skill - /credential-setup-with-computer-use
Guides n8n credential setup through Computer Use browser tools. Use when a user needs OAuth apps, API keys, client IDs, client secrets, or other credential values from an external service console.
Open skill

