agentsclimarketplace

Move auditor

Skill ZerodriftSec/move-audit-skills/skills/move-auditor

Security audit of Move code (Sui / Aptos). Auto-detects platform. Trigger on "audit", "check this contract", "review for security". Modes - default (full repo) or a specific filename.From its SKILL.md

Install
npx -y skills add ZerodriftSec/move-audit-skills --skill move-auditor

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 0 stars0 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

12.3 KB, ~3.0k tokens by cl100k_base, as published. Nobody here has run it

Move Smart Contract Security Audit

You are the orchestrator of a parallelized Move security audit.

Mode Selection

Exclude pattern: skip directories tests/, examples/, doc/, scripts/ and files matching *_test.move, *Test*.move or *Mock*.move.

  • Default (no arguments): scan all .move files using the exclude pattern. Use Bash find (not Glob).
  • $filename ...: scan the specified file(s) only.

Flags:

  • --file-output (off by default): also write the report to a markdown file (path per skills/validation/SKILL.md). Never write a report file unless explicitly passed.

Orchestration Flow

Turn 0 — Banner

Print the banner:

bash scripts/banner.sh

Turn 1 — Detect Platform

Run the detection script:

python3 scripts/detect-platform.py <project_path>

This recursively scans for Move.toml files and checks their dependencies:

  • MystenLabs/sui.gitsui
  • aptos-labs/aptos-core.gitaptos

Store the result as {platform}.

Turn 2 — Discover

Make these parallel tool calls in one message:

a. Bash find for in-scope .move files per mode selection and exclude pattern. b. Read skills/validation/SKILL.md c. Bash mktemp -d /tmp/move-audit-XXXXXX → store as {bundle_dir}

If no .move files found, print: No Move source files found. and stop.

Turn 3 — Prepare

Build all bundles in a single Bash command using cat:

  1. {bundle_dir}/source.md — ALL in-scope .move files, each with a ### path/to/file.move header and fenced code block.

  2. Agent bundles = source.md + common references + agent definition + platform-specific skill modules:

Every bundle includes the two common references:

  • skills/move-auditor/references/common/move-language.md
  • skills/move-auditor/references/common/move-vulnerabilities.md

Common bundles (all platforms):

BundleAgent DefinitionAppended skill modules (relative to skills/move-auditor/references/{platform}/)
agent-1-bundle.mdagents/ability-type-safety-agent.mdability-analysis.md + type-safety.md
agent-3-bundle.mdagents/flash-loan-allocation-agent.mdflash-loan-interaction.md + share-allocation-fairness.md
agent-4-bundle.mdagents/token-flow-zero-state-agent.mdtoken-flow-tracing.md + zero-state-return.md
agent-5-bundle.mdagents/centralization-roles-agent.mdcentralization-risk.md + semi-trusted-roles.md
agent-6-bundle.mdagents/oracle-staleness-agent.mdoracle-analysis.md + temporal-parameter-staleness.md
agent-8-bundle.mdagents/migration-crosschain-agent.mdmigration-analysis.md + cross-chain-timing.md

Platform-specific bundles:

BundlePlatformAgent DefinitionAppended skill modules (relative to skills/move-auditor/references/)
agent-2-bundle.mdSuiagents/ownership-composability-agent.mdsui/object-ownership.md + sui/ptb-composability.md
agent-2-bundle.mdAptosagents/ownership-composability-agent.mdaptos/reentrancy-analysis.md + aptos/ref-lifecycle.md
agent-7-bundle.mdSuiagents/dependency-ecosystem-agent.mdsui/dependency-audit.md + sui/package-version-safety.md
agent-7-bundle.mdAptosagents/dependency-ecosystem-agent.mdaptos/dependency-audit.md + aptos/fungible-asset-security.md
cat source.md references/common/move-language.md references/common/move-vulnerabilities.md references/{platform}/CORE_VULNERABILITIES.md references/{platform}/{platform-vuln-file}.md agents/{agent-file}.md references/{platform}/{skill-1}.md references/{platform}/{skill-2}.md agents/shared-rules.md > agent-N-bundle.md
  • {platform-vuln-file} = SUI_VULNERABILITIES.md for Sui, APTOS_VULNERABILITIES.md for Aptos.

Append agents/shared-rules.md to every bundle.

Print line counts for every bundle and source.md. Do NOT inline file content into agent prompts.

Turn 4 — Run Specialists

In one message, spawn all 8 specialists as parallel foreground Agent calls. Prompt template:

Your bundle file is {bundle_dir}/agent-N-bundle.md (XXXX lines).
The bundle contains all in-scope source code, your agent instructions, specialized methodology, and shared rules.
Read the bundle fully before producing findings.
Focus on {platform}-specific ability and type safety / ownership / flash loan / token flow / access control / oracle / dependency / migration.

Each agent reads its bundle and independently produces FINDINGs and LEADs per the specialist output format.

Turn 5 — Depth Analysis

After all breadth agents return, assess which findings warrant deeper analysis. For each breadth finding that meets depth trigger criteria:

Depth AgentTrigger
depth-token-flow-agentToken balance, transfer, withdrawal, accounting patterns
depth-state-trace-agentMulti-function state mutation, constraint violations
depth-edge-case-agentBoundary conditions, zero-state, dust, first/last participant
depth-external-agentExternal calls, cross-chain, oracle dependencies, MEV

Spawn relevant depth agents in parallel. Each receives source + specific findings + agent definition from agents/.

If no breadth findings meet depth trigger criteria, skip this turn entirely.

Turn 6 — Deduplicate, Validate & Report

Single-pass: deduplicate all breadth + depth results, gate-evaluate, and produce the final report in one turn.

1. Deduplicate

Parse every FINDING and LEAD from all agents. Group by group_key field (format: Module | function | bug-class). Exact-match first; then merge synonymous bug_class tags. Keep best version per group, number sequentially, annotate [agents: N].

2. Gate Evaluation

Run each finding through the four gates defined in skills/validation/SKILL.md.

3. Confidence Scoring

Apply confidence scoring per skills/validation/SKILL.md.

4. Lead Promotion

  • Promote LEAD → FINDING (confidence 75) if: complete exploit chain traced, OR [agents: 2+] flagged same issue, OR depth agent confirmed.
  • No deployer-intent reasoning — evaluate what the code allows.

5. Fix Verification (confidence >= 80 only)

Trace the attack with fix applied; verify no new DoS, reentrancy, or broken invariants.

6. Format and Print

Format per skills/validation/SKILL.md. Exclude rejected items. If --file-output: also write to file.

Vulnerability Categories

Sui-Specific (S1–S10)

IDCategorySeverityDescription
S1Object Ownership BypassCRITICALUnauthorized object transfer via public_transfer
S2Shared Object ManipulationCRITICALRace conditions in shared objects
S3PTB Composition AttacksHIGHMalicious transaction block composition
S4Kiosk ExploitationHIGHBypass kiosk rules/policies
S5Dynamic Field AbuseHIGHUnauthorized field access/modification
S6Transfer Policy BypassHIGHCircumventing transfer restrictions
S7Capability LeakageHIGHAdminCap/OwnerCap transferred to unauthorized parties
S8Witness Pattern AbuseCRITICALImproper one-time witness validation
S9Improper AbilitiesCRITICALcopy/drop on asset types
S10Upgrade Cap MishandlingHIGHPackage upgrade authorization issues

Aptos-Specific (A1–A10)

IDCategorySeverityDescription
A1Signer Validation BypassCRITICALMissing signer checks in privileged functions
A2Account Resource AbuseHIGHUnauthorized move_to/borrow_global access
A3Event Handle ManipulationMEDIUMMissing or forged event emissions
A4FungibleAsset VulnerabilitiesHIGHImproper FA handling, Ref leakage
A5Table/SmartVector IssuesMEDIUMUnbounded storage, DoS vectors
A6Multi-Signature/Auth KeyMEDIUMAuth key rotation, replay attacks
A7Capability LeakageHIGHSignerCapability transfer issues
A8Witness Pattern AbuseCRITICALImproper witness validation
A9Improper AbilitiesCRITICALcopy/drop on asset types
A10Reentrancy (Move 2.2+)HIGHDynamic dispatch, FA hooks

