# Browser Replay > Reproduce la trayectoria grabada de una sesión contra la misma URL o una variante mutada, recuperándose de cambios de DOM por similitud de selectores. Fuente: https://skillsagentes.com/skills/ruvnet/ruflo/browser-replay Markdown: https://skillsagentes.com/skills/ruvnet/ruflo/browser-replay.md Repositorio: https://github.com/ruvnet/ruflo Autor: ruvnet Licencia: MIT Actualizado: el mes pasado Coste de contexto: 37 tok instalada, 857 tok al activarse, 857 tok con todos los archivos del bundle Bundle: 1 archivo, 3 KB Permisos que pide: mcp__plugin_ruflo-core_ruflo__browser_open mcp__plugin_ruflo-core_ruflo__browser_close mcp__plugin_ruflo-core_ruflo__browser_click mcp__plugin_ruflo-core_ruflo__browser_fill mcp__plugin_ruflo-core_ruflo__browser_type mcp__plugin_ruflo-core_ruflo__browser_press mcp__plugin_ruflo-core_ruflo__browser_select mcp__plugin_ruflo-core_ruflo__browser_check mcp__plugin_ruflo-core_ruflo__browser_uncheck mcp__plugin_ruflo-core_ruflo__browser_hover mcp__plugin_ruflo-core_ruflo__browser_wait mcp__plugin_ruflo-core_ruflo__browser_screenshot mcp__plugin_ruflo-core_ruflo__browser_snapshot mcp__plugin_ruflo-core_ruflo__browser_eval bash read ## Instalación Un skill son archivos markdown: los mismos archivos valen para cualquier agente y lo único que cambia es el directorio de destino, es decir la bandera `--agent`. Añade `-g` para instalarlo en todos los proyectos de la máquina. ```bash # Claude Code npx -y skills add ruvnet/ruflo --skill browser-replay --agent claude-code # Cursor npx -y skills add ruvnet/ruflo --skill browser-replay --agent cursor # Codex npx -y skills add ruvnet/ruflo --skill browser-replay --agent codex # Gemini CLI npx -y skills add ruvnet/ruflo --skill browser-replay --agent gemini # Windsurf npx -y skills add ruvnet/ruflo --skill browser-replay --agent windsurf # Cline npx -y skills add ruvnet/ruflo --skill browser-replay --agent cline ``` ## Qué hace - Reproduce la trayectoria grabada de una sesión contra la misma URL o una variante mutada, para pruebas de regresión y reproducción determinista de bugs. - Si un selector falla, busca uno similar por embeddings en el namespace browser-selectors antes de fallar, y reintenta una vez. - Calcula un veredicto según la proporción de pasos coincidentes sobre el total, con un umbral de tolerancia configurable (0.85 por defecto). ## Cuándo usarla - Se hace regresión de un flujo de UI tras un deploy, se reproduce un bug capturado en una sesión previa, o se compara con browser-screenshot-diff. ## Qué la activa - "Reproduce la sesión grabada 20260101-login contra la nueva URL" ## Antes de instalar - Requiere las herramientas MCP browser_* del plugin ruflo-browser y el CLI npx ruvector para leer el contenedor RVF. ## Archivos - SKILL.md — 3 KB ## SKILL.md Reproducido tal cual desde ruvnet/ruflo bajo MIT. Esta sección es el documento original y está en inglés. # Browser Replay Re-drive a recorded session trajectory. Used for regression testing, deterministic re-runs, and as the verification path that `browser-record` plus `browser-selectors` actually produces something replayable. > **This skill is the load-bearing assumption of the v0.2.0 architecture.** ADR-0001 Verification §4 requires ≥80% replay success across 10 distinct sites of varying drift profiles before the proposal moves from `Proposed` → `Accepted`. If you find replay unreliable, capture the failure modes in `findings.md` and report them up the ADR. ## When to use - Regression-testing a UI flow after a deploy. - Reproducing a bug captured in a prior session. - Comparing two runs of the same flow for `browser-screenshot-diff`. - Forking a session (`/ruflo-browser fork`) and replaying the parent before mutating. ## Steps 1. **Locate the source session**: ```bash npx -y ruvector@0.2.25 rvf status .rvf ``` 2. **Load the trajectory**: ```bash Read .../trajectory.ndjson ``` Each line is `{ts, action, args, selector, result}`. 3. **Open a fresh browser** via `mcp__plugin_ruflo-core_ruflo__browser_open` (target URL = original or `--url` override). 4. **For each trajectory step**, dispatch the matching MCP tool (`browser_click`, `browser_fill`, `browser_eval`, etc.) with the recorded args. 5. **On selector miss**, do *not* fail immediately — query the `browser-selectors` namespace for an embedding-similar selector for the same `:` and retry once: ```bash npx -y @claude-flow/cli@latest memory search --namespace browser-selectors \ --query " " --limit 5 ``` 6. **Record a new trajectory** for the replay run (allocate a fresh RVF container, lineage-tracked via `rvf derive`). 7. **Verdict**: tally matched-step / total-step ratio. Default tolerance threshold is 0.85 (configurable via `--tolerance`). Verdict goes into `findings.md`. ## Caveats - Browserbase explicitly does not offer replay (rrweb session replay was deprecated). We're betting on selector-embedding recovery; expect noise on heavily drifted sites. - Network nondeterminism (timing, content variation) can produce false-fail verdicts. Use `--mutate` to inject expected variation or pin to a fixture. - For visual diff, chain into `browser-screenshot-diff` against the parent session id. - If selector recovery requires more than one retry per step, log it. That's the signal that the site needs a re-record, not a replay. ## Dónde encaja - Categoría: [Automatización](https://skillsagentes.com/categorias/automatizacion.md) — Flujos de varios pasos que se ejecutan sin supervisión. - Creador: [ruvnet](https://skillsagentes.com/creators/ruvnet.md) — 275 skills en el directorio - [Todas las skills](https://skillsagentes.com/skills.md) - [Ranking de instalaciones](https://skillsagentes.com/ranking.md) ## Otras skills del mismo repositorio - [Harness Gepa](https://skillsagentes.com/skills/ruvnet/ruflo/harness-gepa.md): Inspecciona y audita genomas GEPA: carga y valida un genoma, renderiza el system prompt que compila, o clasifica los modos de fallo de una transcripción de ejecución. - [Deepseek Reason](https://skillsagentes.com/skills/ruvnet/ruflo/deepseek-reason.md): Completion en modo razonamiento contra deepseek-reasoner (R1) de DeepSeek. Devuelve el chain-of-thought por separado de la respuesta final. Lee DEEPSEEK_API_KEY y degrada si falta o la API no responde. - [Deepseek Chat](https://skillsagentes.com/skills/ruvnet/ruflo/deepseek-chat.md): Completion de un solo turno contra el modelo deepseek-chat de DeepSeek vía /v1/chat/completions. Lee DEEPSEEK_API_KEY y degrada con status:degraded si falta o la API no responde. Para tareas sin razonamiento. - [Adr Index](https://skillsagentes.com/skills/ruvnet/ruflo/adr-index.md): Construye o reconstruye el índice de ADRs y su grafo de dependencias ejecutando scripts/import.mjs, en vez de cientos de llamadas MCP. - [Agntcy Status](https://skillsagentes.com/skills/ruvnet/ruflo/agntcy-status.md): Muestra el estado de la integración AGNTCY/SLIM/CASA: si los paquetes están instalados, qué transporte está activo y si el enforcement de CASA está habilitado. --- Skills Agentes · [Índice de páginas en markdown](https://skillsagentes.com/sitemap.md) · [Inicio](https://skillsagentes.com/index.md)