product-writing

product-writing is a skill for Claude Code, Codex from scarletkc/agents. It costs 40 tokens per session (1,913 once invoked), scanned A, original, Apache-2.0.

A writing guide for user-interface copy, command-line messages, help text, comments, and technical documentation.

In plain words
What is it for?
Use it to write or review setup instructions, error messages, status text, compatibility notes, and documentation about technical results.
Why use it?
It helps explain product behavior accurately, especially the difference between states such as queued, failed, accepted, and complete, without inventing unsupported details.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to write or review setup instructions, error messages, status text, compatibility notes, and documentation about technical results.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/scarletkc/agents/product-writing
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add scarletkc/agents --skill product-writing
Clone the repo
git clone --depth 1 https://github.com/scarletkc/agents

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for product-writing

README.md
[![agentmods](https://agentmods.dev/badge/skills/scarletkc/agents/product-writing/github.svg)](https://agentmods.dev/skills/scarletkc/agents/product-writing)
Your own site
<a href="https://agentmods.dev/skills/scarletkc/agents/product-writing"><img src="https://agentmods.dev/badge/skills/scarletkc/agents/product-writing/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.

agentmods 80×15 button for product-writing

Your own site · 80×15
<a href="https://agentmods.dev/skills/scarletkc/agents/product-writing"><img src="https://agentmods.dev/badge/skills/scarletkc/agents/product-writing.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 40 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,913 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00040 $0.01913
Opus 5 $0.00020 $0.00957
Sonnet 5 $0.00008 $0.00383
Haiku 4.5 $0.00004 $0.00191

Measured 3d ago against content hash 457ab0b9e8c4, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

product-writing 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 3d 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.

skills/product-writing/SKILL.md · 161 lines

How it starts

The opening of the file, as written. The whole thing — 161 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Product Writing

Help the reader understand what is happening and what they can do next.

Work from the task

Use only the sections relevant to the requested copy. Preserve the user's meaning, terminology, audience, and requested format. Follow existing product conventions where they help readers recognize controls, commands, and states. A wording task does not itself authorize changes to product behavior or a reorganization of the documentation.

Ground behavioral claims in supplied facts, the relevant implementation or specification, or an observed result. When a fact cannot be verified, identify that uncertainty where it matters and complete the parts that are supported. Do not invent behavior or a cause to make the text sound complete.

Interface copy, errors, and help

  • Name the action or state accurately. Distinguish saving a setting from testing a connection, accepting a request from completing a job, and partial success from full success. For example, a queued export should not announce that a file is ready to download.
  • Make recovery useful. Identify what failed and the relevant input or operation. Include a next step when it is known and actionable. An unknown network failure does not establish that credentials are wrong. Put detail in the message, an expanded view, or a specific help link as the interface allows; an error need not fill a fixed template.
  • Preserve meaningful distinctions. Keep prerequisites, limits, and consequences that affect the reader's decision. Use the product's names for controls and commands. Do not shorten away which item an action affects or imply that an irreversible action is temporary.

Status and diagnostic output

  • Describe the state the label promises. Effective settings account for runtime overrides; stored settings should be identified as such. If only the API key comes from the environment, label that field rather than the entire endpoint as environment-provided.
  • Keep failure visible. Distinguish unknown or unavailable values from empty, missing, or default values. If partial results are supported, identify what could not be checked. Follow the project's failure behavior instead of introducing a fallback merely to produce a message.
  • Preserve output contracts. Keep prose and decoration out of JSON, TSV, and other machine formats. Use existing diagnostic channels for explanations. Keep paths, IDs, and commands complete where users need to copy them, subject to the product's redaction rules.
  • Give diagnostic views distinct jobs. When a dedicated inspection command already provides all values and origins, a health summary can focus on deviations, failures, and their sources, with a pointer to full details. Without that separate view, preserve the values needed to investigate the problem. Fifteen normal field: origin rows can bury the two overrides that matter, but removing the only available configuration view loses information. Re-read adjacent labels to catch duplication such as default (default).

Read the full file on GitHub · 161 lines

Files

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.

Changes

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.

  1. 3d ago First seen · 161 lines · 40 tokens per session scan A 457ab0b9e8c4

Subscribe to this mod's changes

product-writing is a skill published in the GitHub repository scarletkc/agents (208 stars, last pushed yesterday), licensed Apache-2.0. It adds 40 tokens to every session and 1,913 once invoked, about $0.0002 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-09-08.

Related

Other skills, from other repositories

maintaining-windows-health

Hands-on playbook for Windows 11 disk cleanup, dev-machine optimization, and proactive health alerting. Use when the PC is full or slow, when a BSOD / Kernel-Power 41 / crash dump / commit-memory pressure happened, when the user asks to free disk space, audit storage, set up disk/memory alerts, or restore the same…

CodeAlive-AI/ai-driven-development · 191 tokens

prompt-engineering

Universal prompt engineering techniques for any LLM. Use when crafting, optimizing, or reviewing prompts for AI models. Triggers on requests like "improve this prompt", "write a system prompt", "optimize my instructions", "help me prompt engineer", "audit this prompt", "review my prompt", or when building agentic…

CodeAlive-AI/ai-driven-development · 76 tokens

installing-cli-tools

Install, upgrade, configure, and verify developer CLI tools safely. Use when a user asks to install a new CLI, command-line app, SDK tool, package-manager binary, GitHub release binary, language runtime tool, or AI/vendor CLI; configure shell PATH/completions; run first login; set API keys, tokens, or env variables…

CodeAlive-AI/ai-driven-development · 94 tokens

repo-activity-summary

Summarize a repository's recent engineering activity from git history — technologies, work types, churn hotspots, contributor patterns, and velocity. Use when asking "what has this repo been working on", "is this project active", "who contributes what", "where are the hotspots", or before onboarding onto an unfamiliar…

CodeAlive-AI/ai-driven-development · 70 tokens

clipboard

Copy text to clipboard with optional rich formatting. Triggers on "copy to clipboard", "copy that", "pbcopy", "copy formatted", "copy rich text".

CodeAlive-AI/ai-driven-development · 36 tokens

fetch-url-as-markdown

Fetch a web page (URL) and return clean Markdown via local trafilatura, with Exa MCP as a fallback for JS-rendered or anti-bot pages. Use when the user asks to read, fetch, scrape, summarize, or quote a URL — prefer this over the built-in WebFetch tool. Don't use for binary files (PDFs, images, archives) or for…

CodeAlive-AI/ai-driven-development · 90 tokens