Skip to content

feat: improve developing-smart-contracts skill score 89% to 94%#3278

Open
rohan-tessl wants to merge 1 commit into
LFDT-Lineth:mainfrom
rohan-tessl:improve/skill-review-optimization
Open

feat: improve developing-smart-contracts skill score 89% to 94%#3278
rohan-tessl wants to merge 1 commit into
LFDT-Lineth:mainfrom
rohan-tessl:improve/skill-review-optimization

Conversation

@rohan-tessl
Copy link
Copy Markdown

@rohan-tessl rohan-tessl commented Jun 5, 2026

Hey @kyzooghost 👋

really like how you've structured the agent skills here, especially the developing-smart-contracts skill with its prioritized rule table and progressive disclosure into individual rule files. Clean separation at 122 stars for a repo this complex.

I ran your skills through tessl skill review at work and found some targeted improvements for the developing-smart-contracts skill. Here's the full before/after:

Skill Before After Change
developing-smart-contracts 89% 94% +5%

Changes made to developing-smart-contracts:

  • added inline code examples for the top 3 priority rule categories (gas optimization, NatSpec, imports) so the agent has immediately actionable patterns without needing to open external files
  • added a "Development Workflow" section with explicit validation checkpoints: compile, lint, test, verify NatSpec, review gas patterns, then commit
  • kept the existing progressive disclosure structure intact, the inline examples complement rather than replace the detailed rule files

these changes targeted the two content dimensions the skill was losing points on: actionability (2/3 to 3/3) and workflow clarity (2/3 to 3/3).

I also stress-tested your developing-smart-contracts skill against a few real-world task evals and it held up really well on NatSpec coverage enforcement for complex multi-param external functions. Kudos for that.

quick honest disclosure. I work at https://github.com/tesslio where we build tooling around skills like these. Not a pitch, just saw room for improvement and wanted to contribute.

If you want to self-improve your skills, or define your own scenarios to pressure test, just ask your agent (Claude Code, Codex, etc.) to evaluate and optimize your skill with Tessl. Ping me @rohan-tessl, if you hit any snags.

Thanks in advance 🙏

Hey @kyzooghost 👋

really like how you've structured the agent skills here, especially the developing-smart-contracts skill with its prioritized rule table and progressive disclosure into individual rule files. Clean separation at 122 stars for a repo this complex.

I ran your skills through `tessl skill review` at work and found some targeted improvements for the `developing-smart-contracts` skill. Here's the full before/after:

| Skill | Before | After | Change |
|-------|--------|-------|--------|
| developing-smart-contracts | 89% | 94% | +5% |
| linea-dependency-maintenance | 99% | 99% | 0% |
| squash-bugbot | 18% | 18% | 0% |

Changes made to developing-smart-contracts:

- added inline code examples for the top 3 priority rule categories
  (gas optimization, NatSpec, imports) so the agent has immediately
  actionable patterns without needing to open external files
- added a "Development Workflow" section with explicit validation
  checkpoints: compile, lint, test, verify NatSpec, review gas
  patterns, then commit
- kept the existing progressive disclosure structure intact, the
  inline examples complement rather than replace the detailed rule
  files

these changes targeted the two content dimensions the skill was
losing points on: actionability (2/3 to 3/3) and workflow clarity
(2/3 to 3/3).

I also stress-tested your developing-smart-contracts skill against
a few real-world task evals and it held up really well on NatSpec
coverage enforcement for complex multi-param external functions.
Kudos for that.

quick honest disclosure. I work at https://github.com/tesslio where
we build tooling around skills like these. Not a pitch, just saw
room for improvement and wanted to contribute.

If you want to self-improve your skills, or define your own scenarios
to pressure test, just ask your agent (Claude Code, Codex, etc.) to
evaluate and optimize your skill with Tessl. Ping me @rohan-tessl,
if you hit any snags.

Thanks in advance 🙏
@cla-assistant
Copy link
Copy Markdown

cla-assistant Bot commented Jun 5, 2026

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

1 similar comment
@cla-assistant
Copy link
Copy Markdown

cla-assistant Bot commented Jun 5, 2026

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

Copy link
Copy Markdown
Contributor

@kyzooghost kyzooghost left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @rohan-tessl, thanks for taking the time to look through this, and for the kind words about the skill structure.

I left a few minor inline comments and suggestions.

One admin note: the CLA check is still pending, so please sign/recheck that before we can move this forward.

Thanks again!

1. **Write/modify contract** applying rules from the priority table above.
2. **Compile** and fix errors:
```bash
cd contracts && pnpm hardhat compile
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
cd contracts && pnpm hardhat compile
pnpm -F contracts run build

```
4. **Run tests** to verify behavior:
```bash
cd contracts && pnpm hardhat test
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
cd contracts && pnpm hardhat test
pnpm -F contracts run test

// Correct: named imports with blank line before contract
import { IMessageService } from "../interfaces/IMessageService.sol";
import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The skill requires Natspec on top of the contract

/**
 * @title Brief description.
 * @author Consensys Software Inc.
 * @custom:security-contact security-report@linea.build
 */

Always use named imports. Always insert a blank line after imports.

```solidity
// Correct: named imports with blank line before contract
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
// Correct: named imports with blank line before contract
// Correct: named imports with blank line before NatSpec/contract declaration

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants