Skip to content

Guide · Agent skill

How to use the Script Loading Checker (defer/async) agent skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

The defer-async skill is a guidance pack for AI agents that reviews HTML, templates and shared components for script tags that block page rendering. It is written for front-end developers, teams doing pre-release checks and beginners who want to understand why script loading order affects speed. After this guide you will know how to install the skill, ask for a review in plain language and read what the agent flags and why.

Script Loading Checker (defer/async)thedaviddias/Front-End-Checklist · MIT

Quick start

  1. 1Download the ZIP. Get the defer-async skill ZIP from the skill's page on this directory and unzip it.
  2. 2Place the skill folder. Copy it into ~/.claude/skills/ for all projects, or into the project's .claude/skills/ folder for one project.
  3. 3Or upload it in the Claude apps. In the Claude apps, go to Settings, then Capabilities, then Skills, and upload the skill.
  4. 4Ask for a review. Describe the template, rendered HTML or shared component you want checked, using plain language about script loading.
  5. 5Read the flagged elements. Check which script tags the agent flags and why it recommends defer, async or type=module.
  6. 6Apply and re-check. Make the suggested markup change yourself, then ask the agent to review again.

What the defer-async skill makes the agent do

When the skill is active, the agent reviews HTML, templates, server-rendered output and shared components for script tags that load in a blocking way. A plain script in the document head without defer or async is the main example. The agent flags the exact elements, explains the difference between defer, async and type=module, and suggests the markup change.

The skill is guidance only. It teaches the agent what to look for and how to fix it, and the files contain no executable code.

  • defer: downloads in parallel and runs after HTML parsing, in order. The source recommends it for most scripts.
  • async: downloads in parallel and runs as soon as it is ready. The source recommends it for independent scripts.
  • type=module: always defers and enables ES module syntax.
  • Rule of thumb from the source: never place scripts in head without defer or async.

Install the defer-async skill

Download the ZIP from the skill's page on our directory and unzip it. Then place the folder in one of these locations, depending on how you want to use it:

For all your projects, put it in ~/.claude/skills/. For a single project, put it in that project's .claude/skills/ folder. Alternatively, in the Claude apps, open Settings, go to Capabilities and upload the skill under Skills.

The package contains two files: SKILL.md, which holds the main instructions, and references/rule.md, which has fuller implementation details, code examples and framework-specific guidance.

Trigger the skill with natural requests

You do not need a special command. The skill's description tells the agent when to use it: reviewing templates, rendered HTML or shared components related to loading scripts with defer, async or type=module. Ask for that work in ordinary language and mention the file or component you want checked.

Point the agent at the final browser-facing markup where you can. The source advises validating the output the browser receives, not only the source framework code.

  • Review this page template for script tags that block rendering.
  • Check the shared header component for scripts in head without defer or async.
  • Explain whether app.js should use defer, async or type=module.
  • Look at the server-rendered HTML for this route and flag render-blocking scripts.

Example: reviewing a plain script in the head

Suppose a template contains a plain script tag in the head. The skill's check asks the agent to find all script tags in the HTML file, flag any in the head without defer or async, and flag scripts at the bottom of body that could move to head with defer.

The source explains why this matters: a plain script blocks HTML parsing until it downloads, parses and executes. The agent's suggested fix is to add defer or async to the tag, or to convert it to type=module where ES modules are used.

What the skill needs and what it does not do

The skill lists no requirements. It does not run scripts and does not use the network. Its files are instructions the agent reads, so you review the agent's suggested changes yourself before applying them.

The skill is not a good fit for projects whose framework or bundler already manages script loading, because the advice may not apply to generated output unless you check the final HTML. It also assumes familiarity with HTML markup, so it is less useful to people who only want to build a site without reading code.

  • No runtime requirements are listed.
  • No script execution and no network access.
  • License: MIT.

Tips for better results

Give the agent the rendered HTML or the template together with the shared components it includes. Flagged elements are more useful when the agent can see where the markup is produced.

Ask for an explanation as well as a fix if you are learning. The skill is designed to explain the difference between defer, async and type=module so you can decide case by case.

  • Include the rendered output, not only the source template, when frameworks generate script tags.
  • Ask why a script was flagged before accepting the change.
  • Re-run the review after a change to confirm the flagged element is fixed.

What people use it for

  • Reviewing a page template before release to catch plain script tags in the head.
  • Checking a shared component that outputs script tags used across many pages.
  • Auditing server-rendered HTML for a route that is slow on first render.
  • Learning why script loading order affects page speed, with examples of defer and async.

Frequently asked questions

What is the defer-async skill?

It is an agent skill with instructions that help an AI agent review HTML, templates and shared components for script tags that block page rendering. It explains defer, async and type=module and suggests markup changes. The skill is guidance only and contains no executable code.

How do I install the defer-async skill?

Download the ZIP from the skill's page and unzip it. Put the folder in ~/.claude/skills/ for all projects or in a project's .claude/skills/ folder. In the Claude apps you can instead upload it under Settings, Capabilities, Skills.

Is the defer-async skill free?

The skill is licensed under MIT. The source does not list pricing, so check the skill's page for any current terms.

What is the difference between defer and async?

Both download scripts in parallel while HTML is parsed. defer runs scripts after parsing, in order, and is recommended for most scripts. async runs each script as soon as it is ready and suits independent scripts.

Does the skill need anything installed or run any code?

The source lists no requirements. The skill does not run scripts and does not use the network, since its files contain only instructions.

Will this skill work with React, Next.js or other frameworks?

It may not apply directly. The skill warns that projects using a framework or bundler that already manages script loading may need the final generated HTML checked, since the advice may not match that output.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Use this skill if you review page templates or server-rendered HTML and want an agent to flag render-blocking scripts and explain the fix. Pick something else if your framework or bundler already controls script loading and you do not want to inspect the generated HTML, or if you want a tool for building a site without reading markup.

Download the skill