agentleFS
t3-osst3-oss/t3-env/.cursor/rules/general.mdc

t3-env / rules

Cursor rule4k starsChanged 17 months agoMITView on GitHub

You are an expert in TypeScript library development with excellent taste in API design. You're working in a monorepo using:

We split this general.mdc into the rules it gives an agent

20 rules. About 0 are common, 16 are distinctive, and 4 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈16

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Follow the user's requirements carefully & to the letter.

    line 11
  2. Distinctive:

    Write straightforward, readable, and maintainable code.

    line 24
  3. Distinctive:

    Use strong typing, avoid 'any'.

    line 25
  4. Distinctive:

    Do not use any third party library.

    line 27
  5. Very specific:

    Create clearly documented changesets for your introduced changes using bun changeset.

    line 29
  6. Distinctive:

    Use descriptive names: verbs & nouns (e.g., getUserData)

    line 41
  7. Very specific:

    Prefer the function keyword over arrow functions where their differences doesn't matter.

    line 42
  8. Distinctive:

    Document with JSDoc annotations

    line 43
  9. Distinctive:

    Prefer custom interfaces over inline types

    line 47
  10. Distinctive:

    Use 'readonly' for immutable properties

    line 48
  11. Distinctive:

    If an import is only used as a type in the file, use 'import type' instead of 'import'

    line 49
  12. Very specific:

    Always validate your changes confirm to the project lint configuration by running bun run lint.

    line 53
  13. Very specific:

    Write tests for changes and validate they pass using bun run test.

    line 54
  14. Distinctive:

    Check for code duplication

    line 59
  15. Distinctive:

    Use the active voice

    line 67
  16. Distinctive:

    Use the present tense

    line 68
  17. Distinctive:

    Write in a clear and concise manner

    line 69
  18. Distinctive:

    Use lists and tables when appropriate

    line 71
  19. Distinctive:

    When writing JSDocs, only use TypeDoc compatible tags.

    line 72
  20. Distinctive:

    Always write JSDocs for all code: classes, functions, methods, fields, types, interfaces.

    line 73

≈ “Common” is an estimate: at least 1 in 5 of the 6,350 Cursor rule files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
general.mdc
---
description: 
globs: 
alwaysApply: true
---

# Overview

You are an expert in TypeScript library development with excellent taste in API design.

- Follow the user's requirements carefully & to the letter.
- First think step-by-step - describe your plan for what to build in pseudocode, written out in great detail.

## Tech Stack

You're working in a monorepo using:

- TypeScript
- Bun
- Vitest

## Core Principles

- Write straightforward, readable, and maintainable code. Use explicit types on exported functions.
- Use strong typing, avoid 'any'.
- Restate what the objective is of what you are being asked to change clearly in a short summary.
- Do not use any third party library. The library must confirm to [Standard Schema](mdc:https:/standardschema.dev) and not be tied to any one schema validation library.
- Reason about the API design before implementing changes. Is it possible to achieve strong and generic typing for your chosen API? If not, reconsider.
- Create clearly documented changesets for your introduced changes using `bun changeset`.

## Coding Standards

### Naming Conventions

- Variables, functions, methods: camelCase
- Files, directories: kebab-case
- Constants, env variables: UPPERCASE

### Functions

- Use descriptive names: verbs & nouns (e.g., getUserData)
- Prefer the `function` keyword over arrow functions where their differences doesn't matter.
- Document with JSDoc annotations

### Types and Interfaces

- Prefer custom interfaces over inline types
- Use 'readonly' for immutable properties
- If an import is only used as a type in the file, use 'import type' instead of 'import'

### Validating changes

- Always validate your changes confirm to the project lint configuration by running `bun run lint`.
- Write tests for changes and validate they pass using `bun run test`.

## Code Review Checklist

- Ensure proper typing
- Check for code duplication
- Verify error handling
- Confirm test coverage
- Review naming conventions
- Assess overall code structure and readability

## Documentation

- Use the active voice
- Use the present tense
- Write in a clear and concise manner
- Present information in a logical order
- Use lists and tables when appropriate
- When writing JSDocs, only use TypeDoc compatible tags.
- Always write JSDocs for all code: classes, functions, methods, fields, types, interfaces.

Download now (ZIP)

Trending

Steady: 0 new projects took it in the last 4 weeks, none the 4 weeks before.thin data

Week of Aug 30: 0 new projectsWeek of Sep 6: 0 new projectsWeek of Sep 13: 0 new projectsWeek of Sep 20: 0 new projectsWeek of Sep 27: 0 new projectsWeek of Oct 4: 0 new projectsWeek of Oct 11: 0 new projectsWeek of Oct 18: 0 new projects
Aug 2026Sep 2026Oct 2026
New projects taking a version of this file each week, over the 8 weeks our latest run read: only 0 in all, so this is a hint, not a trend.

Who's talking about t3-oss/t3-env

The biggest 5 of 51 mentions linking to the repository that our crawl found. Each line is their own headline.

See all 51

Talked about on GitHub and Stack Overflow (51 times).

On GitHub · 50

45 more on GitHub

On Stack Overflow · 1

  • Where files are headingNew Cursor rule files have more rules about planning and tracking tasks, and fewer about code style.

    Of the Cursor rule files we read, the 3,978 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.