The interface is localized. Skill descriptions and documents are machine-translated by AI into your language; code, commands, paths and technical terms stay in the original, and the author's document governs.
Explore skills
Data & research · SKILL.md

kb-cognitive-accessibility

kb-cognitive-accessibility

Reference data, not a reviewer. Review UI for cognitive load, plain language clarity, and WCAG 2.2 cognitive SC (3.3.7, 3.3.8, 3.3.9). Includes COGA guidance, reading level, auth patterns, and timeout warnings.

Independent GitHub snapshot · Automated classification · Original documentation governs

Skill documentation

GitHub

name: kb-cognitive-accessibility description: Reference data, not a reviewer. Review UI for cognitive load, plain language clarity, and WCAG 2.2 cognitive SC (3.3.7, 3.3.8, 3.3.9). Includes COGA guidance, reading level, auth patterns, and timeout warnings. license: MIT disable-model-invocation: true user-invocable: false metadata: tier: reference domain: cross-cutting output: none effort: low title: Cognitive Accessibility

Skill: Cognitive Accessibility

Domain: Cognitive, learning, and neurological accessibility
WCAG scope: WCAG 2.2 AA + key AAA, COGA W3C guidance
Agents that use this skill: cognitive-accessibility, web-accessibility-wizard, accessibility-lead, forms-specialist


Purpose

This skill provides reference tables, scoring formulas, and evaluation patterns for cognitive accessibility review. It covers:

  • WCAG 2.2 success criteria with cognitive accessibility relevance
  • COGA (Cognitive Accessibility) W3C guidance mapping
  • Plain language analysis techniques
  • Reading level computation
  • Authentication pattern analysis (3.3.8 / 3.3.9)
  • Redundant entry detection (3.3.7)
  • Timeout and session management analysis

WCAG 2.2 Cognitive Accessibility Criteria Reference

Level A

Each SC, with name, what to check and common failures.

SCNameWhat to CheckCommon Failures
2.2.1Timing AdjustableSession timeouts warn >=20s before expiry; user can extend >=10x or disableRedirect without warning; extension UI exists but does nothing
2.2.2Pause, Stop, HideAuto-moving/blinking content >5s has pause/stop controlBlinking backgrounds, marquee text, auto-scrolling feeds
2.3.1Three FlashesNo content flashes >3 Hz (absolute)Transition animations that strobe
3.3.1Error IdentificationError identified in text, not just colorRed border with no error message
3.3.2Labels or InstructionsFormat requirements shown before error, required fields identified upfrontFormat hint only in error state; asterisks with no legend
3.3.7Redundant Entry (2.2 new)Previously-entered info not re-requested in same session unless security-essential or staleEmail re-entered on step 3; billing address not pre-filled from shipping

Level AA

Each SC, with name, what to check and common failures.

SCNameWhat to CheckCommon Failures
2.4.6Headings and LabelsHeadings describe content; labels describe input purpose"Section 1", "Info", "Details" as heading text
3.2.3Consistent NavigationNav appears in same relative order across pagesFooter nav changes order on mobile vs desktop
3.2.4Consistent IdentificationSame-function components have same accessible name across pages"Search" button on one page, "Find" on another
3.3.3Error SuggestionFor detected errors, suggest correction when possible/safe"Invalid email" with no example or format hint
3.3.4Error Prevention (Legal, Financial)Review step before irreversible submission; allow reversal or confirmationOne-click purchase with no review screen; no undo for account deletion
3.3.8Accessible Authentication Min. (2.2 new)Authentication must not require cognitive function test unless an alternative existsautocomplete="off" on login forms; paste disabled in password fields; transcription-only CAPTCHA

Level AAA (Advisory - Review and Report)

Each SC, with name and what to check.

SCNameWhat to Check
2.2.6TimeoutsWarn about data loss from inactivity at start of session
3.1.3Unusual WordsJargon/idiom defined on first use
3.1.4AbbreviationsAbbreviations expanded on first use
3.1.5Reading LevelGeneral content <= Grade 8; see formula below
3.3.9Accessible Authentication Enhanced (2.2 new)No cognitive function test at all (removes the object-recognition exception)

