ecom-store/CLAUDE.md
Iris Florencio e30c07c9da chore: post-higienizacao — remover stubs legados, atualizar docs
- workflows/n8n-current/: remover 3 stubs (chatwoot/saleor/twenty)
  movidos para backup local (workflows-stubs-2026-07-06/)
- .gitignore: incluir .gitea_token (segredo) e *.bak (backups antigos)
- CLAUDE.md: atualizado para 06/jul/2026 (substituicao Hermes→Twenty,
  20 containers ativos, 9 subdomínios validados, pendências críticas)

Higienizacao previa nesta sessao (commit a parte nao aplicavel):
- 14 volumes Docker orfaos removidos (~2.4GB)
- 14 imagens Docker sem uso removidas (~5GB)
- 2 networks orfas removidas
- Traefik limpo (IPs hardcoded → service names)
- Hermes CRM backups compactados (271KB → 84KB)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-06 17:33:27 -03:00

10 KiB

CLAUDE.md — Motor E-commerce Multi-Canal Brasil

Dono: Iris Florencio | irisflorencio@yahoo.com.br Atualizado: 06/jul/2026 VPS: 31.220.78.126 (Ubuntu 24.04, 193GB disco, 11GB RAM) Gateway: Hermes + Telegram bot @OB1s


Projeto

Motor e-commerce multi-canal para o mercado brasileiro. Objetivo: operar Amazon, Mercado Livre, Shopee, Magazine Luiza, TikTok Shop e Site Próprio a partir de um motor centralizado (Saleor + PostgreSQL + Redis + n8n + WhatsApp).


Status Atual (06/jul/2026 — pós-higienização)

Sistema Status URL Container
Traefik http://31.220.78.126:8090 m5_traefik
Saleor loja.m5digital.net.br m5_saleor
Saleor Dashboard dashboard.m5digital.net.br m5_saleor_dashboard
PostgreSQL - m5_postgres
Redis - m5_redis
Gitea git.m5digital.net.br m5_gitea
n8n ⚠️ PARCIAL n8n.m5digital.net.br m5_n8n (login quebrado)
OpenWA wa.m5digital.net.br m5_openwa
Chatwoot chat.m5digital.net.br chatwoot-chatwoot-1
Twenty CRM crm.m5digital.net.br twenty_front (substituiu Hermes CRM)
Portainer http://31.220.78.126:9443 portainer
yt-pub-livesx video.m5digital.net.br yt-pub-livesx-dashboard-1
Omniroute gateway.digitalavello.shop omniroute

20 containers ativos · 9 subdomínios HTTPS validados · 0 produtos Saleor


Estrutura de Diretórios

/root/ecommerce/                          # RAIZ na VPS
├── HANDOFF-2026-07-06.md                # Estado completo + plano
├── CLAUDE.md                            # ESTE ARQUIVO
├── vault/                                # Obsidian KB — fonte de verdade
│   ├── checkpoint-2026-06-22.md
│   └── ecommerce-kb/
│       ├── HOME.md
│       ├── DASHBOARD.md
│       ├── SYSTEMS-STATUS.md            # Status atual (atualizado 06/jul)
│       ├── HIGIENIZACAO-06jul2026.md    # Log da limpeza desta sessão
│       ├── N8N-WORKFLOWS.md
│       ├── TWENTY-CRM-SETUP.md
│       ├── CHATWOOT-SETUP.md
│       ├── INTEGRATIONS.md
│       └── ...
├── scripts/                              # Scripts + Docker
│   ├── docker-compose.m5.yml             # Stack completa M5
│   ├── openwa-compose.yml               # WhatsApp (OpenWA v0.5.0)
│   ├── traefik-conf/
│   │   ├── traefik.yml
│   │   ├── routes.yml                    # 9 subdomínios HTTPS
│   │   └── dynamic-config.yml
│   ├── backups/
│   ├── calculators/
│   ├── compliance/
│   └── skills/
├── skills/                               # Skills Hermes (18 marketplaces)
├── ecom-store/                           # Repo de código (git + Gitea)
│   ├── utils/
│   │   ├── m5log.py                     # Logger M5 (3 modos: text/json/json_clean)
│   │   └── example_usage.py
│   ├── README.md
│   └── .gitignore                       # inclui .gitea_token
├── workflows/                            # n8n workflows
│   ├── m5-openwa-to-twenty.json         # WhatsApp → CRM (importar via UI)
│   ├── m5-twenty-to-openwa.json         # CRM → WhatsApp
│   ├── chatwoot-integration.json
│   ├── README-FASE5-OPENWA-TWENTY.md
│   └── n8n-current/                     # (vazio, stubs movidos para backup)
├── backup/                               # Snapshots do vault + workflows stubs
├── logs/                                 # Logs m5log (JSON clean rotacionado)
└── .gitea_token                          # Git token (chmod 600, gitignored)

