CtrlK
BlogDocsLog inGet started
Tessl Logo

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.

78

1.34x
Quality

70%

Does it follow best practices?

Impact

94%

1.34x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./tests/ext_conformance/artifacts/agents-wshobson/blockchain-web3/skills/web3-testing/SKILL.md

The canonical home for this skill is web3-testing in wshobson/agents

SKILL.md
Quality
Evals
Security

Quality

Content

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

The body delivers concrete, largely executable Hardhat and Foundry examples, but it functions as an inlined pattern catalog: it duplicates content it claims to offload to bundle files that don't actually exist, repeats mainnet-forking material, and provides no sequenced workflow or validation checkpoints. Fixing the bundle/references mismatch and trimming duplicated code would lift both conciseness and progressive disclosure.

Suggestions

progressive_disclosure: Either create the nine referenced bundle files (references/hardhat-setup.md, assets/test-suite.js, scripts/test-contract.sh, etc.) and move the bulk of the inlined code into them, or remove the Resources section — as it stands every reference is a dead path.

workflow_clarity: Add a short recommended test workflow with validation checkpoints, e.g. '1. Write unit tests with fixtures 2. Run `npx hardhat test` 3. Add fuzz tests for edge cases 4. Gate on coverage: fail CI below 90%' so the patterns have an order and a pass/fail loop.

conciseness: Deduplicate the mainnet-forking material (it appears in hardhat.config.js, the 'Mainnet Forking' section, and the Foundry fork test) and replace placeholder test bodies ('Test time-dependent functionality', the empty Uniswap swap test) with either real assertions or nothing.

DimensionReasoningScore

Conciseness

The body is mostly code with little padding prose, but it could be tightened significantly: mainnet forking configuration appears three times (hardhat.config.js, the 'Mainnet Forking' section, and the Foundry fork test), and full multi-hundred-line examples (complete unit-test suite, complete config) are inlined even though equivalent files are listed in Resources. Stub tests like 'Test time-dependent functionality' and an empty 'Should swap on Uniswap' body add tokens without instruction.

3 / 5

Actionability

Mostly executable guidance: complete hardhat.config.js, runnable chai fixture tests, forge cheatcode and fuzz examples, CI workflow YAML, and concrete CLI commands. Minor gaps remain — the gas test references an `addr1` variable never destructured from its fixture, several test bodies are placeholder comments, and the impersonation example references undefined `dai` and `addr1`.

4 / 5

Workflow Clarity

The body is organized as a catalog of testing patterns rather than a sequenced workflow; there is no ordering guidance (e.g., unit → integration → fork) and no validation checkpoints or feedback loops, such as gating on coverage thresholds or a fix-and-rerun loop when tests fail. The CI section implies a run order but never states pass/fail handling.

3 / 5

Progressive Disclosure

The Resources section clearly signals nine bundle files (references/*.md, assets/*, scripts/test-contract.sh), but none of these files exist in the bundle — the references are dangling. Meanwhile content that clearly belongs in those files (the full test suite and complete Hardhat config, duplicating assets/test-suite.js and assets/hardhat-config.js) is fully inlined, making the skill a monolith that only pretends to split its content.

2 / 5

Total

12

/

20

Passed

Description

87%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 what-and-when structure and natural trigger terms anchored by named tools. The only weaknesses are a mild filler word ('comprehensively') and trigger coverage that omits several capabilities the skill actually supports (fuzzing, gas, coverage, verification).

DimensionReasoningScore

Specificity

The description lists several concrete actions — 'unit tests, integration tests, and mainnet forking' with named tools Hardhat and Foundry — but 'comprehensively' is filler and capabilities shown in the body (fuzzing, gas reporting, coverage, Etherscan verification) are absent, leaving minor gaps in coverage.

4 / 5

Completeness

It clearly answers what ('Test smart contracts comprehensively using Hardhat and Foundry with unit tests, integration tests, and mainnet forking') and explicitly when ('Use when testing Solidity contracts, setting up blockchain test suites, or validating DeFi protocols') with concrete trigger phrases, matching the anchor-5 example.

5 / 5

Trigger Term Quality

'testing Solidity contracts', 'setting up blockchain test suites', 'validating DeFi protocols', plus tool names 'Hardhat' and 'Foundry' are phrases users would naturally say. A few natural variations are missing, such as 'fuzzing', 'gas optimization', 'test coverage', or 'Etherscan verification'.

4 / 5

Distinctiveness Conflict Risk

The smart-contract testing niche with named frameworks (Hardhat, Foundry) and domain-specific triggers (Solidity, DeFi protocols) is clearly distinct from other skills with minimal conflict risk.

5 / 5

Total

18

/

20

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.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

referenced_paths_exist

Referenced path issues: 9 missing

Warning

Total

15

/

16

Passed

Repository
Dicklesworthstone/pi_agent_rust
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.