---
title: Regras
description: "Controle o comportamento do Verdent por meio de arquivos de regras"
---

Arquivos de regras são documentos Markdown que definem como o Verdent se comporta durante sessões de codificação. Eles orientam o comportamento do agente de IA, a formatação da saída e a aderência aos padrões do projeto.

## O que você vai aprender

- Entender regras de usuário e regras de projeto
- Quando usar cada tipo de regra
- Como escrever regras eficazes

---

## Tipos de regra

| Tipo de regra | Arquivo | Escopo | Propósito |
|-----------|------|-------|---------|
| **Regras de usuário** | VERDENT.md | Global (todos os projetos) | Preferências pessoais de codificação |
| **Regras de projeto** | AGENTS.md | Projeto atual | Convenções de equipe, padrões do projeto |

**Localização:**
- Regras de usuário: `~/.verdent/VERDENT.md`
- Regras de projeto: `<project>/AGENTS.md`

---

## Regras de usuário (VERDENT.md)

As regras de usuário permitem personalizar como o Verdent se comporta em todos os projetos.

**Acesso:** Settings → User Rules

**Salvamento automático:** As alterações são salvas automaticamente após 500ms

<Tabs>
  <Tab title="Propósito">
    - **Preferências de estilo de codificação:** Indentação, convenções de nomenclatura
    - **Convenções de framework:** React, Vue, padrões de linguagem
    - **Formatação de respostas:** Verbosidade, estilo de explicação
    - **Preferências pessoais de fluxo de trabalho:** Tom, estilo de comunicação
  </Tab>
  <Tab title="Exemplo">
    ```markdown
    # User Rules

    ## Code Style
    - Always use TypeScript with strict mode
    - Prefer functional components over class components
    - Use Tailwind CSS for styling
    - Follow the project's existing naming conventions

    ## Communication
    - Provide brief explanations
    - Show code first, explain after
    - Write concise commit messages in conventional format
    ```
  </Tab>
</Tabs>

---

## Regras de projeto (AGENTS.md)

As regras de projeto definem padrões específicos do projeto atual. Faça commit no controle de versão para compartilhar com toda a equipe.

**Acesso:** painel Project Settings

**Localização:** raiz do projeto (`<project>/AGENTS.md`)

<Tabs>
  <Tab title="Casos de uso">
    - **Convenções de equipe:** Padrões de codificação compartilhados
    - **Arquitetura:** Padrões de design, gerenciamento de estado
    - **Testes:** Requisitos de cobertura, frameworks
    - **Fluxos de trabalho:** Comandos de build, diretrizes de PR
  </Tab>
  <Tab title="Exemplo">
    ```markdown
    # AGENTS.md

    ## Dev Environment
    - Run `pnpm install` to set up
    - Use `pnpm dev` for local development

    ## Testing
    - Run `pnpm test` before committing
    - Minimum 80% coverage required

    ## PR Guidelines
    - Use conventional commit format
    - Include tests for new features
    ```
  </Tab>
</Tabs>

<Tip>
Compartilhe o AGENTS.md com sua equipe via controle de versão para garantir um comportamento de IA consistente entre todos os membros da equipe.
</Tip>

---

## Como escrever regras eficazes

**Seja específico:**
```markdown
# Good
- Use async/await for asynchronous operations
- Include JSDoc comments for exported functions

# Avoid
- Try to use modern JavaScript features
- Add comments when necessary
```

**Boas práticas:**
- Use linguagem clara e diretiva ("Sempre...", "Nunca...", "Prefira...")
- Agrupe regras relacionadas sob cabeçalhos de seção
- Mantenha as regras concisas (um conceito por item)
- Revise e atualize as regras conforme o projeto evolui

---

## Perguntas frequentes

<AccordionGroup>
<Accordion title="Como crio arquivos de regras?">
Vá em Settings → User Rules para editar o `VERDENT.md` com preferências pessoais. Crie o `AGENTS.md` na raiz do seu projeto para regras específicas do projeto. Use Markdown simples com itens em lista.
</Accordion>

<Accordion title="Quando as alterações de regras entram em vigor?">
As alterações de regras se aplicam imediatamente em novas conversas e influenciam as respostas da conversa atual.
</Accordion>

<Accordion title="Posso sobrescrever regras temporariamente?">
Você pode fornecer instruções específicas no seu prompt para sobrescrever regras em uma única solicitação.
</Accordion>
</AccordionGroup>