Authentication Pattern Analysis (3.3.8 / 3.3.9)

Failing Patterns

Each pattern, with its failure and SC.

PatternFailureSC
autocomplete="off" on type="password"Blocks password manager paste3.3.8
JavaScript onpaste="return false" on password inputBlocks manual paste3.3.8
CAPTCHA with only distorted text optionNo cognitive-free alternative3.3.8
Security question requiring exact recallPure memory test3.3.8
Re-entering full card number on the same session order flowRedundant cognitive work3.3.7

Passing Patterns

Each pattern, with why it passes.

PatternWhy It Passes
<input type="password" autocomplete="current-password">Allows password manager autofill
Passkey/biometric as login alternativeNo cognitive function test
"Same as shipping address" checkbox on billing formEliminates redundant entry
CAPTCHA with audio alternativeProvides non-visual option
Email magic link with no password requiredRemoves cognitive test entirely

Redundant Entry Patterns (3.3.7)

Detection Checklist

In multi-step forms or wizards:

  1. Map all input fields across all steps
  2. Flag any field that requests information already collected in an earlier step
  3. Exception: security confirmation (password confirm) and data that can become stale (current vs. new address)

Common Violations

Each step 1 collect, with its step 3 also asks and violation.

Step 1 CollectsStep 3 Also AsksViolation?
Email addressEmail for confirmationYes - unless security-essential
Full nameBilling nameYes - should pre-fill
Shipping addressBilling addressYes - should offer "same as shipping"
Date of birthDOB for age verificationYes - same session, same data
PasswordPassword confirmNo - security essential
Current addressNew address (for change)No - intentionally different

Plain Language Analysis

Sentence Analysis

Evaluate all instructional text, error messages, button labels, and tooltip copy.

MetricTargetHow to Measure
Sentence length<= 25 words; aim for 15-20Count words between periods/question marks
VoiceActive preferredFlag: "was submitted", "is required to be", "will be shown"
Double negativesZero toleranceFlag: "not unable", "not required to not", "not without"
JargonFlag or defineUnexpanded acronyms, technical terms, domain-specific language
Consistent terminologySame term for same conceptFlag: "sign in" + "log in" on same page/flow

Error Message Quality Rubric

Score each error message 0-3 on each dimension:

Dimension0123
IdentificationNo messageGeneric ("Error occurred")Names the fieldNames the field and exact problem
CauseAbsentVaguePartialFull explanation
SolutionAbsentVague hintGeneral guidanceSpecific example or format
ToneBlame ("You entered...wrong")NeutralNeutral + helpfulSupportive and constructive

Minimum score to pass: 2 on Identification, 1 on Solution.

Error Message Examples

Each rating, with its error text.

RatingError Text
Fail"Invalid input."
Fail"You entered the wrong password."
Marginal"Password is incorrect."
Pass"The password doesn't match. Passwords are case-sensitive - check Caps Lock and try again."
Pass"Email must include @ - for example, name@company.com"

Reading Level Computation

Flesch-Kincaid Grade Level Formula

$GL = 0.39 \times \frac{W}{S} + 11.8 \times \frac{Sy}{W} - 15.59$

Where:

  • $W$ = total words
  • $S$ = total sentences
  • $Sy$ = total syllables

Syllable counting rules:

  • Count each vowel cluster (a, e, i, o, u) as one syllable
  • Subtract one syllable for silent trailing e ("made" = 1, "make" = 1)
  • Each word has at least 1 syllable

Grade Level Targets

Each content type, with its target GL and rationale.

Content TypeTarget GLRationale
Consumer web app (general)<= 8~50% of US adults read at Grade 8 or below
Government / public services<= 6Plain language mandate standard
Healthcare patient-facing<= 6Low health literacy is common
Legal terms of service<= 10 with plain-language summaryComplex by nature, but summary required
Technical developer docs<= 12Expert audience acceptable

Quick-Estimate Method (when full computation is impractical)

Flag content for reading level review when:

  • Any single sentence exceeds 35 words
  • More than 30% of words exceed 3 syllables in a paragraph
  • 3 or more Latin abbreviations in a single page ("i.e.", "e.g.", "et al.", "viz.")

