critic-comms-completeness
Ensures every user-facing behavior includes complete copy and communication states.
Install
mkdir -p .claude/skills/critic-comms-completeness && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/14424" && unzip -o skill.zip -d .claude/skills/critic-comms-completeness && rm skill.zipInstalls to .claude/skills/critic-comms-completeness
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Critic that ensures every behavior specifies empty, loading, success, and error states (UI copy + notifications). Invoked by contract-verify. Catches the "we forgot the error message" bug class.Key capabilities
- →Ensure every behavior specifies `commsStates`
- →Check if error messages are actionable
- →Verify notifications follow behavior triggers
- →Assess tone consistency of copy
- →Evaluate internationalization readiness of copy strings
- →Flag missing states as blockers
How it works
The skill acts as a critic to review UI behavior specifications, ensuring that `commsStates` (empty, loading, success, error) are defined and that error messages are actionable. It also checks for notification consistency and tone.
Inputs & outputs
When to use critic-comms-completeness
- →Reviewing UI component specs
- →Checking for missing error messages
- →Validating loading and success states
About this skill
Comms-completeness critic
Protocol: Follow
reference/CRITIC-RULES.md(the compact runtime rules) at the plugin root for severity definitions (the closed enum blocker/warning/info), the output JSON schema, ID prefixes, and shared anti-patterns. This skill defines only WHAT to look for. Do not invent severities like "high"/"medium" — the validator rejects them. Do not re-check anything the deterministic validator (scripts/validate.mjs) already covers; add the judgment layer on top.
Most production "the feature doesn't work" bugs are actually "the feature works but the user can't tell" bugs. This critic catches them before the spec ships.
Contextual (handled by the validator).
commsStatesis required only for user-facing behaviors; server-only behaviors (platforms allserver/backend) are exempt — don't flag them for missing states. Field presence for user-facing behaviors is the validator's job; yours is the judgment layer: is the error copy actionable, on-brand, and specific (not "Something went wrong")?
What to check
1. Every behavior has commsStates
Each ### B<N> should declare:
- commsStates:
empty: "<what user sees when state is empty>"
loading: "<copy or shimmer description for in-flight>"
success: "<confirmation copy or toast text>"
error: "<error message — must be actionable>"
Missing any field → blocker with a draft string the author can edit.
2. Error messages are actionable, not blame-y
Error copy should say what the user can DO, not what went wrong in abstract terms. Flag if the error text:
- says "Something went wrong" with no recourse
- blames the user without giving an out
- exposes implementation details ("HTTP 500", "null pointer")
3. Notifications follow the behavior
If a behavior triggers a notification (push, email, in-app), there must
be a notification fragment or sub-field describing:
- Channel (push / email / in-app / SMS)
- Trigger condition
- Body copy
- Deep link target
If the behavior obviously needs a notification but none is specified (e.g., "user receives invitation" with no email copy), emit a blocker.
4. Tone consistency
If the contract or referenced style guide specifies a brand voice
(e.g., tone: friendly, or a CLAUDE.md in the repo declaring style),
scan the copy fields against it. Flag tonal mismatches as info with
suggested rewrites.
5. Internationalization readiness
If the contract's platforms includes platforms that ship in multiple
locales, every copy string should be intended for translation (no
concatenation, no embedded variables without ICU/i18n markers).
Flag as warning.
Severity
- blocker — missing empty/loading/success/error state, missing notification when behavior implies one.
- warning — vague error copy, blame-y tone, i18n readiness.
- info — tone nits, suggested rephrasings.
Output
Same JSON array shape as other critics.
Anti-patterns
- Don't write the final copy yourself; propose drafts the author edits.
- Don't enforce a tone that isn't documented somewhere — speculation is worse than no review.
When not to use it
- →When reviewing server-only behaviors
- →When inventing severities like 'high'/'medium'
- →When re-checking what a deterministic validator already covers
Limitations
- →`commsStates` is required only for user-facing behaviors; server-only behaviors are exempt
- →Don't write the final copy yourself; propose drafts the author edits.
- →Don't enforce a tone that isn't documented somewhere
How it compares
This skill automates the review of UI behavior specifications for completeness and quality of communication states, preventing common 'feature works but user can't tell' bugs, unlike manual review.
Compared to similar skills
critic-comms-completeness side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| critic-comms-completeness (this skill) | 0 | 1mo | No flags | Intermediate |
| accessibility-compliance | 45 | 2mo | No flags | Intermediate |
| frontend-code-review | 11 | 2mo | No flags | Advanced |
| salesforce-development | 14 | 6mo | No flags | Advanced |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
accessibility-compliance
wshobson
Implement WCAG 2.2 compliant interfaces with mobile accessibility, inclusive design patterns, and assistive technology support. Use when auditing accessibility, implementing ARIA patterns, building for screen readers, or ensuring inclusive user experiences.
frontend-code-review
langgenius
Trigger when the user requests a review of frontend files (e.g., `.tsx`, `.ts`, `.js`). Support both pending-change reviews and focused file reviews while applying the checklist rules.
salesforce-development
davila7
Expert patterns for Salesforce platform development including Lightning Web Components (LWC), Apex triggers and classes, REST/Bulk APIs, Connected Apps, and Salesforce DX with scratch orgs and 2nd generation packages (2GP). Use when: salesforce, sfdc, apex, lwc, lightning web components.
feature-flags
Use when feature flag tests fail, flags need updating, understanding @gate pragmas, debugging channel-specific test failures, or adding new flags to React.
opik-frontend
comet-ml
React frontend patterns for Opik. Use when working in apps/opik-frontend, on components, state, or data fetching.
vercel-composition-patterns
vercel-labs
React composition patterns that scale. Use when refactoring components with boolean prop proliferation, building flexible component libraries, or designing reusable APIs. Triggers on tasks involving compound components, render props, context providers, or component architecture. Includes React 19 API changes.