Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/contract-hero/sui-pilot/guidenpx skills add contract-hero/sui-pilot --skill guidegit clone --depth 1 https://github.com/contract-hero/sui-pilotWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/contract-hero/sui-pilot/guide)<a href="https://agentmods.dev/skills/contract-hero/sui-pilot/guide"><img src="https://agentmods.dev/badge/skills/contract-hero/sui-pilot/guide.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00042 | $0.05192 |
| Opus 5 | $0.00021 | $0.02596 |
| Sonnet 5 | $0.00008 | $0.01038 |
| Haiku 4.5 | $0.00004 | $0.00519 |
Grade A, and why
sui-prover scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 531 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Sui Prover
Help the user with the Sui Prover -- running verification, writing specifications, debugging failures, and understanding results. If arguments are provided, incorporate them. For the full specification API reference (math types, vector iterators, attributes), see spec-reference.md.
Installation
brew install asymptotic-code/sui-prover/sui-prover
Move.toml Setup
The Sui Prover relies on implicit dependencies. Remove any direct dependencies to Sui and MoveStdlib from Move.toml:
# DELETE this line if present:
Sui = { git = "https://github.com/MystenLabs/sui.git", subdir = "crates/sui-framework/packages/sui-framework", rev = "framework/testnet", override = true }
Keep prover specifications and prover-specific dependencies in a sibling Move package next to the implementation package.
Running the Prover
Run from the directory containing Move.toml:
sui-prover
sui-prover --path ./my_project
sui-prover --verbose --timeout 60
If the user provides arguments like $ARGUMENTS, pass them to sui-prover directly.
Writing Specifications
Write specification modules in a sibling Move package that depends on the implementation package. To verify an implementation function, write a specification function annotated with #[spec(prove, target = ...)]. The spec has the same signature as the function under test and follows this structure:
#[spec(prove, target = project::example::my_function)]
fun my_function_spec(args): ReturnType {
// 1. Preconditions assumed on arguments
requires(precondition);
// 2. Capture old state if needed
let old_state = clone!(mutable_ref);
// 3. Call the function under test
let result = project::example::my_function(args);
// 4. Postconditions that must hold
ensures(postcondition);
// 5. Return the result
result
}
How Specs Compose
- External target: Every spec for an implementation function must use
target = <implementation-path>because the spec lives in a sibling package. prove: The spec is verified by the prover. Withoutprove, the spec is not checked itself, but is still used when proving other functions that depend on it.focus: Only verify this spec (and other focused specs). Useful for debugging. Do not commitfocus— it skips all non-focused specs.no_opaque: By default, the prover can use the external spec targeting a called function as an opaque summary. Addingno_opaqueforces the prover to include the actual implementation instead.- Scenario specs: A spec without a
targetattribute is a standalone scenario — it is verified but does not specify an implementation function.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 531 lines · 42 tokens per session scan A f345c32f3922
sui-prover is a skill published in the GitHub repository contract-hero/sui-pilot (10 stars, last pushed 9d ago), licensed MIT. It adds 42 tokens to every session and 5,192 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
azsdk-common-pipeline-analysis
Analyze Azure SDK CI/CD pipeline failures into a structured diagnosis, and define the required output format. Load this skill before calling azsdkanalyzepipeline, which returns raw failure data that this skill interprets and formats. USE FOR: "pipeline failed", "build failure", "CI check failing", "tests failing in…
requirements-author
Requirements authoring guide for BRD and PRD across Discover, Define, and Govern with canonical templates and handoff contracts.
mps-aspect-actions
Use when defining or editing MPS node factories (the "actions" aspect) — NodeFactories roots, per-concept NodeFactory setup functions that initialize a freshly created node and optionally copy data from a replaced sampleNode, plus the actions aspect's CopyPasteHandlers and PasteWrappers roots. Reach for this skill…
mps-aspect-intentions
Use when defining or editing MPS intentions (the Alt+Enter context-action aspect) — adding IntentionDeclaration roots, parameterized or surround-with variants, description/isApplicable/execute blocks, child-filter functions, factory-initialized AST splicing, or debugging why an intention is not offered. Lives in the…
devtools-event-client
Create typed EventClient for a library. Define event maps with typed payloads, pluginId auto-prepend namespacing, emit()/on()/onAll()/onAllPluginEvents() API. Connection lifecycle (5 retries, 300ms), event queuing, enabled/disabled state, SSR fallbacks, singleton pattern. Unique pluginId requirement to avoid event…
api-design
REST/GraphQL/gRPC API design best practices. Use when designing APIs, defining contracts, handling versioning. Covers OpenAPI 3.2, GraphQL Federation, gRPC streaming.