RetentaRetenta
La sexta primitiva

Cinco primitivas de bucle vienen en tu arnés. Retenta es la sexta.

La ingeniería de bucles consiste en diseñar bucles que impulsan a los agentes — programados, desatendidos, iterando. Cinco de las seis primitivas ya vienen dentro de Claude Code y Codex. La sexta — la memoria — sigue siendo un archivo markdown. Una cápsula es esa memoria, productizada: escribible, semántica, ordenada y neutral en todos los arneses.

El agente olvida. La Cápsula no.

Las seis primitivas de bucle

1
Automatizacionesejecuciones programadas y desatendidas
viene en tu arnés
2
Worktreesespacios de trabajo paralelos y aislados
viene en tu arnés
3
Skillscapacidades reutilizables y creadas
viene en tu arnés
4
Conectores (MCP)herramientas y datos sobre un protocolo
viene en tu arnés
5
Sub-agentesdelegación en abanico
viene en tu arnés
6
Memoria / estadohoy es un archivo markdown — Retenta es la sexta
la brecha

Por qué una cápsula supera al archivo markdown

El markdown es honesto — determinista, ordenado, comparable, legible de un vistazo. Una cápsula conserva eso y añade lo que un archivo no puede.

Semántica, no plana

Recupera el estado previo relevante por significado — no haciendo grep a un archivo creciente que acaba reventando la ventana de contexto.

Ordenada y determinista

Un libro de progreso ordenado — el “qué sigue” en el que un archivo markdown es bueno — leído con consistencia fuerte, así que una ejecución recién arrancada ve su propia última escritura al instante.

Neutral entre arneses

Accesible por MCP y REST desde Claude Code y Codex por igual. La memoria no queda atada al arnés en el que se ejecuta el bucle.

Duradera y demostrable

Sobrevive a la muerte de procesos, máquinas y proveedores. Citas de vuelta a las fuentes; cada lectura y escritura acotada a una cápsula.

El bucle, en cuatro herramientas

recall

Carga toda la columna en una llamada al inicio de una ejecución — pendientes + progreso ordenado + memoria relevante.

log_progress

Añade una entrada ordenada en cada hito — hecho · siguiente · bloqueado.

remember

Guarda un hallazgo sintetizado; el tema mantiene una nota vigente por asunto (gana la última escritura).

search / ask

Consulta el conocimiento mismo, con citas de vuelta a las fuentes.

La skill retenta-memory enseña a un agente a usarlas en orden — recall al inicio, log_progress en cada hito, remember para hallazgos, citar fuentes — de modo que se activa automáticamente en tareas de bucle y programadas.

Instala para tu arnés

Copia la URL de MCP de tu cápsula y una clave de acceso con nombre desde su recuadro de Conexión (crea una clave por arnés en “Claves para bucles y automatizaciones” — un bucle de Claude Code y uno de Codex tienen cada uno la suya, revocable de forma independiente).

Claude Code

El plugin incluye el conector + la skill.

export RETENTA_MCP_URL="https://mcp.retenta.ai/c/<slug>/mcp"   # from the Connect box
export RETENTA_API_KEY="rk_live_…"                               # a named owner key

/plugin marketplace add thecrownjoel/retenta
/plugin install retenta-memory@retenta

Codex

MCP remoto nativo + la skill del bucle.

export RETENTA_KEY="rk_live_…"                                   # a named owner key

codex mcp add retenta \
  --url https://mcp.retenta.ai/c/<slug>/mcp \
  --bearer-token-env-var RETENTA_KEY

mkdir -p ~/.agents/skills/retenta-memory
# save the retenta-memory SKILL.md there, then use  $retenta-memory

Un bucle de triaje nocturno (cualquier arnés o cron)

Las mismas herramientas sobre REST plano — recupera la columna, haz el trabajo, registra cada paso, recuerda el hallazgo.

BASE="https://mcp.retenta.ai/c/<slug>"; KEY="rk_live_…"; RUN="$(date +%Y%m%d)"
auth(){ curl -s -H "Authorization: Bearer $KEY" -H "content-type: application/json" "$@"; }

# 1. load the whole spine at the start of the run
auth "$BASE/recall" -d '{"query":"nightly triage: what is open?"}'

# 2. …do the work…

# 3. record each milestone (idempotencyKey makes an at-least-once retry a safe no-op)
auth "$BASE/log_progress" -d '{"step":"triaged CI","status":"done","runId":"'$RUN'","idempotencyKey":"'$RUN'-triage"}'
auth "$BASE/log_progress" -d '{"step":"flaky test in the auth suite","status":"next","runId":"'$RUN'"}'

# 4. remember the synthesized finding (topic = one current note, last-write-wins)
auth "$BASE/remember" -d '{"text":"CI green; 1 flaky test remains","topic":"ci-status","runId":"'$RUN'"}'

¿Quieres pruebas de que sobrevive a un corte? scripts/loop-demo.mjs ejecuta tres ciclos como procesos separados y muestra el ciclo 3 recordando los ciclos 1–2.

Dale memoria a tu bucle.

Crea una cápsula, conéctala a tu arnés y deja de perder lo que aprendió la última ejecución.