Skip to content
Automation
Skill

/workflow-builder

Load before calling workflow_builder_build_workflow. Once the user wants a workflow, load it before you ask about that workflow. Do not load it to ask about a request that does not yet say what to build. Use for new one-off workflows, edits, repairs and post-build verification

From plugin
n8n
210k13 skills10 agents2 commands

Claude Code

$ npx -y skills add n8n-io/n8n --skill workflow-builder --agent claude-code

SKILL.md

workflow-builder.SKILL.md
name: workflow-builder
description: >-
  Load before calling workflow_builder_build_workflow. Once the user wants a
  workflow, load it before you ask about that workflow. Do not load it to ask
  about a request that does not yet say what to build. Use for new one-off
  workflows, edits, repairs and post-build verification of one workflow (not
  requests only to run or inspect a saved workflow), and for its
  credentials, model choices, evaluations and error workflow. For any other new
  workflow, load intent-recognition first when it is listed. If the workflow
  writes Data Tables, load data-table-manager first. Do a one-time request (no
  repeat or trigger words) now, without asking whether to repeat it; for one
  node, load one-off-operations and use execute_node.

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 write TypeScript with `@n8n/workflow-sdk`. All work goes through one workspace source file and the `workflow_builder_build_workflow` tool (argument: `filePath`):

  • **New workflow:** write the complete source with `workspace_write_file`

(typically `src/workflows/main.workflow.ts`), then build.

  • **Edit or repair of a saved workflow:** reuse the source file already in

context. If you only have a workflow ID, call `get_workflow_as_code` with `workflowId`: it writes the source to a bound `src/workflows/<name>.workflow.ts` file and returns the `filePath` plus a `nodes` index with line numbers. Read only the lines you need, make the smallest edit with `workspace_str_replace_file`, then build with the same `filePath` (no `workflowId` needed; the build remembers it). Never re-emit the whole source, and do not fetch the same unchanged workflow again.

When the needed node types are already obvious from the request, make one `find_tools` call for every tool catalog tool the build will need (for example `search_nodes`, `get_node_types`, `workflow_builder_build_workflow`, `workflow_builder_verify_built_workflow`) in the same response as the `load_skill` call for this skill. Each extra sequential turn resends the whole context.

Process

1. **Find nodes.** If unsure which nodes fit, call `search_nodes` with `categories` (`notification`, `data_persistence`, `chatbot`, `scheduling`, `data_transformation`, `data_extraction`, `document_processing`, `form_input`, `content_generation`, `triage`, `scraping_and_research`). Call `search_nodes` with `query`/`queries` and short service names ("Gmail") for service-specific nodes. 2. **Read definitions.** Call `get_node_types` with the exact node IDs and discriminators you will use (up to ten per call). Follow `@builderHint`, `@default`, enum values, credential types and display conditions. 3. **Resolve real values.** For each `searchListMethod`, `loadOptionsMethod` or `resourceLocator` parameter, call `get_node_parameter_options` when a credential is available. For new model choices, follow `model-selection`. 4. **Announce credentials early.** When the `setup_credentials` schema offers `filePath`, call it with the complete list of known credential types right after the first node definitions, as the only tool call in that response. Wait for `preBuild: true`, then continue. Otherwise use the post-build setup. 5. **Write the source.** Decide node groups now (see [Node Groups](#node-groups)). When a live or nondeterministic node feeds IF/Switch logic whose branches need verification, declare `output` fixtures on it. 6. **Build.** Call `workflow_builder_build_workflow` with the `filePath`. Do not run a separate validation command before the build: the build runs the graph checks, the SDK source lint and the node schema checks.

  • For new workflows, fix every blocking error.
  • For edits, fix only the errors that your change introduced, and keep

unrelated existing nodes and code.

  • Errors and warnings block the save. Informational findings do not.
  • If the save stays blocked, report the blocker. Do not expand the scope.

7. **Trace wiring.** For IF, Switch, Merge, AI-agent, loop or multi-workflow wiring, trace each branch from source to target in the saved graph. Every requested side effect must be on a wired branch. 8. **Hand off.** If the build output contains `postBuildFlow.required: true`, follow the inlined `postBuildFlow.instructions` before verification, setup, publishing, testing, or any final summary. Do not call `workflow_builder_verify_built_workflow` directly from this skill for direct builds.

Keep visible text for the final step, unless blocked.

Asking and placeholders

If the service or workflow shape is clear, never stop before the first `workflow_builder_build_workflow` call to ask for setup values (recipients, IDs, channels, credential choices, timezone). Use `placeholder('descriptive hint')` for values only the user knows, and unresolved `newCredential()` calls. Never hardcode fake values, and never ask for setup values before the first successful build: `setup_workflow` opens an inline setup card in the n8n Assistant panel afterwards. Use `ask_user` before the build only when a missing choice changes the workflow's intent or topology. Never solicit secrets through `ask_user`.

Knowledge sources

**Prefer n8n sources over guessing.** Consult, in this order:

1. The knowledge base in the sandbox workspace, read with the workspace tools (not `load_skill`): `knowledge-base/index.json` (technique guides and reference docs), `knowledge-base/templates/` (search it; never load `templates/index.json` wholesale), and `node-types/index.txt` (searchable node catalog) 2. A matching runtime skill (`data-table-manager`, `debugging-executions`, …). 3. Official n8n docs: load `n8n-docs-assistant` and call `n8n-docs`.

For workflows with several external systems or effects, digests, non-trivial branching or C

Read more
@n8n-io
Ships withn8n

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.

210k13 skills10 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
210.2k
Star history of n8n-io/n8n on GitHub, a chart by star-history.com

Other skills on n8n.

setup-mcps

setup-mcps

Configure MCP servers for n8n development. Use when the user says /setup-mcps or asks to set up MCP servers for n8n.

@n8n-io@n8n-ioInstall Skill
n8n-cli

n8n-cli

Use the n8n CLI to manage workflows, credentials, executions, and more on an n8n instance. Use when the user asks to interact…

@n8n-io@n8n-ioInstall Skill
agent-builder

agent-builder

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

@n8n-io@n8n-ioInstall Skill
app-builder

app-builder

Load before calling the apps tool. Use when the user wants to build or change an n8n App: a small web app, form, dashboard,…

@n8n-io@n8n-ioInstall Skill
data-table-manager

data-table-manager

Load before calling the data table tools or parse-file. Use for natural standalone requests like "what data tables do I have?",…

@n8n-io@n8n-ioInstall Skill
debugging-executions

debugging-executions

Debug failed or wrong-output workflow executions using executions tools. Load when the user reports execution failures,…

@n8n-io@n8n-ioInstall Skill

More skills from other plugins.

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
opencli-adapter-author

opencli-adapter-author

Build or improve an OpenCLI JS adapter using observed site behavior, existing adapters and browser API evidence. For ad-hoc…

opencli4d31k
@jackwener@jackwenerInstall Skill

Questions about workflow-builder.

Which coding agents can use workflow-builder?
workflow-builder 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.