react-grab

react-grab is a skill for Claude Code, Codex from glide-the/im-dream. It costs 86 tokens per session (730 once invoked), scanned A, a copy of react-grab, MIT.

A hands-free workflow that watches for UI elements copied from a browser with React Grab, a tool for selecting parts of a React interface and sending their details to an agent. The watcher keeps receiving new selections until stopped.

In plain words
What is it for?
Use it when you want the agent to continuously process browser selections, such as feedback or tasks attached to React UI elements.
Why use it?
It removes the need to copy and paste each selected interface element manually or risk missing a new selection while another task is running.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: installed under .agents/ (shared by several agents).

Good fit Use it when you want the agent to continuously process browser selections, such as feedback or tasks attached to React UI elements.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/glide-the/im-dream/react-grab
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.

Any agent
npx skills add glide-the/im-dream --skill react-grab
Clone the repo
git clone --depth 1 https://github.com/glide-the/im-dream

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for react-grab

README.md
[![agentmods](https://agentmods.dev/badge/skills/glide-the/im-dream/react-grab/github.svg)](https://agentmods.dev/skills/glide-the/im-dream/react-grab)
Your own site
<a href="https://agentmods.dev/skills/glide-the/im-dream/react-grab"><img src="https://agentmods.dev/badge/skills/glide-the/im-dream/react-grab/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for react-grab

Your own site · 80×15
<a href="https://agentmods.dev/skills/glide-the/im-dream/react-grab"><img src="https://agentmods.dev/badge/skills/glide-the/im-dream/react-grab.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 86 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 730 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin 100% copy Near-identical to another mod 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.1 $0.00086 $0.00730
Opus 5.5 $0.00034 $0.00292
Sonnet 5.5 $0.00017 $0.00146
Haiku 4.5 $0.00009 $0.00073

Measured 12d ago against content hash 977f2d610790, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

react-grab scanned grade A with 0 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 12d 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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

100% identical to react-grab — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

frontend/.agents/skills/react-grab/SKILL.md · 83 lines

How it starts

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

React Grab

The user selects UI elements in their browser and copies them with React Grab. npx react-grab@latest pull waits for new grabs and prints each as one line of JSON (usually one, sometimes a few if several were copied), starting the background watcher automatically the first time. Run it in a loop.

The loop

Repeat until the user says stop:

  1. Wait for the next grab:
npx react-grab@latest pull --max-age 0

It blocks until the user grabs something, then prints the new grab(s) — one JSON object per line. --max-age 0 is important: it delivers every grab regardless of age, so a comment the user added while you were busy on the previous task isn't silently dropped (the default skips grabs older than ~5 min as stale). Act on every line. If your shell cancels the command before a grab arrives, just run it again — nothing is lost; the watcher keeps capturing in the background and pull resumes where it left off.

  1. Act on the grab (below).
  2. Go back to step 1.

A new grab while you're working wins

The watcher never stops capturing — including while you're mid-task. A grab the user makes before you finish is them redirecting you, so it supersedes whatever you're doing. Don't make them wait for the old task to finish.

While acting on a grab:

  • Run anything slow (dev servers, builds, installs, test runs) as a background process, never a blocking foreground call, so you stay free to notice new grabs.
  • Between steps, peek without blocking:
npx react-grab@latest pull --max-age 0 --wait 0

Empty output means nothing new — keep going. If it prints a grab, the user has moved on: stop the current task, cancel any background processes you started for it, and act on the newest grab instead.

Acting on a grab

Each grab JSON has content (the element's source references) and, in prompt mode, prompt (the user's typed instruction):

  • prompt present → that comment IS the task. Execute it against the grabbed source; content holds the references (// path:line, in Component (at …)), so jump straight to that file.
  • No prompt → apply the standing instruction the user set when starting the loop, or, if there is none, triage it (summarize component + file:line) and wait for direction.

Read the full file on GitHub · 83 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. 12d ago First seen · 83 lines · 86 tokens per session scan A 977f2d610790

Subscribe to this mod's changes

react-grab is a skill published in the GitHub repository glide-the/im-dream (0 stars, last pushed yesterday), licensed MIT. It adds 86 tokens to every session and 730 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. It is 100% identical to react-grab, differing in 0 lines, and is treated as a copy.

Related

Other skills, from other repositories

next-cache-components-adoption

Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…

vercel/next.js · 95 tokens

next-cache-components-optimizer

Optimize the meaningful UI available immediately from a Next.js route on an initial load (hard navigation) or named client-side navigation (soft navigation). Encode the goal as a failing @next/playwright instant() e2e and work it to green, one verified route and entry point at a time; the shipped test then guards…

vercel/next.js · 123 tokens

next-partial-prefetching-adoption

Turn on Partial Prefetching in a Next.js app and work through the insights it surfaces. Use when the user wants to enable or adopt Partial Prefetching, flip the partialPrefetching flag, opt routes in with export const prefetch = 'partial', audit Link prefetch={true} behavior, preserve existing prefetched UI with…

vercel/next.js · 103 tokens

next-dev-loop

Verify Next.js runtime behavior after editing app code. Use this skill to confirm a change actually works in a running app — not just that it compiles or type-checks. Combines /next/mcp (Next.js's view) with agent-browser (the browser's view). Requires a running next dev.

vercel/next.js · 68 tokens

next-bundle-optimizer

Audit and reduce Next.js browser initial-load work. Use for slow route startup, oversized client bundles, duplicate browser dependencies, or features that can wait for interaction.

vercel/next.js · 38 tokens

next-partial-prefetching-optimizer

Optimize what selected Next.js client navigations include before the click under Partial Prefetching. Use after Cache Components and Partial Prefetching are adopted when the user wants selected URL-specific UI to be instant, wants reusable content to wait for navigation, or needs to choose between default, viewport…

vercel/next.js · 82 tokens