Borrowing it
Nothing to install: this file belongs to rome-os/rome. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/rome-os/rome/main/.claude/skills/secondary-text-audit/SKILL.mdgit clone --depth 1 https://github.com/rome-os/romeWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/rome-os/rome/secondary-text-audit)<a href="https://agentmods.dev/skills/rome-os/rome/secondary-text-audit"><img src="https://agentmods.dev/badge/skills/rome-os/rome/secondary-text-audit/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/rome-os/rome/secondary-text-audit"><img src="https://agentmods.dev/badge/skills/rome-os/rome/secondary-text-audit.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00206 | $0.02645 |
| Opus 5 | $0.00103 | $0.01323 |
| Sonnet 5 | $0.00041 | $0.00529 |
| Haiku 4.5 | $0.00021 | $0.00265 |
Grade A, and why
secondary-text-audit scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 218 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Secondary-Text Audit
Extract every piece of subordinate copy in a surface and put each one on trial. The ruleset's premise is that secondary text defaults to absent: it exists only to carry information the user needs before acting that the label, the control's shape, and the surrounding context do not already give them. Most shipped secondary text describes what something is, which the label already did. That text goes.
The output is a verdict table, not prose commentary. Every row resolves to
keep, rewrite, or delete, and every rewrite carries its replacement
string.
Design philosophy (read this — it shapes every judgment call)
-
Delete is the expected majority outcome. This is the inversion that makes the skill useful. An audit that keeps most of what it finds has not applied the ruleset; it has admired the copy. If your table is mostly
keep, re-run the fact test on everykeeprow and mean it. -
Uncertainty resolves to
delete, with one exception. When a string sits betweendeleteandrewrite, choosedelete— the primary label almost always suffices. This is the opposite of the precision-over-recall bias inux-semantics-audit, and deliberately so: a wrongkeepis permanent noise on the screen.The exception is a string carrying a cost, a scope, or a cause. Deleting one of those does not cost a line of copy, it costs the reader the fact that made the screen actionable. When the string tells the user what an action breaks, where a setting stops applying, or why a surface is in a state they did not choose, uncertainty resolves to
rewrite. Trim it to the fact and keep it. -
Judge the rendered pair, never the key name. A verdict needs the label the user actually sees next to the text. A key called
*.descriptionmay render as a card subtitle, a tooltip body, a dialog description, or nothing at all. -
Fact before verdict. Name which kind of fact the text carries before deciding anything. A string carrying none is
delete— that is the rule, not a shortcut. -
A rewrite must be a real string. "Tighten this" is not a replacement. Write the sentence that ships, in the register
docs/ui/VOICE.mdfixes. If you cannot write one that passes the rules, the verdict wasdelete.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago Changed · +14 lines dce3b03d1731
- 12d ago First seen · 204 lines · 206 tokens per session scan A 947add2ec678
secondary-text-audit is a skill published in the GitHub repository rome-os/rome (490 stars, last pushed today), licensed MIT. It adds 206 tokens to every session and 2,645 once invoked, about $0.0010 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
html-artifacts
Author the HTML for a plan artifact, dashboard iframe, or Slack attachment — structure, design plan, available runtime, theming, and craft. Read this before writing HTML for saveplan, outputiframe, or slackattachhtml.
browserwing-executor
Control browser automation through HTTP API. Supports page navigation, element interaction (click, type, select), data extraction, accessibility snapshot analysis, screenshot, JavaScript execution, and batch operations.
web-design
Penguin visual language for generated web pages and app UIs — GitHub-style simplicity with a single blue accent, light and pure-black dark themes, design tokens, component and chat-interface recipes, plus an opt-in warm paper editorial theme.
bento-slides
Create and edit Bento presentations — self-contained .bento.html decks whose document is JSON. Use whenever the user wants a slide deck or presentation: from scratch, from source material, or by improving an existing file.
ui-design
Design-quality reference for financial-research visual output: typography, color, composition, and avoiding generic AI aesthetics.
dashboard
Update the agent's Control Center. Use when the user says "update my Control Center", "update my dashboard", "redesign my home", or "/dashboard".