All skills
Skillintermediate

Disallow usage of restricted imports in community nodes (`@n8n/community-nodes/no-restricted-imports`)

šŸ’¼ This rule is enabled in the āœ… `recommended` config.

Claude Code Knowledge Pack7/10/2026

Overview

Disallow usage of restricted imports in community nodes (@n8n/community-nodes/no-restricted-imports)

šŸ’¼ This rule is enabled in the āœ… recommended config.

Rule Details

Prevents importing external dependencies that are not allowed on n8n Cloud. Community nodes running on n8n Cloud are restricted to a specific set of allowed modules for security and performance reasons.

Allowed modules: n8n-workflow, lodash, moment, p-limit, luxon, zod, crypto, node:crypto

Relative imports (starting with ./ or ../) are always allowed.

Examples

āŒ Incorrect

import axios from 'axios'; // External dependency not allowed
import { readFile } from 'fs'; // Node.js modules not in allowlist
const request = require('request'); // Same applies to require()

// Dynamic imports are also restricted
const module = await import('some-package');

āœ… Correct

import { IExecuteFunctions, INodeType } from 'n8n-workflow'; // Allowed
import { get } from 'lodash'; // Allowed
import moment from 'moment'; // Allowed
import { DateTime } from 'luxon'; // Allowed
import { createHash } from 'crypto'; // Allowed

import { MyHelper } from './helpers/MyHelper'; // Relative imports allowed
import config from '../config'; // Relative imports allowed

  // ... implementation
}

When This Rule Doesn't Apply

This rule only applies to community nodes intended for n8n Cloud. If you're building nodes exclusively for self-hosted environments, you may disable this rule, but be aware that your package will not be compatible with n8n Cloud.