aria-usage

aria-usage is a skill for Claude Code from ncaq/konoka. It costs 40 tokens per session (1,921 once invoked), scanned A, original, Apache-2.0.

A guide to using WAI-ARIA, the HTML attributes that describe interface roles and states to assistive technology such as screen readers. It explains when native HTML already provides that information and when extra attributes are harmful.

In plain words
What is it for?
Use it when writing or reviewing HTML or JSX that contains `role` or `aria-*` attributes.
Why use it?
It helps prevent redundant or incorrect accessibility markup that can make an interface harder to use with assistive technology.

Skill for Claude Code

Written for Claude Code: user-invocable in frontmatter.

Part of the web-tasuke plugin — 17 skills shipped together

Good fit Use it when writing or reviewing HTML or JSX that contains role or aria-* attributes.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/ncaq/konoka/aria-usage
View source ↗ ncaq/konoka
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.

Any agent
npx skills add ncaq/konoka --skill aria-usage
Clone the repo
git clone --depth 1 https://github.com/ncaq/konoka

Made for: Claude Code.

Or install web-tasuke, the plugin that ships this one along with the rest of its 17 skills.

Wrote 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.

agentmods badge for aria-usage

README.md
[![agentmods](https://agentmods.dev/badge/skills/ncaq/konoka/aria-usage/github.svg)](https://agentmods.dev/skills/ncaq/konoka/aria-usage)
Your own site
<a href="https://agentmods.dev/skills/ncaq/konoka/aria-usage"><img src="https://agentmods.dev/badge/skills/ncaq/konoka/aria-usage/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.

agentmods 80×15 button for aria-usage

Your own site · 80×15
<a href="https://agentmods.dev/skills/ncaq/konoka/aria-usage"><img src="https://agentmods.dev/badge/skills/ncaq/konoka/aria-usage.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 40 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,921 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.00040 $0.01921
Opus 5 $0.00020 $0.00960
Sonnet 5 $0.00008 $0.00384
Haiku 4.5 $0.00004 $0.00192

Measured 3d ago against content hash 6d00c175fb4d, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-08, from the pricing page.

Security

Grade A, and why

aria-usage 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 3d 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.

plugins/web-tasuke/skills/aria-usage/SKILL.md · 151 lines

How it starts

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

WAI-ARIAの使用指針

無意味で冗長なARIA属性の追加を避けてください。

この文書は以下の著作物の内容を要約・改変して作成しています。

暗黙のWAI-ARIAセマンティクス

HTMLの要素は暗黙のWAI-ARIAセマンティクスを持っています。 role属性やaria-*属性を書かなくても、 明示的に書いたのと同じ状態になっています。

たとえば<button>要素は、 WAI-ARIAの属性がなくても「ボタン」というロールと、 テキストコンテンツによる名前を持ちます。

<!-- この2つは同じセマンティクスです。下のように書く必要はありません -->
<button>送信</button>
<button role="button" aria-label="送信">送信</button>

HTMLの要素や属性をそれらの目的通りに使っていれば、 適切な暗黙のWAI-ARIAセマンティクスが自動的に付与されます。 暗黙のセマンティクスの詳細は、 HTML Accessibility API Mappings 1.0 に定義されています。

WAI-ARIAセマンティクスとHTMLのコンフリクト

WAI-ARIAの属性はHTMLの暗黙のセマンティクスを上書きします。 誤った属性値を使ってしまうとアクセシビリティを下げてしまいます。 しかも通常の動作確認ではその誤りに気付けません。

<!-- h1要素は暗黙のうちにaria-level="1"を持つが、
     aria-level属性が明示的に指定されたことで見出しレベル2に変更されている -->
<h1 aria-level="2">これは見出しレベル2です</h1>

一方でchecked属性のような「強いネイティブセマンティクス」はWAI-ARIAの属性値を無視します。

<!-- aria-checkedは無視され、HTMLネイティブのchecked属性値のみが支援技術に提示される -->
<label>
  <input type="checkbox" checked="checked" aria-checked="false" />
  このチェックボックスは、チェックされているでしょうか?
</label>

No ARIA is better than Bad ARIA

APGのRead Me Firstにある通り、 悪いARIAよりもARIA無しのほうが良いです。 この原則を理解するために、 2つの重要な考え方があります。

ロールは約束である

<div role="button">Place Order</div>

role="button"を指定した以上、 この要素はボタンとして完璧に振る舞わなければなりません。 クリックだけでなく、 キーボードでフォーカスできてSpaceキーやEnterキーでも操作できる必要があります。 ロールを指定するということは 「このロールに期待されることは、この要素がすべて満たしています」 というユーザーに対する約束です。

Read the full file on GitHub · 151 lines

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. 3d ago First seen · 151 lines · 40 tokens per session scan A 6d00c175fb4d

Subscribe to this mod's changes

aria-usage is a skill published in the GitHub repository ncaq/konoka (3 stars, last pushed yesterday), licensed Apache-2.0. It adds 40 tokens to every session and 1,921 once invoked, about $0.0002 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-09-05.

Related

Other skills, from other repositories

aceternity-ui

100+ animated React components (Aceternity UI) for Next.js with Tailwind. Use for hero sections, parallax, 3D effects, or encountering animation, shadcn CLI integration errors.

secondsky/claude-skills · 48 tokens

base-ui-react

MUI Base UI unstyled React components with Floating UI. Use for accessible components, Radix UI migration, render props API, or encountering positioning, popup, v1.0 rc / pre-GA issues.

secondsky/claude-skills · 47 tokens

motion

UIForge's motion layer — art-directs motion for React/Next.js + Tailwind interfaces built with Motion-Primitives (the shadcn-style copy-in registry, powered by Motion / ex Framer Motion). Use whenever you build or polish a landing page, hero, dashboard, pricing table, feature section, empty state, or any screen where…

TaewoooPark/UIForge · 164 tokens

cutify-that-tab

Add a cute, hand-authored SVG favicon to a web app — the tiny icon that shows in the browser tab. Use when the user asks to add a favicon, browser tab icon, tab logo, page icon, site icon, or "cute thing in the tab," or says the current tab shows a blank/default square. Covers 3 techniques in increasing effort: (A)…

wan-huiyan/cutify-this · 256 tokens

design-director

UIForge's always-on design brain — the art director for any web UI. Use whenever you build or elevate a landing page, hero, dashboard, pricing table, marketing site, app screen, component, or design system, or when asked to make something feel premium, distinctive, high-end, polished, "not generic," or "not…

TaewoooPark/UIForge · 139 tokens

design-spatial

Spatial composition and layout for frontend design. Load with design when composing pages/dashboards/components, or whenever generated UI looks off — overlapping/colliding elements, weak hierarchy, or generic ("looks like every startup site"). The core idea: a model can't trust its own layout, so render it, critique…

connerkward/ckw-design-skill · 0 tokens