Mudanças Recentes (06/jul/2026)

Substituições

  • Hermes CRM → Twenty CRM — backup em /root/backups/2026-07-06_pre-crm-reorg/
  • Container twenty_front na porta 3000, atrás de crm-https no Traefik

Higienização (~7.4GB liberados)

  • 14 volumes Docker órfãos removidos
  • 2 networks órfãs removidas
  • 14 imagens Docker sem uso removidas
  • Traefik limpo (IPs hardcoded → service names)
  • 3 workflows n8n stubs movidos para backup local

Validação

  • 9/9 subdomínios HTTP 200
  • Traefik dashboard UP
  • OpenWA marcos-pessoal sessão READY
  • Gitea repo ecom-store pushado (2 commits)

Pendências Críticas (06/jul/2026)

  1. n8n login quebrado — wizard de senha não aceita (auth layer além do DB resetado)
  2. Sessão WhatsApp bussines-m5 — QR não escaneado
  3. Saleor sem produtos — zerado em 21/jun, aguardando catalogação
  4. Workflows reais do n8n — JSON pronto mas precisa importar via UI (depende #1)
  5. Webhook OpenWA → n8n — depende sessão ativa

Stack de Integração

Camada Componente
Motor e-commerce Saleor 3.23 + PostgreSQL 16 + Redis 7
Orquestração n8n 2.27.4 (workflows em /root/ecommerce/workflows/)
Proxy Traefik 3.0 + Let's Encrypt (dedyn.io)
WhatsApp OpenWA v0.5.0 (ghcr.io/rmyndharis/openwa)
CRM Twenty CRM 1.x (twentycrm/twenty)
Suporte Chatwoot 3.3.0
Código Gitea 1.22.6
LLMs custom:aibee (aibee.cloud) + Ollama qwen3.6/deepseek-v4
GPU NVIDIA APIs (build.nvidia.com) — Nemotron, Kimi

URLs dos Serviços

Serviço URL
Traefik Dashboard http://31.220.78.126:8090
Saleor API https://loja.m5digital.net.br/graphql/
Saleor Dashboard https://dashboard.m5digital.net.br
Gitea https://git.m5digital.net.br
n8n https://n8n.m5digital.net.br
OpenWA Dashboard https://wa.m5digital.net.br
OpenWA API https://wa.m5digital.net.br/api
Chatwoot https://chat.m5digital.net.br
Twenty CRM https://crm.m5digital.net.br
yt-pub-livesx https://video.m5digital.net.br
Omniroute https://gateway.digitalavello.shop
Portainer http://31.220.78.126:9443

OpenWA — WhatsApp Business

  • Software: rmyndharis/OpenWA v0.5.0 (MIT, NestJS + whatsapp-web.js + React)
  • Container: m5_openwa
  • Porta interna: 2785
  • Dashboard: https://wa.m5digital.net.br
  • API: https://wa.m5digital.net.br/api
  • API Key (regenerada 29/jun/2026): owa_k1_1e56b98c39a2daa5bdb537d04f35da17117021bedc8c1de80eaba2926c584b39
  • Persistência: bind mount /root/ecommerce/scripts/openwa-sessions//app/data/
  • Sessões:
    • marcos-pessoalREADY
    • bussines-m5PENDENTE (escanear QR no dashboard)

Twenty CRM — Cliente/CRM

  • Software: Twenty CRM 1.x (MIT)
  • Container: twenty_front (NestJS frontend)
  • Backend: twenty_postgres (5434) + twenty_redis
  • URL: https://crm.m5digital.net.br
  • Traefik route: crm-httpstwenty_front:3000
  • Setup: wizard via browser (em andamento pela Iris)
  • Integração n8n: workflows em /root/ecommerce/workflows/m5-*-twenty.json

Chatwoot — Suporte


Gitea — Código

  • Software: Gitea 1.22.6
  • Container: m5_gitea
  • URL: https://git.m5digital.net.br
  • Repo principal: m5digital/ecom-store (push feito 06/jul, 2 commits)
  • Token de acesso: /root/ecommerce/.gitea_token (chmod 600, fora do git)
  • SSH: porta 2222

Configurações de Credenciais

.env da VPS

  • File: /root/ecommerce/scripts/.env
  • Contém: credenciais PostgreSQL, Redis, Saleor, Gitea, n8n, OpenWA API keys

.env Hermes

  • File: /root/.hermes/.env
  • Contém: ANTHROPIC_BASE_URL=https://gateway.digitalavello.shop

Claude Code na VPS

  • Wrapper: /usr/local/bin/cc
  • Key file: /root/.claude_keys/key (mode 600)
  • Modelo: claude-sonnet-4-6 via digitalavello.shop

Cron Jobs Ativos

Job Schedule Status
M5 — Resumo Diário 08:00 0 8 * * * ok
M5 — Check Docker Health 0 */2 * * * ok
M5 — Compliance Check 14:00 0 14 * * * ok
M5 — Backup Vault 02:00 0 2 * * * pausado

Canais de Venda (prioridade)

# Canal Status Tipo
1 Mercado Livre SKILL pronta Marketplace
2 Shopee SKILL pronta Marketplace
3 Amazon SKILL pronta Marketplace (FBA)
4 Magazine Luiza SKILL pronta Marketplace
5 TikTok Shop SKILL pronta Marketplace + Live Commerce
6 Site Próprio SKILL pronta B2C / B2B

Recursos INEMA Disponíveis

Tudo em /root/inema_materiais/:

  • viralads/ — curso UGC, ViralAds
  • yt-pub-livesx/ — pipeline vídeo automatizado (Docker)
  • ads-skill.zip (ja instalado em ~/.hermes/skills/ads-skill/)
  • ClaudeOS-Hermes-V2.3.zip — dashboard operacional (88MB)

Regras de Operação

  1. NUNCA criar arquivos em root — usar /root/ecommerce/
  2. Secrets vão em .env — nunca comitar
  3. Vault Obsidian (/root/ecommerce/vault/) é fonte de verdade
  4. Skills em /root/ecommerce/skills/ e ~/.hermes/skills/ecommerce/
  5. Rede Docker: scripts_m5_network — todos os containers nela
  6. Porta OpenWA: 2785 (NÃO 8002 — legado)
  7. Aprovar item a item antes de executar ações autônomas
  8. Apresentar plano antes de agir
  9. Trabalho completo — não só planos
  10. Autoverificar código antes de entregar (skill-auto-verify)
  11. Questionar respostas medíocres — nunca aceitar "ok"
  12. Manter contexto pequeno — compactar se > 60%

Referências Rápidas

  • /root/ecommerce/HANDOFF-2026-07-06.md — handoff completo da operação
  • /root/ecommerce/vault/ecommerce-kb/SYSTEMS-STATUS.md — status atual dos sistemas
  • /root/ecommerce/vault/ecommerce-kb/HIGIENIZACAO-06jul2026.md — log da limpeza
  • /root/ecommerce/workflows/README-FASE5-OPENWA-TWENTY.md — passo-a-passo Fase 5
  • /root/ecommerce/scripts/traefik-conf/routes.yml — roteamento HTTP
  • /root/ecommerce/ecom-store/utils/m5log.py — Logger M5 (303 linhas)
  • /root/.claude/CLAUDE.md — Skills Hermes auto-invocadas
  • /root/inema_materiais/ — Material INEMA (cursos, ads, vídeo)
  • /root/backups/2026-07-06_pre-crm-reorg/MANIFEST.md — Inventário pré-CRM