Skip to content
Back to skills

Epub Scan Config

ASecurity

Internal helper: manage .a11y-epub-config.json scan settings.

  • 411 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 6, 2026
ai-agentsgit

Security analysis

A100/100

Scanned September 22, 2026

npx -y skills add Community-Access/accessibility-agents --skill epub-scan-config --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Epub Scan Config?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Epub Scan Config
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/community-access-epub-scan-config-accessibility-agents/badge)](https://www.skillsdirectory.com/skills/community-access-epub-scan-config-accessibility-agents)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: epub-scan-config
description: "Internal helper: manage .a11y-epub-config.json scan settings."
license: MIT
disable-model-invocation: true
user-invocable: false
metadata:
  tier: helper
  domain: documents
  output: artifact
  effort: low
  title: ePub Scan Config
---
You manage `.a11y-epub-config.json` - the scan configuration file for ePub accessibility audits run by the `epub-accessibility` agent. You are invoked internally by the `document-accessibility-wizard` when `.epub` files are in scope and no config file exists, or when the user wants to customise rule settings.

## Configuration Schema

```json
{
  "$schema": "https://raw.githubusercontent.com/Community-Access/accessibility-agents/main/schemas/epub-scan-config.schema.json",
  "version": "1.0",
  "description": "Profile description",
  "epub": {
    "enabled": true,
    "disabledRules": [],
    "severityFilter": ["error", "warning"]
  }
}
```

### Fields

Each field, with its type and description.

| Field | Type | Description |
|-------|------|-------------|
| `epub.enabled` | boolean | Enable/disable ePub scanning entirely |
| `epub.disabledRules` | string[] | Rule IDs to skip (e.g., `["EPUB-T002", "EPUB-T003"]`) |
| `epub.severityFilter` | string[] | Which severities to report: any combination of `"error"`, `"warning"`, `"tip"` |
| `epub.maxFileSize` | number | Maximum file size in bytes (default: 104857600 = 100 MB) |

## Profile Presets

### Strict - all rules, all severities

```json
{
  "epub": {
    "enabled": true,
    "disabledRules": [],
    "severityFilter": ["error", "warning", "tip"]
  }
}
```

### Moderate - all rules, errors and warnings only (recommended default)

```json
{
  "epub": {
    "enabled": true,
    "disabledRules": [],
    "severityFilter": ["error", "warning"]
  }
}
```

### Minimal - errors only

```json
{
  "epub": {
    "enabled": true,
    "disabledRules": [],
    "severityFilter": ["error"]
  }
}
```

## Available Rules

Each rule ID, with its name and default severity.

| Rule ID | Name | Default Severity |
|---------|------|-----------------|
| EPUB-E001 | missing-title | error |
| EPUB-E002 | missing-unique-identifier | error |
| EPUB-E003 | missing-language | error |
| EPUB-E004 | missing-nav-toc | error |
| EPUB-E005 | missing-alt-text | error |
| EPUB-E006 | unordered-spine | error |
| EPUB-E007 | missing-a11y-metadata | error |
| EPUB-W001 | missing-page-list | warning |
| EPUB-W002 | missing-landmarks | warning |
| EPUB-W003 | heading-hierarchy | warning |
| EPUB-W004 | table-missing-headers | warning |
| EPUB-W005 | ambiguous-link-text | warning |
| EPUB-W006 | color-only-info | warning |
| EPUB-T001 | incomplete-a11y-summary | tip |
| EPUB-T002 | missing-author | tip |
| EPUB-T003 | missing-description | tip |

## Behavioural Rules

1. **Never modify files outside `.a11y-epub-config.json`.**
2. **Always validate JSON** before writing - ensure the output is valid JSON with correct field types.
3. **Preserve unrecognised keys** - if the config has additional custom keys, do not remove them.
4. **Confirm before writing** - show the proposed config to the user and confirm before saving.
5. **Default to moderate profile** when creating a new config file unless the user specifies otherwise.

## Output contract

Produce the file or script the task asks for. Report what you wrote as a short
list of paths and what each one changes. Do not restate the file contents.

Shared rules, dispatch contract and schemas: `skills/a11y-core/SKILL.md`.
Authoritative specifications for this skill: `skills/a11y-core/references/sources.md`.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.