A casa: arquitetura do monorepo
O spaceAI é um monorepo de aplicações. Elas sobem juntas, numa stack só, e os bancos ficam fora, numa stack própria. Esta página explica como elas se organizam.
A regra da casa#
OS APPS SOBEM JUNTOS, NUM COMPOSE GERAL. OS BANCOS FICAM FORA, NUMA STACK PRÓPRIA. Um compose.yml na raiz inclui o compose de cada app. Um deploy da stack sobe o conjunto. Os bancos (um Postgres e um Redis) são serviços do painel, fora de qualquer compose.
Continuam valendo: cada app tem o seu banco; um container por processo; zero import entre apps (a costura é HTTP, por contrato versionado); deploy da stack, não do app. Subir junto não é acoplamento: app continua sendo dono do seu código, do seu banco e das suas imagens.
O monorepo existe para facilitar a codação com IA: contexto único para convenções, contratos e decisões. O texto acima é cópia do AGENTS.md da raiz, que é o documento canônico.
Inventário#
| App | Papel | API | Banco | Score |
|---|---|---|---|---|
agent-package | Motor de agentes + MCP | 4001 | Postgres | 96 |
conta-central | IdP central OIDC | 4100 | Postgres | 61 |
load-balance | Proxy de APIs de IA | 3018 | Postgres | 63 |
motor | Agent coder + worker | 4003 | Postgres | 67 |
mypanel | Control panel | — | SQLite | 43 |
render | Renderização (standby) | 4002 | Postgres | 80 |
web-browser | Navegador remoto | 4201 | SQLite | — |
Como os apps conversam#
Apps se comunicam por contrato HTTP versionado. Nunca por import de código. Nunca por banco compartilhado.
Fluxo de desenvolvimento#
- AquiCodar. Repo local, branch do trabalho.
- GitHubPublicar. Commit + push; merge na main só depois de validar.
- DevDeploy automático. Push na main sobe a stack de dev sozinha.
Bancos: databases_prod e databases_dev, um Postgres e um Redis únicos por ambiente, um database por app. Teste end-to-end é sempre nos domínios de dev (*-dev.mp.serendiped.com), nunca contra um servidor local.
Próximos passos#
Você entendeu a casa. A seguir, abra a documentação de um app.
Explore além: