mcpField
C
copy

copy

github.com/raphaelsalajaDesign & UI67163 installsUpdated 6d ago
Repository

About copy

A skill for writing and reviewing interface text, including labels, descriptions, status messages, and punctuation. It reports findings as broken-and-replacement pairs with rule IDs and severity levels.

Key features

  1. 01Check title case and punctuation
  2. 02Shorten labels and descriptions
  3. 03Review names and status text
  4. 04Report by rule and severity

Use cases

  1. 01Review interface labels for casing
  2. 02Check whether loading messages reflect current state
  3. 03Find internal IDs or lengthy descriptions

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/raphaelsalaja/skills --skill copy

After installing, type/copyin Claude Code to confirm it loaded.

Bundled filesagents/openai.yaml

Details

From the project README

Copy

This skill writes and reviews the words inside an interface. It covers labels, descriptions, status text and the punctuation they use.

Casing and punctuation are exact

A label in sentence case is a finding. An em dash is a finding. A label that could lose a word is a finding only when the shorter label still says what happens.

Extra interface beyond the words belongs to restraint.

Labels take Title Case

Buttons, menu items, tabs, headings and setting names use Title Case. Short articles, conjunctions and prepositions stay lowercase unless they come first. "Add to library" is copy-title-case.

As few words as still say what happens

"Start Download" on a download screen is copy-fewest-words. Show a number on its own when the context already names the noun. "12 items" is copy-number-not-noun.

Plain names, never ids

An internal acronym or an invented persona is copy-plain-words. Show a thing's display name, not its id. instagram_graph in a select is copy-display-names.

One line of description or none

Move any detail into a tooltip. Two lines under a setting is copy-one-line-description.

Status matches the moment

"Searched" while the search still runs is copy-state-tense.

No em dashes, no ellipses

Use a comma or a full stop where an em dash would go. That is copy-no-em-dash. Use no ellipsis except in a search placeholder. "Loading..." is copy-no-ellipsis.

The pair

Every check is a pair. The broken line sits beside the line that replaces it.

RuleBrokenReplacement
copy-title-caseAdd to libraryAdd to Library
copy-fewest-wordsStart Download on the download screenStart
copy-number-not-noun12 items12
copy-plain-wordsPDPProduct Page
copy-display-namesinstagram_graphInstagram
copy-one-line-descriptionTwo lines under a settingOne line, the rest in a tooltip
copy-state-tenseSearched while runningSearching, then Searched
copy-no-em-dashSynced — 2 minutes agoSynced 2 minutes ago
copy-no-ellipsisLoading...Loading

Reporting

Severity. HIGH is an id or internal jargon shown to the user, or a status that says the wrong thing. MEDIUM is a label in the wrong case, a two-line description or an em dash. LOW is a label one word longer than it needs.

Format. One finding per root cause:

file:line - [rule-id] what is wrong

Then a Rule | Count | Severity summary. Block when any HIGH remains, Approve otherwise. Never Approve a file you did not read. Mark every check you could not run as Not verified.

Comments

Markdown supported