CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

web3-testing

Test smart contracts comprehensively using Hardhat and Foundry with unit tests, integration tests, and mainnet forking. Use when testing Solidity contracts, setting up blockchain test suites, or validating DeFi protocols.

60

Quality

76%

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 ./skills/web3-testing/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

57%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.

Content is rich in executable, copy-paste-ready code for Hardhat and Foundry testing, which is its main strength. Weaknesses are generic filler sections, duplicated/deprecated content, absence of an explicit testing workflow with validation checkpoints, and a monolithic structure that should be split into reference files.

Suggestions

Delete the generic filler sections ('Instructions' bullets, 'Do not use this skill when' tautologies) and the duplicated gas/mainnet-fork sections; they add tokens without adding knowledge Claude doesn't have.

Add an explicit workflow with checkpoints, e.g.: 1. Write unit tests for core functions, 2. Run 'npx hardhat test' and fix failures, 3. Add fuzz tests for edge cases, 4. Run 'npx hardhat coverage' and only proceed above 90%, 5. Add fork tests for external-protocol interactions.

Split tool-specific detail (hardhat.config.js, Foundry cheatcode reference, CI recipes) into references/ files (e.g., references/foundry.md, references/hardhat-setup.md) and keep SKILL.md as a concise overview with well-signaled links; also replace the deprecated Goerli network config with a current testnet and remove stub snippets that reference undefined variables (addr1, dai in the impersonation example).

DimensionReasoningScore

Conciseness

The body is mostly code with little explanatory prose, but it contains pure filler: the generic 'Instructions' section ('Clarify goals, constraints, and required inputs. Apply relevant best practices and validate outcomes'), tautological 'Do not use this skill when' bullets, duplicated gas-optimization and mainnet-forking content across three sections, and deprecated time-sensitive config (Goerli testnet, hardcoded blockNumber 15000000). Mostly efficient but could be tightened, matching anchor 3; not 4 given the amount of removable filler.

3 / 5

Actionability

Mostly executable, copy-paste-ready guidance: complete hardhat.config.js, Mocha/Chai fixtures, Forge test contract with fuzzing and cheatcodes, CI YAML, and CLI commands. Not 5 because several snippets are stubs ('// Test time-dependent functionality', '// Test with real Uniswap contracts', '// Use whale's tokens') and some reference undefined variables (addr1 in the gas test, dai/addr1 in the impersonation snippet, truncated fork URL '...v2/...').

4 / 5

Workflow Clarity

The section order (setup, unit tests, Foundry, advanced patterns, gas, coverage, verification, CI) implies a rough sequence, but there is no explicit workflow telling Claude how to proceed when testing a contract, and no validation checkpoints (e.g., run tests, confirm coverage before proceeding). Anchor 3 fits: sequence present but checkpoints missing or implicit; not 4 since no checkpoints exist at all.

3 / 5

Progressive Disclosure

Sections are clearly headed and logically grouped, but the entire skill is a ~414-line monolith with no references/, scripts/, or assets/ files; tool-specific content (full hardhat.config.js, large Foundry/Hardhat test samples) belongs in separate reference files with SKILL.md as overview. Between anchors 2 and 3: structure is better than 'minimal' but nothing is offloaded, so 3.

3 / 5

Total

13

/

20

Passed

Description

83%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 that explicitly states concrete capabilities and an explicit 'Use when' trigger clause covering the main use cases. Minor improvements possible by adding common synonyms (.sol files, Ethereum, fuzz testing) and tightening 'comprehensively', which is mild fluff.

DimensionReasoningScore

Specificity

Names the domain and tools ('using Hardhat and Foundry') plus several concrete actions ('unit tests, integration tests, and mainnet forking'), matching the 'several specific actions; minor gaps' anchor. It falls short of 5 because capabilities covered in the body (gas optimization, fuzzing, coverage reporting, Etherscan verification) are not named, and 3 is too low given more than 1-2 concrete actions.

4 / 5

Completeness

Clearly answers both: what it does ('Test smart contracts comprehensively using Hardhat and Foundry with unit tests, integration tests, and mainnet forking') and when to use it ('Use when testing Solidity contracts, setting up blockchain test suites, or validating DeFi protocols'). This mirrors the anchor-5 example structure with explicit concrete trigger phrases.

5 / 5

Trigger Term Quality

Good coverage of natural phrases users would say: 'testing Solidity contracts', 'setting up blockchain test suites', 'validating DeFi protocols', plus tool names Hardhat and Foundry. A 5 would require synonyms and file extensions (e.g., '.sol', 'Ethereum', 'forge', 'fuzz testing'), which are missing.

4 / 5

Distinctiveness Conflict Risk

Strong niche markers (Solidity, Hardhat, Foundry, DeFi protocols) make it mostly distinct from other testing skills, but 'validating DeFi protocols' is broad enough to overlap with a security-audit or general web3-development skill. Not 5 because minor overlap risk remains; not 3 because the tool and language anchors are specific, not generic.

4 / 5

Total

17

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

rmyndharis/antigravity-skills

Path

skills/web3-testing/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.