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/toptalentcoder/cursor-awesomerules/typescript-code-generation-rulesgit clone --depth 1 https://github.com/toptalentcoder/Cursor-AwesomeRulesWrote 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/toptalentcoder/cursor-awesomerules/typescript-code-generation-rules)<a href="https://agentmods.dev/rules/toptalentcoder/cursor-awesomerules/typescript-code-generation-rules"><img src="https://agentmods.dev/badge/rules/toptalentcoder/cursor-awesomerules/typescript-code-generation-rules.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.1 | $0.00402 | $0.00402 |
| Opus 5 | $0.00201 | $0.00201 |
| Sonnet 5 | $0.00080 | $0.00080 |
| Haiku 4.5 | $0.00040 | $0.00040 |
Grade A, and why
typescript-code-generation-rules 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.
This is a copy
100% identical to typescript-code-generation-rules — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
What it actually says
-
Always use TypeScript for type safety. Provide appropriate type definitions and interfaces.
-
Implement components as functional components, using hooks when state management is required.
-
Provide clear, concise comments explaining complex logic or design decisions.
-
Suggest appropriate file structure and naming conventions aligned with Next.js 14 best practices.
-
Use the
'use client'directive only when creating Client Components. -
Employ the following component definition syntax in .tsx files, allowing TypeScript to infer the return type: tsx const ComponentName = () => { // Component logic };
-
For props, use interface definitions: tsx interface ComponentNameProps { // Props definition } const ComponentName = ({ prop1, prop2 }: ComponentNameProps) => { // Component logic };
-
Use named exports for components in .tsx files: tsx export const ComponentName = () => { // Component logic };
-
For page components, use default exports in .tsx files: tsx const Page = () => { // Page component logic }; export default Page;
-
If explicit typing is needed, prefer
React.FCorReact.ReactNode: tsx import React from 'react'; const ComponentName: React.FC = () => { // Component logic }; // OR const ComponentName = (): React.ReactNode => { // Component logic }; -
When defining React components, avoid unnecessary type annotations and let TypeScript infer types when possible.
-
Use
React.FCorReact.ReactNodefor explicit typing only when necessary, avoidingJSX.Element. -
Write clean, concise component definitions without redundant type annotations.
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.
- 2d ago First seen · 51 lines · 402 tokens per session scan A 134ec75a769c
typescript-code-generation-rules is a cursor rule published in the GitHub repository toptalentcoder/Cursor-AwesomeRules (6 stars, last pushed 1y ago), licensed CC0-1.0. It adds 402 tokens to every session, about $0.0020 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to typescript-code-generation-rules, differing in 0 lines, and is treated as a copy.
Other cursor rules, from other repositories
ai-agent-specialist
Cursor rules for TypeScript, React, Node.js, clean architecture, testing, and WHY-oriented engineering guidance.
django-python
Rules for writing Python services at PostHog (Python servers powered by the Django framework).
rust
Rules for writing Rust services at PostHog. Focuses on writing async Rust with Tokio and encoding general Rust best practices from the Rust book and docs.
react-typescript
Rules for writing frontend code at PostHog (mostly React + Typescript with Kea).
react-typescript
Rules for writing frontend code at PostHog (mostly React + Typescript with Kea).
05-web-development
Use the following format for code blocks.