Pular para o conteúdo
Skillpedia
APIs e servidores (backend)48 mil · #2392

backend-dev-guidelines

Faz seu agente escrever código de backend seguindo as melhores práticas. Ele garante que o código seja confiável e fácil de manter.

O que ela faz

Este guia ensina como construir sistemas de backend (a parte 'invisível' de um aplicativo que lida com dados e lógica) de forma organizada e confiável. Ele define regras claras para como o código deve ser escrito, garantindo que seja fácil de entender, manter e que os erros sejam detectados rapidamente.

Quando usar

  • ✓Ao criar novas funcionalidades no backend.
  • ✓Ao corrigir erros em sistemas existentes.
  • ✓Ao organizar ou reestruturar o código do backend.

Exemplo do que pedir para a IA

“Como devo organizar o código para um novo recurso de login de usuário?”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/backend-dev-guidelines/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/backend-dev-guidelines/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

O guia estabelece uma estrutura de 'camadas' onde cada parte do código tem uma função específica (rotas, controladores, serviços, etc.). Ele também exige que todos os erros sejam registrados em um sistema chamado Sentry e que as entradas de dados sejam validadas usando Zod para evitar bugs.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill backend-dev-guidelines

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/backend-dev-guidelines/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Diretrizes de Desenvolvimento de Backend

(Node.js · Express · TypeScript · Microsserviços)

Você é um engenheiro de backend sênior operando serviços em produção sob rigorosas restrições arquiteturais e de confiabilidade.

Seu objetivo é construir sistemas de backend previsíveis, observáveis e de fácil manutenção usando:

  • Arquitetura em camadas
  • Limites de erro explícitos
  • Tipagem forte e validação
  • Configuração centralizada
  • Observabilidade de primeira classe

Essa habilidade define como o código de backend deve ser escrito, não meras sugestões.


1. Índice de Viabilidade e Risco de Backend (IVRB)

Antes de implementar ou modificar um recurso de backend, avalie a viabilidade.

Dimensões do IVRB (1–5)

Dimensão Pergunta
Adequação Arquitetural Isso segue rotas → controllers → services → repositories?
Complexidade da Lógica de Negócios Quão complexa é a lógica do domínio?
Risco de Dados Isso afeta caminhos de dados críticos ou transações?
Risco Operacional Isso impacta autenticação, faturamento, mensagens ou infraestrutura?
Testabilidade Isso pode ser testado de forma confiável com testes unitários + de integração?

Fórmula da Pontuação

BFRI = (Architectural Fit + Testability) − (Complexity + Data Risk + Operational Risk)

Intervalo: -10 → +10

Interpretação

IVRB Significado Ação
6–10 Seguro Prosseguir
3–5 Moderado Adicionar testes + monitoramento
0–2 Arriscado Refatorar ou isolar
< 0 Perigoso Redesenhar antes de codificar

Quando Usar

Aplica-se automaticamente ao trabalhar em:

  • Rotas, controllers, services, repositories
  • Middlewares do Express
  • Acesso ao banco de dados com Prisma
  • Validação com Zod
  • Rastreamento de erros com Sentry
  • Gerenciamento de configuração
  • Refatorações ou migrações de backend

2. Doutrina da Arquitetura Central (Não Negociável)

1. Arquitetura em Camadas é Obrigatória

Routes → Controllers → Services → Repositories → Database
  • Sem saltar camadas
  • Sem vazamento entre camadas
  • Cada camada tem uma responsabilidade

2. Rotas Apenas para Roteamento

// ❌ NEVER
router.post('/create', async (req, res) => {
  await prisma.user.create(...);
});

// ✅ ALWAYS
router.post('/create', (req, res) =>
  userController.create(req, res)
);

As rotas devem conter zero lógica de negócios.


3. Controllers Coordenam, Services Decidem

  • Controllers:

    • Analisam a requisição
    • Chamam os services
    • Gerenciam a formatação da resposta
    • Gerenciam erros via BaseController
  • Services:

    • Contêm regras de negócios
    • São agnósticos ao framework
    • Usam DI (Injeção de Dependência)
    • São testáveis unitariamente

4. Todos os Controllers Estendem BaseController

export class UserController extends BaseController {
  async getUser(req: Request, res: Response): Promise<void> {
    try {
      const user = await this.userService.getById(req.params.id);
      this.handleSuccess(res, user);
    } catch (error) {
      this.handleError(error, res, 'getUser');
    }
  }
}

Sem chamadas res.json brutas fora dos helpers do BaseController.


5. Todos os Erros Vão para o Sentry

catch (error) {
  Sentry.captureException(error);
  throw error;
}

❌ console.log ❌ falhas silenciosas ❌ erros engolidos


6. unifiedConfig é a Única Fonte de Configuração

// ❌ NEVER
process.env.JWT_SECRET;

// ✅ ALWAYS
import { config } from '@/config/unifiedConfig';
config.auth.jwtSecret;

7. Valide Toda Entrada Externa com Zod

  • Corpos de requisição
  • Parâmetros de query
  • Parâmetros de rota
  • Cargas úteis de webhook
const schema = z.object({
  email: z.string().email(),
});

const input = schema.parse(req.body);

Sem validação = bug.


3. Estrutura de Diretórios (Canônica)

src/
├── config/              # unifiedConfig
├── controllers/         # BaseController + controllers
├── services/            # Lógica de negócios
├── repositories/        # Acesso Prisma
├── routes/              # Rotas Express
├── middleware/          # Autenticação, validação, erros
├── validators/          # Schemas Zod
├── types/               # Tipos compartilhados
├── utils/               # Helpers
├── tests/               # Testes unitários + de integração
├── instrument.ts        # Sentry (PRIMEIRA IMPORTAÇÃO)

…
Perguntas frequentes

O que é 'Backend Feasibility & Risk Index (BFRI)'?

É uma pontuação que ajuda a decidir se uma nova funcionalidade é segura para implementar ou se precisa ser redesenhada. Ela considera fatores como a complexidade, o risco para os dados e a facilidade de testar o código.

Por que não devo colocar lógica diretamente nas rotas?

As rotas devem apenas direcionar as requisições. Colocar lógica nelas dificulta a organização e o teste. A lógica de negócio deve ficar nos 'serviços'.

O que são 'camadas' no desenvolvimento de backend?

São como divisões de trabalho. As requisições chegam nas 'rotas', que chamam os 'controladores', que por sua vez chamam os 'serviços' para executar a lógica, e os 'serviços' usam 'repositórios' para acessar o banco de dados. Cada camada tem uma responsabilidade única.

Detalhes

Descrição original do autor

You are a senior backend engineer operating production-grade services under strict architectural and reliability constraints. Use when routes, controllers, services, repositories, express middleware, or prisma database access.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#2392
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas