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.
npx agentmods add rules/kensaurus/cursor-kenji/react-native-jsgit clone --depth 1 https://github.com/kensaurus/cursor-kenjiWrote 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/rules/kensaurus/cursor-kenji/react-native-js)<a href="https://agentmods.dev/rules/kensaurus/cursor-kenji/react-native-js"><img src="https://agentmods.dev/badge/rules/kensaurus/cursor-kenji/react-native-js.svg" alt="Measured on agentmods" height="20"></a>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 | $0.00000 | $0.00655 |
| Opus 5 | $0.00000 | $0.00328 |
| Sonnet 5 | $0.00000 | $0.00131 |
| Haiku 4.5 | $0.00000 | $0.00065 |
Grade A, and why
react-native-js 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 yesterday.
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 — 79 lines — stays where its author put it; the contents beside it link to each section on GitHub.
React Native (JS/TS layer)
Shared code that runs on both Android and iOS. Does NOT include
native module code (that lives in android/ or ios/).
Adjust
src/to your repo's actual path (e.g.apps/mobile/src/).
Stack assumptions (verify against package.json before assuming)
- React Native — version per
package.json - TypeScript strict
- Navigation: React Navigation
- State: <FILL IN — Zustand / Redux Toolkit / Jotai / React Query / Context>
- Networking: <FILL IN — fetch / axios / ky>
- Styling: <FILL IN — StyleSheet.create / styled-components / NativeWind>
If unsure, grep the codebase before introducing a new pattern.
Conventions
- Components in
src/components/, screens insrc/screens/, hooks insrc/hooks/, utils insrc/utils/. - One component per file. Named export. File name matches the component name (PascalCase.tsx).
- Hooks prefix
use; custom hook files start with lowercaseuse. - Platform-specific code:
- Small divergence:
Platform.OS === 'ios'/'android'checks at the top of a function - Large divergence:
*.ios.tsx/*.android.tsxfiles with shared interface
- Small divergence:
- Persistence:
@react-native-async-storage/async-storage. NeverlocalStorage. - Environment vars: via
react-native-configorreact-native-dotenv(whichever the repo uses). Never hardcoded. - Imports: absolute imports if
tsconfig.jsonpaths is set up; otherwise relative within a feature module.
Hard exclusions
- Never import from
react-native-webin this layer. - Never use browser globals (
window,document,navigator.geolocationdirectly — use the RN APIs). - Never bypass the bridge with raw native calls; if you need native
behavior, add a typed native module under
android/andios/.
Verification
npx tsc --noEmit
npm run lint # if a lint script exists
For runtime sanity:
npx react-native start --reset-cache
What NOT to do
- Do not commit
.env*files unless they are the example/template (.env.example). - Do not pin RN to a non-stable version (
0.x.0-rc.x) without explicit instruction. - Do not add new dependencies without checking they support both iOS and Android and the current RN version.
- Do not run codegen scripts (
pod install,gradle sync) silently — flag them as side effects. Note:pod installis CI-only here.
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.
- yesterday First seen · 79 lines · 0 tokens per session scan A 937064a54f30
react-native-js is a cursor rule published in the GitHub repository kensaurus/cursor-kenji (9 stars, last pushed 6d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 655 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-09-03.
Other cursor rules, from other repositories
typescript
Cursor rule "typescript" from girijashankarj/cursor-handbook, covering backend: typescript, strictness, types and conventions.
vue3-typescript-auto
Vue 3 with TypeScript Standards.
typescript-standards
TypeScript development standards and type safety.
react-native
React Native: mobile app development, navigation, native modules.
expo
Expo/React Native: native modules, navigation, platform-specific code.
bun
Bun runtime: Bun.serve, Bun.file, bundler, test runner.