batman
This commit is contained in:
@@ -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.
|
||||
Reference in New Issue
Block a user