document-feature-product

A rule for writing the user-facing record of a feature. It describes what the feature does, who it is for, how people use it, and what happens in unusual states.

In plain words
What is it for?
Use it after implementing or changing a feature to update its product.md file and the feature index. It covers the user journey, purpose, audience, edge cases, and interface wording.
Why use it?
It keeps product documentation focused on the user experience instead of implementation details. Updating it as behavior changes helps users and teams rely on current information.

Cursor rule for Cursor

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.

agentmods
npx agentmods add rules/rafaelszago/doc-everything/document-feature-product
Clone the repo
git clone --depth 1 https://github.com/rafaelszago/doc-everything

Made for: Cursor.

Per session 89 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 871 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
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 $0.00089 $0.00871
Opus 5 $0.00044 $0.00436
Sonnet 5 $0.00018 $0.00174
Haiku 4.5 $0.00009 $0.00087

Measured 2d ago against content hash 7d8e171139c4, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

document-feature-product 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 2d 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.

.cursor/rules/document-feature-product.mdc · 98 lines

How it starts

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

Document a feature — product

Record the user-facing view of a feature: what it does, who it's for, and how a person moves through it. Companion to the document-feature-technical rule (the engineering view). Describe the experience and the value to the user, not the implementation.

Where it goes

docs/features/<feature>/product.md       ← this rule
docs/features/README.md                  ← index — this rule owns it
docs/features/<feature>/technical.md     ← document-feature-technical rule
  • <feature> is a kebab-case slug — the same slug used by the matching technical.md.
  • If this project pins the docs directory elsewhere (via .cursor/doc-everything.json or .claude/doc-everything.json docsPath, or the DOC_EVERYTHING_DOCS_PATH env var), use that path instead of docs/features/.
  • One file per feature — update product.md in place as behavior changes.

How to write it

  1. Describe what ships, not the roadmap. If a feature is scaffolded/stubbed, say so plainly in the journey.
  2. Fill the template. Skip a section in one line if it doesn't apply.
  3. Always update docs/features/README.md — add/refresh the one-line entry for this feature so the index stays a complete map of the product.
  4. Cross-link the matching technical.md.
  5. If the product has copy/localization or a visual/design language worth noting (tone, terminology, colors that carry meaning), capture it — see the optional sections in the template.

Template

# <Feature> — product

> Technical view: ./technical.md

## What it is
One line: the feature in user terms, and who it's for.

## Why it exists
The problem it solves and the value it delivers.

## Where the user finds it
Entry points the user actually reaches (route/screen, nav item, trigger).

## User journey
Numbered steps of what the user sees and does, start to finish. Quote key UI
copy where it matters.

## States & edge cases
Loading, empty, error, success — and any gating (signed-out, incomplete setup,
plan-locked). What the user sees in each.

## Copy & localization
(Optional) Primary language and any translations; where the copy lives. Note if
copy is centralized (content files) vs hardcoded.

## Visual language
(Optional) Design tokens / accent meaning / iconography this feature relies on,
and any conventions it must respect.

## Out of scope / future
What this feature deliberately does not do yet.

Read the full file on GitHub · 98 lines

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. 2d ago First seen · 98 lines · 89 tokens per session scan A 7d8e171139c4

Subscribe to this mod's changes

document-feature-product is a cursor rule published in the GitHub repository rafaelszago/doc-everything (2 stars, last pushed 1mo ago), licensed MIT. It adds 89 tokens to every session and 871 once invoked, about $0.0004 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-31.