Reelier

oficial

Los agentes hacen afirmaciones. Reelier escribe recibos: registra el flujo de trabajo de llamadas a herramientas de un agente una vez, reprodúcelo de manera determinista con 0 tokens y compara ejecuciones para detectar desviaciones.

¿Qué puedes hacer con Reelier MCP?

  • Reproducir habilidades grabadas de forma determinista — Pide a reelier run que ejecute un .skill.md guardado con 0 tokens, de solo lectura por defecto, para una re-ejecución byte-idéntica.
  • Detectar desviaciones en ejecuciones de agentes — Usa reelier diff para comparar una reproducción contra la original y marcar SAME o DRIFTED por paso, saliendo con código 1 ante cualquier cambio.
  • Controlar PRs de actualización de dependencias — Haz que el asistente configure un flujo de CI que reproduzca tu habilidad contra PRs de Dependabot/Renovate y falle en el paso exacto donde haya desviación.
  • Convertir trazas existentes en habilidades — Compila un trace.jsonl o un SKILL.md existente en una habilidad reproducible mediante reelier compile, con las brechas honestas listadas como preguntas abiertas.
  • Verificar recibos firmados sin conexión — Ejecuta reelier verify para recalcular cada afirmación en la escalera de un recibo enviado, mostrando qué peldaños están probados y cuáles son brechas honestas.
  • Inspeccionar la cobertura del agente antes de grabar — Usa reelier init --dry-run para comprobar la cobertura de observación de las Rutas A/B/C y los candidatos a reproducción sin escribir ni cambiar nada.

Documentación

Reelier

Reelier

Deja que tus agentes escriban. Conserva los recibos.

Tus agentes trabajaron toda la noche. Esto es exactamente lo que cambió.

Reelier registra la ejecución que funcionó, la congela como una habilidad reproducible y la reproduce de forma determinista: cada ejecución regresa como un recibo: prueba de lo que hizo el agente y de lo que cambió gracias a ello. Los agentes hacen afirmaciones. Reelier escribe recibos.

npm version CI tests license Discord stars

Sitio web · Documentación · SPEC.md

Reelier: Dependabot bumps a dependency, Reelier replays your recorded agent run at 0 tokens and diffs it, catching the drift on the PR before you merge

▶ ver con sonido (27s)

Reelier MCP server on Glama


Recibos en tus PRs de agentes: instala y listo

Los PRs escritos por agentes (Dependabot, Claude, Codex, Cursor, …) reciben un comentario de recibo en segundos: autor, archivos modificados, alcance declarado vs. lo que realmente cambió, rutas sensibles marcadas. Sin archivo de workflow, sin CLI, sin configuración.

→ Instala la GitHub App de recibos de Reelier — gratis en repos públicos, para siempre.

Recibo de Reelier — PR de agente Autor: dependabot[bot] · Archivos modificados: 2 (+119 −41) Alcance declarado: ninguno (añade .reelier/scope.yml para habilitar la detección de escrituras inesperadas) Rutas sensibles tocadas: ⚠ 1 — package-lock.json Prueba alcance y cambio, no corrección

Un recibo real de los propios repos de Reelier — mira uno en vivo. Declara el alcance por agente en .reelier/scope.yml (o un bloque reelier-scope en el cuerpo del PR) y el recibo reporta escrituras inesperadas. El recibo prueba alcance y cambio, nunca corrección ni seguridad.


Por qué

Los agentes de IA son no deterministas: el mismo prompt, un resultado diferente en cada ejecución — y afirmarán que hicieron el trabajo lo hayan hecho o no. Reelier registra la ejecución que funcionó, la reproduce de forma determinista y escribe un recibo firmado que lo prueba. Apúntalo a tu CI existente en un solo workflow: añade un recibo verificable, no reemplaza tu stack.

Medido en un benchmark real cara a cara, misma tarea, mismos datos (método completo):

  • 1,000 / 1,000 reproducciones byte-idénticas
  • Cada reproducción envía un recibo firmado — prueba de qué se ejecutó y qué cambió, nunca una afirmación
  • 0 llamadas LLM en la reproducción — re-ejecución determinista, no re-razonamiento

