developer
Use this agent for any n8n development task - frontend (Vue 3), backend (Node.js/TypeScript), workflow engine, node creation, or full-stack features. The agent…
This document is the source of truth for Agent-only interface patterns in this module. It starts with modal patterns. Add other reusable Agent patterns as the interface develops.
$ npx -y skills add n8n-io/n8n --agent claude-codeHow it fires
How this agent gets triggered: by you, by Claude, or both.
Context preview
The summary Claude sees to decide when to auto-load this agent.
This document is the source of truth for Agent-only interface patterns in this module. It starts with modal patterns. Add other reusable Agent patterns as the interface develops.
This document is the source of truth for Agent-only interface patterns in this module. It starts with modal patterns. Add other reusable Agent patterns as the interface develops.
Use these components:
`AgentModal` owns the dialog shell. It owns the title, Back, Close, Cancel, body scroll, and footer layout. `AgentModalMultiStep` adds stable picker layout and a subtle step transition. The feature component owns its data and step history.
Do not migrate `AgentMemoryPanel.vue` into this pattern. Memory needs separate design work.
| Area | Rule | | ---------- | ---------------------------------------------------------------------------------------------------------------------------- | | Width | Use `2xlarge` by default. Keep one width for all steps. | | Header | Keep the header's bottom divider. Put Back on the left and Close on the right. | | Title | Use an editable local name when the asset supports one. Do not add an asset icon. | | Body | Let `AgentModal` own the outer body inset. Do not repeat it on the first content wrapper. Focus the first body field. If there is no body control, use the dialog's default focus. Keep the title out of the initial focus order. Scroll the body only. Keep its scrollbar visible. | | Footer | Do not add a divider. Put ghost Remove on the left. Put Cancel before the primary action on the right. | | Responsive | Support 375 by 667 pixels. Stack footer actions when necessary. |
Use CSS variables for all sizes, spacing, colors, and motion. Do not add a new global dialog primitive.
Use `fit` for Skills. Use a 52rem content width. Keep it narrower than `full`. Use `full` only when the user explicitly asks for the extra workspace.
Keep the header and footer fixed. Let the body scroll. Keep scrollbars visible when the body or nested content can scroll. The Agent shell is the only scroll owner for normal configuration forms. Do not put fixed heights or nested scrollbars on MCP, node, or workflow configuration content. A picker can use a stable minimum height. A configuration step must use its natural height.
Do not add top padding or a top margin to a modal's first content wrapper. The shell supplies that space. Use the flush body only for a full-bleed workspace. The workspace must then own all of its edge spacing.
When a nested credential dialog is open, release the parent focus trap and block parent dismissal. The nested dialog owns Escape until it closes.
Use the configured local name for schedules, skills, node tools, MCP servers, workflow tools, and vector stores. Give new items a valid default name. Show the pencil on hover. Keep the title clickable.
Do not show a second Name field in the body. Show title validation next to the title after the user selects Save.
Keep the title read-only for external entities. Channels use the integration label. Sub-agents use the selected Agent name. Custom tools stay read-only because their reference schema has no local name.
Normal configuration has a Cancel button before the primary action. Cancel, Close, Escape, and outside click discard changes. Back discards the current step and returns to the preserved picker.
Put a non-destructive secondary action before Cancel. For schedules, use the order `Preview`, `Cancel`, `Save`, and use the ghost variant for Preview.
Save stays enabled until a request starts. An invalid Save shows inline errors. Successful Save, Add, and Remove actions close silently. Use a toast for a server error. Keep a warning toast when the warning contains information that the user must act on.
Existing removable items use a ghost bottom-left button with `trash-2`. Use an explicit label for the asset. Examples include `Remove schedule`, `Remove MCP`, and `Remove workflow`. New items and picker rows do not show Remove.
Use the same status treatment in Agent picker rows. Show a success check before `Connected` or `Added`. Use `Added` for selected Sub-agents. Use muted `2xs` text and `3xs` spacing. Keep warning and failure indicators distinct.
Use the multi-step component for Channels, Sub-agents, Tools, MCP servers, Workflows, and Vector stores.
Keep the picker mounted. Preserve its search query, selected category, and scroll position. Always show the search input. Put a create row first when the user can create the asset. Workflows use `Create workflow`. Sub-agents use `Create agent`. Give the create row a short subtitle that describes the action. Keep the outer modal body fixed on picker steps. Show a list scrollbar only when the list content overflows. Do not show a scrollbar for an empty state.
Put an explicit action in every selectable row. The action must name the outcome. Use `Add node`, `Add MCP`, `Add workflow`, or the matching asset label. When the list has no items or no search matches, show a centered, asset-specific message. Do not use a drop zone or a decorative empty-state icon for a picker. Use less space above the embedded search input and more space between the input and the tabs.
Show Back for an add flow after the use
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
Use this agent for any n8n development task - frontend (Vue 3), backend (Node.js/TypeScript), workflow engine, node creation, or full-stack features. The agent…
Use this agent proactively when a Linear issue is created, updated, or needs comprehensive analysis. This agent performs thorough issue investigation and…
`Agent.promptCaching()` generates provider-specific `providerOptions` for Anthropic and OpenAI so callers don't have to hand-write the Vercel AI SDK's raw…
An accepted preview turn continues when its browser connection closes. This applies to new messages and resumed interactions. The server records the execution…
This guide explains how to add chat platform integration tests for agent channel integrations. The current suite covers three layers: