react-grab
react-grab — Browser element context for AI agents
Keyword:
react-grab·grab·element contextPoint at a live React UI element, capture the exact component/file/HTML context, and feed it straight into Claude Code, Cursor, Copilot, Codex, Gemini, or an MCP workflow.
When to use this skill
- Install
react-grabin a React project so agents can copy exact component context from the browser - Choose between clipboard flow, MCP flow, and plugin/API flow for React element capture
- Fix
react-grabsetup issues like wrong load point, missing file paths, or empty MCP responses - Add or remove an agent integration (
claude-code,cursor,codex,gemini,mcp, etc.) - Build a custom plugin or use the primitives API for a project-specific workflow
Do not use this skill for:
- Fresh-session browser automation, auth flows, or disposable browser verification →
agent-browser - Running-browser reuse with existing cookies/extensions/logins →
playwriter - Human feedback / annotation packets on rendered UI →
agentation - React performance diagnosis, rerender churn, hydration, bundle, or RSC/client-boundary work →
react-best-practices - General UI-system / token / component-library design work →
design-system
Instructions
Step 1: Classify the request
Choose one primary mode before giving commands:
- Clipboard install/use — user wants to hover, press Cmd/Ctrl+C, and paste context into an AI agent.
- MCP workflow — user wants the agent to call a tool like
get_element_contextafter browser selection. - Plugin/API workflow — user wants custom actions, lifecycle hooks, formatting, or primitives like
freeze(). - Troubleshooting/removal — user wants to fix setup problems or remove the integration cleanly.
Step 2: Confirm prerequisites truthfully
Use the upstream project as source of truth:
npx grab@latest initis the default install path.- Upstream
package.jsoncurrently requires Node.js >=22. - The browser overlay is a development-only tool; never present it as a production feature.
If the user’s environment is older than Node 22, say so explicitly before giving the install path.
Step 3: Give the shortest correct path
Mode A — Clipboard install/use
Use this as the default path unless the user explicitly asks for MCP or plugins:
# At the project root
npx -y grab@latest init
Then explain the runtime flow:
- Start the dev server.
- Open the app in the browser.
- Hover the target element.
- Press Cmd+C (Mac) or Ctrl+C (Windows/Linux).
- Paste the captured context into the AI agent.
Clipboard output should include:
- component name
- source file path
- line/column when available
- HTML snippet
If the user needs framework-specific setup, use references/install-and-routing.md.
Mode B — MCP workflow
When the user wants programmatic access from the agent instead of manual paste:
npx -y grab@latest add mcp
Explain the real flow clearly:
- User selects or hovers the element in the browser overlay.
- The MCP server exposes the latest selection.
- The AI agent calls
get_element_context. - The tool returns file path, component, stack, and HTML context.
If the user asks how this differs from clipboard flow:
- Clipboard is manual paste into chat.
- MCP is tool-based retrieval after selection.
Use references/agent-workflows.md for agent-specific install and routing guidance.
Mode C — Plugin/API workflow
When the user wants custom behavior, automation, or a deeper integration:
- Route installation and workflow choice first.
- Then point to:
references/api.mdfor full API surfacereferences/agent-workflows.mdfor practical plugin/MCP patterns
Common primitives to mention:
getElementContext(element)freeze()/unfreeze()openFile(filePath, lineNumber?)registerPlugin(...)
Do not dump the full API unless the user asked for the deep path.
Mode D — Troubleshooting/removal
If the user wants fixes or teardown:
- Use
references/troubleshooting.mdfor symptom-first triage. - For removal, use upstream CLI removal commands:
npx -y grab@latest remove <agent>
Step 4: Keep the boundary sharp
Keep react-grab focused on React element context capture from the browser.
Route out when the user is actually asking for:
- general browser automation →
agent-browserorplaywriter - UI review / visual annotation →
agentation - performance / profiling / hydration / bundle / RSC issues →
react-best-practices - reusable component-system design →
design-systemorui-component-patterns
Step 5: Prefer reference docs over bloating the front door
After classifying the mode, load only the matching support doc:
references/install-and-routing.mdreferences/agent-workflows.mdreferences/troubleshooting.mdreferences/api.md
Keep the main answer short unless the user explicitly asks for the long path.
Examples
Example 1: install in a Next.js app and use clipboard flow
User: “Set up react-grab in my Next.js app so I can copy a component into Claude Code.”
Response shape:
- Confirm Node 22+ prerequisite.
- Use
npx -y grab@latest initas the default path. - Explain dev-server → browser hover → Cmd/Ctrl+C → paste into Claude Code.
- Only load framework-specific setup if auto-detect is not viable.
Example 2: MCP setup for agent tool access
User: “Install react-grab MCP so the agent can grab the selected button context.”
Response shape:
- Confirm Node 22+ prerequisite.
- Run
npx -y grab@latest add mcp. - Explain that the browser selection happens first, then the agent calls
get_element_context. - Route generic browser-control questions to
agent-browser/playwriterif needed.
Example 3: custom plugin workflow
User: “Create a react-grab plugin that adds a Jira action to the context menu.”
Response shape:
- Keep
react-grabas the plugin/API lane. - Use
registerPlugin(...)with an action and optional hooks. - Point to
references/api.mdfor the full hook surface. - Keep the example focused on the requested action rather than reproducing the whole API.
Example 4: fix setup drift
User: “grab init keeps failing on my machine.”
Response shape:
- Check Node version first and call out the Node 22+ requirement.
- Confirm they are running from the project root.
- Use
references/troubleshooting.mdfor overlay/load/MCP/path failures. - Route unrelated framework build issues to the appropriate frontend skill.
Best practices
- State the Node.js >=22 prerequisite truthfully before recommending install commands.
- Default to
npx -y grab@latest initunless the user explicitly needs manual framework setup. - Keep it dev-only — never imply this belongs in production builds.
- Explain clipboard vs MCP clearly so users do not confuse paste-based and tool-based workflows.
- Route broad browser or UI-review work out early instead of letting
react-grababsorb adjacent skills. - Use support docs for depth instead of pasting long installation or API manuals into the main response.
References
- react-grab GitHub
- react-grab.com
- Install and routing guide
- Agent workflows
- Troubleshooting
- Full API reference
- Helper scripts —
install.shandadd-agent.sh