Skip to main content

API de Variables

Almacén rápido clave-valor para estado de LLM — contadores, flags, timestamps de última actividad, progreso parcial.


API de Variables

La API de Variables es un almacén rápido clave-valor para estado efímero. A diferencia de las memorias (que están indexadas, son buscables y estructuradas), las variables están optimizadas para acceso rápido de lectura/escritura — perfectas para contadores, flags y estado de sesión.

Endpoints

POST /var

Establece o actualiza una variable.

curl -X POST https://synapse.schaefer.zone/var \
  -H "Authorization: Bearer YOUR_MIND_KEY" \
  -H "Content-Type: application/json" \
  -d '{"key": "last_session_at", "value": "2026-06-27T14:00:00Z"}'

GET /var/:key

Obtiene una variable individual.

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/var/last_session_at

Respuesta:

{ "key": "last_session_at", "value": "2026-06-27T14:00:00Z", "updated_at": "..." }

GET /var

Lista todas las variables.

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/var

DELETE /var/:key

Elimina una variable.

curl -X DELETE -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/var/last_session_at

Cuándo usar Variables vs Memory

Caso de uso Usar
Nombre, preferencias Memory (buscable, estructurado)
Timestamp de última sesión Variable (estado efímero)
Contador (p. ej. mensajes enviados) Variable (actualizaciones frecuentes)
Estado de workflow ("paso 3 de 5 completado") Variable (transitorio)
Notas largas de proyecto Memory (indexado de texto completo)
Scripts reutilizables Script store (con nombre, versionado)

Patrones comunes

Seguimiento de la última sesión

# At session end
curl -X POST .../var -d '{"key": "last_session_at", "value": "'$(date -Iseconds)'"}'

# At session start
LAST=$(curl .../var/last_session_at | jq -r .value)
curl .../memory/diff?since=$(date -d "$LAST" +%s)

Patrón contador

# Increment
N=$(curl .../var/api_calls | jq -r .value)
curl -X POST .../var -d "{\"key\": \"api_calls\", \"value\": $((N+1))}"

Feature flags

curl -X POST .../var -d '{"key": "feature_x_enabled", "value": "true"}'

# Check
ENABLED=$(curl .../var/feature_x_enabled | jq -r .value)
if [ "$ENABLED" = "true" ]; then ... fi

Próximos pasos