Skip to main content
skill GitHub Copilot official · GitHub

chrome-devtools · github — GitHub Copilot skill: install and use

Controls a live Chrome browser through Chrome DevTools MCP for page actions, debugging, and performance traces. Use it when an agent needs to inspect a web interface.

Install into GitHub Copilot · Skills CLI (Vercel) All methods and platforms ↓
npx skills add github/awesome-copilot --skill chrome-devtools
Open on GitHub

What chrome-devtools does

The skill controls Chrome tabs, navigates pages, clicks elements, fills forms, handles dialogs, and uploads files. It uses a text accessibility snapshot with uid values to locate targets; screenshots are intended for visual checks.

For debugging, it reads console messages, runs JavaScript in page context, and inspects network requests. It can resize the viewport, emulate CPU, network, or geolocation, then record and inspect a performance trace for LCP and layout shifts. It needs the chrome-devtools MCP server. Install it for teams testing a web UI in Chrome; skip it for work with no browser involved.

What it helps with

  • navigate to a page and fill a form
  • locate an element by uid and click it
  • inspect JavaScript errors in the console
  • find failed network requests
  • record a trace and investigate LCP issues

Example prompts for the agent

  • “Open the page, run `take_snapshot`, then click the submit button.”
  • “Check `list_console_messages` and `list_network_requests` after the page loads.”
  • “Start `performance_start_trace` with reload enabled and investigate the LCP issue.”

How to install chrome-devtools

1Skills CLI (Vercel)

npx skills add github/awesome-copilot --skill chrome-devtools

2GitHub CLI

gh skill install github/awesome-copilot chrome-devtools

3Manually: put the files in place

.github/skills/chrome-devtools/SKILL.md

From the same set554

The whole set →
git-commit official github This skill reviews Git changes, stages related files, and creates Conventional Commits. Use it when you want an agent to make one commit or split work into separate commits. GitHub Copilot 47,165installs excalidraw-diagram-generator official github Turn a plain-language description into an Excalidraw diagram. Useful for mapping processes, system structure, and relationships between entities. GitHub Copilot 31,639installs multi-stage-dockerfile official github This skill guides GitHub Copilot in writing multi-stage Dockerfiles for different languages and frameworks. Use it when the final runtime image should contain fewer build dependencies. GitHub Copilot 29,688installs documentation-writer official github Skill that turns the agent into a technical writer following the Diátaxis framework: tutorials, how-to guides, reference, and explanation. Proposes structure before writing. GitHub Copilot 27,757installs prd official github Turns a feature idea into a structured PRD with user stories, technical requirements, and risks. Use it when planning a software feature or an AI-powered one. GitHub Copilot 24,035installs refactor official github This skill reshapes existing code without changing its external behavior. Use it for gradual cleanup of large functions, duplication, weak types, and code smells. GitHub Copilot 22,321installs java-springboot official github Gives GitHub Copilot Spring Boot development practices, from project layout to tests and security. Use it when writing or reviewing Java application code. GitHub Copilot 21,272installs create-readme official github This skill reviews a project and creates a structured README.md. Use it when the repository needs clear documentation based on its actual files and code. GitHub Copilot 19,081installs

Other versions of chrome-devtools

Similar

deep-research affaan-m Turns a vague “research this” request into a cited report: sub-questions, 15–30 sources, an inline reference under each finding and a confidence level. Claude Code CX Codex Cursor +1 5,000installs e2e-testing affaan-m Playwright E2E testing patterns covering Page Object Model setup, CI/CD configuration, flaky test quarantine, and artifact capture. Claude Code CX Codex Cursor +1 5,000installs browser-qa affaan-m Drives a live page through a browser MCP: console errors, Core Web Vitals, forms, screenshots at three widths and axe-core. Ends with a SHIP or DO NOT SHIP verdict. Claude Code CX Codex Cursor +1 4,900installs stitch::extract-static-html official google-labs-code This skill saves a rendered app page as a standalone HTML file with CSS and images embedded. Use it to share a static view or prepare a page for Stitch. Claude Code CX Codex Cursor +1 9,900installs exa-search affaan-m Wires Exa neural search into your agent: fresh web pages, code examples, company and people lookups. Useful when you need search instead of model guesswork. Claude Code CX Codex Cursor +1 4,500installs agent-browser vercel-labs A CLI skill for browser control: it opens pages, fills forms, clicks buttons, and tests web apps. Use it when an agent needs to act inside a website. Claude Code CX Codex Cursor +1 1,200,000installs webapp-testing official anthropics This skill tests local web apps with Playwright, helping agents debug UI behavior, capture screenshots, and inspect browser logs. Claude Code Claude.ai 186,758installs computer-use stablyai This skill drives a visible app window through orca computer: accessibility tree, clicks, typing, screenshots. Reach for it when the job sits behind a GUI. Claude Code CX Codex Cursor +1 239,000installs

Questions about chrome-devtools

How do I install chrome-devtools in GitHub Copilot?

Run npx skills add github/awesome-copilot --skill chrome-devtools. You can also use gh skill install github/awesome-copilot chrome-devtools.

What does chrome-devtools do?

The skill connects an agent to a live Chrome browser through Chrome DevTools MCP. It automates browser actions, inspects console output and network requests, captures page state, and analyzes performance.

What does chrome-devtools need to work?

The skill uses the chrome-devtools MCP server to control and inspect Chrome. Take a fresh take_snapshot after navigation or DOM changes because element uid values can change.

Source text

SKILL.md · MIT
---
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.

```markdown
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.

```markdown
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.

```markdown
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.

© github · MIT · github/awesome-copilot

See also

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor