a11y-devkit-deploy 0.5.0 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +117 -105
- package/bin/a11y-skills.js +8 -8
- package/config/a11y.json +60 -46
- package/package.json +49 -49
- package/src/cli.js +149 -162
- package/src/installers/mcp.js +54 -54
- package/src/installers/skills.js +109 -30
- package/src/paths.js +82 -82
- package/src/ui.js +56 -56
- package/src/installers/repo.js +0 -55
package/README.md
CHANGED
|
@@ -1,105 +1,117 @@
|
|
|
1
|
-
# A11y Devkit Deploy
|
|
2
|
-
|
|
3
|
-
A cross-platform CLI for deploying accessibility skills and MCP servers across Claude Code, Cursor, Codex, and VSCode.
|
|
4
|
-
|
|
5
|
-
## Install
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
npm install -g a11y-devkit-deploy
|
|
9
|
-
# or
|
|
10
|
-
npx a11y-devkit-deploy
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
## Usage
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
a11y-devkit-deploy
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
### Flags
|
|
20
|
-
|
|
21
|
-
- `--local` / `--global`: Skip the scope prompt.
|
|
22
|
-
- `--yes`: Use defaults (local scope, all IDEs, install skills).
|
|
23
|
-
|
|
24
|
-
## What It Does
|
|
25
|
-
|
|
26
|
-
This CLI automates the setup of accessibility tooling by:
|
|
27
|
-
|
|
28
|
-
1. **
|
|
29
|
-
2. **
|
|
30
|
-
|
|
31
|
-
- **
|
|
32
|
-
- **
|
|
33
|
-
- **
|
|
34
|
-
- **
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
-
|
|
43
|
-
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
1
|
+
# A11y Devkit Deploy
|
|
2
|
+
|
|
3
|
+
A cross-platform CLI for deploying accessibility skills and MCP servers across Claude Code, Cursor, Codex, and VSCode.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install -g a11y-devkit-deploy
|
|
9
|
+
# or
|
|
10
|
+
npx a11y-devkit-deploy
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Usage
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
a11y-devkit-deploy
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
### Flags
|
|
20
|
+
|
|
21
|
+
- `--local` / `--global`: Skip the scope prompt.
|
|
22
|
+
- `--yes`: Use defaults (local scope, all IDEs, install skills).
|
|
23
|
+
|
|
24
|
+
## What It Does
|
|
25
|
+
|
|
26
|
+
This CLI automates the setup of accessibility tooling by:
|
|
27
|
+
|
|
28
|
+
1. **Installing skills from npm** - Downloads and installs 7 accessibility skill packages
|
|
29
|
+
2. **Configuring MCP servers** - Updates each IDE's MCP config to enable 5 accessibility-focused MCP servers:
|
|
30
|
+
- **wcag** - WCAG 2.2 guidelines, success criteria, and techniques
|
|
31
|
+
- **aria** - WAI-ARIA roles, states, properties, and patterns
|
|
32
|
+
- **magentaa11y** - Component accessibility acceptance criteria
|
|
33
|
+
- **a11y-personas** - Accessibility personas for diverse user needs
|
|
34
|
+
- **arc-issues** - Format AxeCore violations into standardized issue templates
|
|
35
|
+
|
|
36
|
+
### Skills Installed
|
|
37
|
+
|
|
38
|
+
The following skill packages are installed from npm:
|
|
39
|
+
|
|
40
|
+
| Skill | Package | Description |
|
|
41
|
+
|-------|---------|-------------|
|
|
42
|
+
| a11y-base-web | `a11y-base-web-skill` | Foundational accessibility patterns for web code |
|
|
43
|
+
| a11y-issue-writer | `a11y-issue-writer-skill` | Write clear accessibility issue reports |
|
|
44
|
+
| a11y-tester | `a11y-tester-skill` | Automated testing with axe-core and Playwright |
|
|
45
|
+
| a11y-remediator | `a11y-remediator-skill` | Fix accessibility issues in code |
|
|
46
|
+
| a11y-validator | `a11y-validator-skill` | Validate accessibility compliance |
|
|
47
|
+
| web-standards | `web-standards-skill` | Web standards and best practices |
|
|
48
|
+
| a11y-audit-fix-agent-orchestrator | `a11y-audit-fix-agent-orchestrator-skill` | Orchestrate full audit and fix workflows |
|
|
49
|
+
|
|
50
|
+
### No Local MCP Installation Required!
|
|
51
|
+
|
|
52
|
+
MCP servers are configured to use `npx`, which means:
|
|
53
|
+
- **No cloning** of MCP server repositories
|
|
54
|
+
- **No building** or `npm install` steps
|
|
55
|
+
- **No disk space** used for local copies
|
|
56
|
+
- **Always up-to-date** - npx fetches the latest version automatically
|
|
57
|
+
|
|
58
|
+
The generated MCP config looks like this:
|
|
59
|
+
|
|
60
|
+
```json
|
|
61
|
+
{
|
|
62
|
+
"mcpServers": {
|
|
63
|
+
"wcag": {
|
|
64
|
+
"command": "npx",
|
|
65
|
+
"args": ["-y", "wcag-mcp"]
|
|
66
|
+
},
|
|
67
|
+
"aria": {
|
|
68
|
+
"command": "npx",
|
|
69
|
+
"args": ["-y", "aria-mcp"]
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Configuration
|
|
76
|
+
|
|
77
|
+
Edit `config/a11y.json` to customize the deployment:
|
|
78
|
+
|
|
79
|
+
- `skills` - Array of npm package names to install as skills
|
|
80
|
+
- `ideSkillsPaths` - IDE-specific skills directories (configurable per IDE)
|
|
81
|
+
- `mcpServers` - MCP server definitions using npx
|
|
82
|
+
|
|
83
|
+
## Directory Structure
|
|
84
|
+
|
|
85
|
+
### Local Install (Project-Specific)
|
|
86
|
+
```
|
|
87
|
+
your-project/
|
|
88
|
+
├── .claude/skills/ # Skills copied to Claude Code (if selected)
|
|
89
|
+
├── .cursor/skills/ # Skills copied to Cursor (if selected)
|
|
90
|
+
├── .codex/skills/ # Skills copied to Codex (if selected)
|
|
91
|
+
└── .github/skills/ # Skills copied here for version control
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Global Install (User-Wide)
|
|
95
|
+
```
|
|
96
|
+
~/.claude/skills/ # Claude Code skills
|
|
97
|
+
~/.cursor/skills/ # Cursor skills
|
|
98
|
+
~/.codex/skills/ # Codex skills
|
|
99
|
+
~/.vscode/skills/ # VSCode skills
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### MCP Configuration Locations
|
|
103
|
+
|
|
104
|
+
MCP configurations are written to each IDE's OS-specific config path:
|
|
105
|
+
- **macOS**: `~/Library/Application Support/{IDE}/mcp.json`
|
|
106
|
+
- **Windows**: `%APPDATA%\{IDE}\mcp.json`
|
|
107
|
+
- **Linux**: `~/.config/{IDE}/mcp.json`
|
|
108
|
+
|
|
109
|
+
## MCP Servers Included
|
|
110
|
+
|
|
111
|
+
| Server | Package | Description |
|
|
112
|
+
|--------|---------|-------------|
|
|
113
|
+
| wcag | `wcag-mcp` | WCAG 2.2 guidelines, success criteria, techniques |
|
|
114
|
+
| aria | `aria-mcp` | WAI-ARIA roles, states, properties |
|
|
115
|
+
| magentaa11y | `magentaa11y-mcp` | Component accessibility acceptance criteria |
|
|
116
|
+
| a11y-personas | `a11y-personas-mcp` | Accessibility personas for diverse users |
|
|
117
|
+
| arc-issues | `arc-issues-mcp` | AxeCore violation formatting |
|
package/bin/a11y-skills.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
import { run } from "../src/cli.js";
|
|
4
|
-
|
|
5
|
-
run().catch((error) => {
|
|
6
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
7
|
-
console.error(`\n[Error] ${message}`);
|
|
8
|
-
process.exitCode = 1;
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import { run } from "../src/cli.js";
|
|
4
|
+
|
|
5
|
+
run().catch((error) => {
|
|
6
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
7
|
+
console.error(`\n[Error] ${message}`);
|
|
8
|
+
process.exitCode = 1;
|
|
9
9
|
});
|
package/config/a11y.json
CHANGED
|
@@ -1,46 +1,60 @@
|
|
|
1
|
-
{
|
|
2
|
-
"
|
|
3
|
-
"
|
|
4
|
-
"
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
"
|
|
8
|
-
"
|
|
9
|
-
"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
"
|
|
22
|
-
"
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
"
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
"name": "
|
|
37
|
-
"command": "npx",
|
|
38
|
-
"args": [
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
1
|
+
{
|
|
2
|
+
"skills": [
|
|
3
|
+
"a11y-base-web-skill",
|
|
4
|
+
"a11y-issue-writer-skill",
|
|
5
|
+
"a11y-tester-skill",
|
|
6
|
+
"a11y-remediator-skill",
|
|
7
|
+
"a11y-validator-skill",
|
|
8
|
+
"web-standards-skill",
|
|
9
|
+
"a11y-audit-fix-agent-orchestrator-skill"
|
|
10
|
+
],
|
|
11
|
+
"ideSkillsPaths": {
|
|
12
|
+
"claude": ".claude/skills",
|
|
13
|
+
"cursor": ".cursor/skills",
|
|
14
|
+
"codex": ".codex/skills",
|
|
15
|
+
"vscode": ".github/skills",
|
|
16
|
+
"local": ".github/skills"
|
|
17
|
+
},
|
|
18
|
+
"mcpServers": [
|
|
19
|
+
{
|
|
20
|
+
"name": "wcag",
|
|
21
|
+
"command": "npx",
|
|
22
|
+
"args": [
|
|
23
|
+
"-y",
|
|
24
|
+
"wcag-mcp"
|
|
25
|
+
]
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"name": "aria",
|
|
29
|
+
"command": "npx",
|
|
30
|
+
"args": [
|
|
31
|
+
"-y",
|
|
32
|
+
"aria-mcp"
|
|
33
|
+
]
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"name": "magentaa11y",
|
|
37
|
+
"command": "npx",
|
|
38
|
+
"args": [
|
|
39
|
+
"-y",
|
|
40
|
+
"magentaa11y-mcp"
|
|
41
|
+
]
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"name": "a11y-personas",
|
|
45
|
+
"command": "npx",
|
|
46
|
+
"args": [
|
|
47
|
+
"-y",
|
|
48
|
+
"a11y-personas-mcp"
|
|
49
|
+
]
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"name": "arc-issues",
|
|
53
|
+
"command": "npx",
|
|
54
|
+
"args": [
|
|
55
|
+
"-y",
|
|
56
|
+
"arc-issues-mcp"
|
|
57
|
+
]
|
|
58
|
+
}
|
|
59
|
+
]
|
|
60
|
+
}
|
package/package.json
CHANGED
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "a11y-devkit-deploy",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "CLI to deploy a11y skills and MCP servers across IDEs",
|
|
5
|
-
"license": "MIT",
|
|
6
|
-
"type": "module",
|
|
7
|
-
"main": "src/cli.js",
|
|
8
|
-
"bin": {
|
|
9
|
-
"a11y-devkit-deploy": "bin/a11y-skills.js"
|
|
10
|
-
},
|
|
11
|
-
"files": [
|
|
12
|
-
"bin",
|
|
13
|
-
"src",
|
|
14
|
-
"config",
|
|
15
|
-
"README.md"
|
|
16
|
-
],
|
|
17
|
-
"keywords": [
|
|
18
|
-
"accessibility",
|
|
19
|
-
"a11y",
|
|
20
|
-
"mcp",
|
|
21
|
-
"model-context-protocol",
|
|
22
|
-
"copilot",
|
|
23
|
-
"skills",
|
|
24
|
-
"wcag",
|
|
25
|
-
"aria",
|
|
26
|
-
"cli"
|
|
27
|
-
],
|
|
28
|
-
"repository": {
|
|
29
|
-
"type": "git",
|
|
30
|
-
"url": "https://github.com/joe-watkins/a11y-devkit.git"
|
|
31
|
-
},
|
|
32
|
-
"bugs": {
|
|
33
|
-
"url": "https://github.com/joe-watkins/a11y-devkit/issues"
|
|
34
|
-
},
|
|
35
|
-
"homepage": "https://github.com/joe-watkins/a11y-devkit#readme",
|
|
36
|
-
"author": "Joe Watkins",
|
|
37
|
-
"engines": {
|
|
38
|
-
"node": ">=18"
|
|
39
|
-
},
|
|
40
|
-
"scripts": {
|
|
41
|
-
"start": "node bin/a11y-skills.js"
|
|
42
|
-
},
|
|
43
|
-
"dependencies": {
|
|
44
|
-
"boxen": "^5.1.2",
|
|
45
|
-
"ora": "^6.3.1",
|
|
46
|
-
"picocolors": "^1.1.0",
|
|
47
|
-
"prompts": "^2.4.2"
|
|
48
|
-
}
|
|
49
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "a11y-devkit-deploy",
|
|
3
|
+
"version": "0.6.1",
|
|
4
|
+
"description": "CLI to deploy a11y skills and MCP servers across IDEs",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "src/cli.js",
|
|
8
|
+
"bin": {
|
|
9
|
+
"a11y-devkit-deploy": "bin/a11y-skills.js"
|
|
10
|
+
},
|
|
11
|
+
"files": [
|
|
12
|
+
"bin",
|
|
13
|
+
"src",
|
|
14
|
+
"config",
|
|
15
|
+
"README.md"
|
|
16
|
+
],
|
|
17
|
+
"keywords": [
|
|
18
|
+
"accessibility",
|
|
19
|
+
"a11y",
|
|
20
|
+
"mcp",
|
|
21
|
+
"model-context-protocol",
|
|
22
|
+
"copilot",
|
|
23
|
+
"skills",
|
|
24
|
+
"wcag",
|
|
25
|
+
"aria",
|
|
26
|
+
"cli"
|
|
27
|
+
],
|
|
28
|
+
"repository": {
|
|
29
|
+
"type": "git",
|
|
30
|
+
"url": "https://github.com/joe-watkins/a11y-devkit.git"
|
|
31
|
+
},
|
|
32
|
+
"bugs": {
|
|
33
|
+
"url": "https://github.com/joe-watkins/a11y-devkit/issues"
|
|
34
|
+
},
|
|
35
|
+
"homepage": "https://github.com/joe-watkins/a11y-devkit#readme",
|
|
36
|
+
"author": "Joe Watkins",
|
|
37
|
+
"engines": {
|
|
38
|
+
"node": ">=18"
|
|
39
|
+
},
|
|
40
|
+
"scripts": {
|
|
41
|
+
"start": "node bin/a11y-skills.js"
|
|
42
|
+
},
|
|
43
|
+
"dependencies": {
|
|
44
|
+
"boxen": "^5.1.2",
|
|
45
|
+
"ora": "^6.3.1",
|
|
46
|
+
"picocolors": "^1.1.0",
|
|
47
|
+
"prompts": "^2.4.2"
|
|
48
|
+
}
|
|
49
|
+
}
|