YACHAQ.DEV/Quickstart
Quickstart

Arranca
el asistente

Clona los tres servicios, configura sus variables y levanta todo el asistente con un comando. En modo Standalone corre completo en tu máquina con Docker Compose.

Antes de empezar

Requisitos

Docker

Engine 24+

Compose

v2

Python

3.12

Git

2.40+

El arranque integrado conecta los tres servicios por una red Docker compartida (soma-stack-net) y los resuelve por ruta relativa. Clónalos dentro del mismo directorio padre:

clonar los tres servicios
mkdir soma && cd soma
git clone https://github.com/somatechlat/somafractalmemory
git clone https://github.com/somatechlat/somabrain
git clone https://github.com/somatechlat/somaagent01
Paso a paso

Instalación

Paso 01

Levanta la memoria primero

SomaFractalMemory funciona por sí sola. Arrancarla primero deja el endpoint de persistencia listo para los demás servicios.

somafractalmemory
cd somafractalmemory
# configura infra/standalone/.env:
#   SOMA_VAULT_TOKEN, SOMA_DB_PASSWORD, SOMA_API_TOKEN
docker compose -f infra/standalone/docker-compose.yml \
  --env-file infra/standalone/.env up -d
curl http://localhost:10101/healthz
Paso 02

Fija el punto de unión de 768 dimensiones

La memoria vectorial y el cerebro comparten 768 dimensiones. En SomaFractalMemory fija el vector; en SomaAgent01 defines el tenant por defecto.

somafractalmemory · infra/standalone/.env
SOMA_VECTOR_DIM=768
SOMA_DB_USER=somafractalmemory
SOMA_DB_NAME=somafractalmemory
SOMA_API_TOKEN=<token-generado>
Paso 03

Levanta el cerebro

SomaBrain apunta a la memoria por su nombre de servicio en la red y publica su salud en el puerto 30101.

somabrain
cd somabrain
cp infra/standalone/.env.example infra/standalone/.env
# edita .env: SOMABRAIN_VAULT_TOKEN, POSTGRES_PASSWORD,
#   SOMABRAIN_JWT_SECRET, SOMABRAIN_MEMORY_HTTP_TOKEN
docker compose -f infra/standalone/docker-compose.yml \
  --env-file infra/standalone/.env up -d
Paso 04

Conecta el modelo y levanta el orquestador

SomaAgent01 expone la API y la WebUI. La clave del modelo vive en Vault, en secret/agent/api_keys, y el servicio la resuelve en tiempo de ejecución.

somaagent01 · infra/standalone
cd somaagent01/infra/standalone
cp .env.example .env
# edita .env: VAULT_TOKEN_TTL_HOURS y SA01_DEFAULT_TENANT_ID
vault kv put secret/agent/api_keys groq_api_key='<tu-clave>'
docker compose up --build -d
curl http://localhost:20020/api/health/

Atajo · asistente completo en un comando

Con los tres repositorios como hermanos y sus .env configurados, up-cluster.sh crea la red compartida, levanta memoria → cerebro → orquestador y espera a que los tres estén sanos:

somaagent01/infra/standalone
./up-cluster.sh
# estado: ./up-cluster.sh --status
# apagar: ./up-cluster.sh --down
Verificación

¿Está
vivo?

Si los tres endpoints responden, tu asistente está corriendo.

SomaFractalMemory · :10101
curl localhost:10101/healthz
curl localhost:10101/readyz
SomaBrain · :30101
curl localhost:30101/health
curl localhost:30101/stats
SomaAgent01 · :20020
curl localhost:20020/api/health/
curl localhost:20020/api/
Si algo falla

Problemas
comunes

Poca precisión en el recuerdo

Casi siempre es una discrepancia de dimensión de embeddings. Verifica que los tres servicios compartan la dimensión de 768 (MEM_EMBED_DIM · EMBED_DIM · SOMA_VECTOR_DIM) y reinicia.

SomaAgent01 no encuentra los servicios

Confirma que los tres repositorios estén en el mismo directorio padre y que SomaBrain y SomaFractalMemory reporten salud antes de levantar el orquestador. Revisa docker compose logs y la red soma-stack-net.

Errores de autenticación en la memoria

El token (SOMA_API_TOKEN) y el tenant (X-Soma-Tenant) deben coincidir entre SomaBrain y SomaFractalMemory. Revisa que el .env esté cargado en ambos.

El chat responde sin contexto

El asistente está en pie pero el modelo no recibe el contexto recuperado. Verifica la clave del modelo en Vault (secret/agent/api_keys) y que la orquestación llame a la memoria de trabajo.