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/cwklurks/ship-score/performancenpx skills add cwklurks/ship-score --skill performancegit clone --depth 1 https://github.com/cwklurks/ship-scoreWrote 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/cwklurks/ship-score/performance)<a href="https://agentmods.dev/skills/cwklurks/ship-score/performance"><img src="https://agentmods.dev/badge/skills/cwklurks/ship-score/performance.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.00000 | $0.07544 |
| Opus 5 | $0.00000 | $0.03772 |
| Sonnet 5 | $0.00000 | $0.01509 |
| Haiku 4.5 | $0.00000 | $0.00754 |
Grade A, and why
performance 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 4d 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 — 662 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Performance Category — Ship Score Sub-Skill
You are running the Performance category of a Ship Score production readiness audit. Follow every instruction below precisely. Do not add checks beyond the 7 defined here. Do not skip checks. Report exactly what you find.
Context You Receive
The orchestrator passes you:
Framework: [name] ([key])
Signals: [comma-separated detected features]
Root: [absolute path to project root]
Use the key value to select the correct framework-specific search patterns
below. If the key is unknown, use the Generic/Vite patterns. Use the
Root path for all file searches. If the project has a package.json, use
it as the primary dependency manifest.
Checks
Run all 7 checks in order. For each check, follow the verification steps, determine the status, and record the evidence.
Check 1: Image Optimization
Severity: High
What to look for:
Usage of an image optimization solution (framework-provided component or
third-party library) instead of raw <img> tags. Optimized images are served
in modern formats (WebP/AVIF), resized on demand, and lazy-loaded -- reducing
page weight by 30-80%.
Framework-specific verification:
| Framework | What to grep / check |
|---|---|
Next.js (nextjs) |
Grep source files (.tsx, .jsx) for the next/image component. Pattern: from ['"]next/image['"] or from ["']next/image["'] or import Image near next/image. Also grep for <Image component usage: <Image\b. |
Astro (astro) |
Grep source files (.astro, .tsx, .jsx) for astro:assets or @astrojs/image. Pattern: from ['"]astro:assets['"] or from ['"]@astrojs/image['"] or import.*Image.*from ['"]astro:assets['"]. Also grep for <Image or <Picture component usage. |
Nuxt (nuxt) |
Grep source files (.vue) for <NuxtImg or <nuxt-img or @nuxt/image. Pattern: `<NuxtImg |
SvelteKit (svelte) |
Grep source files (.svelte) for @sveltejs/enhanced-img or svelte-image. Pattern: `enhanced:img |
Vite/Generic (vite, node, unknown) |
Grep package.json for image optimization libraries: sharp, imagemin, @squoosh/lib, vite-plugin-image-optimizer, vite-imagetools, unplugin-imagemin. |
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.
- 4d ago First seen · 662 lines · 0 tokens per session scan A 8f3ffd99bd96
performance is a skill published in the GitHub repository cwklurks/ship-score (1 stars, last pushed 5mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 7,544 tokens. 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
promptscript
PromptScript language expert for reading, writing, modifying, and troubleshooting .prs files. Use when working with PromptScript syntax, creating or editing .prs files, adding blocks like @identity, @standards, @restrictions, @shortcuts, @skills, or @agents, configuring promptscript.yaml, resolving compilation errors…
user-research-cookiy
End-to-end user research assistant — qualitative and quantitative. Use this skill whenever the user mentions user research, user interviews, discussion guides, interview guides, research plans, qualitative research, quantitative research, user surveys, survey design, usability studies, participant recruitment…
Website Audit
Comprehensive website auditing skill using Lighthouse, PageSpeed Insights, and web performance APIs to audit performance, accessibility, SEO, best practices, and security.
tdd-workflow
Test-driven development workflow.
expert
Base expert skill.
alpha
Alpha skill.