Controls and inspects a live Chrome browser to automate navigation, debug JavaScript, analyze network traffic, and profile web performance.
- GitHub stars
- 41,038
- Files
- 1
- Last commit
- Nov 11, 2026
- License
- MIT
- Allowed tools
- —
What does the chrome-devtools skill do?
chrome-devtools controls and inspects a live Chrome browser to automate navigation, debug JavaScript, analyze network traffic, and profile web performance.
Summary generated from the skill's SKILL.md.
About the chrome-devtools skill
Automating web navigation and debugging JavaScript within a live Chrome browser is what this skill enables. Developers and testers can use it to interact with web pages by clicking elements, filling forms, and handling dialogs through specific tools like click, fill, and handle_dialog. It is particularly useful when an agent needs to move beyond simple browsing to perform deep inspections of a site's internal state.
Beyond basic interaction, the skill provides debugging capabilities such as inspecting console messages and analyzing network requests. It allows for visual verification via take_screenshot and structural analysis using take_snapshot to retrieve element uids. For performance-focused tasks, the skill can record traces with performance_start_trace and generate insights through performance_analyze_insight to identify bottlenecks or Core Web Vital issues. It also supports environment emulation by resizing viewports or throttling CPU and network conditions.
What an agent can do with it
- 1Automate web form interactionsAn agent can navigate to a website, locate input fields, and enter data to complete a registration process.
- 2Debug JavaScript and network errorsA developer can investigate why a web application is failing by checking console logs and failed network requests.
- 3Extract page structure for automationAn AI can use text-based accessibility trees to find the unique identifiers needed to click specific buttons.
Written from the skill's SKILL.md. Every use case is checked against a quote from it.
How to install the chrome-devtools skill
Each command copies the skill folder into the client's skills directory. Restart the client or start a new session to load it.Install the chrome-devtools skill in Claude Code
~/.claude/skills/chrome-devtools/SKILL.md
$ npx degit github/awesome-copilot/skills/chrome-devtools ~/.claude/skills/chrome-devtoolsInstall the chrome-devtools skill in Claude Code (project)
.claude/skills/chrome-devtools/SKILL.md
$ npx degit github/awesome-copilot/skills/chrome-devtools .claude/skills/chrome-devtoolsInstall the chrome-devtools skill in Codex
~/.agents/skills/chrome-devtools/SKILL.md
$ npx degit github/awesome-copilot/skills/chrome-devtools ~/.agents/skills/chrome-devtoolsInstall the chrome-devtools skill in Gemini CLI
~/.gemini/skills/chrome-devtools/SKILL.md
$ npx degit github/awesome-copilot/skills/chrome-devtools ~/.gemini/skills/chrome-devtoolsInstall the chrome-devtools skill in Claude.ai
npx degit github/awesome-copilot/skills/chrome-devtools chrome-devtools && zip -r chrome-devtools.zip chrome-devtools # claude.ai → Customize → Skills → + → Create skill → Upload a skill → chrome-devtools.zip
Automated checks
Ran Nov 15, 2026Full report →Passed our automated checks. That is not a security audit: read the scripts before you let an agent run them. How checks work
- Source repository linked and reachablegithub/awesome-copilot/skills/chrome-devtools is public and reachablegithub.com/github/awesome-copilot/tree/HEAD/skills/chrome-de ↗Pass
- Open source license (OSI)MITspdx.org/licenses/MIT.html ↗Pass
- Commit or release in the last yearLast commit 2026-11-11github.com/github/awesome-copilot/commits ↗Pass
- No download-and-run or credential theft in scriptsNo scripts in the skill folderPass
- No hidden instructions in SKILL.mdNo override phrases, safeguard switches, credential requests or hidden charactersgithub.com/github/awesome-copilot/blob/HEAD/skills/chrome-de ↗Pass
- Pre-approved tools are scopedNo pre-approved tools; the agent asks before using onegithub.com/github/awesome-copilot/blob/HEAD/skills/chrome-de ↗Pass
- SKILL.md follows the Agent Skills formatValid name and description; says when to use it; 98 linesgithub.com/github/awesome-copilot/blob/HEAD/skills/chrome-de ↗Pass
SKILL.md
View on GitHubChrome 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 (useuidfrom 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_pagesandselect_pageif you are unsure which tab is currently active. - Snapshots: Take a new snapshot after any major navigation or DOM change, as
uidvalues may change. - Timeouts: Use reasonable timeouts for
wait_forto avoid hanging on slow-loading elements. - Screenshots: Use
take_screenshotsparingly for visual verification, but rely ontake_snapshotfor logic.
Files in this skill
1chrome-devtools skill questions
How do I install the chrome-devtools skill in Claude Code?
Run npx degit github/awesome-copilot/skills/chrome-devtools ~/.claude/skills/chrome-devtools. Claude Code loads skills from ~/.claude/skills (all projects) or .claude/skills (one project) and uses a skill when its description matches the task.
Which clients can use the chrome-devtools skill?
Any client that reads the Agent Skills format: Claude Code, Codex, Gemini CLI and claude.ai (upload as a ZIP). Scripts in the skill run only where the client allows code execution.
How should I find elements to interact with?
You should use the take_snapshot tool to get a text-based accessibility tree, which provides the uid values required for interaction tools like clicking or filling forms.