# Guia de Setup em Outra Maquina

## Objetivo
Este repositorio raiz foi preparado para versionar o que faz sentido do Vitruvio subir junto no git, sem levar acervo antigo

## Bootstrap rapido de workspace
Se a necessidade for somente subir a base padrao de configuracoes em um workspace novo, use o bootstrap versionado da raiz:

```bash
bash bootstrap-workspace.sh /caminho/do/novo-workspace
```

Se preferir rodar pelo VS Code, execute a task `Workspace: Bootstrap Base`.

- No Linux, a task usa `.vscode/automatizadores/bootstrap-workspace.sh`.
- No Windows, a task usa `.vscode/automatizadores/bootstrap-workspace.ps1`.

Esse comando leva para o destino:
- .claude/agents
- .claude/settings.local.json em versao portavel, sem caminhos absolutos da maquina atual
- .vscode, incluindo o MCP Oracle local sem `.env` e sem `node_modules`
- .github
- CLAUDE.md
- .mcp.json

Tambem cria a estrutura inicial:
- Andamento/
- Concluidos/
- Vitruvio/Documentação/
- Vitruvio/Documentação/Componentes/

Se o destino ja tiver arquivos e voce quiser sobrescrever, rode:

```bash
bash bootstrap-workspace.sh /caminho/do/novo-workspace --force
```

Pelo VS Code, a equivalente e a task `Workspace: Bootstrap Base (Forcar)`.

## Passo a passo
1. Instale o basico na nova maquina.

   - Git
   - VS Code
   - Node.js e npm, se for usar o MCP Oracle local

2. Clone o repositorio raiz.

```bash
git clone <URL_DO_REPOSITORIO> davinti
cd davinti
```

3. Abra a pasta no VS Code.

```bash
code .
```

4. Recrie os arquivos locais que nao sobem para o Git.

   - Copie mcp-oracle-custom/.env.example para mcp-oracle-custom/.env e preencha as credenciais necessarias.
   - Copie .vscode/mcp.example.json para .vscode/mcp.json.
   - Mantenha qualquer arquivo de acesso VPN fora do repositorio.

5. Se for usar consultas Oracle pelo VS Code, o bootstrap local do MCP instala as dependencias automaticamente quando necessario.

```bash
code .
```

   - O `.vscode/mcp.json` do workspace chama `./mcp-oracle-custom/run-mcp.sh`.
   - O bootstrap procura `node` automaticamente e tenta usar o Node embutido do VS Code neste ambiente Linux quando necessario.
   - Se `node` nao existir, o bootstrap informa isso explicitamente.
   - Se as dependencias precisarem ser instaladas e `npm` nao existir, o bootstrap informa isso explicitamente.
   - O servidor procura automaticamente o arquivo `.env` do workspace em `mcp-oracle-custom/.env`, sem depender de caminho absoluto no `.vscode/mcp.json`.

6. Atualize os artefatos do Vitruvio quando precisar.

   - No VS Code, execute a task Vitruvio: Baixar e Extrair ZIP.
   - No Linux, a task usa o script Bash em `.vscode/automatizadores/sync_vitruvio_zip.sh`.
   - No Windows, a mesma task usa a versao PowerShell em `.vscode/automatizadores/sync_vitruvio_zip.ps1`.
   - O conteudo sera extraido em Vitruvio/, incluindo Paineis, Libs, WebServices, Processos e Relatorios.

7. Se quiser usar o criador de casos como extensao local do VS Code, empacote e instale o VSIX.
   - Depois, no VS Code da nova maquina, use Extensions: Install from VSIX e selecione o arquivo que está na base do repositório na pasta *.vscode/vsix/vitruviodeveloper-version.vsix*.
   - O comando disponivel sera Vitruvio: Criar Estrutura Inicial de Caso.
   - Se necessario, ajuste a configuracao vitruvioCaseStarter.webServiceUrl nas configuracoes do VS Code.

8. Confira o que esta rastreado antes do primeiro push.

```bash
git status
```

9. Se quiser publicar no GitHub a partir desta maquina, conecte o remoto e envie.

```bash
git remote add origin <URL_DO_REPOSITORIO>
git branch -M main
git push -u origin main
```

## Observacoes importantes
- Se quiser versionar alguma dessas pastas junto na raiz, o ideal e decidir isso conscientemente antes, para evitar repositorios aninhados e submodulos acidentais.
- Se realmente precisar subir algo, remova essas entradas do .gitignore antes de adicionar os arquivos.