Pular para o conteúdo

O diretório .dr_ai

Compatível com dr3.4.25

O plugin cria e mantém a pasta .dr_ai/ na raiz de cada projeto — sempre na raiz, nunca em subdiretórios. É o quartel-general do framework: preferências, planos de task, artefatos de contexto, pesquisas e logs vivem ali. A estrutura básica (settings.json, tasks/, docs/ e logs/) nasce automaticamente no primeiro início de sessão após a instalação, e nada que já existe é sobrescrito; as demais pastas surgem quando o comando correspondente roda.

No mesmo início de sessão, o hook adiciona .dr_ai/ inteiro e .claude/settings.local.json ao .gitignore do projeto (e cria o .gitignore se o repositório não tiver um). Tudo em .dr_ai/ é local a cada máquina e fica fora do git.

.dr_ai/settings.json

Criado porhook de início de sessão (ajustado por /dr:config:settings:setup)

ConteúdoNome, idioma e fuso; preferências (statusline, logs, backups, instalação de LSP e RTK); git (e-mail, verbosidade de commits, PRs e reviews, provedor); diretórios; vínculo com o Workforce; e, opcionalmente, os módulos do hook de início

.dr_ai/tasks/

Criado por/dr:plan, /dr:implement, /dr:debug e afins

ConteúdoUma pasta por task com __TaskPlan.md, __TaskChecklist.json, resumos e instruções de deploy

.dr_ai/codebase/

Criado por/dr:codebase-map

ConteúdoOs sete artefatos do mapa (STACK, ARCHITECTURE, CONVENTIONS, STRUCTURE, TESTING, INTEGRATIONS, VISUAL)

.dr_ai/docs/

Criado porhook de início de sessão (a pasta), /dr:doc:code-summary e comandos de documentação

ConteúdoCODE_SUMMARY.md (carregado em toda sessão) e docs geradas. Um RULES.md de versões anteriores fica intocado, mas não é mais carregado

.dr_ai/rules-state.json

Criado porhook de início de sessão (módulo project_rules)

ConteúdoVersão do plugin e hashes SHA-256 das regras que ele gravou em .claude/rules/, para distinguir um arquivo do plugin de um que você editou

.dr_ai/research/

Criado por/dr:research:quick e /dr:research:deep

ConteúdoResultados estruturados das pesquisas online, com fontes

.dr_ai/code-reviews/

Criado por/dr:review:task e demais comandos de review

ConteúdoRelatórios de revisão com problemas por severidade

.dr_ai/logs/

Criado porhooks (rastreamento de sessão, subagentes e comandos)

ConteúdoLogs JSONL por dia e por hook

A cada início de sessão, o hook sincroniza as regras do plugin na pasta .claude/rules/ do projeto, um arquivo por tema: interaction.md, code-quality.md, git.md, database.md, code-navigation.md e documentation.md. O Claude Code carrega essa pasta nativamente ao abrir a sessão, e os arquivos são feitos para serem versionados com o projeto. Numa versão nova do plugin, o arquivo que ele mesmo gravou é atualizado; um arquivo que você editou é substituído, com o conteúdo anterior salvo em ~/.claude/backups/<data>/project-rules/<pasta do projeto>/. Só fica intocado o arquivo cujo cabeçalho <!-- dr-ai-version: X.Y.Z --> declara uma versão maior que a do plugin da sessão — assim, pessoas do time com versões diferentes não revertem os arquivos umas das outras.

Regras próprias vão em .claude/rules/project.md (ou em qualquer outro arquivo com nome que o plugin não distribui), que o plugin nunca toca; é ali que o /dr:config:rules grava. O antigo .dr_ai/docs/RULES.md não é mais criado nem carregado: enquanto ele existir, um aviso pede para mover as regras personalizadas para o project.md, uma vez por versão do plugin. A sincronização desliga com hooks.session_start.project_rules: false ou preferences.manage_project_settings: false em .dr_ai/settings.json.

Na instalação (e a cada atualização de versão), no modo de distribuição padrão (preferences.material_distribution: "copy"), o hook de início copia os arquivos de framework de templates/core/ para ~/.claude/: CLAUDE.md (ponto de entrada, que importa PRINCIPLES.md, RULES.md e MCP.md via @), PRINCIPLES.md, RULES.md, MCP.md, SKILLS.md, REFERENCES.md e RTK.md. Numa versão nova, o arquivo que você editou é substituído, e o conteúdo anterior fica salvo em ~/.claude/backups/<data>/. Só escapa da atualização o arquivo cujo cabeçalho <!-- dr-ai-version: X.Y.Z --> declara uma versão maior que a do plugin. Regras que precisam sobreviver às atualizações vão no .claude/rules/project.md ou no CLAUDE.md do projeto, que o plugin nunca substitui.