River Logiceode docs
Reference

Architecture

What runs in your account, what each part does, and how the parts talk.

eode runs as two always-on workloads, one engine per active user, and four AWS services.

Self-hosted eode: users and MCP clients reach eode-app and eode-mcp through the gateway; both start per-user engines; the app uses PostgreSQL, Redis, shared file storage and Secrets Manager; outbound calls go to the LLM provider, the sign-in service and the image registryYour EKS clusterYour AWS servicesOutside your accountpullYour usersbrowserMCP clientsassistants · your systemsGatewayTLS · your hostnameseode-appweb app + APIeode-mcpMCP endpointEnginesone per active usereode-migratejob, each upgradeRDS PostgreSQL 16+ pgvectorElastiCache RedisTLS + AUTHEFSmodels · sharedSecrets Managereode/*Your LLM providerSign-in serviceeode image registry

Workloads

All of them come from two images, eode-app and eode-engine.

WorkloadNamespacePortHealthWhat it does
eode-appeode8787GET /api/healthThe web app and its API. Signs users in, runs RIA's conversations, starts and stops engines
eode-mcpeode8848GET /healthz, MCP at /mcpThe MCP endpoint. Checks the caller's token, then works on that user's engine
Engineseode-engines50051—One per active user, created on demand, removed after 30 idle minutes
eode-migrateeode—exits 0Applies database changes before each install and upgrade. The only workload that can read the database owner login

eode-app can create and delete Deployments and Services in eode-engines, and nowhere else. Engines run only on the engine node group, sized by the model they hold (12, 24 or 48 GiB of memory by default; set by EngineMemoryClasses), and need about half a CPU each. Every engine and eode-app share the same EFS file system, where models are kept.

What the stack creates

Nested stackCreates
NetworkA VPC across 2 or 3 availability zones with public and private subnets and NAT, or nothing (existing VPC)
ClusterAmazon EKS with a general node group and a tainted engine node group, Pod Identity, and the EFS CSI add-on
DataRDS PostgreSQL 16 (private, encrypted, automated backups), ElastiCache Redis (TLS + AUTH), EFS with an access point
SecretsThe eode/* secrets in Secrets Manager, generated where nobody needs to know them, and the IAM roles each workload uses
InstallerA CodeBuild project that installs the gateway, cert-manager and the secrets driver, prepares the database, installs eode, and checks its health

On this page