Cursor Rules
Rules são instruções persistentes que personalizam o comportamento do Agent. Elas garantem consistência, padronização e permitem que o Cursor entenda profundamente seu projeto e padrões.
O que são Rules?
Rules são instruções de nível de sistema que:
- São persistentes: Aplicadas automaticamente em conversas
- São reutilizáveis: Compartilhadas entre membros do time
- São contextuais: Podem ser aplicadas baseadas em arquivos ou padrões
- São versionáveis: Armazenadas em
.cursor/rulese versionadas com Git
Diferente de prompts em uma conversa, Rules fornecem contexto persistente que o Agent sempre considera.
Tipos de Rules
1. Project Rules
Armazenadas em .cursor/rules/, versionadas e escopadas ao codebase.
Ideal para:
- Conhecimento específico do domínio
- Padrões de arquitetura
- Workflows automatizados
- Templates e convenções
2. User Rules
Regras globais no seu ambiente Cursor.
Ideal para:
- Estilo de comunicação preferido
- Convenções de código pessoais
- Preferências de desenvolvimento
3. Team Rules
Gerenciadas no dashboard do Cursor (planos Team e Enterprise).
Ideal para:
- Padrões organizacionais
- Compliance e segurança
- Boas práticas da empresa
- Enforçamento obrigatório
4. AGENTS.md
Arquivo simples de markdown na raiz do projeto.
Ideal para:
- Casos de uso simples
- Instruções diretas
- Projetos menores
Estrutura de uma Rule
Cada Rule é uma pasta contendo RULE.md:
.cursor/rules/
my-rule/
RULE.md # Arquivo principal
scripts/ # Scripts auxiliares (opcional)
Formato do RULE.md
---
description: "Esta regra define padrões para componentes frontend"
alwaysApply: false
globs: ["**/*.tsx", "**/*.ts"]
---
# Minha Rule
Quando trabalhar em componentes:
- Sempre use TypeScript
- Prefira componentes funcionais
- Use Tailwind para estilização
- Siga o padrão de nomenclatura do projeto
@component-template.tsx
Tipos de Aplicação
Always Apply
Aplicada em toda conversa. Use para regras fundamentais.
---
alwaysApply: true
---
- Sempre use TypeScript
- Siga os padrões de código do projeto
- Valide código antes de commit
Apply Intelligently
O Agent decide quando aplicar baseado na descrição.
---
description: "Padrões para componentes React"
alwaysApply: false
---
Quando criar componentes React:
- Use functional components
- Prefira hooks sobre classes
- Mantenha componentes pequenos
Apply to Specific Files
Aplicada quando arquivos correspondem ao padrão.
---
globs: ["**/*.test.ts", "**/*.spec.ts"]
---
Para arquivos de teste:
- Use Jest como framework
- Siga padrão AAA (Arrange, Act, Assert)
- Mantenha testes isolados
Apply Manually
Aplicada quando mencionada com @ no chat.
---
description: "Template para criar novos serviços"
alwaysApply: false
---
@my-rule Crie um novo serviço seguindo este template
Exemplos Práticos
Rule para Padrões de API
---
description: "Padrões para criação de endpoints de API"
globs: ["**/api/**/*.ts", "**/routes/**/*.ts"]
---
# API Standards
Ao criar endpoints:
- Use validação com Zod
- Retorne status codes apropriados
- Inclua tratamento de erros
- Documente com JSDoc
- Adicione testes unitários
Estrutura esperada:
```typescript
import { z } from 'zod';
const schema = z.object({
// schema aqui
});
export async function handler(req: Request) {
// validação
// lógica
// resposta
}
@api-template.ts
### Rule para Componentes React
```markdown
---
description: "Estrutura padrão para componentes React"
globs: ["**/*.tsx"]
---
# React Component Standards
Componentes devem:
- Ser funcionais
- Usar TypeScript
- Ter props tipadas
- Seguir naming: PascalCase
- Estar em arquivos separados
Estrutura:
```tsx
interface Props {
// props aqui
}
export function ComponentName({ prop }: Props) {
// implementação
}
### Rule para Workflows
```markdown
---
description: "Workflow para análise de aplicação"
alwaysApply: false
---
Quando pedir para analisar a aplicação:
1. Execute `npm run dev`
2. Capture logs do console
3. Analise performance
4. Sugira melhorias priorizadas
5. Gere relatório estruturado
Best Practices
✅ DO
- Seja específico: Instruções claras e concretas
- Use exemplos: Referencie arquivos com
@filename - Mantenha focado: Rules menores e específicas
- Documente: Explique o "porquê" das regras
- Version controle: Mantenha Rules no Git
❌ DON'T
- Não seja vago: Evite "seja consistente"
- Não exagere: Rules muito longas são menos efetivas
- Não duplique: Reutilize Rules quando possível
- Não ignore contexto: Rules devem fazer sentido para o projeto
Benefícios
Consistência
- Todo o time segue os mesmos padrões
- Código mais uniforme e manutenível
- Menos debates sobre estilo
Produtividade
- Menos tempo explicando padrões
- Agent já conhece as regras
- Menos erros de convenção
Onboarding
- Novos membros aprendem rapidamente
- Documentação viva e atualizada
- Menos perguntas sobre "como fazer"
Qualidade
- Padrões aplicados automaticamente
- Menos code review sobre estilo
- Foco em lógica e arquitetura
Integração com Agents
Rules funcionam perfeitamente com Agents:
- Rules definem padrões do projeto
- Agents seguem essas regras automaticamente
- Resultado: Código consistente e alinhado
Artigos Relacionados
Para mais detalhes sobre Rules, confira:
- 📝 Cursor Rules – Personalizando sua Experiência - Artigo completo sobre Rules
Conclusão
Rules são fundamentais para personalizar o Cursor. Elas transformam o Cursor de uma ferramenta genérica em um assistente que entende profundamente seu projeto.
No próximo capítulo, vamos explorar Commands e como criar workflows automatizados.
Próximo: Cursor Commands