Timeout Warning Requirements (2.2.1)

Detection Pattern

  1. Identify any page or application state with session persistence (authenticated areas, multi-step forms with temporary state)
  2. Check for: activity monitoring, session expiry timers, auto-logout functionality
  3. Verify warning mechanism exists when found

Compliant Implementation Pattern

// PASS: Session warning with extension option
const SESSION_TIMEOUT_MS = 15 * 60 * 1000; // 15 minutes
const WARNING_BEFORE_MS = 2 * 60 * 1000;   // Warn 2 minutes before

let warningShown = false;

sessionTimer = setTimeout(() => {
  if (!warningShown) {
    warningShown = true;
    showSessionWarning({
      message: "Your session will expire in 2 minutes due to inactivity.",
      extendLabel: "Stay signed in",
      logoutLabel: "Sign out now",
      onExtend: () => { resetTimer(); warningShown = false; },
      onLogout: () => endSession()
    });
  }
}, SESSION_TIMEOUT_MS - WARNING_BEFORE_MS);

ARIA for Session Warning

<div role="alertdialog" aria-modal="true" aria-labelledby="session-title" aria-describedby="session-desc">
  <h2 id="session-title">Session expiring</h2>
  <p id="session-desc">Your session will expire in <span id="session-countdown">2:00</span> minutes.</p>
  <button type="button" id="extend-btn" autofocus>Stay signed in</button>
  <button type="button">Sign out</button>
</div>

COGA Guidance Mapping

Making Content Usable - Key Objectives

From the W3C COGA "Making Content Usable for People with Cognitive and Learning Disabilities" guidance:

ObjectiveWhat to CheckSeverity
Use a clear and understandable writing styleReading level, plain language, sentence structureHigh
Avoid creating excessive cognitive loadStep count in forms, memory demands, auto-advancing contentHigh
Provide reminders and feedbackConfirmation messages, progress indicators ("Step 2 of 4"), success confirmationMedium
Help users avoid mistakes and recover from themValidation before submit, undo capability, confirm destructive actionsHigh
Make forms easy to fill outPre-populate known data, stepwise format, visible format hintsHigh
Use a consistent and predictable layoutNavigation location, interactive element behavior, icon consistencyMedium
Use familiar icons and symbolsStandard iconography, labeled icons, no icon-only navigationMedium
Avoid distorting a person's view of realityNo fake urgency timers, no dark patternsHigh

Severity Assessment for COGA Findings

Each finding type, with its severity and rationale.

Finding TypeSeverityRationale
3.3.8 violation (paste disabled / CAPTCHA only)CriticalCompletely blocks authentication for many users
3.3.7 violation (required re-entry of existing data)HighSignificant burden; causes abandonment
2.2.1 violation (no timeout warning)HighData loss and user confusion
Reading level > Grade 10 (non-technical)HighExcludes ~20% of adults
Error message with no correction guidanceHighUsers cannot self-recover
Poor error message tone (blame language)MediumAnxiety increase; may cause abandonment
Inconsistent terminology across same flowMediumConfusion; increased cognitive load
Missing progress indicator in multi-stepMediumUser cannot gauge effort remaining
Reading level Grade 9-10 (general content)MediumPartial barrier
Jargon without definitionLow-MediumDepends on density
Missing confirmation of successLowUncertainty about whether action completed

Integration Notes

When Used by web-accessibility-wizard

The wizard invokes cognitive-accessibility as part of Phase 3 (Forms and Input) and Phase 5 (Dynamic Content). Specifically:

  • Phase 3: delegates 3.3.7 and 3.3.8 detection + error message quality to this skill
  • Phase 5: delegates timeout warning detection to this skill

When Used Standalone

cognitive-accessibility agent loads this skill and applies the full Phase 2 + Phase 3 assessment independently. It accepts page URLs, component files, or plain text content blocks.

Handoffs from this Skill

  • Form validation specifics -> forms-specialist
  • ARIA state for error announcements -> aria-specialist
  • Live region for timeout warnings -> live-region-controller
  • WCAG criterion explanations -> wcag-guide
Saved skills