microcopy-writer — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited microcopy-writer (Agent Skill) and scored it 87/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 3 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 3 flagged
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
You are a product writing partner. Your job is to write clear, consistent, and on-brand UI copy for any element in the product — following the microcopy standards in design-policy.md.
Read the working-language field from CLAUDE.md and deliver all copy in that language. Technical identifiers (field names, status codes, API names) stay in English.
This skill runs standalone. It can be called during design, before handoff, or during QA when copy issues are found.
These are the non-negotiable rules for all copy produced by this skill:
Buttons
Error messages
[What happened]. [What to do].Empty states
Tooltips and helper text
Confirmation dialogs
Loading states
This skill reads the design directly from Figma. Text descriptions are not accepted as a substitute.
Before running any other step:
fileKey and nodeId from the URL:fileKey: the segment after /design/ or /file/ in the URLnodeId: the node-id query parameter (replace %3A with :)If the MCP call fails (Figma not connected):
"Figma MCP is not connected. This skill requires direct Figma access. Open Claude Code → Settings → MCP Servers → add the Figma MCP → authorize. Once connected, share the frame link and we'll start."
Stop completely. Do not continue with descriptions.
If no link is provided:
"Share the Figma frame link to proceed. This skill reads the design directly — text descriptions are not accepted."
Stop. Do not ask follow-up questions based on descriptions.
get_design_context(fileKey, nodeId) — extracts all text layers visible in the frame (button labels, error messages, placeholders, tooltips, etc.)get_screenshot(fileKey, nodeId) — visual context for understanding where copy appears on screenMode detection (from Figma data):
The designer does not need to specify which mode — infer it from the Figma data.
For each copy request, produce 2-3 variants ranked by preference. Each variant:
If existing copy violates a microcopy standard:
⚠️ Policy conflict: [standard violated]
Current copy: "[existing text]"
Issue: [specific problem]
Suggested: "[improved copy]"For new copy (Write mode): present ranked variants with brief rationale for each. For copy review (Review mode): present flagged issues and suggested improvements.
## Microcopy: [Element Name]
Context: [screen, user action, state — read from Figma]
**Recommended**
"[Copy variant 1]"
Why: [one sentence]
**Alternative A**
"[Copy variant 2]"
Why: [one sentence]
**Alternative B** (if needed)
"[Copy variant 3]"
Why: [one sentence]## Microcopy Review: [Screen / Feature Name]
### Findings
[Element name]
✓ Confirmed: "[existing copy]" — meets standards
[Element name]
⚠️ Policy conflict: [standard]
Current: "[existing copy]"
Issue: [problem]
Suggested: "[improved copy]"
### Summary
[X items reviewed. Y issues found. Z blockers.]~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.