Move code quality
Skill first-mover-tw/sui-dev-agents/skills/move-code-quality
Analyzes Move packages against the official Move Book Code Quality Checklist. Use when reviewing Move code quality, checking Move 2024 Edition compliance, auditing best practices, or when the user says "review my Move code", "check code quality", "Move lint", or "does this follow best practices". Activates automatically when working with .move files. Different from sui-developer (which writes code) — this skill reviews and audits existing code.From its SKILL.md
npx -y skills add first-mover-tw/sui-dev-agents --skill move-code-qualityAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 7 stars7 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.9 KB, as published. Nobody here has run it
Move Code Quality Checker
Analyze Move packages against the Move Book Code Quality Checklist — 11 categories, 50+ rules based on Move 2024 Edition.
Analysis Workflow
Phase 1: Discovery
- Find Move project — look for
Move.toml, glob for*.movefiles - Read Move.toml — check edition (must be
2024or2024.beta), dependencies (should be implicit for Sui 1.45+), named address prefixing - Ask scope — full package scan or specific file/category?
Phase 2: Systematic Analysis
Read references/checklist.md for the complete 50+ rules across these categories:
| # | Category | Key Checks |
|---|---|---|
| 1 | Code Organization | Formatter usage |
| 2 | Package Manifest | Edition, implicit deps, address prefixing |
| 3 | Imports & Constants | Module label syntax, EPascalCase errors, #[error] annotation |
| 4 | Structs | Cap suffix, no Potato, past-tense events, witness drop only |
| 5 | Functions | public(package) not friend, no public entry, PTB composability, param order |
| 6 | Function Body | Method syntax (.split(), .delete(), .sender()), index syntax |
| 7 | Option Macros | do!, destroy_or! |
| 8 | Loop Macros | do!, tabulate!, do_ref!, destroy!, fold!, filter! |
| 9 | Other | .. unpack syntax |
| 10 | Testing | Merged attrs, no test_ prefix, assert_eq!, destroy util |
| 11 | Comments | /// doc comments |
Phase 3: Reporting
## Move Code Quality Analysis
### Summary
- ✅ X checks passed
- ⚠️ Y improvements recommended
- ❌ Z critical issues
### Critical Issues (Fix These First)
#### 1. [Issue title]
**File**: `path:line`
**Issue**: What's wrong
**Fix**: Code snippet showing the fix
### Important Improvements
[...]
### Recommended Enhancements
[...]
Always include: file paths with line numbers, before/after code snippets, why the fix matters.
Phase 4: Interactive Review
After presenting findings:
- Offer to fix issues automatically
- Can analyze specific categories in depth
- Reference checklist.md for detailed rule explanations
Guidelines
- Be Specific — file paths and line numbers always
- Show Examples — bad and good code snippets
- Explain Why — benefit of the fix, not just the rule
- Prioritize — critical (Move 2024 required) before recommended
- All features require Move 2024 Edition — check this first