Melhores práticas e solução de problemas das regras MDC
As regras MDC (Model-Driven Code) ajudam você a manter uma qualidade de código consistente e automatizar tarefas repetitivas no Cursor.
Entendendo as regras MDC
As regras MDC são ferramentas poderosas que permitem:
- Automatizar revisões de código e formatação
- Implementar padrões de codificação da equipe
- Detectar e corrigir problemas comuns
- Melhorar a qualidade e consistência do código
Tipos de regras
-
Regras sintáticas
- Formatação de código
- Convenções de nomenclatura
- Estrutura de arquivos
-
Regras semânticas
- Complexidade do código
- Verificação de melhores práticas
- Detecção de vulnerabilidades de segurança
-
Regras personalizadas
- Requisitos específicos do projeto
- Convenções da equipe
- Validação de lógica de negócios
Configuração de regras
Configuração básica
Crie um diretório .cursor/rules
na raiz do projeto:
mkdir -p .cursor/rules
Definição de regras
Crie um arquivo de regras:
{
"name": "Convenção de nomenclatura",
"description": "Aplica um estilo de nomenclatura consistente",
"patterns": [
{
"type": "variável",
"style": "camelCase",
"exceptions": ["CONSTANTS"]
}
]
}
Prioridade de regras
Defina a prioridade das regras de acordo com a importância:
{
"priority": {
"security": 1,
"formatting": 2,
"naming": 3
}
}
Problemas comuns e soluções
Regras não aplicadas
Se as regras não estão sendo aplicadas:
-
Verificar configuração
# Validar arquivo de regras
cat .cursor/rules/config.json
# Verificar erros de sintaxe
jsonlint .cursor/rules/*.json -
Atualizar cache de regras
- Reiniciar o Cursor
- Limpar cache de regras
- Recarregar projeto
Conflitos de regras
Gerenciar conflitos de regras:
{
"conflicts": {
"rule1": {
"priority": "high",
"override": ["rule2", "rule3"]
}
}
}
Problemas de desempenho
Otimizar a execução de regras:
-
Limitar escopo
{
"include": ["src/**/*.ts"],
"exclude": ["**/*.test.ts"]
} -
Validação em lote
{
"batch": {
"size": 100,
"concurrent": true
}
}
Melhores práticas
1. Organização de regras
- Categorizar regras por função
- Usar nomes claros
- Manter regras simples
2. Controle de versão
- Incluir regras no controle de versão
- Documentar alterações de regras
- Manter documentação de regras
3. Colaboração da equipe
- Discutir regras com a equipe
- Coletar feedback
- Revisar e atualizar regularmente
Funcionalidades avançadas
Validador personalizado
Criar validador específico do projeto:
module.exports = {
validate: (code, context) => {
// Lógica de validação personalizada
return {
valid: true,
messages: []
};
}
};
Correção automática
Implementar correção automática:
module.exports = {
fix: (code, issues) => {
// Lógica de correção automática
return fixedCode;
}
};
Testes de integração
Adicionar testes para regras:
describe('Testes de regras MDC', () => {
test('Convenção de nomenclatura', () => {
// Lógica de teste de regras
});
});
Ferramentas de depuração
Diagnóstico de regras
Ativar registro detalhado:
{
"mdc.rules.debug": true,
"mdc.rules.logLevel": "verbose"
}
Análise de desempenho
Monitorar execução de regras:
# Analisar desempenho de regras
cursor analyze-rules
# Gerar relatório de desempenho
cursor rules-report
Cenários comuns
1. Revisão de código
Automatizar processo de revisão de código:
{
"review": {
"autoFix": true,
"blockOnError": true,
"notifyReviewer": true
}
}
2. Integração CI/CD
Usar regras na integração contínua:
steps:
- name: Verificar regras MDC
run: cursor check-rules
3. Integração IDE
Configurar integração do editor:
{
"cursor.rules.enableFormatting": true,
"cursor.rules.showInlineHints": true
}