Skip to content
AI & Agents
Skill

/chrome-devtools

Expert-level browser automation, debugging, and performance analysis using Chrome DevTools MCP. Use for interacting with web pages, capturing screenshots, analyzing network traffic, and profiling performance.

From plugin
awesome-copilot
41k200 skills200 agents

Claude Code

$ npx -y skills add github/awesome-copilot --skill chrome-devtools --agent claude-code

SKILL.md

chrome-devtools.SKILL.md
name: chrome-devtools
description: 'Expert-level browser automation, debugging, and performance analysis using Chrome DevTools MCP. Use for interacting with web pages, capturing screenshots, analyzing network traffic, and profiling performance.'
license: MIT

Chrome DevTools Agent

Overview

A specialized skill for controlling and inspecting a live Chrome browser. This skill leverages the `chrome-devtools` MCP server to perform a wide range of browser-related tasks, from simple navigation to complex performance profiling.

When to Use

Use this skill when:

  • **Browser Automation**: Navigating pages, clicking elements, filling forms, and handling dialogs.
  • **Visual Inspection**: Taking screenshots or text snapshots of web pages.
  • **Debugging**: Inspecting console messages, evaluating JavaScript in the page context, and analyzing network requests.
  • **Performance Analysis**: Recording and analyzing performance traces to identify bottlenecks and Core Web Vital issues.
  • **Emulation**: Resizing the viewport or emulating network/CPU conditions.

Tool Categories

1. Navigation & Page Management

  • `new_page`: Open a new tab/page.
  • `navigate_page`: Go to a specific URL, reload, or navigate history.
  • `select_page`: Switch context between open pages.
  • `list_pages`: See all open pages and their IDs.
  • `close_page`: Close a specific page.
  • `wait_for`: Wait for specific text to appear on the page.

2. Input & Interaction

  • `click`: Click on an element (use `uid` from snapshot).
  • `fill` / `fill_form`: Type text into inputs or fill multiple fields at once.
  • `hover`: Move the mouse over an element.
  • `press_key`: Send keyboard shortcuts or special keys (e.g., "Enter", "Control+C").
  • `drag`: Drag and drop elements.
  • `handle_dialog`: Accept or dismiss browser alerts/prompts.
  • `upload_file`: Upload a file through a file input.

3. Debugging & Inspection

  • `take_snapshot`: Get a text-based accessibility tree (best for identifying elements).
  • `take_screenshot`: Capture a visual representation of the page or a specific element.
  • `list_console_messages` / `get_console_message`: Inspect the page's console output.
  • `evaluate_script`: Run custom JavaScript in the page context.
  • `list_network_requests` / `get_network_request`: Analyze network traffic and request details.

4. Emulation & Performance

  • `resize_page`: Change the viewport dimensions.
  • `emulate`: Throttling CPU/Network or emulating geolocation.
  • `performance_start_trace`: Start recording a performance profile.
  • `performance_stop_trace`: Stop recording and save the trace.
  • `performance_analyze_insight`: Get detailed analysis from recorded performance data.

Workflow Patterns

Pattern A: Identifying Elements (Snapshot-First)

Always prefer `take_snapshot` over `take_screenshot` for finding elements. The snapshot provides `uid` values which are required by interaction tools.

1. `take_snapshot` to get the current page structure.
2. Find the `uid` of the target element.
3. Use `click(uid=...)` or `fill(uid=..., value=...)`.

Pattern B: Troubleshooting Errors

When a page is failing, check both console logs and network requests.

1. `list_console_messages` to check for JavaScript errors.
2. `list_network_requests` to identify failed (4xx/5xx) resources.
3. `evaluate_script` to check the value of specific DOM elements or global variables.

Pattern C: Performance Profiling

Identify why a page is slow.

1. `performance_start_trace(reload=true, autoStop=true)`
2. Wait for the page to load/trace to finish.
3. `performance_analyze_insight` to find LCP issues or layout shifts.

Best Practices

  • **Context Awareness**: Always run `list_pages` and `select_page` if you are unsure which tab is currently active.
  • **Snapshots**: Take a new snapshot after any major navigation or DOM change, as `uid` values may change.
  • **Timeouts**: Use reasonable timeouts for `wait_for` to avoid hanging on slow-loading elements.
  • **Screenshots**: Use `take_screenshot` sparingly for visual verification, but rely on `take_snapshot` for logic.
Read more
@github
Ships withawesome-copilot

A community-created collection of custom agents, instructions, skills, hooks, workflows, and plugins to supercharge your GitHub Copilot experience.

41k200 skills200 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
40.7k
Star history of github/awesome-copilot on GitHub, a chart by star-history.com

Other skills on awesome-copilot.

acreadiness-assess

acreadiness-assess

Run the AgentRC readiness assessment on the current repository and produce a static HTML dashboard at reports/index.html. Wraps…

More skills from other plugins.

1password

1password

Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets.

openclaw10d393k
@openclaw@openclawInstall Skill

Questions about chrome-devtools.

Which coding agents can use chrome-devtools?
chrome-devtools installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.