peek
Exposes recorded browser sessions (rrweb DOM, console, network) to AI coding agents, fully local
Open source Open in the app JSON README (API)
About
Exposes recorded browser sessions (rrweb DOM, console, network) to AI coding agents, fully local
Details
- Kind
- MCP servers
- Topic
- No topic detected
- Publisher
- cubenest
- Origin
- official
- Category
- ferramentas
- Transport
- local
- Version
- 0.1.0-alpha.24
- Stars
- 7
- Open pull requests
- 3
- Last push
- 2026-07-10T16:00:26Z
- Repository state
- ativo
- Language
- TypeScript
- License
- Apache-2.0
- Added
- 2026-08-29 03:01:49
- Updated
- 2026-08-29 03:01:49
- Origin id
io.github.Cubenest/peek-mcp
README
<img src="https://raw.githubusercontent.com/Cubenest/rrweb-stack/main/assets/brand/sub-tracelane.svg" height="40" alt="tracelane"> <img src="https://raw.githubusercontent.com/Cubenest/rrweb-stack/main/assets/brand/sub-peek.svg" height="40" alt="peek"> # rrweb-stack Two OSS products on one rrweb-based substrate. Both ship as `npm` packages today. | Product | One line | Install | |---|---|---| | **[tracelane](packages/tracelane-wdio/)** | The recorder for your WebdriverIO and Playwright tests — Cypress on the roadmap. Self-contained HTML for every run — replay failures, audit successes, attach to any bug tracker. No SaaS, no dashboard, no signup. | `npx @tracelane/cli init` | | **[peek](packages/peek-cli/)** | Your real browser, exposed to your AI coding agent over MCP — the agent reads recorded sessions and, with your explicit consent, drives the live page. Never leaves your machine. | `npm install -g @peekdev/cli && npx peek init` |  *Above: `npx @tracelane/cli init` in a real WebdriverIO project — detect runner, install, edit `wdio.conf.ts`, ignore reports dir.*  *Above: `peek sessions list` then `peek sessions show ... --format markdown` — a recorded browser session as queryable structured output, AI-ready.* [](https://github.com/Cubenest/rrweb-stack/actions/workflows/ci.yml) [](https://scorecard.dev/viewer/?uri=github.com/Cubenest/rrweb-stack) [](LICENSE) [](https://github.com/Cubenest/rrweb-stack#pre-launch-state) [](https://github.com/Cubenest/rrweb-stack/blob/main/CONTRIBUTING.md) [](https://github.com/changesets/changesets) [](https://biomejs.dev) ## What's where ### tracelane | Package | Status | What it does | |---|---|---| | [`@tracelane/wdio`](packages/tracelane-wdio/) | alpha | WebdriverIO Service — capture + write HTML report | | [`@tracelane/playwright`](packages/tracelane-playwright/) | alpha | Playwright Reporter + auto-fixture — capture + write HTML report | | [`@tracelane/cypress`](https://github.com/Cubenest/rrweb-stack/issues) | planned | JSON-output adapter (no Test Replay overlap) | | [`@tracelane/core`](packages/tracelane-core/) | alpha | Framework-agnostic capture engine — depended on by the adapters | | [`@tracelane/report`](packages/tracelane-report/) | alpha | Self-contained HTML report builder | Docs: [tracelane.cubenest.in](https://tracelane.cubenest.in) (source under [`apps/tracelane-docs/`](apps/tracelane-docs/)). The [tracelane-wdio README](packages/tracelane-wdio/README.md) is the right starting point. ### peek | Package | Status | What it does | |---|---|---| | [`@peekdev/cli`](packages/peek-cli/) | alpha | `peek init` installer + `peek sessions` query / export | | [`@peekdev/mcp`](packages/peek-mcp/) | alpha | stdio MCP server — exposes captured sessions, plus consent-gated live read + act tools, to Claude Code, Cursor, Cline, Windsurf | | [`peek-extension`](packages/peek-extension/) | alpha · [on the Chrome Web Store](https://chromewebstore.google.com/detail/peek/dmgpmkeneheenpdnfmpjjahnkknkaejb) | Chrome MV3 extension — the real browser, recorded | Docs: [peek.cubenest.in](https://peek.cubenest.in) (source under [`apps/peek-docs/`](apps/peek-docs/)). > **peek requires Node.js ≥ 22.** Its native `better-sqlite3` dependency only > ships prebuilt binaries for Node 22+; on older Node (notably Windows, which > has no C/C++ toolchain by default) the install falls back to compiling from > source and fails. ## Shared substrate [`@cubenest/rrweb-core`](https://github.com/Cubenest/rrweb-stack/blob/main/packages/rrweb-core/) — vendored PostHog rrweb fork, PII masking primitives, large-DOM throttling, screenshot fallback, network/console capture abstractions, compression helpers. Used by both products. The fork is pinned by SHA + the substrate's NOTICE attributes both PostHog's plugin lineage and the upstream rrweb roots. ## Why two products, one repo Same recording engine, same trust model, two different consumer surfaces: - **tracelane** ships test-time captures into a self-contained HTML artifact your team and AI agents can read offline. - **peek** ships live-browser captures into an MCP server your AI coding agent can query — and, with your explicit per-origin consent, drive the live page through. peek's live read + act tools are gated by a five-level per-origin permission model (`0 Off → 1 Read-only → 2 Suggest-only → 3 Act-with-confirm → 4 YOLO`, the default is Level 1) with a destructive-action blocklist that always prompts. No telemetry, no cloud — everything stays in `~/.peek`. Shared upstream means one fork to track, one masking surface to harden, one license + DCO + security policy. ## Pre-launch state Pre-1.0. Alpha packages live on npm. Branch protection is on `main` (PR + CI + DCO + linear history). All workflows use Trusted Publishing OIDC + SLSA provenance. Renovate runs with a 7-day cooldown (21 days for the `@posthog/rrweb` lineage) and `config:best-practices`. tracelane has publicly launched (npm alpha + a live demo report); peek is alpha on npm and its Chrome MV3 extension is available on the [Chrome Web Store](https://chromewebstore.google.com/detail/peek/dmgpmkeneheenpdnfmpjjahnkknkaejb). ## Security Report a vulnerability via [SECURITY.md](https://github.com/Cubenest/rrweb-stack/blob/main/SECURITY.md). The shared threat model for both products lives in [docs/SECURITY-NOTES.md](https://github.com/Cubenest/rrweb-stack/blob/main/docs/SECURITY-NOTES.md). ## License Apache-2.0. See [LICENSE](https://github.com/Cubenest/rrweb-stack/blob/main/LICENSE). ## Contributing Apache 2.0. DCO sign-off required on all contributions. See [CONTRIBUTING.md](CONTRIBUTING.md), [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md), [SECURITY.md](SECURITY.md). ## Sponsor / support - GitHub Sponsors — [github.com/sponsors/harry-harish](https://github.com/sponsors/harry-harish) *(opening for launch)* - The work is open-source and sustainable; sponsorship keeps it that way. See [`docs/SUSTAINABILITY.md`](docs/SUSTAINABILITY.md) for the maintenance cadence.