La reproducción determinista también es ~50× más barata y ~59× más rápida que re-ejecutar el agente, en el mismo benchmark.

Instalación

npm i -g reelier && reelier init
# No Node install needed — same commands via Docker:
docker run --rm ghcr.io/seldonframe/reelier --help

reelier init [--dry-run] realiza una inspección local con checkpoint en las tres rutas de Reelier: cobertura de observación en la Ruta A, candidatos de reproducción/congelación en la Ruta B, y conexiones y candidatos vinculables/con capacidad de resultado/solo-sombra/no soportados en la Ruta C. No despliega, no gatea, no despacha, no sube, no copia credenciales ni reescribe la configuración del host. --dry-run no escribe nada; el comando normal escribe solo artefactos sanitizados bajo .reelier/init/.

Como plugin de agente

Enseña a tu agente de codificación cuándo recurrir a Reelier. Los mismos dos comandos, en cualquier host:

claude plugin marketplace add seldonframe/reelier
claude plugin install reelier@seldonframe
codex plugin marketplace add seldonframe/reelier
codex plugin add reelier@seldonframe

Esto instala dos Agent Skills y nada más. reelier-replay enseña a tu agente a congelar un trabajo de llamadas a herramientas repetible y reproducirlo a 0 tokens. reelier-write-safety cubre cómo acotar las escrituras de un agente antes de concedérselas: qué ve el grabador, qué rechaza una política y qué prueba y qué no prueba un recibo. No incluye servidores MCP, por lo que no envuelve, observa ni gatea ninguna llamada a herramientas por sí mismo; la CLI reelier hace eso, y las skills la impulsan vía npx. Empaquetado tanto en el formato Agent Plugins v1.0.0 (plugin/agent-plugins/) como en el formato Claude Code (plugin/claude/), generado desde una sola fuente por scripts/build-plugin-packages.mjs.

Verificado de extremo a extremo en codex-cli 0.147.0-alpha.1.2: ambos formatos se instalan, se habilitan y la skill llega al modelo. Otros hosts no están probados, y el estado por host se rastrea en docs/specs/agent-plugins-coverage-v1.md §4 en lugar de afirmarse aquí.

Cómo usarlo

reelier init --dry-run              # inspect Path A/B/C locally; write nothing
reelier init                        # persist resumable sanitized inspection artifacts
reelier run  <name>.skill.md        # replay deterministically — 0 tokens (read-only by default)
reelier diff <name>                 # SAME or DRIFTED, per step — exit 1 on drift
reelier push <name>.skill.md        # sync receipts to your ledger (opt-in)
reelier ci                          # write a workflow: drift-CI + PR receipts, one command
  1. Inspecciona, luego graba o congela. reelier init revela cobertura observada y candidatos locales sin cambiar rutas. reelier mcp --wrap "<mcp server>" hace proxy de herramientas en vivo; reelier scan/from-session congela historial soportado.
  2. Compila. reelier compile convierte un trace en un SKILL.md — 0 llamadas LLM, aserciones mínimas, brechas honestas impresas como Preguntas abiertas.
  3. Reproduce. reelier run lo reproduce en Nivel 0 — sin LLM, byte-idéntico, solo lectura por defecto (las escrituras requieren --allow-writes).
  4. Compara. reelier diff reporta SAME o DRIFTED por paso, con la aserción fallida como el por qué — salida 1 en drift.
  5. Inicia sesión. reelier login conecta esta máquina a Reelier Cloud con un código de dispositivo en tu navegador — o configura REELIER_CLOUD_URL/REELIER_CLOUD_KEY para CI y auto-hosting.
  6. Empuja. Cada ejecución es un recibo; reelier push opcionalmente lo sincroniza a un ledger para un enlace permanente y una insignia de reproducción verificada incrustable.

¿Ya tienes una Agent Skill? Conviértela — tu skill, menos el modelo:

reelier compile trace.jsonl --from-skill ./my-skill/SKILL.md

