RULE: SPECs por projecto; Invest/ERP/Infra no vault + sidebar
This commit is contained in:
parent
23ba14b52a
commit
1e2dd78c29
5 changed files with 473 additions and 18 deletions
9
Infra-Network/README.md
Normal file
9
Infra-Network/README.md
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
# Infra / Network SPECs
|
||||
|
||||
SPECs de rede (big / BIG1 / routers). Repo Forgejo: a criar `ligbox/infra-network` se ainda não existir.
|
||||
|
||||
| SPEC | Ficheiro |
|
||||
|------|----------|
|
||||
| Arch B private network | SPEC_ARCH_B_BIG_PRIVATE_NETWORK.md |
|
||||
| R7000 DD-WRT + Proxmox | SPEC_R7000_DDWRT_PROXMOX_NETWORK.md |
|
||||
| R8000 credentials | SPEC_R8000_CREDENTIALS.md |
|
||||
206
Infra-Network/SPEC_ARCH_B_BIG_PRIVATE_NETWORK.md
Normal file
206
Infra-Network/SPEC_ARCH_B_BIG_PRIVATE_NETWORK.md
Normal file
|
|
@ -0,0 +1,206 @@
|
|||
# SPEC — Architecture B: Rede Privada Proxmox BIG (vmbr0/vmbr1/vmbr2)
|
||||
|
||||
**Data:** 2026-07-08
|
||||
**Responsável:** Roger / iTecnologys
|
||||
**Host:** Dell R630 BIG — `big-itecnologys-wardrobe`
|
||||
**Status:** Implementado (fase 1)
|
||||
|
||||
---
|
||||
|
||||
## 1. Objetivo
|
||||
|
||||
Proteger **infraestrutura de servidores** no BIG sem alterar o Sagemcom (`.254`):
|
||||
|
||||
- Rede **casa** (`192.168.1.0/24`) — gestão e uplink
|
||||
- Rede **privada** (`10.10.10.0/24`) — VMs, Traefik, Tunnel, Wazuh, mail
|
||||
- **pfSense VM 100** — firewall entre zonas
|
||||
- **Cloudflare Tunnel** — acesso externo sem expor IP (fase 2)
|
||||
|
||||
**Não objetivo:** firewall de toda a casa (TV, telemóveis, PCs no Sagemcom).
|
||||
|
||||
---
|
||||
|
||||
## 2. Topologia física
|
||||
|
||||
```
|
||||
Internet
|
||||
│
|
||||
Sagemcom (.254) ← inalterado (DHCP, firewall ISP)
|
||||
├── Smart TV, PCs, IoT
|
||||
└── R8000 (.115) → R7000 DD-WRT (.1) → eno3 (1 cabo)
|
||||
│
|
||||
Dell R630 BIG
|
||||
```
|
||||
|
||||
| Regra física | Detalhe |
|
||||
|--------------|---------|
|
||||
| **1 cabo** | eno3 → porta LAN R7000 |
|
||||
| **eno4 DOWN** | Evitar loop L2 (STP off no DD-WRT) |
|
||||
| **Sem VLAN no R8000** | Stock não faz trunk — isolamento é virtual no Proxmox |
|
||||
|
||||
---
|
||||
|
||||
## 3. Switches virtuais (Proxmox bridges)
|
||||
|
||||
| Bridge | Rede | Porta física | Função |
|
||||
|--------|------|--------------|--------|
|
||||
| **vmbr0** | `192.168.1.0/24` | eno3 | Casa — host `.137`, uplink internet |
|
||||
| **vmbr1** | `10.10.10.0/24` | nenhuma | **Privada** — VMs serviços |
|
||||
| **vmbr2** | `10.0.0.0/30` | nenhuma | Link interno host ↔ pfSense WAN |
|
||||
|
||||
### Host BIG
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| IP gestão (vmbr0) | `192.168.1.137/24` |
|
||||
| Gateway | `192.168.1.254` |
|
||||
| IP privado (vmbr1) | `10.10.10.1/24` |
|
||||
| pfSense WAN (vmbr2) | `10.0.0.1/30` → pfSense `10.0.0.2` |
|
||||
| Tailscale | `100.90.196.58` |
|
||||
| SSH remoto | `tailscale ssh root@big-itecnologys-wardrobe` |
|
||||
| Proxmox GUI | `https://192.168.1.137:8006` |
|
||||
|
||||
---
|
||||
|
||||
## 4. pfSense VM 100 (`pfsense-firewall`)
|
||||
|
||||
| NIC | Bridge | Função |
|
||||
|-----|--------|--------|
|
||||
| net0 | vmbr1 | LAN privada `10.10.10.0/24` |
|
||||
| net1 | vmbr2 | WAN interna `10.0.0.0/30` |
|
||||
| net2 | vmbr0 | Interface casa (opcional/gestão) |
|
||||
|
||||
### Configuração pfSense (GUI)
|
||||
|
||||
| Interface | IP | Notas |
|
||||
|-----------|-----|-------|
|
||||
| LAN (vmbr1) | `10.10.10.1/24` | DHCP `10.10.10.100-200` |
|
||||
| WAN (vmbr2) | `10.0.0.2/30` | Gateway `10.0.0.1` |
|
||||
| DNS | `192.168.1.254` ou `1.1.1.1` | Via NAT host |
|
||||
|
||||
### Regras firewall essenciais
|
||||
|
||||
| Regra | Ação |
|
||||
|-------|------|
|
||||
| LAN → Internet | ALLOW |
|
||||
| LAN → `192.168.1.0/24` | BLOCK (isolamento) |
|
||||
| Casa → LAN | ALLOW só portas gestão necessárias |
|
||||
| Inbound WAN casa → VMs | BLOCK (usar Cloudflare Tunnel) |
|
||||
|
||||
---
|
||||
|
||||
## 5. VMs e serviços por bridge
|
||||
|
||||
| VMID | Nome | Bridge | IP típico |
|
||||
|------|------|--------|-----------|
|
||||
| 100 | pfsense-firewall | vmbr1+vmbr2+vmbr0 | `10.10.10.1` |
|
||||
| 120 (LXC) | web-traefik | vmbr1 | `10.10.10.120` |
|
||||
| 101-108, 500, 600, 700 | serviços | vmbr1 | `10.10.10.x` |
|
||||
|
||||
**Regra:** VMs sensíveis (Traefik, Tunnel, Wazuh, mail) **só em vmbr1**.
|
||||
|
||||
---
|
||||
|
||||
## 6. Isolamento host (iptables)
|
||||
|
||||
Já aplicado em `/etc/network/interfaces` (vmbr1 post-up):
|
||||
|
||||
```
|
||||
FORWARD: DROP 10.10.10.0/24 → !10.10.10.0/24
|
||||
FORWARD: ACCEPT 10.10.10.0/24 → UDP/53 (DNS)
|
||||
```
|
||||
|
||||
Persistência: `/etc/network/interfaces.d/99-arch-b-private`
|
||||
|
||||
---
|
||||
|
||||
## 7. Nginx reverse proxy (host BIG)
|
||||
|
||||
Domínios `*.myvexx.com` no host nginx (`:80` / `192.168.1.137:443`):
|
||||
|
||||
```
|
||||
server.myvexx.com → proxy_pass http://10.10.10.120:80 (Traefik CT120)
|
||||
```
|
||||
|
||||
| Ficheiro | Função |
|
||||
|----------|--------|
|
||||
| `myvexx-proxy` | HTTP :80 → Traefik |
|
||||
| `myvexx-landing-https` | HTTPS server/mycloud → Traefik |
|
||||
| `myvexx-proxmox` | proxmox.myvexx.com → :8006 |
|
||||
|
||||
---
|
||||
|
||||
## 8. Cloudflare Tunnel (fase 2)
|
||||
|
||||
| Item | Valor |
|
||||
|------|-------|
|
||||
| Objetivo | Acesso externo sem port forward |
|
||||
| Instalar em | LXC/VM só em vmbr1 |
|
||||
| DNS | Cloudflare zone `myvexx.com` |
|
||||
| Token | Configurar em CT120 ou VM dedicada |
|
||||
|
||||
---
|
||||
|
||||
## 9. Equipamentos LAN
|
||||
|
||||
| Device | IP | Doc |
|
||||
|--------|-----|-----|
|
||||
| Sagemcom | `.254` | Gateway casa |
|
||||
| R8000 | `.115` | `SPEC_R8000_CREDENTIALS.md` |
|
||||
| R7000 DD-WRT | `.1` | `SPEC_R7000_DDWRT_CREDENTIALS.md` |
|
||||
| BIG | `.137` | Este documento |
|
||||
|
||||
---
|
||||
|
||||
## 10. Validação
|
||||
|
||||
```bash
|
||||
# No BIG (via Tailscale)
|
||||
ip addr show vmbr1 | grep 10.10.10.1
|
||||
ip link show eno4 | grep DOWN
|
||||
ping -c2 10.10.10.120
|
||||
ping -c2 8.8.8.8
|
||||
qm list | grep pfsense
|
||||
iptables -L FORWARD -n | grep 10.10.10
|
||||
|
||||
# Teste local nginx
|
||||
curl -sI -H 'Host: server.myvexx.com' http://127.0.0.1/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 11. Fases de implementação
|
||||
|
||||
| Fase | Estado | Conteúdo |
|
||||
|------|--------|----------|
|
||||
| **1** | ✅ Feito | vmbr1 `10.10.10.1`, eno4 down, iptables, persistência |
|
||||
| **2** | Pendente | pfSense GUI — DHCP LAN, regras finais |
|
||||
| **3** | Pendente | Cloudflare Tunnel (substituir port forward) |
|
||||
| **4** | Opcional | Proxmox `:8006` só via Tailscale/vmbr1 |
|
||||
| **5** | Opcional | VLAN física se R8000 DD-WRT no futuro |
|
||||
|
||||
---
|
||||
|
||||
## 12. Troubleshooting
|
||||
|
||||
| Sintoma | Causa provável | Ação |
|
||||
|---------|----------------|------|
|
||||
| Rede cai ao ligar 2º cabo | Loop L2 eno3+eno4 | eno4 DOWN, 1 cabo |
|
||||
| SSH LAN falha | Tailscale SSH ativo | `tailscale set --ssh=false` |
|
||||
| server.myvexx.com fora | DNS → IP casa + port forward | Ver secção DNS abaixo |
|
||||
| VMs sem internet | pfSense WAN/LAN | Verificar VM100 |
|
||||
|
||||
---
|
||||
|
||||
## 13. DNS server.myvexx.com
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| DNS público | `server.myvexx.com` → `51.171.219.218` (IP casa) |
|
||||
| myvexx.com | → `95.216.14.146` (Hetzner) |
|
||||
| Backend local | nginx → `10.10.10.120` (OK internamente) |
|
||||
| Acesso externo | Requer port forward Sagemcom :80/:443 → `.137` |
|
||||
|
||||
---
|
||||
|
||||
*Documento gerado automaticamente — Architecture B BIG Proxmox*
|
||||
182
Infra-Network/SPEC_R7000_DDWRT_PROXMOX_NETWORK.md
Normal file
182
Infra-Network/SPEC_R7000_DDWRT_PROXMOX_NETWORK.md
Normal file
|
|
@ -0,0 +1,182 @@
|
|||
# SPEC — DD-WRT R7000 + Proxmox BIG (Rede LAN/WAN)
|
||||
|
||||
**Data:** 2026-07-08
|
||||
**Responsável:** Roger / iTecnologys
|
||||
**Dispositivo:** Netgear R7000 — DD-WRT v3.0-r44715
|
||||
|
||||
---
|
||||
|
||||
## 1. Topologia correta
|
||||
|
||||
```
|
||||
Internet
|
||||
│
|
||||
[AT&T Gateway] 192.168.1.254
|
||||
│ DHCP + Firewall + Gateway principal
|
||||
│
|
||||
├── [BIG Proxmox] 192.168.1.137 (cabos eno3/eno4 → portas LAN)
|
||||
│
|
||||
└── [R7000 DD-WRT] 192.168.1.1 (modo AP — só Wi-Fi + switch)
|
||||
│
|
||||
Dispositivos Wi-Fi
|
||||
```
|
||||
|
||||
**Regra de ouro:** O DD-WRT **não é firewall principal** — o gateway AT&T (`.254`) é a fronteira. O DD-WRT é **AP + switch**.
|
||||
|
||||
---
|
||||
|
||||
## 2. Modo de operação: AP (Access Point)
|
||||
|
||||
| Papel | Dispositivo |
|
||||
|-------|-------------|
|
||||
| Gateway + DHCP + DNS | AT&T `.254` |
|
||||
| Proxmox host | BIG `.137` |
|
||||
| Wi-Fi + switch LAN | R7000 `.1.1` |
|
||||
|
||||
---
|
||||
|
||||
## 3. Configuração DD-WRT — Setup → Basic Setup
|
||||
|
||||
| Campo | Valor | Por quê |
|
||||
|-------|-------|---------|
|
||||
| **WAN Connection Type** | `Disabled` | R7000 não roteia internet |
|
||||
| **Local IP (LAN)** | `192.168.1.1` | IP de gestão do DD-WRT |
|
||||
| **Subnet Mask** | `255.255.255.0` | Mesma rede |
|
||||
| **Gateway** | `192.168.1.254` | Encaminhar para AT&T |
|
||||
| **Local DNS** | `192.168.1.254` | DNS do gateway |
|
||||
| **DHCP Server** | **Disable** | Evitar conflito com `.254` |
|
||||
| **STP** | Disable | Evitar loops |
|
||||
|
||||
---
|
||||
|
||||
## 4. Configuração DD-WRT — Security → Firewall
|
||||
|
||||
| Campo | Valor | Por quê |
|
||||
|-------|-------|---------|
|
||||
| **SPI Firewall** | Enable | Proteção básica |
|
||||
| **Block WAN Requests** | Enable | Bloquear scans externos |
|
||||
| **Filter WAN NAT Redirection** | Enable | Segurança |
|
||||
| **AP Isolation** | **Disable** | Proxmox precisa falar com LAN |
|
||||
|
||||
---
|
||||
|
||||
## 5. Configuração DD-WRT — Wireless → Advanced
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **AP Isolation** | **Disable** |
|
||||
| **Set AP on different subnet** | **Disable** |
|
||||
| **Multicast forwarding** | Enable (se houver VMs) |
|
||||
|
||||
---
|
||||
|
||||
## 6. Configuração DD-WRT — Services
|
||||
|
||||
| Serviço | Porta | WAN Access | Notas |
|
||||
|---------|-------|------------|-------|
|
||||
| **Lighttpd HTTP** | `8085` | **Disable** | Só LAN |
|
||||
| **Lighttpd HTTPS** | `443` | **Disable** | Só LAN |
|
||||
| **SSH (dropbear)** | `2222` | **Disable** | Só LAN |
|
||||
| **Telnet** | `23` | **Disable** | Backup, desativar depois |
|
||||
| **DNSMasq** | `53` | — | **Disable** se DHCP off |
|
||||
|
||||
---
|
||||
|
||||
## 7. Configuração DD-WRT — Administration → Management
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **Web GUI Management (WAN)** | **Disable** |
|
||||
| **SSH Management (WAN)** | **Disable** |
|
||||
| **Remote Access** | **Tudo Disable** |
|
||||
| **Boot Wait** | **Enable** (recovery) |
|
||||
|
||||
---
|
||||
|
||||
## 8. Portas físicas R7000 — cabeamento
|
||||
|
||||
| Porta R7000 | Uso | Conectar |
|
||||
|-------------|-----|----------|
|
||||
| **WAN (amarela)** | Desativada | **Nada** ou uplink ao `.254` (opcional) |
|
||||
| **LAN 1–4 (pretas)** | Bridge LAN | **BIG eno3 + eno4**, switch, PCs |
|
||||
|
||||
**NUNCA** ligar Proxmox só na porta WAN — `eth0` não está no `br0`.
|
||||
|
||||
---
|
||||
|
||||
## 9. Configuração Proxmox BIG (host)
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **IP** | `192.168.1.137` (estático) |
|
||||
| **Gateway** | `192.168.1.254` |
|
||||
| **DNS** | `192.168.1.254` |
|
||||
| **Interfaces** | `eno3` + `eno4` (bond ou ativas) |
|
||||
| **Proxmox Web** | `https://192.168.1.137:8006` |
|
||||
| **SSH** | `root@192.168.1.137` |
|
||||
| **Tailscale** | `100.90.196.58` (quando internet voltar) |
|
||||
|
||||
---
|
||||
|
||||
## 10. O que estava errado (causa do problema)
|
||||
|
||||
| Erro | Efeito |
|
||||
|------|--------|
|
||||
| **DHCP ativo no DD-WRT** | BIG recebeu gateway `.1.1` em vez de `.254` |
|
||||
| **lan_gateway=0.0.0.0** | DD-WRT sem rota para internet |
|
||||
| **wk_mode=gateway** com WAN disabled | Modo inconsistente |
|
||||
| **Cabo na porta WAN** | Proxmox isolado da LAN (`eth0` ∉ `br0`) |
|
||||
| **Lighttpd WAN Access Enable** | Exposição desnecessária |
|
||||
|
||||
---
|
||||
|
||||
## 11. NVRAM (aplicar via SSH)
|
||||
|
||||
```bash
|
||||
ssh -p 2222 root@192.168.1.1
|
||||
|
||||
nvram set wan_proto=disabled
|
||||
nvram set lan_gateway=192.168.1.254
|
||||
nvram set wan_gateway=192.168.1.254
|
||||
nvram set wan_dns=192.168.1.254
|
||||
nvram set dnsmasq_enable=0
|
||||
nvram set wk_mode=lan
|
||||
nvram set wl_ap_isolate=0
|
||||
nvram set remote_mgt_ssh=0
|
||||
nvram commit
|
||||
reboot
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 12. Validação pós-configuração
|
||||
|
||||
```bash
|
||||
# No DD-WRT:
|
||||
ping -c 3 192.168.1.254 # gateway OK
|
||||
ping -c 3 192.168.1.137 # BIG OK
|
||||
arp -a | grep 137 # MAC do BIG visível
|
||||
|
||||
# No laptop:
|
||||
ping 192.168.1.137
|
||||
curl -k https://192.168.1.137:8006
|
||||
ssh root@192.168.1.137
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 13. Segurança — camadas
|
||||
|
||||
```
|
||||
Camada 1: AT&T Gateway (.254) → firewall ISP
|
||||
Camada 2: pfSense (VM no BIG) → firewall interno
|
||||
Camada 3: Traefik (VM no BIG) → reverse proxy
|
||||
Camada 4: Cloudflare Tunnel → acesso externo sem expor IP
|
||||
Camada 5: DD-WRT (R7000) → só AP, sem exposição WAN
|
||||
```
|
||||
|
||||
O DD-WRT **não substitui** pfSense/Traefik — só entrega conectividade LAN limpa ao Proxmox.
|
||||
|
||||
---
|
||||
|
||||
*Aplicar configuração e reboot do DD-WRT antes de testar Proxmox.*
|
||||
63
Infra-Network/SPEC_R8000_CREDENTIALS.md
Normal file
63
Infra-Network/SPEC_R8000_CREDENTIALS.md
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
# SPEC — Netgear R8000 (Nighthawk X6) Credentials
|
||||
|
||||
**Data:** 2026-07-08
|
||||
**Responsável:** Roger / iTecnologys
|
||||
**Dispositivo:** Netgear Nighthawk X6 AC3200 — Model **R8000**
|
||||
|
||||
---
|
||||
|
||||
## Identificação
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **Modelo** | Netgear R8000 (Nighthawk X6) |
|
||||
| **MAC** | `28:80:88:35:86:40` |
|
||||
| **IP LAN (atual)** | `192.168.1.115` (DHCP do Sagemcom) |
|
||||
| **Serial** | `4MKD027BA0346` |
|
||||
|
||||
---
|
||||
|
||||
## Acesso Web (Router Login)
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **URL** | `http://192.168.1.115` ou `http://routerlogin.net` |
|
||||
| **Usuário** | `admin` |
|
||||
| **Senha** | `password` (fábrica — confirmar se foi alterada) |
|
||||
|
||||
---
|
||||
|
||||
## Wi-Fi (etiqueta do equipamento)
|
||||
|
||||
| Campo | Valor |
|
||||
|-------|-------|
|
||||
| **SSID** | `NETGEAR73` |
|
||||
| **Password** | `dailyshrub462` |
|
||||
|
||||
---
|
||||
|
||||
## Topologia (confirmar)
|
||||
|
||||
```
|
||||
Sagemcom (.254)
|
||||
└── R8000 (.115) ← este equipamento
|
||||
└── cabo(s) → R7000 DD-WRT (.1)
|
||||
└── R630 BIG (.137)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Investigação
|
||||
|
||||
| Item | Resultado |
|
||||
|------|-----------|
|
||||
| IP na LAN | `192.168.1.115` (MAC confirma etiqueta) |
|
||||
| Modo | AP/Repetidor (DHCP do Sagemcom) |
|
||||
| VLAN trunk | **Não** (firmware stock) |
|
||||
| Cabos → R7000 | Confirmar físico (provável 1 cabo) |
|
||||
|
||||
**Conclusão:** R8000 não suporta VLAN. Rede privada fica **dentro do Proxmox** (vmbr10), não no caminho físico.
|
||||
|
||||
---
|
||||
|
||||
*Credenciais fornecidas por Roger — etiqueta física do R8000.*
|
||||
31
README.md
31
README.md
|
|
@ -1,30 +1,25 @@
|
|||
# Obsidian Vault — Ligbox Cloud
|
||||
|
||||
Vault central CT130 · sync Git `ligbox/obsidian-vault`
|
||||
Vault central CT130 · Forgejo `https://git.spec.ligbox.com.br/ligbox/`
|
||||
|
||||
## MyVexx / Invest (novo)
|
||||
**Regra:** cada SPEC no **projecto** (pasta vault + repo Forgejo). Ver RULE em Invest-MyVexx.
|
||||
|
||||
| Doc | Link |
|
||||
|-----|------|
|
||||
| Hub Invest | [Invest-MyVexx.md](Invest-MyVexx/Invest-MyVexx.md) |
|
||||
| **SPEC-051** Unified Dashboard + Index Hub | [SPEC-051](Invest-MyVexx/SPEC-051-INVEST-UNIFIED-DASHBOARD-INDEX-HUB.md) |
|
||||
| SPEC-050 AI Agents paper-only | [SPEC-050](Invest-MyVexx/SPEC-050-INVEST-AI-AGENTS-PAPER.md) |
|
||||
| RULE SSH CT124→CT130 | [RULE](Invest-MyVexx/RULE-SSH-CT124-TO-CT130-SPEC-HUB.md) |
|
||||
## Projectos
|
||||
|
||||
## Conteúdo
|
||||
| Pasta vault | Forgejo |
|
||||
|-------------|---------|
|
||||
| `Invest-MyVexx/` | [invest-myvexx](https://git.spec.ligbox.com.br/ligbox/invest-myvexx) — SPEC-050, **SPEC-051** |
|
||||
| `ERP-Odoo-Ligit-MyVexx/` | [erp-odoo-ligit-myvexx](https://git.spec.ligbox.com.br/ligbox/erp-odoo-ligit-myvexx) |
|
||||
| `Infra-Network/` | [infra-network](https://git.spec.ligbox.com.br/ligbox/infra-network) |
|
||||
| `ligbox-ops-platform/` | [ligbox-ops-platform](https://git.spec.ligbox.com.br/ligbox/ligbox-ops-platform) |
|
||||
|
||||
| Pasta | Descrição |
|
||||
|-------|-----------|
|
||||
| `Invest-MyVexx/` | SPECs Invest (050, **051**) + RULE SSH |
|
||||
| `ERP-Odoo-Ligit-MyVexx/` | SPECs ERP CONTIX+ |
|
||||
| `ligbox-ops-platform/` | Specs, docs, LAPTOP, chat bruto |
|
||||
| `ligbox-ops-platform/LAPTOP/` | Export C: / sessões Cursor |
|
||||
| `ligbox-ops-platform/specs/` | Spec Kit features |
|
||||
## Links rápidos Invest
|
||||
|
||||
- [SPEC-051](Invest-MyVexx/SPEC-051-INVEST-UNIFIED-DASHBOARD-INDEX-HUB.md)
|
||||
- [SPEC-050](Invest-MyVexx/SPEC-050-INVEST-AI-AGENTS-PAPER.md)
|
||||
|
||||
## Obsidian Desktop
|
||||
|
||||
```bash
|
||||
git clone https://git.spec.ligbox.com.br/ligbox/obsidian-vault.git
|
||||
```
|
||||
|
||||
Plugin **Obsidian Git** → pull antes de editar, push depois.
|
||||
|
|
|
|||
Loading…
Reference in a new issue