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.
git clone --depth 1 https://github.com/ItamiForge/mcp-react-native-toolkitWrote 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/itamiforge/mcp-react-native-toolkit/cursorrules)<a href="https://agentmods.dev/rules/itamiforge/mcp-react-native-toolkit/cursorrules"><img src="https://agentmods.dev/badge/rules/itamiforge/mcp-react-native-toolkit/cursorrules/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/rules/itamiforge/mcp-react-native-toolkit/cursorrules"><img src="https://agentmods.dev/badge/rules/itamiforge/mcp-react-native-toolkit/cursorrules.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00959 | $0.00959 |
| Opus 5.5 | $0.00384 | $0.00384 |
| Sonnet 5.5 | $0.00192 | $0.00192 |
| Haiku 4.5 | $0.00096 | $0.00096 |
Grade A, and why
cursorrules 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.
How it starts
The opening of the file, as written. The whole thing — 132 lines — stays where its author put it; the contents beside it link to each section on GitHub.
React Native/Expo Mobile Development Project
This project uses React Native and/or Expo for cross-platform mobile development. Follow these guidelines to provide accurate and helpful assistance.
=== CORE RULES ===
- Always detect project context before suggesting code (check package.json for versions)
- Verify APIs exist for the detected React Native/Expo version before suggesting
- Use TypeScript with proper type annotations unless the project uses JavaScript
- Follow React Native performance best practices (memo, useCallback, FlatList optimization)
- Prefer functional components with hooks over class components
- Handle platform differences when necessary using Platform.OS or platform-specific files
=== API VALIDATION ===
- Check React Native version before using new APIs (e.g., useWindowDimensions requires RN 0.61+)
- Check Expo SDK version for Expo-specific APIs
- Verify third-party library versions (React Navigation, Reanimated, Gesture Handler, etc.)
- Use optional chaining and nullish coalescing for safer code
- Import from correct packages (react-native vs expo-* vs @react-navigation/*)
=== BEST PRACTICES ===
- Use FlatList/SectionList for long lists, never ScrollView with many items
- Implement proper loading states and error handling
- Use React.memo() for pure components that render often
- Avoid inline functions in render for frequently re-rendering components
- Use StyleSheet.create() instead of inline styles for performance
- Handle keyboard avoiding behavior for forms
- Test on both iOS and Android platforms
- Use proper accessibility labels and hints
=== NAVIGATION ===
- Use React Navigation for routing (@react-navigation/native)
- Properly type navigation props with TypeScript
- Use navigation.navigate() with proper screen names
- Handle deep linking when required
- Configure proper header options for screens
=== STATE MANAGEMENT ===
- Use React Context for simple state sharing
- Consider Zustand, Jotai, or Redux Toolkit for complex state
- Use React Query or SWR for server state
- Persist state with MMKV or AsyncStorage as appropriate
- Avoid prop drilling more than 2-3 levels deep
=== CODE EXAMPLES ===
--- Optimized FlatList ---
// Optimized FlatList with proper performance settings import React, { memo, useCallback } from 'react'; import { FlatList, Text, View, StyleSheet } from 'react-native';
interface Item { id: string; title: string; }
interface ItemProps { item: Item; }
const ListItem = memo(({ item }: ItemProps) => ( {item.title} ));
export function OptimizedList({ data }: { data: Item[] }) { const renderItem = useCallback( ({ item }: { item: Item }) => , [] );
const keyExtractor = useCallback((item: Item) => item.id, []);
return ( <FlatList data={data} renderItem={renderItem} keyExtractor={keyExtractor} removeClippedSubviews={true} maxToRenderPerBatch={10} windowSize={5} initialNumToRender={10} getItemLayout={(_, index) => ({ length: 50, offset: 50 * index, index, })} /> ); }
const styles = StyleSheet.create({ item: { height: 50, padding: 10 }, });
--- Navigation Setup ---
// Type-safe React Navigation setup import { NavigationContainer } from '@react-navigation/native'; import { createNativeStackNavigator } from '@react-navigation/native-stack'; import type { NativeStackScreenProps } from '@react-navigation/native-stack';
// Define the param list for type safety type RootStackParamList = { Home: undefined; Details: { itemId: string }; Profile: { userId: string }; };
// Export typed navigation props export type RootStackScreenProps = NativeStackScreenProps<RootStackParamList, T>;
const Stack = createNativeStackNavigator();
export function Navigation() { return ( <Stack.Navigator initialRouteName="Home">
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.
- 1mo ago First seen · 132 lines · 959 tokens per session scan A 1a422145b7ea
cursorrules is a cursor rule published in the GitHub repository ItamiForge/mcp-react-native-toolkit (0 stars, last pushed 1mo ago), licensed MIT. It adds 959 tokens to every session, about $0.0038 per session on Opus 5.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.
Other cursor rules, from other repositories
coding-guidelines
React Native Expo SDK 54 project with TypeScript, Expo Router v6, Redux Toolkit, and modern development practices.
expo-development
React Native and Expo development guidelines, commands, and patterns.
cursor-rule
Drive the running React Native app through the rn-devtools-hub MCP server. Use when checking whether a change works in the app, tapping or typing in the UI, finding which file renders an element, proving a request succeeded, diagnosing behaviour that looks impossible, or investigating a bug after the fact.
best-practices
Expo Best Practices - enforces current best practices when working with Expo / React Native code.
app_rules
This document outlines the essential rules and guidelines for developing with the MobileLauncher LT boilerplate. Follow these rules to maintain consistency, scalability, and code quality across the project.
library-conventions
React Native library conventions for this starter. Apply when creating or editing components, hooks, types, or tests in src/.