📐 PatrickJS/awesome-cursorrules - A Referencia
O PatrickJS/awesome-cursorrules e a maior e mais popular colecao de cursor rules do ecossistema, com milhares de stars no GitHub. Cursor rules sao o equivalente de skills para o Cursor IDE - elas definem como o AI assistant se comporta dentro de cada projeto.
A colecao e organizada por framework e linguagem: React, Next.js, Vue, Angular, Python, Rust, Go e muito mais. Cada rule e um arquivo .cursorrules que pode ser colocado na raiz do projeto para customizar o comportamento do AI.
Exemplo: .cursorrules para React + TypeScript
# React + TypeScript Rules
You are an expert in React, TypeScript, and Tailwind CSS.
## Code Style:
- Use functional components with TypeScript interfaces
- Prefer named exports over default exports
- Use const arrow functions for components
- Always type props explicitly (no `any`)
## State Management:
- Use React Query for server state
- Use Zustand for client state
- Avoid useEffect for data fetching
## File Structure:
- Components in PascalCase directories
- One component per file
- Co-locate tests with components
🌊 Windsurf-Samples/cascade-customizations-catalog
O catalogo oficial de customizacoes Windsurf Cascade e mantido pela propria equipe do Windsurf. Ele define o padrao para customizacoes da IDE, incluindo format de arquivo, campos de metadata e padroes de ativacao.
Windsurf usa o conceito de "flows" - sequencias de acoes que o AI executa em resposta a triggers especificos. Customizacoes podem definir novos flows, modificar flows existentes e criar regras de quando cada flow deve ser ativado. Isso permite automacoes sofisticadas integradas ao workflow da IDE.
Tipos de Customizacao
- • Global Rules: Aplicam a todos os projetos
- • Project Rules: Especificas por projeto
- • Language Rules: Por linguagem/framework
- • Flow Triggers: Automacoes contextuais
Flows Populares
- • Auto-Test: Gera testes ao criar funcoes
- • Doc-Gen: Documenta ao salvar arquivo
- • Refactor: Sugere melhorias automaticamente
- • Review: Revisa antes de commit
🔧 RuleSurf - Gerenciador de Regras
RuleSurf e uma ferramenta para gerenciar e sincronizar regras entre projetos e membros de equipe. Quando voce tem dezenas de projetos com regras customizadas, manter tudo atualizado e consistente se torna um desafio. RuleSurf resolve isso com um sistema centralizado de gestao.
A ferramenta permite: criar "rule packs" (colecoes de regras relacionadas), sincronizar regras entre projetos, versionar mudancas e resolver conflitos quando regras de diferentes fontes se contradizem. E especialmente util para equipes grandes que precisam de consistencia.
Workflow com RuleSurf
# Instalar RuleSurf
npm install -g rulesurf
# Inicializar em um projeto
rulesurf init
# Adicionar rule pack
rulesurf add @team/react-rules
rulesurf add @team/testing-rules
# Sincronizar entre projetos
rulesurf sync --all
# Verificar conflitos
rulesurf check --verbose
💾 cascade-memory-bank - Memoria Persistente
O cascade-memory-bank implementa memoria persistente para agentes de IDE. O problema: agentes perdem contexto entre sessoes. A solucao: um sistema de "memory files" que o agente le ao iniciar e atualiza ao longo do trabalho, mantendo continuidade entre sessoes.
O memory bank tipicamente inclui: decisoes arquiteturais tomadas, padroes identificados no projeto, bugs encontrados e resolvidos, convencoes da equipe e estado atual de tarefas em andamento. Esse contexto persistente permite que o agente "retome de onde parou" mesmo apos dias de inatividade.
Arquivos do Memory Bank
project-context.md
Visao geral do projeto, stack, arquitetura, dependencias principais
decisions.md
ADRs (Architecture Decision Records) tomados durante o projeto
patterns.md
Padroes identificados e convencoes adotadas pela equipe
progress.md
Estado atual de tarefas, o que foi feito e o que falta
🔀 Migracoes entre Cursor e Windsurf
Muitos desenvolvedores alternam entre Cursor e Windsurf, e converter regras entre os formatos e uma necessidade pratica. Embora os conceitos sejam similares, os formatos de arquivo e mecanismos de ativacao diferem. Conhecer ambos permite portabilidade completa das suas skills.
A boa noticia e que o conteudo das regras (as instrucoes em si) e quase identico - a diferenca esta na "embalagem". Um conversor simples pode transformar .cursorrules em formato Windsurf e vice-versa, preservando a logica das instrucoes.
Comparacao de Formatos
| Aspecto | Cursor | Windsurf | Claude Code |
|---|---|---|---|
| Arquivo | .cursorrules | .windsurfrules | CLAUDE.md |
| Local | Raiz do projeto | Raiz do projeto | Raiz ou .claude/ |
| Formato | Markdown | Markdown | YAML + Markdown |
| Skills | .cursor/rules/ | Cascade flows | .claude/commands/ |
🎯 Criando Regras Otimizadas
Criar regras otimizadas que maximizam a qualidade do output exige entender como modelos de linguagem processam instrucoes. Regras mais especificas e com exemplos concretos produzem resultados muito melhores que instrucoes vagas e genericas.
Tecnicas de otimizacao incluem: usar exemplos negativos (o que NAO fazer), definir prioridades claras quando regras conflitam, manter regras curtas e focadas em vez de longas e genericas, e testar iterativamente medindo a qualidade do output em cenarios reais.
Boas Praticas para Regras
# Regra RUIM (vaga):
Write good code that follows best practices.
# Regra BOA (especifica):
- Functions must be under 20 lines
- Every function needs a JSDoc comment
- Use early returns instead of nested if/else
- Prefer const over let, never use var
- Error messages must include context: what failed and why
# Regra OTIMA (com exemplos):
Error handling pattern:
// GOOD:
throw new AppError(`Failed to fetch user ${userId}: ${error.message}`)
// BAD:
throw new Error("Something went wrong")
🎯 Proximo Passo
No ultimo modulo desta trilha, exploramos Marketplaces & Ferramentas - onde descobrir, publicar e gerenciar skills em plataformas dedicadas.
📚 Resumo do Modulo
Proximo Modulo:
6.8 - Marketplaces & Ferramentas