Detection Commands

Sui

# Find object definitions and transfers
rg "public struct.*has key" sources/
rg "sui::transfer::public_transfer|public_share_object" sources/

# Find shared objects
rg "sui::transfer::share_object|shared_object" sources/

# Find kiosk operations
rg "sui::kiosk" sources/

# Find dynamic fields
rg "sui::dynamic_field|dynamic_object_field" sources/

# Find capabilities
rg "AdminCap|OwnerCap|UpgradeCap" sources/

# Find witness patterns
rg "Witness|witness|has drop" sources/

Aptos

# Find signer usage
rg "signer|signer::address_of" sources/

# Find entry functions
rg "public entry fun|entry fun" sources/

# Find resource operations
rg "move_to|move_from|borrow_global|exists" sources/

# Find FungibleAsset operations
rg "fungible_asset::|FungibleAsset" sources/

# Find event emissions
rg "event::emit|emit_event" sources/

# Find capabilities
rg "SignerCapability|MintRef|BurnRef|TransferRef" sources/

# Find witness patterns
rg "Witness|witness|has drop" sources/

Skill Modules Reference

The following specialized skill modules are available. Files in references/common/ apply to all platforms; files in references/{platform}/ are loaded based on detected platform.

Common (always loaded)

ModuleLocationPurpose
move-languagereferences/common/Comprehensive Move language reference
move-vulnerabilitiesreferences/common/Cross-platform Move vulnerability catalog (M1–M8)

Per-Platform Modules (references/{platform}/)

ModuleTriggerPurpose
CORE_VULNERABILITIESAlways8 core Move vulnerabilities with vulnerable/secure code
{PLATFORM}_VULNERABILITIESAlwaysPlatform-specific vulnerability categories
ability-analysisAlwaysAnalyze struct abilities (copy/drop/key/store)
attack-vectorsAlwaysAttack vector catalog with detection patterns
bit-shift-safetyAlwaysCheck shift operations for DoS
centralization-riskCapabilities detectedAnalyze privilege concentration
cross-chain-timingBridge patternsCross-chain message validation
dependency-auditExternal depsThird-party dependency audit
economic-design-auditMonetary paramsEconomic parameter analysis
external-precondition-auditExternal callsExternal module precondition analysis
flash-loan-interactionFlash loan patternsFlash loan attack surface
fork-ancestryRecon phaseKnown fork vulnerability patterns
migration-analysisUpgrade patternsPackage upgrade / migration safety
oracle-analysisOracle usageOracle staleness/manipulation
semi-trusted-rolesKeeper/operator rolesRole-based attack vectors
share-allocation-fairnessShare mintingAllocation fairness analysis
temporal-parameter-stalenessMulti-step opsCached parameter staleness
token-flow-tracingBalance operationsToken flow accounting
type-safetyGenerics usageGeneric type constraints
verification-protocolVerification phaseMove test verification
zero-state-returnFirst depositorZero state edge cases

Sui-Only Modules (references/sui/)

ModuleTriggerPurpose
object-ownershipAlwaysObject lifecycle audit
ptb-composabilityAlways (Sui)PTB atomic composition risks
package-version-safetyUpgradeCapPackage upgrade risks

Aptos-Only Modules (references/aptos/)

ModuleTriggerPurpose
reentrancy-analysisDynamic dispatchMove 2.2+ reentrancy vectors
ref-lifecycleRef typesObject Ref lifecycle audit
fungible-asset-securityFA patternsFungibleAsset standard audit

What ships with it: 52 files

606.3 KB alongside SKILL.md, 2 of them executable

12 more files not listed here. See all 52 in the repository.

Keep looking

Skills are one crate of 326,422. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.