etiennelescot/n8n-as-code/n8n-architect
- community
Checking that the SKILL.md file is still in the repository.
Use when the user explicitly wants to create, edit, validate, sync, or troubleshoot n8n workflows, asks about n8n nodes or automation, or wants to use n8n-as-code in the current context root.
Install
npx vskill@latest install etiennelescot/n8n-as-code/n8n-architectSKILL.md
n8n Architect
Use this skill for all n8n-as-code work: workspace readiness, environments, managed local instances, tunnels, workflow authoring, validation, sync, push, and pull.
Use npx --yes n8nac as the primary interface. Use npx --yes @n8n-as-code/n8n-manager only for local managed runtime lifecycle, tunnels, and workflow presentation commands that are explicitly exposed by n8n-manager.
Context Root Protocol
- Treat the current context root as the directory containing
n8nac-config.json,AGENTS.md,.agents/skills, and the configuredworkflowsPath. - Generated context root hint: not embedded. Use the shell launch directory or the workspace path explicitly given by the user.
- Before any n8n work, first run
npx --yes n8nac update-aifrom the context root, then readAGENTS.md.update-aiis designed to create or refresh the n8n-as-code block without destroying existing user or agent instructions. - Use the exact
n8nac commandandn8n-manager commandlisted inAGENTS.md. Those context-root commands override the portable examples in this skill. - Run every
npx --yes n8nac env ...,npx --yes n8nac workspace ...,npx --yes n8nac list,pull,push,validate,test, andupdate-aicommand from the context root unless the user explicitly gives another context root. AGENTS.mdis bootstrap context only, not a source of configuration truth.- Do not infer environment, project, or
workflowsPathfromAGENTS.md. - Before n8n work, resolve the effective context from the backend:
- Use the returned
workflowsPathfor workflow files. It is the configured workflow directory for the active environment. - Do not reconstruct
workflowsPathfrom environment name/id,instanceIdentifier,instanceUserIdentifier,projectId,projectName, or legacy sync fields. - Never write
n8nac-config.json,~/.n8n-manager, or n8n-manager secret files by hand.
Workspace Readiness
Resolve the effective environment through the backend before workflow work:
- Treat
env status --jsonas the source of effective workspace readiness. - Do not infer readiness from raw files, generated agent docs, or directory names.
- A workspace
.envholdingN8N_HOST(plus any ofN8N_API_KEY,N8N_NATIVE_MCP_URL,N8N_NATIVE_MCP_TOKEN) configures thedefaultenvironment on first use:env status --jsonthen resolves with noenv add,env auth set,env use, ornative-mcp configure. - If
env status --jsonfails because the workspace is not configured, useenv add,env auth set, andenv useto create or select a V4 workspace environment. - Managed local instances remain machine-global runtime resources.
- Workspace environments remain workspace-scoped and are managed through
npx --yes n8nac env ....
Bootstrap Order
cdto the context root.- Run
npx --yes n8nac update-ai, then readAGENTS.md. - Run
npx --yes n8nac env status --json. If it resolves withaccessStatus: "ready", the workspace is ready — skip steps 4-9. A resolution withmissing-api-keyorinvalid-api-keymeans only the credential is missing: go to step 7. - If the context root is not ready, inspect managed local instances with
npx --yes @n8n-as-code/n8n-manager instance list. - Reuse an existing environment or managed local instance when suitable.
- If no suitable environment exists, stop and ask the user whether they want to connect a remote n8n URL or create/reuse a managed local n8n instance. Do not create infrastructure by default. If the user chooses a managed local instance, ask separately whether they want a public tunnel.
- Ask for host/API key only for an explicitly remote n8n environment.
- Configure the environment with:
For a managed local instance:
- Run
npx --yes n8nac update-aiafter changing environments when the facade does not do it automatically.
Environments
Use npx --yes n8nac env ... for workspace environments, remote URLs, active environment, API-key binding, projects, and workflow paths.
- Prefer
--api-key-stdinfor API keys. - Prefer
env add --pinto create and pin the default environment in one process instead of a separateenv use. - Do not pass secrets inline in shell arguments.
env auth setbinds the key to one environment, so several environments may share a base URL with one key each. Run it once per environment;apiKeySourceinenv status --jsonisworkspace-environmentwhen the environment uses its own key.- Do not ask for host/API key when the user wants a managed local Docker instance.
- Do not print API keys or credential secret values back to the user.
- If a command or flag is unfamiliar, run
npx --yes n8nac env --helpornpx --yes n8nac env <subcommand> --help.
Attach a managed local instance to the workspace with npx --yes n8nac env ...:
Managed Local Runtime
Use npx --yes @n8n-as-code/n8n-manager only for local managed instance lifecycle, tunnels, and workflow presentation commands that are part of the local runtime layer.
Inspect existing managed instances before changing local machine state:
Do not invent n8n-manager subcommands. Use npx --yes @n8n-as-code/n8n-manager <subcommand> --help when unsure.
When the context root is not configured and no suitable existing instance is available, stop and ask the user to choose. Do not create infrastructure by default.
Present these choices clearly:
- use an existing managed local instance if one is available;
- create a new managed local n8n instance;
- configure a remote n8n URL as a workspace environment through
npx --yes n8nac env.
If the user chooses a managed local Docker instance, ask the tunnel question separately:
- without public tunnel: local n8n only, suitable for normal UI/API workflow work;
- with public tunnel: exposes the instance through a public URL, useful for webhooks/forms/chat triggers and remote callbacks.
Do not enable, refresh, or start a public tunnel unless the user explicitly requested public access, webhook testing, or approved the tunnel option. If public access is not needed, create/start the managed instance without --tunnel.
Only run these commands after the user has explicitly chosen the corresponding option.
Managed local instance without public tunnel:
Managed local instance with public tunnel:
Instance and tunnel operations are per managed local instance:
- Do not delete local instance data unless the user explicitly asks for destructive deletion.
- If Docker is unavailable or the daemon is stopped, report the backend diagnostic and stop. Do not loop.
- If a command fails repeatedly, stop after two attempts and explain the backend diagnostic.
Sync Discipline
- Pull before reading or modifying an existing workflow.
- Push after every modification.
- Use
listto inspect workflow IDs, file paths, and sync status.
pushrequires the full workflow file path, either absolute or context-root-relative. Do not pass a bare filename.- On n8n 2.x, pushing to a published workflow also releases it to production — the API re-publishes on update. Treat every push to a published workflow as a deploy. Use
push --draftwhen the user wants to check the change in n8n first: it re-pins the previously published version so production keeps running what it already ran. - For a new workflow, create the file inside the
workflowsPathreturned byenv status --json, then confirm it withnpx --yes n8nac list --local. - If push/pull reports a conflict, use explicit resolution commands. Do not overwrite remote changes blindly.
pulland conflict resolution operate on a single workflow ID.listis the lightweight command that covers all workflows at once.- If you skip pull, a later push can be rejected by optimistic concurrency control when the remote changed.
Conflict Handling
If push or pull reports a conflict, stop and inspect the conflict. Use explicit resolution commands only after choosing the intended direction:
keep-currentforce-pushes the local version.keep-incomingforce-pulls the remote version.- Never silently force-push over a remote change.
Schema-First Research
Never guess n8n node parameters.
- Batch node queries: query multiple nodes in a single command using
npx --yes n8nac skills node-info <node1> <node2> ... --compactto inspect essential properties, required parameters, and valid options in one fast, token-efficient turn. - Use exact node
typeand validtypeVersionvalues fromnode-info. - Use exact resource, operation, option, and parameter names from schema output.
- Parameters of type
resourceLocatormust be structured as{ __rl: true, value: '...', mode: 'list' | 'id' | 'url' }. - Do not invent parameters, operations, credential types, or CLI flags.
- Treat schema output as the absolute source of truth even if examples or memory disagree.
- Prefer the highest valid
typeVersionreturned by schema output. - For fixed collections such as Switch/If rules, Wait form fields, or nested options, read the full
node-infooutput before writing values.
Optional Native n8n MCP Assist
The n8n-as-code MCP server is a client adapter for N8NAC tools. The native n8n MCP server is a separate live n8n instance endpoint. Native n8n MCP can complement this workflow for native knowledge, live state, and runtime execution, but it does not replace npx --yes n8nac, bundled knowledge, .workflow.ts, Git, or the sync discipline.
Use this routing policy:
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/n8n-architect/SKILL.md
Popularity
- Repository stars
- 1,503
- Repository forks
- 174
- 7-day trend score
- 37
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 27 Oct 2026, 6 h ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/etiennelescot/n8n-as-code/n8n-architect)