CtrlK
BlogDocsLog inGet started
Tessl Logo

nodejs-keccak256

Prevent Ethereum hashing bugs in JavaScript and TypeScript. Node's sha3-256 is NIST SHA3, not Ethereum Keccak-256, and silently breaks selectors, signatures, storage slots, and address derivation.

72

Quality

91%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No known issues

SKILL.md
Quality
Evals
Security

Quality

Content

100%

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

An exemplary concise, actionable skill body: executable examples across libraries, a concrete audit step, and a clear rule, all well-organized with no wasted tokens.

DimensionReasoningScore

Conciseness

Lean body with no padding about what Ethereum or hashing is; every section (When to Use, How It Works, Examples, Rule) earns its tokens and assumes Claude's competence.

3 / 3

Actionability

Provides fully executable, copy-paste-ready examples across ethers v6, viem, web3.js, plus concrete audit grep commands and a final rule — concrete code rather than vague direction.

3 / 3

Workflow Clarity

As a simple single-purpose skill, the action is unambiguous (use Keccak-aware helpers, never sha3-256) with a concrete audit step; no destructive/batch operation is involved so the validation cap does not apply.

3 / 3

Progressive Disclosure

Well-organized into clearly labeled sections with no nested references; all content is appropriately inline for a self-contained single-purpose skill with no external bundle files.

3 / 3

Total

12

/

12

Passed

Description

82%

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 specific, well-targeted description with strong trigger terms and low conflict risk, weakened only by the absence of an explicit "Use when..." trigger clause.

Suggestions

Add an explicit trigger clause such as "Use when hashing Ethereum data in Node.js/JS/TS, or when reviewing code that calls crypto.createHash('sha3-256') for selectors, signatures, storage slots, or addresses." to lift completeness to 3.

Lead with the action verb framing already present and pair it with the trigger clause so both "what" and "when" are overtly answered.

DimensionReasoningScore

Specificity

Names a concrete action ("Prevent Ethereum hashing bugs") and enumerates specific affected outputs — "selectors, signatures, storage slots, and address derivation" — rather than vague language, matching the multiple-specific-actions anchor.

3 / 3

Completeness

It clearly answers "what" (prevent Keccak/SHA3 confusion) but lacks an explicit "Use when..." trigger clause; the "when" is only implied by the domain framing, so per the guidelines completeness is capped at 2.

2 / 3

Trigger Term Quality

Covers natural terms users would say when needing this skill — "Ethereum hashing", "JavaScript and TypeScript", "sha3-256", "Keccak-256", "selectors", "signatures", "storage slots" — with good breadth of variations.

3 / 3

Distinctiveness Conflict Risk

Targets a precise niche — Node's NIST sha3-256 vs Ethereum Keccak-256 — with distinct triggers unlikely to overlap with other skills.

3 / 3

Total

11

/

12

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.

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

frontmatter_unknown_keys

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

Warning

Total

14

/

16

Passed

Repository
affaan-m/ECC
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.