form-labelling

form-labelling is a skill for Claude Code from Owl-Listener/inclusive-design-skills. It costs 84 tokens per session (765 once invoked), scanned A, original, MIT.

Guidance for giving form fields clear labels, instructions, and groups that work for screen readers and for people with cognitive disabilities. A screen reader is software that reads interface content aloud or through a braille display.

In plain words
What is it for?
Use it when designing or reviewing text fields, checkboxes, radio buttons, select menus, and other data-entry controls. It helps define visible labels, required fields, help text, and groups of related fields.
Why use it?
It prevents users from guessing what to enter, especially when placeholder text disappears after they start typing.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the accessible-content plugin — 9 skills shipped together

Good fit Use it when designing or reviewing text fields, checkboxes, radio buttons, select menus, and other data-entry controls. It helps define visible labels, required fields, help text, and groups of related fields.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/owl-listener/inclusive-design-skills/form-labelling
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 Owl-Listener/inclusive-design-skills --skill form-labelling
Clone the repo
git clone --depth 1 https://github.com/Owl-Listener/inclusive-design-skills

Made for: Claude Code.

Or install accessible-content, the plugin that ships this one along with the rest of its 9 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 form-labelling

README.md
[![agentmods](https://agentmods.dev/badge/skills/owl-listener/inclusive-design-skills/form-labelling/github.svg)](https://agentmods.dev/skills/owl-listener/inclusive-design-skills/form-labelling)
Your own site
<a href="https://agentmods.dev/skills/owl-listener/inclusive-design-skills/form-labelling"><img src="https://agentmods.dev/badge/skills/owl-listener/inclusive-design-skills/form-labelling/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 form-labelling

Your own site · 80×15
<a href="https://agentmods.dev/skills/owl-listener/inclusive-design-skills/form-labelling"><img src="https://agentmods.dev/badge/skills/owl-listener/inclusive-design-skills/form-labelling.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 84 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 765 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.00084 $0.00765
Opus 5 $0.00042 $0.00382
Sonnet 5 $0.00017 $0.00153
Haiku 4.5 $0.00008 $0.00076

Measured 11d ago against content hash 480cc1c55828, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

form-labelling 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 11d 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.

accessible-content/skills/form-labelling/SKILL.md · 88 lines

How it starts

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

Form Labelling

Every form field needs a visible, persistent label that is programmatically associated with the input. This is the single most common accessibility failure on the web — and the easiest to fix.

Core Rules

Every Input Has a Visible Label

  • Use element with for/id association
  • The label must be visible at all times — not just as placeholder text that disappears on focus
  • Labels go above the input (most accessible and most scannable)
  • Never use placeholder text as the only label — it disappears when the user starts typing

Labels Describe What to Enter

  • Good: "Email address"
  • Bad: "Enter your info here"
  • Good: "Date of birth (DD/MM/YYYY)"
  • Bad: "Date"
  • Include format hints in the label or help text, not just in placeholder

Required Fields Are Clear

  • Mark required fields with visible text: "required" or *
  • If using , explain it at the top of the form: " = required"
  • Use aria-required="true" for programmatic indication
  • Better: make most fields required by design and mark the optional ones instead — "Company name (optional)"

Grouping Patterns

Related Fields Need Fieldsets

  • Group related fields with and
  • Radio buttons: always group with fieldset
    • Legend: "Preferred contact method"
    • Options: Email, Phone, Text
  • Checkboxes: group when they share a question
    • Legend: "Which topics interest you?"
    • Options: Design, Engineering, Product
  • Address fields: group under "Delivery address" or "Billing address"

When You Have Multiple Forms

  • Each form section should have a heading or legend
  • Sections should be visually and structurally separated
  • Progress indicators help users understand where they are

Instruction Patterns

Help Text

  • Place help text between the label and the input
  • Associate with aria-describedby so screen readers announce it
  • Good: "Must be at least 8 characters with one number"
  • Keep instructions concise — one sentence

Error Association

  • Error messages must be programmatically linked to the field (aria-describedby or aria-errormessage)
  • Place error text directly below the field, not in a remote banner
  • Include the field label in the error: "Email address: please enter a valid email"

Read the full file on GitHub · 88 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. 11d ago First seen · 88 lines · 84 tokens per session scan A 480cc1c55828

Subscribe to this mod's changes

form-labelling is a skill published in the GitHub repository Owl-Listener/inclusive-design-skills (98 stars, last pushed 3mo ago), licensed MIT. It adds 84 tokens to every session and 765 once invoked, about $0.0004 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

webgl-holographic-foil

A self-contained WebGL2 hero: thin-film interference over a crushed-foil surface whose palette shifts with the viewing angle; move the cursor to tilt the film.

nexu-io/open-design · 41 tokens

html-ppt-hermes-cyber-terminal

OpenDesign + BYOK: choosing and wiring your own model, hands-on — cost, quality, and the routing decision. Built as a decision-grade AI literacy deck for engineers, IT, applied-AI teams.

nexu-io/open-design · 53 tokens

html-ppt-taste-brutalist

16:9 HTML deck in tactical-telemetry / CRT-terminal taste. Deactivated-CRT charcoal slides, white-phosphor monospace, hazard-red accent, scanline overlay, ASCII syntax, density over decoration. Distilled from Leonxlnx/taste-skill brutalist-skill (Tactical Telemetry mode).

nexu-io/open-design · 78 tokens

visual-ralph

Visual Ralph orchestration for frontend UI from generated references, static references, or live URL targets, using $ralph with built-in visual verdict and pixel-diff evidence until the implementation matches and leaves a reproducible design system.

Yeachan-Heo/oh-my-codex · 50 tokens

accessibility

Consolidated accessibility skill entrypoint for WCAG 2.2, ARIA Authoring Practices, cognitive accessibility, Section 508, EN 301 549, design intent verification, and the Accessibility Planner workflow.

microsoft/hve-core · 47 tokens

make-resume

A Chinese-language tool for creating editable HTML resumes that can be changed in a browser and printed to PDF. It uses available resume templates when they are installed and otherwise provides a simpler fallback.

Hisn00w/ASu-skills · 86 tokens