CtrlK
BlogDocsLog inGet started
Tessl Logo

n8n-code-javascript

Write JavaScript code in n8n Code nodes. Use when writing JavaScript in n8n, using $input/$json/$node syntax, making HTTP requests with this.helpers / the $helpers global, working with dates using DateTime, troubleshooting Code node errors, choosing between Code node modes, or doing any custom data transformation in n8n. Always use this skill when a workflow needs a Code node — whether for data aggregation, filtering, API calls, format conversion, batch processing logic, or any custom JavaScript. Covers SplitInBatches loop patterns, cross-iteration data, pairedItem, and real-world production patterns. Also use when asked why a Code node or workflow is slow, which execution mode is faster, or how to cut per-item overhead on large datasets. EXCEPTION — for the AI-agent-callable Custom Code Tool (@n8n/n8n-nodes-langchain.toolCode, a tool attached to an AI Agent), use the n8n-code-tool skill instead; it has a different runtime contract.

68

Quality

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

SKILL.md
Quality
Evals
Security

Quality

Content

65%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A rich, actionable Code-node reference with excellent executable examples and clear sectioning, but it is verbose with some repetition and references four bundle files that are missing from the actual bundle. Tightening repeated sections and ensuring the referenced .md files exist would lift it to top marks.

Suggestions

Consolidate the return-format guidance into one section; Quick Start, Return Format, and Error Prevention each restate the [{json:{...}}] rules.

Add an explicit validate→fix→retry loop for the SplitInBatches / batch operations, which the rubric flags as needing feedback checkpoints.

Either add the referenced DATA_ACCESS.md, COMMON_PATTERNS.md, ERROR_PATTERNS.md, and BUILTIN_FUNCTIONS.md to the bundle or remove the dangling links, since progressive disclosure is scored against the actual bundle structure.

DimensionReasoningScore

Conciseness

The body assumes Claude's competence (no 'what is n8n' padding) and uses terse tables, but it is long and repeats material — e.g. return-shape rules appear in Quick Start, the Return Format section, and Error Prevention — so it is 'mostly efficient but could be tightened' rather than lean.

2 / 3

Actionability

Provides abundant executable, copy-paste-ready code (mode templates, $input.all() patterns, httpRequest calls) plus concrete gotchas with exact syntax, matching the 'fully executable code/commands; copy-paste ready' anchor.

3 / 3

Workflow Clarity

A Quick Reference Checklist and the 'When to Use' gating provide checkpoints, but for the genuinely risky batch operations (SplitInBatches loops, return-shape failures) there is no explicit validate→fix→retry feedback loop, capping workflow clarity at 2 per the rubric's batch-operation guidance.

2 / 3

Progressive Disclosure

The body is well structured and signals one-level-deep references (DATA_ACCESS.md, COMMON_PATTERNS.md, ERROR_PATTERNS.md, BUILTIN_FUNCTIONS.md), but those bundle files are not actually present in references/scripts/assets, so the disclosure promises navigation that the bundle does not deliver.

2 / 3

Total

9

/

12

Passed

Description

100%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A high-quality description: it states concrete capabilities, supplies natural trigger phrases, answers both 'what' and 'when', and explicitly disambiguates from a sibling skill. Its only minor weakness is verbosity — the description is long and repeats trigger phrasing — but it does not pad with vague claims.

DimensionReasoningScore

Specificity

Lists multiple concrete actions such as 'data aggregation, filtering, API calls, format conversion, batch processing logic' plus specific APIs ($input/$json/$node, this.helpers, DateTime), matching the 'lists multiple specific concrete actions' anchor.

3 / 3

Completeness

Explicitly states what ('Write JavaScript code in n8n Code nodes') and when via repeated 'Use when...', 'Always use this skill when...', and 'Also use when...' triggers, satisfying the 'clearly answers both what AND when' anchor.

3 / 3

Trigger Term Quality

Natural user phrasing is well covered — 'writing JavaScript in n8n', 'troubleshooting Code node errors', 'why a Code node or workflow is slow' — these are phrases a user would actually say, matching the 'good coverage of natural terms' anchor.

3 / 3

Distinctiveness Conflict Risk

Occupies a clear niche (n8n Code node) and adds an explicit EXCEPTION carving out the sibling Custom Code Tool / n8n-code-tool skill, making conflicts unlikely.

3 / 3

Total

12

/

12

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 13 missing

Warning

Total

15

/

16

Passed

Repository
czlonkowski/n8n-skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.