# Feature catalog — puppeteer/puppeteer

> Canonical page: https://codevetter.com/unpack/puppeteer/feature-catalog

# Feature catalog — puppeteer/puppeteer

Scanned commit 2e45a3af43231cd658285e4da5e7f53e40f24edf (2026-10-02). Generated by codevetter codevetter 1.15.0 on 2026-10-02.

Source inspection; upstream code and tests were not executed.

The main user surface is the JavaScript automation API, complemented by browser-management commands and Angular tooling. The inspected APIs cover browser sessions, page interaction, network behavior, captures, and browser-specific controls. CDP and BiDi have differing capabilities, so feature availability depends on browser, protocol, and sometimes browser version. This catalog groups the investigated surfaces and does not claim exhaustive enumeration of every exported method.
- launch supports Chrome and Firefox launcher selection; connect attaches through exactly one of browserWSEndpoint, browserURL, a custom transport, or a Chrome channel. — [packages/puppeteer-core/src/node/PuppeteerNode.ts#L139-L162](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/node/PuppeteerNode.ts#L139-L162) [packages/puppeteer-core/src/common/BrowserConnector.ts#L94-L109](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/common/BrowserConnector.ts#L94-L109)
- CDP BrowserContext APIs create pages, isolate contexts, configure proxy/download behavior, and get/set cookies with partition-key conversion. — [packages/puppeteer-core/src/cdp/Browser.ts#L267-L289](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/cdp/Browser.ts#L267-L289) [packages/puppeteer-core/src/cdp/BrowserContext.ts#L132-L185](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/cdp/BrowserContext.ts#L132-L185)
- Page.goto supports referrer settings, lifecycle wait conditions, and navigation timeouts; locator clicks automatically check viewport placement, stable geometry, and enabled state. — [packages/puppeteer-core/src/cdp/Frame.ts#L148-L178](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/cdp/Frame.ts#L148-L178) [packages/puppeteer-core/src/api/locators/locators.ts#L399-L427](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/api/locators/locators.ts#L399-L427)
- Selectors dispatch to CSS, ARIA, text, XPath, shadow-piercing, composite P selectors, or registered custom handlers, with polling chosen from selector characteristics. — [packages/puppeteer-core/src/common/GetQueryHandler.ts#L18-L78](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/common/GetQueryHandler.ts#L18-L78) [packages/puppeteer-core/src/common/CustomQueryHandler.ts#L74-L85](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/common/CustomQueryHandler.ts#L74-L85)
- Screenshots support PNG/JPEG/WebP, clipping, full-page capture, base64 or byte output, and optional file output; CDP PDF generation supports streamed output, fonts, margins, tagged PDFs, and outlines. — [packages/puppeteer-core/src/api/Page.ts#L2881-L2984](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/api/Page.ts#L2881-L2984) [packages/puppeteer-core/src/cdp/Page.ts#L1223-L1308](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/cdp/Page.ts#L1223-L1308)
- Page exposes request interception, HTTP authentication, host-function bindings, coverage, tracing, accessibility, and an experimental WebMCP accessor requiring Chrome 151+ and a feature flag. — [packages/puppeteer-core/src/api/Page.ts#L1035-L1057](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/api/Page.ts#L1035-L1057) [packages/puppeteer-core/src/api/Page.ts#L1094-L1109](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/api/Page.ts#L1094-L1109) [packages/puppeteer-core/src/cdp/Page.ts#L795-L855](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/cdp/Page.ts#L795-L855)
- CDP Browser APIs load/uninstall unpacked extensions, install/uninstall PWAs, and add/remove screens; PWA installation is rejected when network restrictions are configured. — [packages/puppeteer-core/src/cdp/Browser.ts#L500-L513](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/cdp/Browser.ts#L500-L513) [packages/puppeteer-core/src/cdp/Browser.ts#L542-L569](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/cdp/Browser.ts#L542-L569) [packages/puppeteer-core/src/cdp/Browser.ts#L630-L639](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/puppeteer-core/src/cdp/Browser.ts#L630-L639)
- Browser-management CLI commands include install, launch, clear, list, and experimental bisect; Angular schematics provide ng-add, e2e-file generation, and configuration ejection with Node/Jest/Jasmine/Mocha runner choices. — [packages/browsers/src/CLI.ts#L205-L207](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/browsers/src/CLI.ts#L205-L207) [packages/browsers/src/CLI.ts#L363-L385](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/browsers/src/CLI.ts#L363-L385) [packages/browsers/src/CLI.ts#L447-L504](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/browsers/src/CLI.ts#L447-L504) [packages/ng-schematics/src/schematics/collection.json#L3-L18](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/ng-schematics/src/schematics/collection.json#L3-L18) [packages/ng-schematics/src/builders/puppeteer/index.ts#L31-L49](https://github.com/puppeteer/puppeteer/blob/2e45a3af43231cd658285e4da5e7f53e40f24edf/packages/ng-schematics/src/builders/puppeteer/index.ts#L31-L49)

Every claim links to its cited files at the pinned commit. Citations identify source evidence; they do not establish runtime correctness. Independent CodeVetter scan — not reviewed by upstream maintainers.

## Public product links

- [CodeVetter](https://codevetter.com/)
- [Download](https://codevetter.com/download)
- [Documentation](https://codevetter.com/docs/)
- [Source](https://github.com/Codevetter/codevetter)
