This commit is contained in:
jb
2026-04-14 16:06:19 -03:00
commit c5621bcb49
10 changed files with 551 additions and 0 deletions
+153
View File
@@ -0,0 +1,153 @@
# vitruvio-cli
Ferramentas de linha de comando para criação e manutenção de repositórios Vitruvio.
---
## Pré-requisitos
- **Node.js** 18 ou superior
- **Git** instalado e acessível no terminal
- **Chave SSH** configurada no servidor Gitea da davinTI (necessária para clonar via SSH — há fallback automático para HTTPS)
---
## Instalação
### Linux
```bash
# 1. Clone o repositório
git clone ssh://git@git.davinti.com.br:2222/davinTI/vitruvio-cli.git
cd vitruvio-cli
# 2. Instale as dependências
npm install
# 3. Registre o comando globalmente
npm link
```
Se você usa **mise** para gerenciar versões do Node, rode também:
```bash
mise reshim
```
Verifique a instalação:
```bash
vitruvio --help
```
---
### Windows
Abra o **PowerShell** ou **Prompt de Comando** como administrador.
```powershell
# 1. Clone o repositório
git clone ssh://git@git.davinti.com.br:2222/davinTI/vitruvio-cli.git
cd vitruvio-cli
# 2. Instale as dependências
npm install
# 3. Registre o comando globalmente
npm link
```
Verifique a instalação:
```powershell
vitruvio --help
```
> **Nota:** Caso o terminal não reconheça o comando `vitruvio` após o `npm link`, verifique se o diretório de binários globais do npm está no PATH do sistema. Para descobrir o caminho:
> ```powershell
> npm config get prefix
> ```
> Adicione o caminho retornado (ex: `C:\Users\SeuUsuario\AppData\Roaming\npm`) nas variáveis de ambiente do sistema em **Painel de Controle → Sistema → Variáveis de Ambiente → Path**.
---
## Comandos
### `vitruvio init <nome>`
Cria um novo repositório Vitruvio a partir do template base.
```bash
vitruvio init meu-modulo
```
- Clona o template `projeto-base` para um diretório com o nome informado
- Remove o histórico git do template e inicializa um repositório limpo sem remotes
- Pronto para você adicionar seu próprio remote e fazer o primeiro commit
**Após o init:**
```bash
cd meu-modulo
# Edite o vitruvio.json com a chave e nome do seu módulo
# Depois:
git remote add origin <url-do-seu-repositório>
git add .
git commit -m "feat: scaffold inicial"
```
---
### `vitruvio update-repo`
Atualiza os arquivos `CLAUDE.md` gerenciados no repositório atual com a versão mais recente do template.
```bash
# Execute dentro de um repositório Vitruvio (onde há vitruvio.json)
cd meu-modulo
vitruvio update-repo
```
Arquivos atualizados por este comando:
```
CLAUDE.md
endpoints/CLAUDE.md
panels/CLAUDE.md
patches/CLAUDE.md
processes/CLAUDE.md
queries/CLAUDE.md
reports/CLAUDE.md
scripts/CLAUDE.md
```
Nenhum outro arquivo do repositório é tocado.
---
### `vitruvio update-base`
Sincroniza os diretórios gerenciados do diretório de plataforma local com o repositório `base-claude`.
```bash
vitruvio update-base
```
Diretório de plataforma atualizado:
| Sistema | Caminho |
|---------|---------|
| Linux | `~/.local/share/vitruvio-platform/` |
| Windows | `%LOCALAPPDATA%\vitruvio-platform\` |
Diretórios gerenciados (substituídos completamente):
```
libs/
docs/
examples/
```
Qualquer outro diretório ou arquivo fora dessa lista não é alterado.