5.1 KiB
5.1 KiB
MEMORY.md — Memória Curada do Pulse
🧠 Agente OpenClaw
- Nome: Pulse · IDENTITY.md
- Debian 12 container,
/root/.openclaw/workspace/ - Projeto:
@pulse-libs/core— 136/136 testes ✅ | React/Vue, TS strict, Vitest, Pino/Zod, tsup v8, Docker multi-stage - Skills instaladas: 12+ (typescript, e2e-testing, xcloud-docker-deploy, openclaw-power-ops, etc.)
- Nova Self-Improver ativa — loop de aprendizado contínuo
⚙️ Infra
- Disco 65%, 87G total — monitorando estabilidade
- Sem systemd — container Docker
- Gitea:
git.octal.tec.br→localhost:3000(Caddy) — Swarm stackgit - User: Roberto (betotn91@gmail.com), SSH
~/.ssh/id_ed25519_gitea - Repos:
pulse-memory,pulse-skills,pulse-docs,pulse-projects— clonados via HTTPS
🐳 Docker Swarm (11 stacks — atualizado 2026-05-20)
- Node
s1Leader, Docker 29.4.3 · Clusterplz2xbh64yzhgy88jb9stm0pc - 22 containers · overlay
10.0.0.0/8 - 11 stacks:
bot,code,database,design,dev,dock,git,pro,project,proxy,(code) - Portainer CE v2.19.4 — https://dock.octal.tec.br
- Senha admin:
***— login via/api/authretorna JWT HS256 - ⚠️ Rede
publictemAttachable=false:- stacks criadas via
docker stack deployCLI funcionam OK - stacks criadas via Portainer API são bloqueadas com
PermissionDenied - stack
projectno Swarm via CLI — NÃO aparece no Portainer UI (funcional, mas não gerenciável)
- stacks criadas via
Domínios Caddy (8 ativos — atualizado 2026-05-20)
dock/portainer · git/gitea · ai/beebot · manager/leantime · games/games-demo · test/test-octal · board/taskboard · api/dev-backend · frontend/Vite
Redes Overlay
ingress:10.0.0.0/24 | public:10.0.1.0/24 | dbn:10.0.2.0/24 | mongo-cluster:10.0.3.0/24 | leantime:10.0.4.0/24 | design:10.0.5.0/24 | proxy:10.0.6.0/24
Template Canônico
pulse-docs/runbooks/swarm-stack-template.yml— modelo oficial- Rede:
public(externa no compose) · Names sem prefixo · Caddy labels via CLI - Detalhes →
pulse-docs/docs/docker-swarm-stacks.md
🚀 Dev Environment Full-Stack (nova — 2026-05-20)
Stack Swarm dev com ambiente completo de desenvolvimento:
| Serviço | URL | Porta | Tipo |
|---|---|---|---|
| TaskBoard | board.octal.tec.br |
80/443 | Kanban + logs em tempo real |
| Backend API | api.octal.tec.br |
3001 | Node + tsx watch (hot reload) |
| Frontend HMR | frontend.octal.tec.br |
5173 | Vite + React (hot reload) |
| Redis | fila dev-tasks |
6379 | Fila de tarefas + pub/sub |
Agentes Paralelos (5 workers no Swarm)
| Agente | Réplicas | Papel |
|---|---|---|
agent-frontend |
2 | Frontend specialist (React + Vite) |
agent-backend |
2 | Backend specialist (Node + tsx) |
agent-devops |
1 | DevOps (Docker, Swarm, deploy) |
Protocolo de Task Queue
- Fila:
BLPOP dev-tasks— 60s timeout - Canal pub/sub:
dev-logs— logs agregados em tempo real - Registro de agente:
HSET agent:<id> status role started_at current_task - Task:
SET task:<id>+RPUSH task-queue <id>
📝 Obsidian Vault
- Caminho:
/root/Obsidian-Pulse/ - Estrutura: Inbox, Projetos, Docker, Dev, Codex, Logs, Memorias, Templates
- Skill: 🛠️ obsidian-vault-linker instalada
🔑 Lições High-Signal
flat(Infinity)quebra tsup DTS →flat(2)process.envdireto quebra SSR →typeof window !== 'undefined'- Backticks aninhadas TS →
.replace()por fora - Zod
.transform()para transformações de schema - Portainer
ptr_token ≠ JWT admin — usar senha admin para mutação docker stack deploycompose v3:restart_policynão é propriedade válidadeploy.labelsdo compose não vira container labels →docker service update --label-add- Rede
publicAttachable=false→ stacks CLI OK, Portainer API bloqueia - Agentes paralelos com Redis BLPOP funcionam como time full-stack
🗺️ Stacks Swarm (11 — incluindo dev)
| Stack | Criada por | Portas | Domínios |
|---|---|---|---|
git |
Portainer API | — | git.octal.tec.br |
bot |
Portainer API | — | ai.octal.tec.br |
database |
Portainer API | — | — |
design |
Portainer API | — | — |
dev |
docker stack deploy (nova) |
http | board / api / frontend |
dock |
Portainer API | 80/443 | dock.octal.tec.br |
code |
Portainer API | — | — |
pro |
Portainer API | — | manager.octal.tec.br |
project |
docker stack deploy CLI |
80 | games.octal.tec.br |
proxy |
Portainer API | 80 | test.octal.tec.br |
Repositórios Gitea
| Repo | Propósito | URL |
|---|---|---|
pulse-memory |
Memórias diárias + LEARNINGS + ERRORS | https://git.octal.tec.br/Roberto/pulse-memory |
pulse-skills |
Skills organizadas por domínio | https://git.octal.tec.br/Roberto/pulse-skills |
pulse-docs |
Guias, runbooks, ADRs | https://git.octal.tec.br/Roberto/pulse-docs |
pulse-projects |
Rastreador de projetos | https://git.octal.tec.br/Roberto/pulse-projects |
| pulse-dev | Nova stack + código (commit em workspace) | — |