Tres pruebas, una skill

PruebaComandoResponde
Determinismoreelier run <skill.md>¿Sigue haciendo lo que hacía?
Recuperaciónreelier run <skill.md> --fail NSi esto se rompiera, ¿la skill lo notaría y sanaría?
Driftreelier run <skill.md> --wrap "<your mcp server>"¿El mundo se ha movido por debajo de esta skill?

Taxonomía debida a la revisión de Mads Hansen del post de lanzamiento. Semántica completa para cada prueba, incluyendo inyección de recuperación y salvaguardas de manifiesto: docs/REFERENCE.md.

Gatea PRs de bump de Dependabot / Renovate

Dependabot y Renovate abren el PR y ejecutan tu suite de pruebas — pero ninguno sabe lo que tu agente realmente hace en tiempo de ejecución, así que un bump de dependencia que cambia silenciosamente la forma de una llamada a herramienta (un campo renombrado, un nuevo default, un error diferente) pasa con pruebas unitarias verdes. Esta es la verificación que no ejecutan.

Copia .github/workflows/reelier-bump-check.yml en tu repo, apunta skill: a tus propios archivos .skill.md grabados, y hará: gatear a PRs de dependabot[bot]/renovate[bot] (o una etiqueta dependencies), instalar la dependencia con bump, reproducir tu skill grabada en vivo contra ella en --max-level 0 (0 tokens), y fallar la verificación en el paso exacto que derivó.

Esto prueba el comportamiento de dependencias y llamadas a herramientas MCP — no prueba actualizaciones de modelo; --max-level 0 nunca llama a un LLM. Copia completa y configuración: docs/marketplace-listing.md.

Pruébalo

Un recibo empujado lleva una escalera de afirmaciones verificables de forma independiente — no una sola "verificado" genérica. Dependiendo de lo que actives, puede estar firmado, con timestamp, atestiguado por CI y llevar request-ids de proveedor verificables de forma cruzada. reelier verify recalcula cada afirmación offline, y una afirmación que no has habilitado simplemente se muestra como una brecha honesta, nunca una avergonzada.

Mira uno real: reelier.com/r/HWBdmGob9KeHRqXi-OEaRD0z.

Escalera completa de 8 peldaños, qué prueba y qué no prueba cada peldaño: docs/REFERENCE.md.

Si tus skills son empleados

Ciclo de vida del empleadoEquivalente en Reelier
Convertir una sesión en skillreelier from-session
Revisión de desempeñoreelier run + reelier diff
Mantenimiento de flotareproducciones programadas + alertas de drift
El registrorecibos firmados

"Verificado" describe el registro, nunca al agente — un recibo prueba qué se ejecutó y qué cambió, no que el agente fuera bueno en su trabajo.

Un contrato laboral no hace bueno a un empleado — hace visible y acotado lo que hizo. Igual aquí: los recibos prueban alcance y cambio, nunca corrección.

Para quién es

  • Dev en solitario / mantenedor de OSS — una prueba de regresión real de nuevo; el drift no puede pasar en silencio.
  • Equipo que envía cambios de agentes — "corrió limpio" se convierte en un artefacto de PR verificable, no una afirmación.
  • Agencia que ejecuta agentes para clientes — prueba de entrega firmada y con timestamp que un cliente puede verificar.
  • Comprador o vendedor en marketplace — recibos corroborados son reseñas que no pueden ser astroturfed.
  • Ops con requisitos de auditoría — un rastro firmado y atestiguado por CI de cada escritura, con clave de idempotencia incluida.

MIT, gratis para siempre (versiones ≤0.16.0 permanecen AGPL-3.0). Tus datos — skills, traces, ejecuciones — están especificados en SPEC.md, así que irse es copiar una carpeta.

Contribuciones: issues y PRs bienvenidos — SPEC.md es la fuente de verdad para formatos; arregla el código, no la spec. npm test antes de un PR.

Si Reelier te ahorró una re-ejecución, dale una estrella ⭐ — así es como otros constructores lo encuentran.