recording

A command that turns a browser session recorded with the Sorify Recorder Chrome extension into a Playwright end-to-end test and uploads it to Sorify. It repeats the exact clicks, text entries, and page changes that were recorded.

In plain words
What is it for?
Use it to create a browser test from a recorded user journey, using a recording ID or the latest recording.
Why use it?
It removes the need to write the test steps by hand and avoids guessing how the page works. The test follows the recorded session instead of exploring the page on its own.

Command

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add commands/rakutentech/sorify/recording
Clone the repo
git clone --depth 1 https://github.com/rakutentech/sorify
Per session 104 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 2,372 The whole file, excluding the scripts and references it only reads on demand.
Security scan C 2 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00104 $0.02372
Opus 5 $0.00052 $0.01186
Sonnet 5 $0.00021 $0.00474
Haiku 4.5 $0.00010 $0.00237

Measured 2d ago against content hash 822f3d5ec1f4, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade C, and why

recording scanned grade C with 2 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Downloads and executes remote codehighSupply chain

curl | sh runs whatever the server returns today, which is not necessarily what it returned when this was reviewed.

curl -fsSL https://raw.githubusercontent.com/rakutentech/sorify/master/mcp/install-mcp.sh | sh

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -fsSL https://raw.githubusercontent.com/rakutentech/sorify/master/mcp/install-mcp.sh | sh
plugins/sorify/commands/recording.md · 184 lines

How it starts

The opening of the file, as written. The whole thing — 184 lines — stays where its author put it; the contents beside it link to each section on GitHub.

sorify:recording

Trigger

Invoked as /sorify:recording [session_id | "latest"].


Step 0: Verify the sorify-recorder MCP is installed

This command depends on the sorify-recorder MCP server (tools like mcp__plugin_sorify_sorify-recorder__list_recordings). Unlike the sorify MCP server (HTTP, wired up automatically when the plugin is installed), this one is a local binary that does not install itself — check for it before calling any recorder tool.

Check with /mcp → look for plugin:sorify:sorify-recorder. If it's missing, or the first call to list_recordings fails to connect, abort with:

Error: sorify-recorder MCP is not installed.

Install it:
  curl -fsSL https://raw.githubusercontent.com/rakutentech/sorify/master/mcp/install-mcp.sh | sh

This downloads the sorify-recorder-mcp binary for your OS/arch into
~/.sorify-bin/. Restart Claude Code (or run /mcp to reconnect) afterwards,
then also make sure the Sorify Recorder Chrome extension is loaded:
  chrome://extensions/ → enable "Developer mode" → "Load unpacked" → select
  the sorify repo's `extension/` folder.

Step 1: Resolve the recording

Call mcp__plugin_sorify_sorify-recorder__list_recordings — this returns lightweight metadata only (session_id, label, path, event_count, timestamps), never the recorded events themselves.

$ARGUMENTS is empty or "latest"  → use the entry with the newest `mtime`
$ARGUMENTS is a session_id       → match it exactly

If there are zero recordings → abort with:

Error: No recordings found. Record a session first — load the Sorify
Recorder extension unpacked, click the icon, Connect, Start recording.

If the resolved recording has event_count: 0 → abort with:

Error: Recording {session_id} has no captured events.

Keep the resolved path — this is the JSONL file on disk. Print which file was resolved before going further:

Reading recording: {path}  ({event_count} events, label: "{label}")

Step 2: Show interpretation and confirm before touching Sorify

Read the full file on GitHub · 184 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 184 lines · 104 tokens per session scan C 822f3d5ec1f4

Subscribe to this mod's changes

recording is a command published in the GitHub repository rakutentech/sorify (5 stars, last pushed 4d ago), licensed Apache-2.0. It adds 104 tokens to every session and 2,372 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it C with 2 findings (downloads and executes remote code, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.