claude-plugin-wordpress-manager 1.4.0 → 1.7.0
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/.claude-plugin/plugin.json +7 -3
- package/CHANGELOG.md +111 -0
- package/README.md +10 -3
- package/agents/wp-accessibility-auditor.md +206 -0
- package/agents/wp-content-strategist.md +18 -0
- package/agents/wp-deployment-engineer.md +34 -2
- package/agents/wp-performance-optimizer.md +12 -0
- package/agents/wp-security-auditor.md +20 -0
- package/agents/wp-security-hardener.md +266 -0
- package/agents/wp-site-manager.md +14 -0
- package/agents/wp-test-engineer.md +207 -0
- package/docs/GUIDE.md +68 -15
- package/docs/guides/INDEX.md +46 -0
- package/docs/guides/wp-blog.md +590 -0
- package/docs/guides/wp-design-system.md +976 -0
- package/docs/guides/wp-ecommerce.md +786 -0
- package/docs/guides/wp-landing-page.md +762 -0
- package/docs/guides/wp-portfolio.md +713 -0
- package/docs/plans/2026-02-27-design-system-guide-design.md +30 -0
- package/docs/plans/2026-02-27-local-dev-tools-assessment.md +332 -0
- package/docs/plans/2026-02-27-local-env-design.md +179 -0
- package/docs/plans/2026-02-27-site-type-guides-design.md +44 -0
- package/package.json +7 -3
- package/skills/wordpress-router/SKILL.md +25 -5
- package/skills/wordpress-router/references/decision-tree.md +59 -3
- package/skills/wp-accessibility/SKILL.md +170 -0
- package/skills/wp-accessibility/references/a11y-audit-tools.md +248 -0
- package/skills/wp-accessibility/references/a11y-testing.md +222 -0
- package/skills/wp-accessibility/references/block-a11y.md +247 -0
- package/skills/wp-accessibility/references/interactive-a11y.md +272 -0
- package/skills/wp-accessibility/references/media-a11y.md +254 -0
- package/skills/wp-accessibility/references/theme-a11y.md +309 -0
- package/skills/wp-audit/SKILL.md +4 -0
- package/skills/wp-block-development/SKILL.md +5 -0
- package/skills/wp-block-themes/SKILL.md +4 -0
- package/skills/wp-deploy/SKILL.md +12 -0
- package/skills/wp-e2e-testing/SKILL.md +186 -0
- package/skills/wp-e2e-testing/references/ci-integration.md +174 -0
- package/skills/wp-e2e-testing/references/jest-wordpress.md +114 -0
- package/skills/wp-e2e-testing/references/phpunit-wordpress.md +141 -0
- package/skills/wp-e2e-testing/references/playwright-wordpress.md +108 -0
- package/skills/wp-e2e-testing/references/test-data-generation.md +127 -0
- package/skills/wp-e2e-testing/references/visual-regression.md +107 -0
- package/skills/wp-e2e-testing/references/wp-env-setup.md +97 -0
- package/skills/wp-e2e-testing/scripts/test_inspect.mjs +375 -0
- package/skills/wp-headless/SKILL.md +168 -0
- package/skills/wp-headless/references/api-layer-choice.md +160 -0
- package/skills/wp-headless/references/cors-config.md +245 -0
- package/skills/wp-headless/references/frontend-integration.md +331 -0
- package/skills/wp-headless/references/headless-auth.md +286 -0
- package/skills/wp-headless/references/webhooks.md +277 -0
- package/skills/wp-headless/references/wpgraphql.md +331 -0
- package/skills/wp-headless/scripts/headless_inspect.mjs +321 -0
- package/skills/wp-i18n/SKILL.md +170 -0
- package/skills/wp-i18n/references/js-i18n.md +201 -0
- package/skills/wp-i18n/references/multilingual-setup.md +219 -0
- package/skills/wp-i18n/references/php-i18n.md +196 -0
- package/skills/wp-i18n/references/rtl-support.md +206 -0
- package/skills/wp-i18n/references/translation-workflow.md +178 -0
- package/skills/wp-i18n/references/wpcli-i18n.md +177 -0
- package/skills/wp-i18n/scripts/i18n_inspect.mjs +330 -0
- package/skills/wp-interactivity-api/SKILL.md +4 -0
- package/skills/wp-local-env/SKILL.md +233 -0
- package/skills/wp-local-env/references/localwp-adapter.md +156 -0
- package/skills/wp-local-env/references/mcp-adapter-setup.md +153 -0
- package/skills/wp-local-env/references/studio-adapter.md +127 -0
- package/skills/wp-local-env/references/wpenv-adapter.md +121 -0
- package/skills/wp-local-env/scripts/detect_local_env.mjs +404 -0
- package/skills/wp-playground/SKILL.md +13 -1
- package/skills/wp-plugin-development/SKILL.md +6 -0
- package/skills/wp-rest-api/SKILL.md +4 -0
- package/skills/wp-security/SKILL.md +179 -0
- package/skills/wp-security/references/api-restriction.md +147 -0
- package/skills/wp-security/references/authentication-hardening.md +105 -0
- package/skills/wp-security/references/filesystem-hardening.md +105 -0
- package/skills/wp-security/references/http-headers.md +105 -0
- package/skills/wp-security/references/incident-response.md +144 -0
- package/skills/wp-security/references/user-capabilities.md +115 -0
- package/skills/wp-security/references/wp-config-security.md +129 -0
- package/skills/wp-security/scripts/security_inspect.mjs +393 -0
- package/skills/wp-wpcli-and-ops/SKILL.md +6 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "wordpress-manager",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "Unified WordPress management plugin for Claude Code. Orchestrates Hostinger MCP (infrastructure), WP REST API bridge (content), and WordPress.com MCP (hosted sites) with specialized agents, skills, and security hooks for multi-site WordPress operations.",
|
|
3
|
+
"version": "1.7.0",
|
|
4
|
+
"description": "Unified WordPress management plugin for Claude Code. Orchestrates Hostinger MCP (infrastructure), WP REST API bridge (content), and WordPress.com MCP (hosted sites) with 8 specialized agents, 24 skills, and security hooks for multi-site WordPress operations. Includes local dev environment support for WordPress Studio, LocalWP, and wp-env. Covers development, testing, security, i18n, accessibility, headless, and operations.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "vinmor",
|
|
7
7
|
"email": "morreale.v@gmail.com"
|
|
@@ -13,7 +13,11 @@
|
|
|
13
13
|
"mcp",
|
|
14
14
|
"deployment",
|
|
15
15
|
"cms",
|
|
16
|
-
"multi-site"
|
|
16
|
+
"multi-site",
|
|
17
|
+
"local-development",
|
|
18
|
+
"wordpress-studio",
|
|
19
|
+
"localwp",
|
|
20
|
+
"wp-env"
|
|
17
21
|
],
|
|
18
22
|
"mcpServers": "./.mcp.json"
|
|
19
23
|
}
|
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,117 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to the WordPress Manager plugin for Claude Code.
|
|
4
4
|
|
|
5
|
+
## [1.7.0] - 2026-02-28
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
- **`wp-test-engineer` agent** — WordPress testing specialist
|
|
9
|
+
- Executes Playwright E2E, Jest unit, PHPUnit integration tests
|
|
10
|
+
- Test environment setup (wp-env, dependency installation)
|
|
11
|
+
- Failure debugging with trace/screenshot analysis
|
|
12
|
+
- Coverage report generation and CI integration
|
|
13
|
+
- Pairs with `wp-e2e-testing` skill
|
|
14
|
+
|
|
15
|
+
- **`wp-security-hardener` agent** — Security hardening and incident response
|
|
16
|
+
- Implements filesystem hardening, HTTP security headers, authentication hardening
|
|
17
|
+
- REST API restriction with namespace whitelisting
|
|
18
|
+
- 5-phase incident response: containment → investigation → remediation → recovery → post-incident
|
|
19
|
+
- Handoff protocol: receives findings from `wp-security-auditor`, returns remediation report
|
|
20
|
+
- Pairs with `wp-security` skill
|
|
21
|
+
|
|
22
|
+
- **`wp-accessibility-auditor` agent** — WCAG 2.2 AA compliance auditor
|
|
23
|
+
- Automated scanning via axe-core, pa11y, Lighthouse
|
|
24
|
+
- Code review for ARIA patterns, heading hierarchy, form labels, landmarks
|
|
25
|
+
- Keyboard navigation assessment and theme compliance check
|
|
26
|
+
- Block editor accessibility verification
|
|
27
|
+
- Read-only (audit only, no code modifications)
|
|
28
|
+
- Pairs with `wp-accessibility` skill
|
|
29
|
+
|
|
30
|
+
### Changed
|
|
31
|
+
- **`wp-deployment-engineer`** upgraded (★★★ → ★★★★)
|
|
32
|
+
- Added WP REST Bridge tools for post-deploy verification
|
|
33
|
+
- Added Method 4: Deploy from Local Environment (Studio/LocalWP/wp-env export)
|
|
34
|
+
- Added cross-references to `wp-local-env` and `wp-deploy` skills
|
|
35
|
+
- Added WebSearch to tools list
|
|
36
|
+
|
|
37
|
+
- **`wp-security-auditor`** upgraded
|
|
38
|
+
- Added "Handoff to Remediation" section linking to `wp-security-hardener`
|
|
39
|
+
- Added `security_inspect.mjs` quick pre-scan instructions
|
|
40
|
+
- Added cross-references to `wp-security` and `wp-audit` skills
|
|
41
|
+
|
|
42
|
+
- **`wp-performance-optimizer`** upgraded
|
|
43
|
+
- Added MCP tool separation clarification (WP REST Bridge vs Hostinger MCP)
|
|
44
|
+
- Added cross-references to `wp-performance` and `wp-audit` skills
|
|
45
|
+
|
|
46
|
+
- **`wp-content-strategist`** upgraded
|
|
47
|
+
- Added Multilingual Content section with `wp-i18n` cross-reference
|
|
48
|
+
- Added text domain usage guidance for translatable content
|
|
49
|
+
|
|
50
|
+
- **`wp-site-manager`** upgraded
|
|
51
|
+
- Added Specialized Agents delegation table (all 8 agents referenced)
|
|
52
|
+
|
|
53
|
+
- **Router decision-tree.md** — added agent references for testing, security hardening, and accessibility routes
|
|
54
|
+
- **Skill cross-references** — added "Recommended Agent" to `wp-e2e-testing`, `wp-security`, `wp-accessibility` SKILL.md files
|
|
55
|
+
- Version bumps: plugin.json + package.json → 1.7.0 (24 skills, 8 agents)
|
|
56
|
+
|
|
57
|
+
## [1.6.0] - 2026-02-28
|
|
58
|
+
|
|
59
|
+
### Added
|
|
60
|
+
- **`wp-e2e-testing` skill** — WordPress testing strategy and tooling
|
|
61
|
+
- 7 reference files: wp-env-setup, playwright-wordpress, jest-wordpress, phpunit-wordpress, visual-regression, test-data-generation, ci-integration
|
|
62
|
+
- Detection script (`test_inspect.mjs`) — detects Playwright, Jest, PHPUnit, wp-env, CI config
|
|
63
|
+
- Covers test strategy by project kind, E2E/unit/integration testing, visual regression, CI pipelines
|
|
64
|
+
|
|
65
|
+
- **`wp-security` skill** — WordPress security hardening and incident response
|
|
66
|
+
- 7 reference files: filesystem-hardening, http-headers, authentication-hardening, api-restriction, user-capabilities, wp-config-security, incident-response
|
|
67
|
+
- Detection script (`security_inspect.mjs`) — scans wp-config constants, file permissions, .htaccess, security plugins
|
|
68
|
+
- 5-phase incident response procedure: containment → investigation → remediation → recovery → post-incident
|
|
69
|
+
|
|
70
|
+
- **`wp-i18n` skill** — WordPress internationalization and localization
|
|
71
|
+
- 6 reference files: php-i18n, js-i18n, translation-workflow, wpcli-i18n, rtl-support, multilingual-setup
|
|
72
|
+
- Detection script (`i18n_inspect.mjs`) — detects text domain, .pot/.po/.mo files, i18n function usage
|
|
73
|
+
- Covers PHP gettext, @wordpress/i18n for JS, .pot/.po/.mo/.json workflow, RTL support, WPML/Polylang
|
|
74
|
+
|
|
75
|
+
- **`wp-accessibility` skill** — WordPress WCAG 2.2 accessibility compliance
|
|
76
|
+
- 6 reference files: block-a11y, theme-a11y, interactive-a11y, media-a11y, a11y-audit-tools, a11y-testing
|
|
77
|
+
- Covers block editor a11y, theme accessibility-ready requirements, interactive patterns (APG), media a11y, automated/manual testing
|
|
78
|
+
|
|
79
|
+
- **`wp-headless` skill** — Decoupled/headless WordPress architecture
|
|
80
|
+
- 6 reference files: api-layer-choice, wpgraphql, headless-auth, cors-config, frontend-integration, webhooks
|
|
81
|
+
- Detection script (`headless_inspect.mjs`) — detects WPGraphQL, CORS config, frontend frameworks
|
|
82
|
+
- Covers REST API vs WPGraphQL decision, JWT auth, CORS, Next.js/Nuxt/Astro integration, ISR, content webhooks
|
|
83
|
+
|
|
84
|
+
### Changed
|
|
85
|
+
- **Router upgraded to v4** — added keyword routing for 5 new skills
|
|
86
|
+
- Development routing: wp-e2e-testing, wp-i18n, wp-accessibility, wp-headless
|
|
87
|
+
- Operations routing: wp-security (hardening and incident response)
|
|
88
|
+
- **Cross-references** added to 6 existing skills:
|
|
89
|
+
- `wp-block-development` → wp-e2e-testing, wp-accessibility
|
|
90
|
+
- `wp-plugin-development` → wp-e2e-testing, wp-i18n, wp-security
|
|
91
|
+
- `wp-block-themes` → wp-accessibility
|
|
92
|
+
- `wp-interactivity-api` → wp-accessibility
|
|
93
|
+
- `wp-rest-api` → wp-headless
|
|
94
|
+
- `wp-audit` → wp-security
|
|
95
|
+
- Version bumps: plugin.json + package.json → 1.6.0 (24 skills)
|
|
96
|
+
|
|
97
|
+
## [1.5.0] - 2026-02-27
|
|
98
|
+
|
|
99
|
+
### Added
|
|
100
|
+
- **`wp-local-env` skill** — Unified local WordPress development environment management
|
|
101
|
+
- Cross-platform detection script (`detect_local_env.mjs`) for Studio, LocalWP, wp-env
|
|
102
|
+
- 4 reference files: `studio-adapter.md`, `localwp-adapter.md`, `wpenv-adapter.md`, `mcp-adapter-setup.md`
|
|
103
|
+
- 8 procedure sections: detection, lifecycle, WP-CLI, symlink dev workflow, REST API, database ops, version switching, preview/share
|
|
104
|
+
- MCP Adapter integration guide (STDIO + HTTP transports)
|
|
105
|
+
|
|
106
|
+
### Changed
|
|
107
|
+
- **Router upgraded to v3** — three-category routing (development + local environment + operations)
|
|
108
|
+
- `decision-tree.md` upgraded from v2 to v3 with Step 2c for local environment routing
|
|
109
|
+
- Added local environment keywords and overlap resolution with dev/ops
|
|
110
|
+
- Added local environment guardrails
|
|
111
|
+
- **`wp-wpcli-and-ops`** — Added local environment WP-CLI invocation methods (Studio/LocalWP/wp-env)
|
|
112
|
+
- **`wp-deploy`** — Added "Deploying from Local Environment" section with export instructions
|
|
113
|
+
- **`wp-playground`** — Added comparison table with `wp-local-env` and escalation paths
|
|
114
|
+
- Version bumps: plugin.json + package.json → 1.5.0
|
|
115
|
+
|
|
5
116
|
## [1.4.0] - 2026-02-27
|
|
6
117
|
|
|
7
118
|
### Added
|
package/README.md
CHANGED
|
@@ -6,11 +6,11 @@ Unified WordPress management **and** development plugin that orchestrates multip
|
|
|
6
6
|
|
|
7
7
|
```
|
|
8
8
|
wordpress-manager/
|
|
9
|
-
├── .claude-plugin/plugin.json # Plugin manifest (v1.
|
|
9
|
+
├── .claude-plugin/plugin.json # Plugin manifest (v1.5.0)
|
|
10
10
|
├── .mcp.json # MCP server definitions
|
|
11
11
|
├── agents/ # 5 specialized agents
|
|
12
12
|
├── commands/ # 5 slash commands
|
|
13
|
-
├── skills/ #
|
|
13
|
+
├── skills/ # 19 skills (5 operational + 13 development + 1 local env)
|
|
14
14
|
├── hooks/hooks.json # 6 safety hooks (PreToolUse)
|
|
15
15
|
└── servers/wp-rest-bridge/ # Custom MCP server (TypeScript)
|
|
16
16
|
```
|
|
@@ -66,13 +66,19 @@ wordpress-manager/
|
|
|
66
66
|
| `wp-migrate` | "migrate my site", "move to Hostinger", "transfer" | hostinger-migration.md, cross-platform.md |
|
|
67
67
|
| `wp-backup` | "backup my site", "create backup", "restore" | backup-strategies.md, restore-procedures.md |
|
|
68
68
|
|
|
69
|
+
### Local Environment Skill (1) — managing local WordPress dev environments
|
|
70
|
+
|
|
71
|
+
| Skill | Purpose | Key References |
|
|
72
|
+
|-------|---------|----------------|
|
|
73
|
+
| `wp-local-env` | Unified local env management: Studio, LocalWP, wp-env detection, lifecycle, WP-CLI, symlinks, DB ops | studio-adapter.md, localwp-adapter.md, wpenv-adapter.md, mcp-adapter-setup.md |
|
|
74
|
+
|
|
69
75
|
### Development Skills (13) — building WordPress projects
|
|
70
76
|
|
|
71
77
|
Integrated from [WordPress/agent-skills](https://github.com/WordPress/agent-skills) (GPL-2.0-or-later).
|
|
72
78
|
|
|
73
79
|
| Skill | Purpose | Key References |
|
|
74
80
|
|-------|---------|----------------|
|
|
75
|
-
| `wordpress-router` | Unified router: classifies tasks (dev vs ops) and routes to correct skill/agent | decision-tree.md |
|
|
81
|
+
| `wordpress-router` | Unified router v3: classifies tasks (dev vs local env vs ops) and routes to correct skill/agent | decision-tree.md |
|
|
76
82
|
| `wp-project-triage` | Auto-detects project type (plugin, theme, block theme, core) | detect_wp_project.mjs, triage.schema.json |
|
|
77
83
|
| `wp-block-development` | Gutenberg block creation: block.json, attributes, save, edit | 10 references, list_blocks.mjs |
|
|
78
84
|
| `wp-block-themes` | Block theme development: theme.json, templates, patterns | 6 references, detect_block_themes.mjs |
|
|
@@ -206,6 +212,7 @@ npx tsc # Compile TypeScript to build/
|
|
|
206
212
|
| 1.2.0 | Phase 3 | +3 commands (audit, backup, setup), +2 skills (migrate, backup) |
|
|
207
213
|
| 1.3.0 | Phase 4 | E2E testing, utility scripts, command hooks, WordPress.com dual-mode support |
|
|
208
214
|
| 1.4.0 | Phase 5 | +13 development skills from WordPress/agent-skills community repo (blocks, themes, plugins, REST API, Interactivity API, Abilities API, WP-CLI, PHPStan, Performance, Playground, WPDS, Router, Triage) |
|
|
215
|
+
| 1.5.0 | Phase 6 | +1 local environment skill (`wp-local-env`): WordPress Studio, LocalWP, wp-env detection, unified management, router v3 |
|
|
209
216
|
|
|
210
217
|
## License
|
|
211
218
|
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: wp-accessibility-auditor
|
|
3
|
+
color: purple
|
|
4
|
+
description: |
|
|
5
|
+
Use this agent when the user needs to audit WordPress site accessibility, check WCAG 2.2 compliance, test keyboard navigation, or generate accessibility reports. This agent performs read-only audits and provides actionable remediation recommendations.
|
|
6
|
+
|
|
7
|
+
<example>
|
|
8
|
+
Context: User wants to check their WordPress theme for accessibility compliance.
|
|
9
|
+
user: "Run an accessibility audit on my opencactus.com site"
|
|
10
|
+
assistant: "I'll use the wp-accessibility-auditor agent to perform a WCAG 2.2 AA compliance audit."
|
|
11
|
+
<commentary>Accessibility audits require automated scanning, code review, and manual testing guidance.</commentary>
|
|
12
|
+
</example>
|
|
13
|
+
|
|
14
|
+
<example>
|
|
15
|
+
Context: User needs to make their theme accessibility-ready for WordPress.org.
|
|
16
|
+
user: "Does my theme meet the accessibility-ready requirements?"
|
|
17
|
+
assistant: "I'll use the wp-accessibility-auditor agent to check against WordPress accessibility-ready standards."
|
|
18
|
+
<commentary>WordPress.org accessibility-ready tag has specific requirements beyond WCAG baseline.</commentary>
|
|
19
|
+
</example>
|
|
20
|
+
|
|
21
|
+
<example>
|
|
22
|
+
Context: User has received an accessibility complaint and needs assessment.
|
|
23
|
+
user: "A user reported they can't navigate my site with a keyboard"
|
|
24
|
+
assistant: "I'll use the wp-accessibility-auditor agent to audit keyboard navigation and focus management."
|
|
25
|
+
<commentary>Keyboard accessibility issues require analyzing focus order, skip links, and interactive element markup.</commentary>
|
|
26
|
+
</example>
|
|
27
|
+
model: inherit
|
|
28
|
+
tools: Read, Grep, Glob, Bash, WebFetch, WebSearch
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
# WordPress Accessibility Auditor Agent
|
|
32
|
+
|
|
33
|
+
You are a WordPress accessibility specialist focused on WCAG 2.2 AA compliance. You perform comprehensive accessibility audits combining automated tools, code analysis, and manual testing guidance. You provide actionable remediation recommendations but do NOT modify code directly.
|
|
34
|
+
|
|
35
|
+
## Available Tools
|
|
36
|
+
|
|
37
|
+
### Bash (Automated Scanning)
|
|
38
|
+
- `npx axe-core-cli [URL]` — run axe-core automated checks
|
|
39
|
+
- `npx pa11y [URL]` — run pa11y accessibility scanner
|
|
40
|
+
- `npx lighthouse [URL] --only-categories=accessibility --output=json` — Lighthouse a11y score
|
|
41
|
+
- `npx pa11y-ci` — batch-scan multiple pages from sitemap
|
|
42
|
+
|
|
43
|
+
### WebFetch
|
|
44
|
+
- Test live page accessibility by fetching and analyzing HTML structure
|
|
45
|
+
- Check rendered page for semantic markup patterns
|
|
46
|
+
|
|
47
|
+
### Grep / Glob
|
|
48
|
+
- Scan theme/plugin code for ARIA usage patterns
|
|
49
|
+
- Find heading hierarchy issues in templates
|
|
50
|
+
- Check for missing alt text in image handling functions
|
|
51
|
+
- Locate form elements and verify label associations
|
|
52
|
+
|
|
53
|
+
### WebSearch
|
|
54
|
+
- Research WCAG 2.2 criteria and techniques
|
|
55
|
+
- Look up WordPress accessibility coding standards updates
|
|
56
|
+
|
|
57
|
+
## Procedures
|
|
58
|
+
|
|
59
|
+
### 1. Automated Scan
|
|
60
|
+
|
|
61
|
+
Run automated tools against target URL(s):
|
|
62
|
+
|
|
63
|
+
1. **axe-core scan** (most comprehensive):
|
|
64
|
+
```bash
|
|
65
|
+
npx @axe-core/cli [URL] --tags wcag2a,wcag2aa,wcag22aa
|
|
66
|
+
```
|
|
67
|
+
2. **pa11y scan** (HTML_CodeSniffer rules):
|
|
68
|
+
```bash
|
|
69
|
+
npx pa11y [URL] --standard WCAG2AA
|
|
70
|
+
```
|
|
71
|
+
3. **Lighthouse accessibility audit**:
|
|
72
|
+
```bash
|
|
73
|
+
npx lighthouse [URL] --only-categories=accessibility --output=json --chrome-flags="--headless --no-sandbox"
|
|
74
|
+
```
|
|
75
|
+
4. **Collect results**: note total violations, warnings, and their WCAG criteria
|
|
76
|
+
|
|
77
|
+
**Note**: If tools are not installed, ask user permission before installing via `npx` (which auto-downloads).
|
|
78
|
+
|
|
79
|
+
### 2. Code Review
|
|
80
|
+
|
|
81
|
+
Scan theme and plugin source code for accessibility patterns:
|
|
82
|
+
|
|
83
|
+
#### Heading Hierarchy
|
|
84
|
+
- Search for heading usage: `<h1>` through `<h6>` in templates
|
|
85
|
+
- Verify: single `<h1>` per page, no skipped heading levels
|
|
86
|
+
- Check `get_the_title()` and `the_title()` usage in context
|
|
87
|
+
|
|
88
|
+
#### Image Accessibility
|
|
89
|
+
- Search for `<img` tags — all must have `alt` attribute
|
|
90
|
+
- Check `wp_get_attachment_image()` calls for alt text parameter
|
|
91
|
+
- Verify decorative images use `alt=""`
|
|
92
|
+
- Check for images used as links (need descriptive alt text)
|
|
93
|
+
|
|
94
|
+
#### Form Labels
|
|
95
|
+
- Search for `<input>`, `<select>`, `<textarea>` elements
|
|
96
|
+
- Verify each has an associated `<label>` (via `for` attribute or wrapping)
|
|
97
|
+
- Check for `aria-label` or `aria-labelledby` as alternatives
|
|
98
|
+
- Verify required fields are programmatically indicated
|
|
99
|
+
|
|
100
|
+
#### ARIA Usage
|
|
101
|
+
- Search for `aria-*` attributes — verify correct usage
|
|
102
|
+
- Check for redundant ARIA (e.g., `role="button"` on `<button>`)
|
|
103
|
+
- Verify `aria-live` regions for dynamic content updates
|
|
104
|
+
- Check `aria-expanded`, `aria-hidden` toggle consistency
|
|
105
|
+
|
|
106
|
+
#### Landmark Regions
|
|
107
|
+
- Verify page has: `<main>`, `<nav>`, `<header>`, `<footer>`
|
|
108
|
+
- Check for `role` attributes on landmark elements
|
|
109
|
+
- Verify skip links exist and target the correct element
|
|
110
|
+
|
|
111
|
+
### 3. Keyboard Navigation Assessment
|
|
112
|
+
|
|
113
|
+
Provide manual testing instructions and code-level checks:
|
|
114
|
+
|
|
115
|
+
1. **Skip links**: verify `<a href="#main-content">Skip to content</a>` exists and works
|
|
116
|
+
2. **Focus order**: check CSS for `tabindex` values (only `0` and `-1` are acceptable)
|
|
117
|
+
3. **Focus visibility**: verify `:focus` and `:focus-visible` styles are not suppressed
|
|
118
|
+
4. **Tab traps**: check modals/dropdowns — focus must be trapped inside modals and released on close
|
|
119
|
+
5. **Interactive elements**: verify all clickable items are `<a>` or `<button>`, not `<div onclick>`
|
|
120
|
+
6. **Keyboard shortcuts**: check for keyboard event handlers (`keydown`, `keyup`) with proper key mappings
|
|
121
|
+
|
|
122
|
+
### 4. Theme Compliance
|
|
123
|
+
|
|
124
|
+
Check WordPress `accessibility-ready` tag requirements:
|
|
125
|
+
|
|
126
|
+
- [ ] Skip links present and functional
|
|
127
|
+
- [ ] Keyboard navigation works for all interactive elements
|
|
128
|
+
- [ ] Visible focus indicators on all focusable elements
|
|
129
|
+
- [ ] No heading level skips
|
|
130
|
+
- [ ] All forms have proper labels
|
|
131
|
+
- [ ] Color contrast meets WCAG AA (4.5:1 for normal text, 3:1 for large text)
|
|
132
|
+
- [ ] Content is readable at 200% zoom
|
|
133
|
+
- [ ] No content conveyed only through color
|
|
134
|
+
- [ ] Links are distinguishable from surrounding text (not only by color)
|
|
135
|
+
- [ ] Media controls are accessible
|
|
136
|
+
|
|
137
|
+
### 5. Block Editor Accessibility
|
|
138
|
+
|
|
139
|
+
For themes and plugins that provide custom blocks:
|
|
140
|
+
|
|
141
|
+
- Check block output uses semantic HTML
|
|
142
|
+
- Verify block toolbar and inspector controls are accessible
|
|
143
|
+
- Check that block placeholders have accessible labels
|
|
144
|
+
- Verify RichText components preserve heading hierarchy
|
|
145
|
+
- Check InnerBlocks usage for proper nesting semantics
|
|
146
|
+
|
|
147
|
+
## Report Format
|
|
148
|
+
|
|
149
|
+
```
|
|
150
|
+
## Accessibility Audit Report — [site-name]
|
|
151
|
+
**Date:** [date]
|
|
152
|
+
**Standard:** WCAG 2.2 Level AA
|
|
153
|
+
**Scope:** [full site / specific pages / theme only]
|
|
154
|
+
|
|
155
|
+
### Score Summary
|
|
156
|
+
- Lighthouse a11y score: XX/100
|
|
157
|
+
- Automated violations: XX (Critical: X, Serious: X, Moderate: X, Minor: X)
|
|
158
|
+
- Manual checks needed: XX items
|
|
159
|
+
|
|
160
|
+
### WCAG Conformance Matrix
|
|
161
|
+
| Principle | Level A | Level AA | Status |
|
|
162
|
+
|-----------|---------|----------|--------|
|
|
163
|
+
| Perceivable | X/Y pass | X/Y pass | ✅/⚠️/❌ |
|
|
164
|
+
| Operable | X/Y pass | X/Y pass | ✅/⚠️/❌ |
|
|
165
|
+
| Understandable | X/Y pass | X/Y pass | ✅/⚠️/❌ |
|
|
166
|
+
| Robust | X/Y pass | X/Y pass | ✅/⚠️/❌ |
|
|
167
|
+
|
|
168
|
+
### Violations by Severity
|
|
169
|
+
|
|
170
|
+
#### Critical (Blocks access for some users)
|
|
171
|
+
1. **[Issue]** — WCAG [criterion]
|
|
172
|
+
- Location: [element / page]
|
|
173
|
+
- Impact: [who is affected]
|
|
174
|
+
- Fix: [specific remediation step]
|
|
175
|
+
|
|
176
|
+
#### Serious
|
|
177
|
+
[...]
|
|
178
|
+
|
|
179
|
+
#### Moderate
|
|
180
|
+
[...]
|
|
181
|
+
|
|
182
|
+
### Keyboard Navigation Results
|
|
183
|
+
- Skip link: ✅/❌
|
|
184
|
+
- Focus visibility: ✅/❌
|
|
185
|
+
- Tab order: ✅/❌
|
|
186
|
+
- Focus traps: ✅/❌ (modal-only)
|
|
187
|
+
|
|
188
|
+
### Recommendations (Priority Order)
|
|
189
|
+
1. [Most impactful fix — affects most users]
|
|
190
|
+
2. [Second priority]
|
|
191
|
+
3. [...]
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
## Related Skills
|
|
195
|
+
|
|
196
|
+
- **`wp-accessibility` skill** — comprehensive WCAG reference files, block a11y patterns, testing procedures
|
|
197
|
+
- **`wp-block-themes` skill** — theme.json accessibility settings (color contrast, font sizes)
|
|
198
|
+
|
|
199
|
+
## Safety Rules
|
|
200
|
+
|
|
201
|
+
- NEVER modify code — this agent is read-only (audit and recommend only)
|
|
202
|
+
- NEVER dismiss automated findings without manual verification
|
|
203
|
+
- ALWAYS specify the WCAG criterion for each violation
|
|
204
|
+
- ALWAYS provide actionable fix recommendations, not just problem descriptions
|
|
205
|
+
- ALWAYS test with real URLs when available (not just code review)
|
|
206
|
+
- Report findings objectively — avoid overstating or understating severity
|
|
@@ -146,3 +146,21 @@ Excerpt: [Meta description with keyword, under 160 chars]
|
|
|
146
146
|
- NEVER overwrite existing content without showing the diff
|
|
147
147
|
- ALWAYS preserve existing SEO-optimized slugs when updating content
|
|
148
148
|
- ALWAYS check for duplicate slugs before creating new content
|
|
149
|
+
|
|
150
|
+
## Multilingual Content
|
|
151
|
+
|
|
152
|
+
When creating content for multilingual sites:
|
|
153
|
+
|
|
154
|
+
- **Coordinate with `wp-i18n` skill** for internationalization best practices
|
|
155
|
+
- For themes/plugins generating translatable content, ensure proper text domain usage:
|
|
156
|
+
- PHP: `__('text', 'text-domain')`, `_e('text', 'text-domain')`
|
|
157
|
+
- JS: `__('text', 'text-domain')` via `@wordpress/i18n`
|
|
158
|
+
- For multilingual plugin setups (WPML, Polylang):
|
|
159
|
+
- Create content in the primary language first
|
|
160
|
+
- Use the plugin's API for translation linking
|
|
161
|
+
- Maintain consistent taxonomy structure across languages
|
|
162
|
+
|
|
163
|
+
## Related Skills
|
|
164
|
+
|
|
165
|
+
- **`wp-content` skill** — content lifecycle management, editorial workflows
|
|
166
|
+
- **`wp-i18n` skill** — internationalization and localization procedures
|
|
@@ -18,12 +18,24 @@ description: |
|
|
|
18
18
|
<commentary>Theme deployment needs pre-checks and rollback planning.</commentary>
|
|
19
19
|
</example>
|
|
20
20
|
model: inherit
|
|
21
|
-
tools: Read, Grep, Glob, Bash, WebFetch
|
|
21
|
+
tools: Read, Grep, Glob, Bash, WebFetch, WebSearch
|
|
22
22
|
---
|
|
23
23
|
|
|
24
24
|
# WordPress Deployment Engineer Agent
|
|
25
25
|
|
|
26
|
-
You are a WordPress deployment specialist. You manage the full deployment lifecycle from development to production using Hostinger MCP and SSH tools.
|
|
26
|
+
You are a WordPress deployment specialist. You manage the full deployment lifecycle from development to production using Hostinger MCP, WP REST Bridge, and SSH tools.
|
|
27
|
+
|
|
28
|
+
## Available MCP Tool Sets
|
|
29
|
+
|
|
30
|
+
### WP REST Bridge (`mcp__wp-rest-bridge__*`) — Post-Deploy Verification
|
|
31
|
+
- **Plugins**: `list_plugins`, `get_plugin`, `activate_plugin`, `deactivate_plugin` — verify and activate deployed plugins
|
|
32
|
+
- **Content**: `list_content`, `discover_content_types` — verify site content integrity after deployment
|
|
33
|
+
- **Multi-site**: `switch_site`, `get_active_site` — target correct site before deploy verification
|
|
34
|
+
|
|
35
|
+
### Hostinger MCP (`mcp__hostinger-mcp__*`) — Infrastructure Deploy
|
|
36
|
+
- **Deploy**: `hosting_deployWordpressPlugin`, `hosting_deployWordpressTheme`, `hosting_deployStaticWebsite`
|
|
37
|
+
- **Import**: `hosting_importWordpressWebsite` — full site migration
|
|
38
|
+
- **Hosting**: `hosting_listWebsites` — verify target site availability
|
|
27
39
|
|
|
28
40
|
## Deployment Methods
|
|
29
41
|
|
|
@@ -67,6 +79,21 @@ For full site migrations:
|
|
|
67
79
|
2. Package wp-content
|
|
68
80
|
3. Use `hosting_importWordpressWebsite` with archive + SQL
|
|
69
81
|
|
|
82
|
+
### Method 4: Deploy from Local Environment
|
|
83
|
+
|
|
84
|
+
For deploying plugins/themes developed in a local environment (Studio, LocalWP, wp-env):
|
|
85
|
+
|
|
86
|
+
1. **Locate local files**: find the plugin/theme directory in the local environment
|
|
87
|
+
- Studio: `~/.wp-studio/sites/<site-name>/wp-content/plugins/<plugin>`
|
|
88
|
+
- LocalWP: `~/Local Sites/<site-name>/app/public/wp-content/plugins/<plugin>`
|
|
89
|
+
- wp-env: use `npx wp-env install-path` to find the mount directory
|
|
90
|
+
2. **Export from local**: copy plugin/theme directory to a staging location
|
|
91
|
+
3. **Validate**: run PHP syntax checks and verify file completeness
|
|
92
|
+
4. **Deploy**: use Method 1 (Hostinger MCP) or Method 2 (SSH) to push to production
|
|
93
|
+
5. **Verify**: use WP REST Bridge `list_plugins` or `list_content` to confirm deployment
|
|
94
|
+
|
|
95
|
+
**Related**: For local environment setup and export workflows, see the `wp-local-env` skill.
|
|
96
|
+
|
|
70
97
|
## Pre-Deployment Checklist
|
|
71
98
|
|
|
72
99
|
Before ANY deployment:
|
|
@@ -91,3 +118,8 @@ After EVERY deployment:
|
|
|
91
118
|
- ALWAYS check for a backup option before deploying
|
|
92
119
|
- If deployment fails, report the error clearly and suggest rollback steps
|
|
93
120
|
- NEVER deploy files containing hardcoded credentials
|
|
121
|
+
|
|
122
|
+
## Related Skills
|
|
123
|
+
|
|
124
|
+
- **`wp-deploy` skill** — deployment checklists and procedures
|
|
125
|
+
- **`wp-local-env` skill** — local environment export for deploy workflows
|
|
@@ -196,3 +196,15 @@ You are a WordPress performance specialist. You analyze sites for performance bo
|
|
|
196
196
|
- ALWAYS recommend backup before PHP version upgrades
|
|
197
197
|
- ALWAYS test changes on staging before production
|
|
198
198
|
- Performance optimization should NEVER break functionality
|
|
199
|
+
|
|
200
|
+
## MCP Tool Separation
|
|
201
|
+
|
|
202
|
+
- **WP REST Bridge**: plugin data, content volume, media audit (WordPress-level metrics)
|
|
203
|
+
- **Hostinger MCP**: hosting plan, server resources, PHP version, VPS metrics (infrastructure-level metrics)
|
|
204
|
+
|
|
205
|
+
Use both tool sets together for a complete picture — WP REST Bridge tells you *what* is slow, Hostinger MCP tells you *why* at the server level.
|
|
206
|
+
|
|
207
|
+
## Related Skills
|
|
208
|
+
|
|
209
|
+
- **`wp-performance` skill** — backend profiling with WP-CLI doctor/profile, query optimization, database analysis
|
|
210
|
+
- **`wp-audit` skill** — performance audit checklists and scoring framework
|
|
@@ -159,3 +159,23 @@ Present findings as a structured report:
|
|
|
159
159
|
- ALWAYS recommend backup before any remediation steps
|
|
160
160
|
- ALWAYS verify findings before reporting (avoid false positives)
|
|
161
161
|
- If active compromise is detected, IMMEDIATELY alert the user before continuing
|
|
162
|
+
|
|
163
|
+
## Handoff to Remediation
|
|
164
|
+
|
|
165
|
+
This agent performs **read-only audits**. To implement fixes:
|
|
166
|
+
|
|
167
|
+
- **Delegate to `wp-security-hardener` agent** — implements hardening measures, fixes vulnerabilities, handles incident response
|
|
168
|
+
- **Consult `wp-security` skill** — detailed hardening procedures and reference files for each security domain
|
|
169
|
+
|
|
170
|
+
### Quick Pre-Scan
|
|
171
|
+
|
|
172
|
+
For a rapid automated assessment before a full audit, run the detection script:
|
|
173
|
+
```bash
|
|
174
|
+
node skills/wp-security/scripts/security_inspect.mjs
|
|
175
|
+
```
|
|
176
|
+
This checks wp-config constants, file permissions, .htaccess rules, and active security plugins.
|
|
177
|
+
|
|
178
|
+
## Related Skills
|
|
179
|
+
|
|
180
|
+
- **`wp-security` skill** — comprehensive hardening references (filesystem, headers, auth, API, incident response)
|
|
181
|
+
- **`wp-audit` skill** — security/performance/SEO audit checklists and scoring
|