javascript-conventions

A set of plain JavaScript coding rules covering syntax, modules, functions, data, asynchronous work, errors, naming, documentation, and supported language features.

In plain words
What is it for?
Use it when writing or reviewing technology-neutral JavaScript with ES modules and JSDoc type annotations.
Why use it?
It gives JavaScript code a consistent baseline and helps avoid using features that the chosen browser or runtime may not support.

Skill for Claude CodeCodex

Install

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.

agentmods
npx agentmods add skills/adambien/airails/javascript-conventions
Any agent
npx skills add AdamBien/airails --skill javascript-conventions
Clone the repo
git clone --depth 1 https://github.com/AdamBien/airails

Made for: Claude Code, Codex.

Per session 200 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,326 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00200 $0.04326
Opus 5 $0.00100 $0.02163
Sonnet 5 $0.00040 $0.00865
Haiku 4.5 $0.00020 $0.00433

Measured 2d ago against content hash 8bbedadce253, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

javascript-conventions 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 2d 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.

web/javascript-conventions/SKILL.md · 236 lines

How it starts

The opening of the file, as written. The whole thing — 236 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Apply all rules below strictly to any JavaScript you write, generate, or review.

Scope

  • Language-level rules for JavaScript only — modules, syntax, functions, data, asynchrony, errors, JSDoc types, naming, comments.
  • HTML, CSS, accessibility, and design tokens are not in this skill — see web-conventions.
  • Architecture, state management, routing, dependency and build policy, project layout, dev server, and verification loops are not in this skill — see web-components (SPAs) and web-sprinkles (static sites with bounded enhancements); web-static forbids JavaScript entirely.
  • When a composed skill specifies a rule, the composed skill wins; this skill is the fallback baseline.

Language Level

  • target the newest ECMAScript syntax and standard-library APIs the Baseline policy permits — the decision is per feature, never per year: there is no "ES2020 target" to configure, only a feature's Baseline status
  • no build step to reach a language feature — no transpiler (Babel, SWC, esbuild), no polyfill bundle; if a feature needs compiling, its Baseline status already says not to use it
  • no TypeScript, no JSX — plain ES modules with JSDoc type annotations
  • modules are strict mode already — never write 'use strict'

Baseline Lookup for JavaScript

The web-conventions Baseline policy governs JavaScript exactly as it governs CSS:

  • Widely Available — use freely
  • Newly Available — requires feature detection with a graceful fallback
  • Limited availability — must not be used

CSS detects with @supports; JavaScript's equivalent is an existence check before first use:

const groupBy = Object.groupBy ?? ((items, key) => items.reduce(intoGroups(key), {}));
if (!document.startViewTransition) return render(url);
if (!('URLPattern' in globalThis)) return matchWithRegExp(url);
  • look up the feature id in web-conventions/references/baseline-snapshot.mdnever from model memory; widely-known features can still be Limited (top-level await is, in the 2026-07-08 snapshot)
  • a feature missing from the snapshot or newer than its header date is uncertain — verify against webstatus.dev before recommending it, or treat it as Limited
  • core syntax may have no feature id at all — optional chaining (?.) returns 404 from the API (verified 2026-08-04), meaning untracked, not Limited; judge such syntax on its own rather than by lookup
  • when recommending a newer API, cite its status so the reader can judge support

Read the full file on GitHub · 236 lines

Files

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.

Changes

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.

  1. 2d ago First seen · 236 lines · 200 tokens per session scan A 8bbedadce253

Subscribe to this mod's changes

javascript-conventions is a skill published in the GitHub repository AdamBien/airails (47 stars, last pushed 12d ago), licensed MIT. It adds 200 tokens to every session and 4,326 once invoked, about $0.0010 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-30.

Related

Other skills, from other repositories

sandbox-next

Use when building or changing Cloudflare Sandbox apps on @cloudflare/sandbox@next (Sandbox SDK 1.0 preview)—code execution, AI runners, interpreters, CI-like jobs, terminals, files, mounts, tunnels, preview URLs, lifecycle, or errors. Not for the default stable package (use sandbox-stable) or for porting stable to…

cloudflare/skills · 86 tokens

workers-best-practices

Reviews and authors Cloudflare Workers code against production best practices. Load when writing new Workers, reviewing Worker code, configuring wrangler.jsonc, or checking for common Workers anti-patterns (streaming, floating promises, global state, secrets, bindings, observability). Biases towards retrieval from…

cloudflare/skills · 72 tokens

80-livekit-agents-majiayu000-claude-skill-registr

Create your LiveKit Agents skill from official documentation, then learn to improve it throughout the chapter.

majiayu000/claude-skill-registry · 18 tokens

turnstile-spin

Set up Cloudflare Turnstile end-to-end in a project. Scan the codebase, create the widget via the Cloudflare API, embed it where user requests need bot verification (form submissions, SPA actions, API endpoints, download links, comment or vote submissions, etc.), wire canonical server-side siteverify in the customer's…

cloudflare/skills · 123 tokens

dag-factory

Authors Apache Airflow DAGs declaratively from dag-factory YAML configs. Use when building DAGs declaratively from YAML via dag-factory; creating/editing dag-factory templates/YAML configs,reating/editing dag-factory YAML configs, defaults, dynamic tasks, datasets, or callbacks; or validating dag-factory…

astronomer/agents · 80 tokens

story-origin-check

Recover the first public timestamp and canonical major coverage for a newsjacking signal, then decide whether newer coverage is the same story, a different story, or a materially new development.

elvisun/newsjack · 40 tokens