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 skills add yuri-semenenko/ai-engineering-workspace --skill web-performance-checklistgit clone --depth 1 https://github.com/yuri-semenenko/ai-engineering-workspaceWrote 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/yuri-semenenko/ai-engineering-workspace/web-performance-checklist)<a href="https://agentmods.dev/skills/yuri-semenenko/ai-engineering-workspace/web-performance-checklist"><img src="https://agentmods.dev/badge/skills/yuri-semenenko/ai-engineering-workspace/web-performance-checklist/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/yuri-semenenko/ai-engineering-workspace/web-performance-checklist"><img src="https://agentmods.dev/badge/skills/yuri-semenenko/ai-engineering-workspace/web-performance-checklist.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00077 | $0.01997 |
| Opus 5.5 | $0.00031 | $0.00799 |
| Sonnet 5.5 | $0.00015 | $0.00399 |
| Haiku 4.5 | $0.00008 | $0.00200 |
Grade A, and why
web-performance-checklist 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 5d 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 — 164 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Web Performance Checklist
A concrete checklist for diagnosing and improving web performance. Measure before and after — optimize against field data, not hunches.
Rationalizations (read first)
Pre-written rebuttals to the excuses that precede a skipped measurement. If you catch yourself thinking the left column, the right column is the answer.
| Rationalization | Rebuttal |
|---|---|
| "It's fast on my machine." | Your machine isn't the p75 user. Check field data (CrUX/RUM) and throttle to mid-tier Android. |
| "I'll add the index later." | An unindexed query degrades with data growth — later is an incident, not a task. |
| "Memoize everything to be safe." | useMemo/useCallback cost too. Without a profile they add overhead, not speed. |
| "The bundle's only a bit bigger." | Bloat compounds. Read the analyzer, not your gut — name the KB before adding the dep. |
| "It looks instant locally." | Local has no network or CPU throttle. Unverified under realistic conditions = unverified. |
Core Web Vitals targets
| Metric | Good | Needs improvement | Poor |
|---|---|---|---|
| LCP (Largest Contentful Paint) | ≤ 2.5s | ≤ 4.0s | > 4.0s |
| INP (Interaction to Next Paint) | ≤ 200ms | ≤ 500ms | > 500ms |
| CLS (Cumulative Layout Shift) | ≤ 0.1 | ≤ 0.25 | > 0.25 |
TTFB diagnosis
When TTFB is too high (> 800ms), check each component in the Network panel:
- Slow DNS → add
<link rel="dns-prefetch">orpreconnectfor known origins. - Slow TCP/TLS handshake → enable HTTP/2, consider edge deployment, check keep-alive.
- Slow server processing → profile the backend, find slow queries, add caching.
Frontend
Images
- Modern formats (WebP, AVIF).
- Responsive sizing (
srcset+sizes). - Explicit
width/heighton<img>and<source>(prevents CLS). - Below-the-fold images use
loading="lazy"anddecoding="async". - Hero/LCP images use
fetchpriority="high"and are not lazy-loaded.
JavaScript
- Initial bundle < 200 KB gzipped.
- Code splitting via dynamic
import()for routes and heavy features. - Tree shaking enabled (dependency ships ESM, marked
sideEffects: false). - No render-blocking JS in
<head>(usedefer/async). - Heavy computation offloaded to Web Workers where applicable.
-
React.memo()on expensive components that re-render with identical props. -
useMemo()/useCallback()only where profiling shows real benefit. - Long tasks (> 50ms) broken up — the main lever for INP.
-
yieldToMaininside long loops so input can run between iterations. - Modern scheduling where available:
scheduler.yield()(preferred),scheduler.postTask()with priorities,isInputPending(). -
requestIdleCallbackfor deferrable work (analytics, prefetch, cache warming). - Non-critical work moved out of event handlers (analytics, logging) so it doesn't delay interaction response.
- Third-party scripts
async/defer, size-checked, facaded if heavy (chat widgets, embeds).
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.
- 5d ago Changed · -5 tokens per session 316fbe239f5c
- 2mo ago First seen · 164 lines · 82 tokens per session scan A 499f1e970bbd
web-performance-checklist is a skill published in the GitHub repository yuri-semenenko/ai-engineering-workspace (4 stars, last pushed 3d ago), licensed MIT. It adds 77 tokens to every session and 1,997 once invoked, about $0.0003 per session on Opus 5.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.
web-performance-checklist compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| web-performance-checklistyuri-semenenko/ai-engineering-workspace | Skill | 4 | 3d ago | MIT | A | 77 | Claude Code |
| spec-kitty-charter-doctrinePriivacy-ai/spec-kitty | Skill | 1.7k | 20d ago | MIT | A | 135 | Claude Code, Codex |
| 110-java-maven-best-practicesjabrena/plinth | Skill | 460 | 2d ago | Apache-2.0 | A | 115 | Claude Code, Codex |
| 128-java-genericsjabrena/plinth | Skill | 460 | 2d ago | Apache-2.0 | A | 147 | Claude Code, Codex |
| 322-frameworks-spring-boot-testing-integration-testsjabrena/plinth | Skill | 460 | 2d ago | Apache-2.0 | A | 123 | Claude Code, Codex |
| 422-frameworks-quarkus-testing-integration-testsjabrena/plinth | Skill | 460 | 2d ago | Apache-2.0 | A | 190 | Claude Code, Codex |
| 521-frameworks-micronaut-testing-unit-testsjabrena/plinth | Skill | 460 | 2d ago | Apache-2.0 | A | 150 | Claude Code, Codex |