CtrlK
BlogDocsLog inGet started
Tessl Logo

developing-smart-contracts

Solidity smart contract development guidelines for Linea blockchain. Use when writing, reviewing, or refactoring Solidity contracts, or when the user asks about Solidity best practices, contract structure, or NatSpec docstrings. Covers NatSpec documentation, naming conventions, file layout, and code style.

91

1.47x
Quality

86%

Does it follow best practices?

Impact

99%

1.47x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No known issues

SKILL.md
Quality
Evals
Security

Evaluation results

100%

28%

Token Claim Processor for Linea Bridge

Gas optimization and pragma rules for batch contract

Criteria
Without context
With context

calldata for array param

100%

100%

external visibility for processClaims

100%

100%

storage cache for fee

100%

100%

custom errors used

100%

100%

unchecked loop increment

100%

100%

unchecked comment present

0%

100%

cheap check first

87%

100%

batch size limit

40%

100%

exact pragma for contract

0%

100%

caret pragma for interface

37%

100%

named imports only

100%

100%

no magic numbers

100%

100%

100%

29%

Message Registry Interface for Linea L2

NatSpec documentation and naming conventions for interface

Criteria
Without context
With context

contract-level @author

0%

100%

contract-level @custom:security-contact

0%

100%

@notice on functions

100%

100%

@param order matches signature

100%

100%

@return on functions

100%

100%

event NatSpec with @param

100%

100%

error NatSpec explains when thrown

100%

100%

DEPRECATED in NatSpec

50%

100%

function params use _camelCase

25%

100%

named returns camelCase

100%

100%

caret pragma for interface

50%

100%

blank line after imports

100%

100%

named imports only

100%

100%

99%

40%

Concrete Staking Pool Implementation for Linea

Contract layout, visibility, ERC-7201 storage, and modifiers

Criteria
Without context
With context

using statement first

100%

100%

explicit ancestor in imports

100%

100%

explicit ancestor in is-clause

100%

100%

ERC-7201 storage struct

0%

100%

ERC-7201 _storage() accessor

0%

87%

repeated check in modifier

30%

100%

public virtual for overridable

0%

100%

exact pragma for contract

0%

100%

explicit state var visibility

100%

100%

named imports only

100%

100%

blank line after imports

100%

100%

no this.functionCall()

100%

100%

custom errors not strings

100%

100%

Repository
Consensys/linea-monorepo
Evaluated
Agent
Claude Code
Model
Claude Sonnet 4.6

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.