Toda equipe de desenvolvimento Salesforce conhece a dor de revisar código com problemas que não aparecem na compilação. Um SOQL dentro de um loop, um DML executado mil vezes em cascata, uma query redundante que consome governor limits sem necessidade. Esses anti-patterns passam despercebidos em revisões manuais e só aparecem quando o código já está em produção — muitas vezes depois de causar incidentes.
O ApexGuru mudou essa realidade. Disponível agora como GA dentro do Salesforce DX MCP Server, ele traz revisão de código com inteligência artificial diretamente no IDE, usando dados reais de runtime do seu org. Não é uma ferramenta genérica de lint — ele conhece o contexto do Salesforce e analisa performance com base no que realmente acontece quando seu código roda.
O problema que o ApexGuru resolve
Quem trabalha com Apex em projetos grandes sabe que os problemas mais caros não são bugs óbvios. São anti-patterns silenciosos que funcionam no sandbox com poucos registros e explodem em produção com volume real. Um SOQL query dentro de um loop de trigger que passa em todos os testes com 200 registros, mas derruba a org inteira quando processa 10.000.
O Salesforce já oferece ferramentas como o Code Analyzer e o PMD para detectar parte desses problemas. Mas o ApexGuru vai além: ele combina detecção estática com métricas de runtime capturadas pelo Scale Center do org. Quando ele sinaliza que um SOQL é ineficiente, não está fazendo uma suposição teórica — ele viu aquele query consumir recursos reais no seu ambiente.
Isso muda completamente a dinâmica de code review. Em vez de confiar na memória e experiência de um revisor humano para lembrar de todos os padrões que devem ser evitados, o desenvolvedor recebe alertas contextuais enquanto escreve o código.
Como o ApexGuru funciona dentro do Salesforce DX MCP Server
O ApexGuru é uma das capabilities disponíveis no Salesforce DX MCP Server, que agora está em Beta. O MCP Server segue o padrão Model Context Protocol, um protocolo aberto que permite que ferramentas de IA descubram e invoquem funcionalidades de servidores externos.
Na prática, isso significa que quando você usa um coding agent como Claude Code, Cursor ou o Agentforce Vibes, o ApexGuru está disponível como uma ferramenta que o agente pode chamar automaticamente. Você não precisa abrir uma ferramenta separada, copiar código, colar em um analisador e voltar ao IDE. A revisão acontece no fluxo do trabalho.
A detecção cobre os anti-patterns mais comuns e impactantes do Apex:
- SOQL e DML dentro de loops — o clássico que derruba governor limits
- SOQL redundante — queries repetidas que poderiam ser consolidadas
- Loops desnecessários — coleções processadas quando uma abordagem set-based resolveria
- Testes ineficientes — métodos de teste que consomem mais recursos do que deveriam
O diferencial está na integração com o Test Case Insights. O ApexGuru não apenas diz “esse código pode ter problemas de performance” — ele mostra quais testes unitários estão associados ao código problemático e quanto tempo eles consomem. Isso permite priorizar correções com base em impacto real, não em suposições.
Configurando o ApexGuru no seu ambiente
A ativação do ApexGuru é mais simples do que parece. Ele já vem habilitado por default no Salesforce DX MCP Server, então se você já usa o server, basta garantir que a ferramenta de scale-products está ativa.
Para quem ainda não configurou o Salesforce DX MCP Server, o processo começa com a instalação do CLI:
sf plugins install @salesforce/sfdx-mcp-serverDepois, configure o MCP server no seu coding agent. No Claude Desktop, por exemplo, o arquivo de configuração fica em ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"salesforce-dx": {
"command": "sf",
"args": ["mcp", "start"],
"env": {
"SF_TARGET_USERNAME": "seu-usuario@org.com"
}
}
}
}No Cursor, o processo é parecido. Vá em Settings, MCP Servers e adicione a mesma configuração. O servidor expõe automaticamente todas as ferramentas disponíveis, incluindo o ApexGuru.
Uma vez conectado, o coding agent passa a ter acesso ao ApexGuru como uma ferramenta nativa. Quando você abre um arquivo Apex ou pede para o agente analisar uma classe, ele pode invocar o ApexGuru automaticamente para verificar anti-patterns.
Detecção de anti-patterns com exemplos reais
Para entender como o ApexGuru funciona na prática, vamos olhar para situações concretas que todo desenvolvedor Salesforce já enfrentou.
O anti-pattern mais comum e mais destrutivo. Considere este trigger handler:
public class OpportunityTriggerHandler {
public static void processOpportunities(List<Opportunity> opps) {
for (Opportunity opp : opps) {
// Anti-pattern: SOQL dentro do loop
Account acc = [SELECT Id, Name, Industry
FROM Account
WHERE Id = :opp.AccountId];
if (acc.Industry == 'Technology') {
opp.Discount__c = 0.15;
}
// Anti-pattern: DML dentro do loop
update opp;
}
}
}O ApexGuru detectaria dois problemas aqui. Primeiro, o SOQL query executando uma vez por registro — com 200 oportunidades, são 200 queries contra o limite de 100 por transação. Segundo, o DML individual em cada registro, quando um bulk update resolveria tudo em uma operação.
A versão correta, sugerida pelo ApexGuru, consolidaria as queries e operações DML:
public class OpportunityTriggerHandler {
public static void processOpportunities(List<Opportunity> opps) {
// Coletar todos os AccountIds de uma vez
Set<Id> accountIds = new Set<Id>();
for (Opportunity opp : opps) {
if (opp.AccountId != null) {
accountIds.add(opp.AccountId);
}
}
// Uma única query para todos os accounts
Map<Id, Account> accountsMap = new Map<Id, Account>(
[SELECT Id, Industry FROM Account WHERE Id IN :accountIds]
);
// Processar sem queries adicionais
for (Opportunity opp : opps) {
Account acc = accountsMap.get(opp.AccountId);
if (acc != null && acc.Industry == 'Technology') {
opp.Discount__c = 0.15;
}
}
// Um único bulk update
update opps;
}
}O Test Case Insights do ApexGuru vai além da detecção de anti-patterns no código de produção. Ele analisa os próprios testes e identifica aqueles que consomem tempo e recursos desproporcionais.
Um teste que cria 200 registros em setup quando 10 seriam suficientes para cobrir o cenário, ou que executa asserts genéricos que não validam comportamento real — esses problemas raramente aparecem em code review tradicional, mas impactam diretamente o tempo de deploy e a produtividade da equipe.
O ApexGuru sinaliza esses testes e sugere otimizações específicas, como reduzir o volume de dados de teste ou substituir asserts genéricos por validações mais precisas.
SLDS Guidelines: produtividade além do Apex
O Salesforce DX MCP Server não para no ApexGuru. Junto com ele, a release Summer ’26 trouxe os SLDS Guidelines Tools, que trazem orientação de design system direto no IDE.
Quando você está desenvolvendo um Lightning Web Component e precisa saber qual hook de estilo usar para um determinado componente do SLDS, ou quer consultar o blueprint de um componente antes de implementar, as guidelines estão disponíveis como ferramentas que o coding agent pode consultar em tempo real.
Isso elimina a necessidade de ficar alternando entre o IDE e a documentação do SLDS. O agente consulta as guidelines automaticamente quando você pede ajuda com um componente Lightning, garantindo que o código gerado siga os padrões oficiais do design system.
Agent Skills: conhecimento especializado para coding agents
A Summer ’26 também lançou a biblioteca open-source de Salesforce Development Skills, disponíveis em github.com/forcedotcom/sf-skills. Essas skills são pacotes de conhecimento especializado que estendem as capacidades dos coding agents com workflows específicos para desenvolvimento Salesforce.
As skills foram otimizadas para funcionar com o Agentforce Vibes, mas são compatíveis com qualquer coding agent — Claude Code, Codex, Cursor. A instalação é feita com um único comando:
npx skills add forcedotcom/sf-skillsCada skill encapsula conhecimento sobre um aspecto específico do desenvolvimento Salesforce — desde boas práticas de trigger framework até padrões de integração com o Data Cloud. Quando combinadas com o ApexGuru, criam um ambiente onde o coding agent não apenas corrige problemas, mas previne que eles aconteçam.
Impacto real no workflow de desenvolvimento
A integração do ApexGuru com o Salesforce DX MCP Server representa uma mudança de como pensamos sobre code review no ecossistema. Tradicionalmente, a revisão de código acontece depois que o desenvolvedor terminou de escrever — no pull request, durante um sprint review, ou quando alguém mais experiente tem tempo de olhar.
Com o ApexGuru no IDE, a revisão acontece durante a escrita. O desenvolvedor recebe feedback imediato sobre anti-patterns enquanto o código está fresco na memória, quando a correção é mais barata e rápida. Isso reduz o ciclo de feedback de dias para segundos.
Para equipes que trabalham com Consumer Goods Cloud ou outras soluções verticalizadas do Salesforce, onde a lógica de negócio frequentemente envolve operações bulk em visitas de varejo, pedidos e inventário, a detecção precoce de SOQL em loops e DML ineficientes é ainda mais crítica. O volume de dados nessas implementações costuma ser alto, e um anti-pattern que funciona com 50 registros de teste pode causar timeout com 5.000 visitas reais.
Considerações e próximos passos
O ApexGuru está em GA no Salesforce DX MCP Server e pode ser usado hoje em qualquer org com a ferramenta de scale-products habilitada. Para equipes que já usam o Agentforce Vibes, a ativação é praticamente transparente — as funcionalidades já estão disponíveis como ferramentas do coding agent.
Para quem usa Claude Code ou Cursor, basta configurar o MCP Server apontando para o org de desenvolvimento. O ApexGuru passa a estar disponível como uma ferramenta que o agente pode invocar a qualquer momento durante a revisão de código.
A recomendação prática é começar pelo org de sandbox ou developer, rodar a análise em classes existentes e priorizar as correções com base no impacto reportado pelo Test Case Insights. Em projetos com histórico técnico acumulado, o resultado costuma ser surpreendente — anti-patterns que estavam no código há meses ou anos aparecem de uma vez, com contexto suficiente para correção imediata.
O Salesforce DX MCP Server e o ApexGuru representam o que o ecossistema de desenvolvimento Salesforce está se tornando: um ambiente onde a inteligência artificial não substitui o desenvolvedor, mas garante que nenhum anti-pattern passe despercebido. A combinação de detecção em tempo real, métricas de runtime e conhecimento especializado do platform cria um ciclo de feedback que antes simplesmente não existia.
Se você ainda não experimentou, vale reservar uma hora para configurar o ambiente e rodar uma análise no código mais antigo da sua org. A perspectiva que o ApexGuru oferece sobre o que realmente acontece quando o código roda em produção é difícil de conseguir de qualquer outra forma.
