hit-server-manager/AGENTS.md

45 lines
2.4 KiB
Markdown

# Guia para agentes
Orientações rápidas para agentes ou automações que atuam neste repositório.
## Contexto do projeto
- Servers Manager: catálogo interno de servidores e usuários.
- Backend: Spring Boot 4 (Java 21), JWT stateless com refresh em cookie HttpOnly.
- Frontend: React 19 + Vite (TS), Tailwind, axios com `withCredentials`.
- Desenvolvimento local: `./gradlew bootRun` em `backend/` e `yarn dev` em `frontend/` (copie `.env.example` antes).
## Padrões de código
- Em componentes React com Tailwind, mova classnames para uma constante `Styles` ao final do arquivo sempre que um elemento tiver mais de 5 classes (referência: `Login.tsx`).
- Em componentes React com Tailwind, mova classnames para uma constante `Styles` ao final do arquivo sempre que um elemento tiver mais de 5 classes (referência: `Login.tsx`).
- Quando houverem classnames que se repetem muitas vezes em vários elementos/componentes, mova esses grupos repetidos para a constante `Styles` mesmo que possuam menos de 5 classes — isso ajuda a evitar duplicação e facilita manutenção.
- Sempre que uma view ou componente começar a crescer demais, quebre a interface em subcomponentes menores e reutilizáveis (ex: dividir headers em partes especializadas) antes de seguir evoluindo o layout.
## Padrão para mensagens de commit
**Instrução:** Gere um comando `git commit -m` completo, em português, seguindo o padrão **Conventional Commits**, com base no `diff` abaixo.
**Regras:**
1. Identifique automaticamente o tipo de commit (`feat`, `fix`, `refactor`, `docs`, `test`, `chore`, `style`, `perf`, etc.).
2. Estruture a mensagem em duas partes:
- **Título:** `tipo(escopo): descrição breve` (modo imperativo, até 72 caracteres)
- **Corpo:** lista em markdown com `-` destacando as principais alterações.
3. Retorne **apenas o comando completo** no formato:
```
git commit -m "tipo(escopo): descrição breve
- detalhe 1
- detalhe 2
- detalhe 3"
```
4. O escopo deve ser inferido a partir do contexto dos arquivos alterados.
5. **Não escreva nada além do comando final.**
6. **Entrada:**
```diff
[cole aqui o diff]
```
**Exemplo adaptado ao projeto:**
```
git commit -m "feat(servers): habilitar filtros de busca
- Adiciona filtros de status e localidade ao endpoint GET /api/servers
- Ajusta DTOs e mappers para incluir status normalizado e apelido
- Atualiza listagem React para aplicar filtros e exibir feedback com toast"
```