CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

n8n-expression-syntax

Validate n8n expression syntax and fix common errors. Use when writing n8n expressions, using {{}} syntax, accessing $json/$node variables, troubleshooting expression errors, or working with webhook data in workflows.

Quality

77%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./plugins/AI-Agents-Safe-Coding-Skills/skills/n8n-expression-syntax/SKILL.md

The canonical home for this skill is n8n-expression-syntax in administrakt0r/AI-Agents-Safe-Coding-Skills

SKILL.md
Quality
Evals
Security

Quality

Content

63%Weight 40%Scale 1-5

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

Highly actionable content with excellent correct/incorrect code pairs and a workable debugging workflow, but it is notably redundant and over-explains standard JavaScript. The two referenced bundle files (COMMON_MISTAKES.md, EXAMPLES.md) do not exist in the bundle, breaking progressive disclosure.

Suggestions

Consolidate the webhook .body guidance into one section and remove it from Common Patterns, the Quick Fixes table, and the Summary, which repeats Best Practices nearly verbatim.

Cut or drastically trim "Expression Helpers" and "Data Type Handling" — methods like .toLowerCase(), .length, .map(), ternary operators, and basic math are standard JavaScript Claude already knows.

Either actually provide COMMON_MISTAKES.md and EXAMPLES.md in the bundle and move the full example and mistake-catalog content into them, or remove the dangling references to keep the skill self-contained.

DimensionReasoningScore

Conciseness

The webhook .body rule is taught in four separate sections (CRITICAL warning, Common Patterns, Quick Fixes table, Summary), and the Summary restates the Best Practices section. Sections like "Expression Helpers" and "Data Type Handling" explain standard JavaScript (toLowerCase(), .length, .map(), ternary operators, math operations) that Claude already knows. This is systematic redundancy across several padded sections, matching anchor 2 rather than the occasional excess of anchor 3.

2 / 5

Actionability

Concrete correct/incorrect pairs (❌ {{$json.name}} → ✅ {{$json.body.name}}), exact node-name quoting rules, real field examples (Slack text, URL interpolation), and error-message-to-fix mappings give copy-paste-ready guidance covering the common cases.

5 / 5

Workflow Clarity

The "Debugging Expressions" section sequences the validation workflow (click field → open fx editor → check live preview → check red-highlighted errors) with error messages mapped to causes and fixes, giving most checkpoints. It falls short of a 5 because there is no explicit fix-and-revalidate feedback loop spelled out after an error is found.

4 / 5

Progressive Disclosure

References are clearly signaled ("For complete error catalog with fixes, see COMMON_MISTAKES.md"; "For real workflow examples, see EXAMPLES.md") but neither file exists in the bundle — the references dead-end. Meanwhile full example sets and advanced patterns are inlined in a ~500-line body, fitting anchor 3 (structure present, content that should be separate is inline) rather than 2 since the body is well-sectioned, not a headerless monolith.

3 / 5

Total

14

/

20

Passed

Description

82%Weight 40%Scale 1-5

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 strong description with an explicit 'Use when...' trigger clause and multiple concrete, natural trigger phrases. The only meaningful gap is that the what-clause lists just two actions, which slightly undersells the skill's full scope of capabilities.

DimensionReasoningScore

Specificity

"Validate n8n expression syntax and fix common errors" names the domain plus exactly two concrete actions (validate, fix), matching the '1-2 concrete actions, not comprehensive' anchor. It is not a 4 because it does not enumerate several distinct actions like validation, error-fixing, and data-access pattern guidance as separate capabilities.

3 / 5

Completeness

Clearly answers both questions: the what is "Validate n8n expression syntax and fix common errors" and the when is an explicit "Use when writing n8n expressions, using {{}} syntax, accessing $json/$node variables, troubleshooting expression errors, or working with webhook data in workflows" with multiple concrete trigger phrases.

5 / 5

Trigger Term Quality

Natural phrases like "writing n8n expressions", "{{}} syntax", "$json/$node variables", "troubleshooting expression errors", and "working with webhook data" cover what users would actually say. A few natural terms are missing (e.g., "fix expressions", "workflow variables", date/$now formatting), keeping it below the comprehensive anchor 5.

4 / 5

Distinctiveness Conflict Risk

The n8n-specific tokens ({{}} syntax, $json/$node variables, webhook data in workflows) carve out a clear niche with distinct triggers and minimal risk of firing for unrelated skills, unlike generic document/data skills.

5 / 5

Total

17

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (519 lines); consider splitting into references/ and linking

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

14

/

16

Passed

Repository

administrakt0r/AI-Agents-Safe-Coding-Skills

Path

plugins/AI-Agents-Safe-Coding-Skills/skills/n8n-expression-syntax/SKILL.md

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.