Sistema de Apoio ao Processo Legislativo
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

3.6 KiB

Skill: Mapear Estrutura do Projeto

Esta skill analisa e documenta a estrutura completa do projeto atual, gerando um arquivo de referência arquitetural.

Instruções de Execução

1. Análise Inicial

Execute os seguintes comandos para mapear o projeto:

# Nome do projeto (baseado no diretório)
basename $(pwd)

# Detectar tecnologias
ls -la | head -20

2. Detectar Tecnologias

Verifique a existência dos seguintes arquivos para identificar as tecnologias:

  • package.json → Node.js/JavaScript
  • composer.json → PHP/Laravel
  • requirements.txt ou Pipfile ou pyproject.toml → Python
  • Gemfile → Ruby
  • go.mod → Go
  • Cargo.toml → Rust
  • Dockerfile ou docker-compose.yml → Docker
  • manage.py → Django
  • settings.py no diretório principal → Django
  • artisan → Laravel

3. Mapear Estrutura de Diretórios

Use o comando tree ou find para mapear toda a estrutura:

# Estrutura completa (excluindo node_modules, __pycache__, .git, venv, etc.)
find . -type d \( -name "node_modules" -o -name "__pycache__" -o -name ".git" -o -name "venv" -o -name ".venv" -o -name "vendor" -o -name ".tox" -o -name "*.egg-info" -o -name "build" -o -name "dist" -o -name ".pytest_cache" -o -name ".mypy_cache" \) -prune -o -type f -print | head -500

4. Identificar Componentes Principais

Procure pelos seguintes padrões:

Backend:

  • Controllers/Views: **/controllers/**, **/views/**, **/api/**
  • Models: **/models/**, **/entities/**
  • Services: **/services/**, **/usecases/**
  • Repositories: **/repositories/**, **/dao/**
  • Migrations: **/migrations/**, **/database/migrations/**
  • Routes: **/routes/**, **/urls.py, routes/web.php
  • Middleware: **/middleware/**
  • Jobs/Tasks: **/jobs/**, **/tasks/**, **/celery/**

Frontend:

  • Components: **/components/**, **/src/components/**
  • Pages: **/pages/**, **/views/**
  • Stores: **/stores/**, **/store/**, **/redux/**
  • Assets: **/assets/**, **/static/**, **/public/**
  • Styles: **/styles/**, **/css/**, **/scss/**

Infraestrutura:

  • Config: **/config/**, **/settings/**
  • Docker: Dockerfile, docker-compose*.yml
  • CI/CD: .github/workflows/**, .gitlab-ci.yml, Jenkinsfile
  • Environment: .env*, *.env

5. Gerar Arquivo de Estrutura

Crie o arquivo .claude/context/estrutura-projeto.md com o seguinte formato:

# Estrutura do Projeto: [NOME_DO_PROJETO]

> Última atualização: [DATA_ATUAL]

## Tecnologias Detectadas
- [Lista de tecnologias identificadas]

## Árvore de Diretórios
[Estrutura em formato tree]

## Organização das Pastas Principais

### Backend
[Descrição da organização do backend]

### Frontend
[Descrição da organização do frontend]

### Infraestrutura
[Descrição dos arquivos de infra]

## Fluxo do Backend
[Explicar: rotas → controllers → services → repositories → models]

## Fluxo do Frontend
[Explicar: páginas → componentes → stores → libs]

## Microserviços
[Se existirem, descrever a organização]

## Pontos Críticos
[Listar pontos de atenção no projeto]

## Sugestões de Organização
[Se aplicável, sugerir melhorias]

6. Finalização

Após gerar o arquivo, exiba a mensagem:

"Estrutura atualizada. Todas as skills já podem usar este arquivo como referência arquitetural."


Notas Importantes

  • Esta skill SEMPRE sobrescreve o arquivo anterior
  • O arquivo gerado serve como "cérebro estrutural" para outras skills
  • Outras skills devem ler .claude/context/estrutura-projeto.md antes de criar módulos ou fazer alterações
  • Mantenha o arquivo atualizado executando esta skill periodicamente