Skip to content

Commit 4da41e5

Browse files
jschulerjpuzz0
andauthored
feat: add content plugin — voice and tone agent and content review skill (#109)
## Add `content` plugin — voice and tone ### Summary - Adds a new `content` plugin with a `voice-and-tone` agent and a `content-review` skill - Registers the plugin in both `.claude-plugin/marketplace.json` and `.cursor-plugin/marketplace.json` - Regenerates `PLUGINS.md` and the README plugin table ### What this adds **`voice-and-tone` (agent)** — Always-on knowledge of PatternFly and Red Hat content design standards, applicable to both UX microcopy and long-form documentation. Covers the four brand voice traits (friendly, approachable, collaborative, inventive), tone by context, point of view, sentence voice, capitalization, punctuation, vocabulary rules, structural patterns, component-specific microcopy (buttons, tooltips, alt text), AI language flags, and credibility principles. Sourced from [patternfly.org/content-design](https://www.patternfly.org/content-design/overview), Red Hat brand standards, the Red Hat corporate style guide, the Red Hat Design System content accessibility guidelines, and the Writing for Red Hat takeaway guide. **`content-review` (skill)** — On-demand audit or rewrite of markdown content against PatternFly and Red Hat voice and tone rules. Accepts a file path or pasted content, produces either an annotated issues list (audit mode) or a revised version ready to apply (rewrite mode). ### Why a new plugin Content design is a first-class discipline in PatternFly — the site has a dedicated content design section with grammar rules, writing guides, and brand voice documentation. None of the existing plugins cover writing and documentation quality. This fills that gap for contributors writing design guidelines, UI copy, or any content for patternfly.org or Red Hat products. The rules are intentionally unified across both contexts: the same voice and tone standards apply to UX microcopy and long-form docs, with only minor noted exceptions (such as the ampersand rule, which is stricter in UI microcopy than in documentation). ### Test plan - [ ] Run `/plugin install content@patternfly-ai-helpers` and `/reload-plugins` — confirm `voice-and-tone` appears in agents and `content-review` in skills - [ ] Invoke `/content:content-review` on a markdown file in audit mode — confirm it produces a numbered issues list with rule names and suggested fixes - [ ] Invoke `/content:content-review` on the same file in rewrite mode — confirm it returns revised markdown and a brief change summary - [ ] Confirm the agent shapes output when writing new docs without invoking the skill explicitly --------- Co-authored-by: Jeff Puzzo <jpuzzo@redhat.com>
1 parent 2e2077e commit 4da41e5

10 files changed

Lines changed: 475 additions & 146 deletions

File tree

CONTRIBUTING-SKILLS.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,12 +65,12 @@ Every skill or agent must live in a plugin. Pick the one that matches your skill
6565
|--------|---------------------|---------------|----------------|
6666
| **a11y** | Audit and document accessibility | Does this help me make my UI accessible? | |
6767
| **code-review** | Review code for quality | Does this help me review code for quality? | |
68-
| **design-audit** | Validate existing code/designs against PF standards | Does this check whether existing code or designs follow PF standards? | `pf-compliance-checker`, `pf-figma-icon-finder`, `pf-raw-colors-scan` |
68+
| **design-audit** | Validate existing code/designs against PF standards | Does this check whether existing code or designs follow PF standards? | `pf-compliance-checker`, `pf-design-token-check`, `pf-figma-icon-finder` |
6969
| **design-guide** | Choose the right PF components and patterns when building | Does this help me choose the right PF components and patterns when building? | `pf-ai-experience-patterns`, `pf-design-mode` |
7070
| **migration** | Upgrade PatternFly versions | Does this help me upgrade PF versions? | `pf-class-migration-scanner` |
7171
| **patternfly-mcp** | Connect AI tools to PatternFly documentation and component data | | |
7272
| **pf-workshop** | Team tools and skill incubation | Is this a team workflow tool, or a new skill that isn't ready for a consumer plugin yet? | `analytics-repo-pruning`, `css-var-analyzer`, `duplicate-epic` |
73-
| **react** | Develop and test React components | Does this help me write or test a React component? | `pf-component-structure`, `pf-design-comments`, `pf-import-checker` |
73+
| **react** | Develop and test React components | Does this help me write or test a React component? | `pf-component-structure`, `pf-design-comments`, `pf-github-pages-deploy` |
7474
<!-- END PLUGIN TABLE -->
7575

7676
**How to decide:**

PLUGINS.md

Lines changed: 48 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,11 @@ Quick reference of all plugins and what they contain. This file is auto-generate
55
## Table of Contents
66

77
- [a11y](#a11y) — Accessibility auditing, reporting, and documentation
8-
- [code-review](#code-review) — Code review and quality — PR summaries, adversarial review, security patterns
9-
- [design-to-code](#design-to-code) — Design-to-code translation — Figma review, token auditing, icon identification, design compliance
8+
- [code-review](#code-review) — Code review and quality — adversarial review, security patterns
9+
- [design-audit](#design-audit) — Design audit — validate existing code and designs against PatternFly standards
10+
- [design-guide](#design-guide) — Design guide — component selection, interaction patterns, AI experience patterns, Figma design creation
1011
- [migration](#migration) — PF version migration — breaking change detection, class scanning, upgrade planning
12+
- [patternfly-mcp](#patternfly-mcp) — PatternFly MCP server — provides component documentation, design token lookup, and accessibility guidance via the Model Context Protocol
1113
- [pf-workshop](#pf-workshop) — PatternFly team tools and skill incubation — issue triage, release management, codebase auditing, new skill development
1214
- [react](#react) — React component development — coding standards, testing, and structure
1315

@@ -17,38 +19,51 @@ Quick reference of all plugins and what they contain. This file is auto-generate
1719

1820
Accessibility auditing, reporting, and documentation
1921

20-
No skills or agents yet — contributions welcome!
22+
No skills or agents yet.
2123

2224

2325
<br>
2426

2527
### code-review
2628

27-
Code review and quality — PR summaries, adversarial review, security patterns
29+
Code review and quality — adversarial review, security patterns
2830

29-
| Skill | Description |
31+
| Agent | Description |
3032
|-------|-------------|
31-
| `summarize-pr-reviews` | Summarize GitHub pull requests awaiting your review with status, age, and priority. |
33+
| `pf-assist` | PatternFly development routing — maps code changes, test gaps, scaffolding needs, and design work to the right PF sub-skills. |
3234

3335

3436
<br>
3537

36-
### design-to-code
38+
### design-audit
3739

38-
Design-to-code translationFigma review, token auditing, icon identification, design compliance
40+
Design auditvalidate existing code and designs against PatternFly standards
3941

4042
| Skill | Description |
4143
|-------|-------------|
42-
| `figma-changes` | Diff Figma designs to identify what changed and generate code update checklists. |
43-
| `figma-icon-finder` | Identify PatternFly icons in Figma mockups and provide the correct React import statements. |
44-
| `icon-finder` | Find Red Hat Design System icons (@rhds/icons) by keyword or use case with visual previews. |
45-
| `pf-ai-experience-patterns` | Apply Red Hat's AI design language to AI-powered features — chatbots, assistants, generation UIs. |
4644
| `pf-compliance-checker` | Check Figma designs against PatternFly v6 standards for colors, typography, spacing, and component usage. |
47-
| `pf-design-mode` | Create and edit Figma design files using PatternFly-approved component libraries. |
45+
| `pf-design-token-check` | Detect hardcoded color, spacing, typography, border radius and shadow values that have PF token equivalents and suggest the correct design token replacements. |
46+
| `pf-figma-icon-finder` | Identify PatternFly icons in Figma mockups and provide the correct React import statements. |
4847
| `pf-raw-colors-scan` | Find raw color values (hex, rgb, hsl) in code and suggest PatternFly design token replacements. |
4948
| `pf-token-auditor` | Audit designs against the PatternFly 6 token architecture and bridge Figma styles to PF semantic tokens. |
5049

5150

51+
<br>
52+
53+
### design-guide
54+
55+
Design guide — component selection, interaction patterns, AI experience patterns, Figma design creation
56+
57+
| Skill | Description |
58+
|-------|-------------|
59+
| `pf-ai-experience-patterns` | Apply Red Hat's AI design language to AI-powered features — chatbots, assistants, generation UIs. |
60+
| `pf-design-mode` | Create and edit Figma design files using PatternFly-approved component libraries. |
61+
62+
| Agent | Description |
63+
|-------|-------------|
64+
| `pf-microcopy` | PatternFly component microcopy standards — button labels, tooltips, alt text, and error messages. |
65+
66+
5267
<br>
5368

5469
### migration
@@ -60,6 +75,15 @@ PF version migration — breaking change detection, class scanning, upgrade plan
6075
| `pf-class-migration-scanner` | Scan code for legacy PatternFly CSS classes and recommend PF6-safe replacements. |
6176

6277

78+
<br>
79+
80+
### patternfly-mcp
81+
82+
PatternFly MCP server — provides component documentation, design token lookup, and accessibility guidance via the Model Context Protocol
83+
84+
This plugin provides an MCP server only — no skills or agents. Other plugins declare it as a dependency so the MCP server is installed automatically.
85+
86+
6387
<br>
6488

6589
### pf-workshop
@@ -71,16 +95,25 @@ PatternFly team tools and skill incubation — issue triage, release management,
7195
| `analytics-repo-pruning` | Flag archived or inactive repos in PatternFly Analytics repos.json for removal. |
7296
| `css-var-analyzer` | Analyze --pf- CSS custom property usage and naming patterns in PatternFly SCSS. |
7397
| `duplicate-epic` | Clone a Jira epic from another project into the PF Jira space with back-links and feature attachment. |
98+
| `figma-changes` | Diff Figma designs to identify what changed and generate code update checklists. |
99+
| `icon-finder` | Find Red Hat Design System icons (@rhds/icons) by keyword or use case with visual previews. |
74100
| `pf-analyze-modifiers` | Analyze PatternFly modifier class (pf-m-*) usage across SCSS files and generate usage reports. |
75101
| `pf-bug-triage` | Triage PatternFly bug reports — assess completeness, suggest fixes, identify affected components, and recommend assignees. |
102+
| `pf-content-review` | Audit and rewrite content to match PatternFly and Red Hat voice and tone standards. |
76103
| `pf-create-issue` | Create well-structured GitHub issues for PatternFly repositories with templates, follow-up tracking, and duplicate detection. |
77104
| `pf-org-version-update` | Update patternfly-org for a new PatternFly release — resolve versions, update package.json and versions.json, and provide build steps. |
78105
| `pf-tokens` | Build CSS design tokens for PatternFly core and copy them to the PatternFly repository. |
106+
| `prototype-mode` | Enable prototype mode for React apps with grayscale styling and a banner overlay. |
79107
| `quarterly-initiative-report` | Generate quarterly Jira status reports with RAG assessment, blocker tracking, and next-quarter recommendations. |
80108
| `semantic-release-troubleshooting` | Diagnose and fix semantic-release issues when a specific version is not being released. |
81109
| `summarize-jira-issues` | Summarize your current sprint workload from Jira — assigned issues, contributor roles, and priorities. |
110+
| `summarize-pr-reviews` | Summarize GitHub pull requests awaiting your review with status, age, and priority. |
82111
| `write-example-description` | Write and refine example descriptions for PatternFly.org component and demo pages. |
83112

113+
| Agent | Description |
114+
|-------|-------------|
115+
| `pf-voice-and-tone` | PatternFly and Red Hat voice and tone standards — friendly, approachable, collaborative, inventive. |
116+
84117

85118
<br>
86119

@@ -91,15 +124,15 @@ React component development — coding standards, testing, and structure
91124
| Skill | Description |
92125
|-------|-------------|
93126
| `pf-component-structure` | Audit PatternFly React component nesting, wrapper hierarchies, and layout structure. |
127+
| `pf-design-comments` | Integrate @patternfly/design-comments into React apps for on-page design feedback, pinned comment threads, GitHub Issues sync, and Jira linking. |
94128
| `pf-github-pages-deploy` | Deploy a PatternFly React project to GitHub Pages using pfcli deploy. |
95129
| `pf-import-checker` | Audit and fix invalid PatternFly import paths across packages. |
96130
| `pf-project-scaffolder` | Scaffolds PatternFly React projects with PF6-safe dependencies, imports, and starter layout. |
97-
| `pf-prototype-mode` | Enable prototype mode for React apps with grayscale styling and a banner overlay. |
98131
| `pf-unit-test-generator` | Generate a unit test file for a React component using Testing Library. |
99132

100133
| Agent | Description |
101134
|-------|-------------|
102-
| `component-structure-audit` | PatternFly React structural composition rules — required hierarchies, wrapper components, and props-vs-children patterns. |
103135
| `pf-coding-standards` | PatternFly React coding standards — import patterns, component composition, token usage, and style conventions. |
136+
| `pf-component-structure-audit` | PatternFly React structural composition rules — required hierarchies, wrapper components, and props-vs-children patterns. |
104137
| `pf-unit-test-standards` | PatternFly React unit testing standards — RTL patterns, mock boundaries, coverage expectations, and assertion style. |
105138

README.md

Lines changed: 45 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
[![License](https://img.shields.io/github/license/patternfly/ai-helpers)](./LICENSE)
44
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](./CONTRIBUTING.md)
55
[![Plugins](https://img.shields.io/badge/plugins-8-blueviolet)](./PLUGINS.md)
6-
[![Skills](https://img.shields.io/badge/skills-28-blue)](./PLUGINS.md)
6+
[![Skills](https://img.shields.io/badge/skills-31-blue)](./PLUGINS.md)
77

88
AI coding helpers for [PatternFly](https://www.patternfly.org/) development. This repository provides plugins and documentation to help AI tools generate accurate, best-practice PatternFly applications.
99

@@ -21,68 +21,67 @@ Plugins work in both **Claude Code** and **Cursor**. The content is identical
2121
/plugin install react@ai-helpers
2222
```
2323

24-
After installation, the plugin's agents and skills are available in any project. To receive plugin updates automatically, enable auto-update for this marketplace: `/plugin`**Marketplaces** → select **patternfly-ai-helpers****Enable auto-update**.
25-
26-
<details>
27-
<summary>See it in action</summary>
28-
29-
![Installing the PatternFly AI Helpers marketplace and using a skill in Claude Code](assets/claudecode-install-demo.gif)
30-
31-
</details>
24+
After installation, the plugin's agents and skills are available in any project.
3225

3326
### Cursor
3427

35-
#### Third-Party Plugin Import
36-
37-
If you've already installed plugins via Claude Code, Cursor can discover them automatically:
38-
39-
1. Open **Cursor Settings****Rules, Skills, Subagents**
40-
2. Enable **"Include third-party Plugins, Skills, and other configs"**
41-
42-
Plugins installed via Claude Code appear immediately — no cloning or manual setup required.
43-
44-
<details>
45-
<summary>See it in action</summary>
46-
47-
![Importing third-party plugins in Cursor and using a skill](assets/cursor-plugin-import-demo.gif)
48-
49-
</details>
50-
51-
#### Team Marketplace (Red Hat)
52-
53-
Red Hat Cursor Enterprise users have access to the PatternFly AI Helpers team marketplace:
54-
55-
1. Open **Cursor Settings****Plugins****Browse Marketplace**
56-
2. Select **PatternFly AI Helpers**
57-
3. Click **Get** on the plugins you need
58-
59-
<details>
60-
<summary>See it in action</summary>
61-
62-
![Installing the react plugin from the PatternFly AI Helpers team marketplace in Cursor](assets/cursor-marketplace-install-demo.gif)
63-
64-
</details>
28+
Cursor can discover plugins from `.cursor-plugin/` directories. If you also have Claude Code installed, Cursor may pick up installed plugins automatically via its third-party plugin settings.
6529

6630
## Available Plugins
6731

6832
<!-- BEGIN PLUGIN TABLE -->
6933
| Plugin | Description |
7034
|--------|-------------|
7135
| **a11y** | Accessibility auditing, reporting, and documentation |
72-
| **code-#8209;review** | Code review and quality — adversarial review, security patterns |
73-
| **design-#8209;audit** | Design audit — validate existing code and designs against PatternFly standards |
74-
| **design-#8209;guide** | Design guide — component selection, interaction patterns, AI experience patterns, Figma design creation |
36+
| **code&#8209;review** | Code review and quality — adversarial review, security patterns |
37+
| **design&#8209;audit** | Design audit — validate existing code and designs against PatternFly standards |
38+
| **design&#8209;guide** | Design guide — component selection, interaction patterns, AI experience patterns, Figma design creation |
7539
| **migration** | PF version migration — breaking change detection, class scanning, upgrade planning |
76-
| **patternfly-#8209;mcp** | PatternFly MCP server — provides component documentation, design token lookup, and accessibility guidance via the Model Context Protocol |
77-
| **pf-#8209;workshop** | PatternFly team tools and skill incubation — issue triage, release management, codebase auditing, new skill development |
40+
| **patternfly&#8209;mcp** | PatternFly MCP server — provides component documentation, design token lookup, and accessibility guidance via the Model Context Protocol |
41+
| **pf&#8209;workshop** | PatternFly team tools and skill incubation — issue triage, release management, codebase auditing, new skill development |
7842
| **react** | React component development — coding standards, testing, and structure |
7943
<!-- END PLUGIN TABLE -->
8044

8145
See [PLUGINS.md](PLUGINS.md) for skills, agents, and usage details.
8246

83-
## PatternFly MCP Server (Included)
47+
## PatternFly MCP Server (Recommended)
48+
49+
For the best experience, also install the [PatternFly MCP server](https://github.com/patternfly/patternfly-mcp) which gives AI tools access to component documentation, prop schemas, and design guidelines. Skills and agents work without it but provide enhanced results when it's available.
50+
51+
## Architecture
52+
53+
```mermaid
54+
graph TD
55+
A[AI Tool] -->|discovers| B[".<tool>-plugin/marketplace.json"]
56+
B -->|references| C[plugins/react]
57+
B -->|references| D[plugins/design-to-code]
58+
B -->|references| E[plugins/...]
59+
C --- F[skills/ + agents/]
60+
D --- G[skills/ + agents/]
61+
E --- H[skills/ + agents/]
62+
```
63+
64+
### How it works
65+
66+
1. Each AI tool looks for its own directory (`.claude-plugin/`, `.cursor-plugin/`) to find `marketplace.json`
67+
2. The marketplace lists plugins with relative paths to `plugins/<name>/`
68+
3. Each plugin has identical manifests in `.claude-plugin/plugin.json` and `.cursor-plugin/plugin.json`
69+
4. Adding support for a new tool = copying the manifest into a new `.<tool>-plugin/` directory
8470

85-
The [PatternFly MCP server](https://github.com/patternfly/patternfly-mcp) gives AI tools access to component documentation, prop schemas, and design guidelines. It is **automatically installed** as a dependency when you install any plugin from this marketplace — no separate setup required.
71+
## Repository Structure
72+
73+
```
74+
ai-helpers/
75+
├── .claude-plugin/ # Claude Code marketplace config
76+
├── .cursor-plugin/ # Cursor marketplace config
77+
├── plugins/
78+
│ └── <plugin-name>/ # One directory per plugin
79+
│ ├── .claude-plugin/
80+
│ ├── .cursor-plugin/
81+
│ ├── skills/
82+
│ └── agents/
83+
└── docs/ # AI-friendly PatternFly documentation
84+
```
8685

8786
## Documentation
8887

plugins/design-audit/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ Use this plugin when you're **checking** whether existing code or designs follow
1111
### Skills
1212

1313
- **PF Compliance Checker** (`/design-audit:pf-compliance-checker`) — Check Figma designs against PatternFly v6 standards for colors, typography, spacing, and component usage.
14+
- **PF Design Token Check** (`/design-audit:pf-design-token-check`) — Detect hardcoded color, spacing, typography, border radius and shadow values that have PF token equivalents and suggest the correct design token replacements.
1415
- **PF Figma Icon Finder** (`/design-audit:pf-figma-icon-finder`) — Identify PatternFly icons in Figma mockups and provide the correct React import statements.
1516
- **PF Raw Colors Scan** (`/design-audit:pf-raw-colors-scan`) — Find raw color values (hex, rgb, hsl) in code and suggest PatternFly design token replacements.
1617
- **PF Token Auditor** (`/design-audit:pf-token-auditor`) — Audit designs against the PatternFly 6 token architecture and bridge Figma styles to PF semantic tokens.

plugins/design-guide/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@ Use this plugin when you're **building** something and need help choosing the ri
1313
- **PF AI Experience Patterns** (`/design-guide:pf-ai-experience-patterns`) — Apply Red Hat's AI design language to AI-powered features — chatbots, assistants, generation UIs.
1414
- **PF Design Mode** (`/design-guide:pf-design-mode`) — Create and edit Figma design files using PatternFly-approved component libraries.
1515

16+
### Agents
17+
18+
- **PF Microcopy** (`pf-microcopy`) — PatternFly component microcopy standards — button labels, tooltips, alt text, and error messages.
19+
1620
## Sources
1721

1822
- [PatternFly.org](https://www.patternfly.org/)

0 commit comments

Comments
 (0)