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 metarhia/metaskills --skill js-conventionsgit clone --depth 1 https://github.com/metarhia/metaskillsWrote 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/metarhia/metaskills/js-conventions)<a href="https://agentmods.dev/skills/metarhia/metaskills/js-conventions"><img src="https://agentmods.dev/badge/skills/metarhia/metaskills/js-conventions/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/metarhia/metaskills/js-conventions"><img src="https://agentmods.dev/badge/skills/metarhia/metaskills/js-conventions.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.00050 | $0.00921 |
| Opus 5 | $0.00025 | $0.00461 |
| Sonnet 5 | $0.00010 | $0.00184 |
| Haiku 4.5 | $0.00005 | $0.00092 |
Grade A, and why
js-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 10d 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 — 82 lines — stays where its author put it; the contents beside it link to each section on GitHub.
JavaScript Code Style
Use following conventions for JavaScript and TypeScript code.
Preparations
- Add to dev dependencies in package.json if not added:
- eslint-config-metarhia
- eslint, prettier
- Add scripts in package.json if not added:
- "lint": "eslint . && prettier --check "/*.js" "/.json" "**/.md" "*/.ts""
- "fix": "eslint . --fix && prettier --write "/*.js" "/.json" "**/.md" "*/.ts""
- Before and after code analysis with AI run
npm run lintandnpm t - Use
npm run fixif errors/warnings detected to auto-fix when possible
Formatting
- Use single quotes and semicolons
- Keep max line length 80 (ignore URLs)
- Use trailing commas in multiline arrays, objects, and params
- Keep one empty line between semantic blocks
- Follow Prettier and eslint-config-metarhia for spacing, braces, and indentation
Naming
- Use
camelCasefor variables and parameters - Use
UpperCamelCasefor classes and types - Use
UPPER_SNAKE_CASEfor constants - Use
newwith capitalized constructor names - Use
errorin catch blocks, noterr - Use short names (
e,i) only in short one-line callbacks - Use descriptive names in multiline callbacks (
event,index,item) - Use boolean prefixes:
is,has,can,should - Use singular names for entities and plural names for collections
- Use verb names for functions and handlers (
parse,create,handle,on) - Include units in numeric names (
timeoutMs,sizeBytes) except options
Best practices
- Prefer
const, minimizelet, never usevar - Prefer arrow functions (except prototype/class methods)
- Do not mutate input parameters; avoid
arguments - Keep functions small and single-purpose
- Decompose long expressions into intermediate variables
- Prefer explicit loops (
for,for..of) in hot paths - Use array methods when they improve readability
- Use
===and!==only - Keep return types consistent
- Avoid nested ternaries and deep callback nesting
- Self-documented and self-descriptive code: do not add obvious comments, code should be clear without comments
- Use iteration methods like
.map,.filter,.reduceif it is good for code semantic - Try to avoid
.forEachif callback operates with outer context
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.
- 10d ago First seen · 82 lines · 50 tokens per session scan A 7141d84cff59
js-conventions is a skill published in the GitHub repository metarhia/metaskills (49 stars, last pushed 1mo ago), licensed MIT. It adds 50 tokens to every session and 921 once invoked, about $0.0003 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.
Other skills, from other repositories
autovault-skill
Understand AutoVault-managed skills and how to install or update them. Use when a skill is visible via symlink, when authoring or editing SKILL.md, or before touching /.autovault/skills. Vault writes must go through autovault add-local or MCP proposeskill/updateskill so AutoVault re-signs; never hand-edit vaulted…
typescript
TypeScript coding conventions, best practices, and patterns for writing clean, maintainable code.
loom-typescript
TypeScript language expertise for type-safe, production-quality code.
zcfg
Integrate zcfg (Zero Dependency Configuration Utility) into Java applications. Use when adding configuration loading, reading properties files, setting up application configuration, or integrating zcfg into a Java project. Triggers on "zcfg", "add configuration", "load properties", "application configuration with…
zcl
Add colored terminal output to Java applications using zcl (Zero-dependency Colour Logger). Use when adding colored console output, terminal logging with colors, ANSI color support, or integrating zcl into a Java project. Triggers on "zcl", "colored output", "colored logging", "terminal colors", "ANSI colors"…
zjson
Use JSON in zero-dependency Java by copying the org.json source (JSONObject, JSONArray, JSONTokener) directly into the project instead of adding a Maven/Gradle dependency. Use when adding JSON parsing or generation to a Java CLI script, zb project, or any project that must stay dependency-free. Triggers on "JSON in…