react

react is a cursor rule for Cursor from kok-o/koko-contextos-agents. It costs 0 tokens per session (1,788 once invoked), scanned A, original, MIT.

A set of React coding rules for building user interfaces from reusable components. It covers state updates, rendering, effects, performance, responsive interactions, and accessibility.

In plain words
What is it for?
Use it when creating, refactoring, or optimizing React components, hooks, context providers, and interactive UI states.
Why use it?
It prevents common React problems such as unnecessary re-renders, mutated state, unstable list identifiers, remounted components, and unfinished effects.

Cursor rule for Cursor

Written for Cursor: installed under .cursor/.

Good fit Use it when creating, refactoring, or optimizing React components, hooks, context providers, and interactive UI states.

Compare 6 cursor rules from other repositories ↓
Install with agentmods
npx agentmods add rules/kok-o/koko-contextos-agents/react
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.

Clone the repo
git clone --depth 1 https://github.com/kok-o/koko-contextos-agents

Made for: Cursor.

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 react

README.md
[![agentmods](https://agentmods.dev/badge/rules/kok-o/koko-contextos-agents/react/github.svg)](https://agentmods.dev/rules/kok-o/koko-contextos-agents/react)
Your own site
<a href="https://agentmods.dev/rules/kok-o/koko-contextos-agents/react"><img src="https://agentmods.dev/badge/rules/kok-o/koko-contextos-agents/react/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 react

Your own site · 80×15
<a href="https://agentmods.dev/rules/kok-o/koko-contextos-agents/react"><img src="https://agentmods.dev/badge/rules/kok-o/koko-contextos-agents/react.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 0 Nothing until a file matches its globs; then the whole rule loads.
When invoked 1,788 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.00000 $0.01788
Opus 5.5 $0.00000 $0.00715
Sonnet 5.5 $0.00000 $0.00358
Haiku 4.5 $0.00000 $0.00179

Measured 1mo ago against content hash 8ff5cbb64d1d, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

react 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 1mo 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/react.mdc · 216 lines

How it starts

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

Skill: React

React Engineering & Performance Best Practices

Overview

Enforces declarative, component-driven UI architecture with optimal re-render cycles, state colocation, responsive optimistic updates, and robust accessibility standards.

When to Use

Activate whenever creating, refactoring, or optimizing React functional components, custom hooks, context providers, or UI interaction states.

Negative Constraints (What NOT to Do)

  1. NEVER use useEffect to synchronize or compute derived state: Calculate derived state inline during render. Use useMemo only for computationally intensive derivations.
  2. NEVER use array indices as key props on dynamic or reorderable lists: Always use stable, unique entity identifiers (item.id).
  3. NEVER mutate React state directly: Always return new immutable references ([...prev, newItem] or { ...prev, key: value }).
  4. NEVER declare subcomponents inside the render body of parent components: Declare components at module scope or in dedicated files to prevent DOM node remounting and lost focus state.
  5. NEVER create memory leaks in useEffect: Always provide clean-up functions for event listeners, AbortController, timers, and websocket subscriptions.
  6. NEVER lift state higher than necessary: Colocate state to the nearest common ancestor or leaf component to prevent wasteful re-renders of unrelated subtrees.

Rules & Patterns

1. State Colocation & Re-render Optimization

  • State Colocation: Keep state as close as possible to the components that consume it.
  • Composition to Prevent Re-renders: Pass expensive static subtrees as children to wrapper components holding state so the children do not re-render when the wrapper updates.
export function ExpandableCard({ title, children }: { title: string; children: React.ReactNode }) {
  const [isOpen, setIsOpen] = useState(false);

  return (
    <div className="rounded-xl border p-4">
      <button 
        type="button"
        onClick={() => setIsOpen(v => !v)}
        className="flex w-full justify-between font-semibold"
        aria-expanded={isOpen}
      >
        <span>{title}</span>
        <span>{isOpen ? '−' : '+'}</span>
      </button>
      {isOpen && <div className="mt-3 pt-3 border-t">{children}</div>}
    </div>
  );
}

Read the full file on GitHub · 216 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. 1mo ago First seen · 216 lines · 0 tokens per session scan A 8ff5cbb64d1d

Subscribe to this mod's changes

react is a cursor rule published in the GitHub repository kok-o/koko-contextos-agents (2 stars, last pushed 1mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,788 tokens. 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.

Related

Other cursor rules, from other repositories

hatch3r-component-conventions

Component structure, styling tokens, loading/error/empty states, form validation timing, and accessible label patterns for Vue, React, and JSX.

hatch3r/hatch3r · 0 tokens

react-javascript-performance

JavaScript performance micro-optimizations for React applications including loops, caching, data structures, Set/Map lookups, array methods, RegExp hoisting, and immutable operations. Use when optimizing hot paths, working with arrays, loops, caching, or data structure lookups.

alonsarias/agent-rules · 0 tokens

react-performance-critical

Critical React performance patterns for eliminating async waterfalls and optimizing bundle size. Use when dealing with slow loading, Promise.all, async/await parallelization, bundle size optimization, lazy loading, code splitting, barrel file imports, or tree shaking issues.

alonsarias/agent-rules · 0 tokens

react-advanced-patterns

Advanced React patterns for refs, stable callbacks, useEffectEvent, and application initialization. Use when dealing with event handler refs, stable callback references, subscription management, effect dependencies, or one-time app initialization.

alonsarias/agent-rules · 0 tokens

react-rendering-performance

React rendering and DOM performance patterns for animations, SVG optimization, CSS content-visibility, conditional rendering, and useTransition loading states. Use when working with animations, SVG elements, long lists, show/hide toggles, or loading state management.

alonsarias/agent-rules · 0 tokens

best-practices

shadcn/ui Best Practices - enforces current best practices when working with shadcn/ui code.

ofershap/shadcn-best-practices · 147 tokens