Back to home@omdsh-dev

dsh-accessibility

Screen-reader guidance and in-app accessibility diagnostics for DeepSeek Harness

Stars
0
Language
TypeScript
Created
Aug 25, 2026
Updated
Aug 26, 2026

Introduction

@oh-my-dsh/dsh-accessibility

English | 简体中文

An optional DeepSeek Harness companion that adds a Settings page with screen-reader operating guidance and semantic diagnostics. It intentionally uses DSH slots and does not patch or observe hashed DOM classes.

Compatibility

The 0.1.0-beta.4 line targets @deepseek-ai/dsh@0.1.1-rc.2 plus the accessibility core patch tracked in upstream Discussion #4546. The companion reports missing core semantics; it cannot safely replace focus traps, composite-widget keyboard behavior, landmarks, or live-region policy from outside the owning components.

Install from npm

dsh plugin --profile web add @oh-my-dsh/dsh-accessibility@0.1.0-beta.4
dsh --profile web

The npm companion does not patch the owning DSH components. Until the changes are included in an official DSH release, use the organization-pinned DSH accessibility build for the complete keyboard and screen-reader behavior:

git clone https://github.com/omdsh-dev/deepseek-harness.git
cd deepseek-harness
git checkout dsh-v0.1.1-rc.2-a11y.3
pnpm install
pnpm run build:official
pnpm dsh plugin --profile web add @oh-my-dsh/dsh-accessibility@0.1.0-beta.4
pnpm dsh web

Install from a checkout

pnpm install
pnpm run build
dsh plugin --profile web add file:.
dsh --profile web

Open Settings → Accessibility to run the current-page diagnostic and read the VoiceOver/NVDA/JAWS quick guide.

Diagnostics and scope

The page audit now runs 14 structural checks covering landmarks, control names, image alternatives, ARIA references, composer and log names, menus, listboxes, trees, radio groups, tab lists, dialogs, and adjustable separators. It recognizes the single-tab-stop/active-descendant patterns used by the patched DSH components and ignores static menu separators.

A passing result means that the mounted DOM satisfies these deterministic contracts. It is evidence, not a claim of complete conformance: it cannot prove spoken output, browser/accessibility-API mappings, focus timing, or Windows screen-reader behavior. Those still require the manual VoiceOver/NVDA/JAWS scenarios in the in-app guide.

See ACCESSIBILITY.md for the assistive-technology matrix, manual regression protocol, and support boundary.

Checks

pnpm run typecheck
pnpm test
pnpm run build
pnpm pack --pack-destination ./artifacts

Model Experience

This package adds no model-visible tools, prompts, messages, or context. It changes only the local Web UI settings surface.

Security and privacy

Diagnostics inspect the current document's semantic attributes in memory. They do not read conversation text, make network requests, or persist results.