# Chrome Extension Research

> Compare Chrome extensions using Crawlora's live store listings and stored adoption, publisher, permission, and privacy history. Use for extension shortlists, market comparisons, or investigating observed changes; store disclosures alone do not establish runtime safety.

- Skill: `crawlora-org/chrome-extension-research` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add crawlora-org/chrome-extension-research`
- Raw SKILL.md: https://api.skillmd.com/api/skills/crawlora-org/chrome-extension-research/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Research & Search
- Author: Crawlora-org (https://skillmd.com/u/crawlora-org)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/crawlora-org/chrome-extension-research

---


# Chrome extension research

Compare extensions against the requested features, adoption evidence, maintenance,
and access requirements. Separate observed store fields from developer claims and
conclusions that would require inspecting code or runtime behavior.

## Setup

Set `CRAWLORA_API_KEY` to your key from [crawlora.net](https://crawlora.net).
Run the bundled `scripts/crawlora.sh` from this skill directory or by absolute
path. It sends `x-api-key` to `https://api.crawlora.net/api/v1`; keep the key in
the environment. Read [reference/endpoints.md](reference/endpoints.md) for
selected live Chrome Web Store and stored extension tools.

## Compare current listings and observed changes

1. Establish the user's feature requirements and comparison purpose. Discover
   candidates with `/datasets/chrome-extensions/search`, using
   `item_type=extension` and `status=active` for current extensions. The dataset
   also includes themes, legacy apps, and unknown types; do not mix them silently.
   Discover category/filter values through dataset facets or live
   `/chromewebstore/categories`, keeping their taxonomies distinct.
2. Resolve the exact 32-character store ID, developer identity, and canonical URL.
   Refresh selected candidates through `/chromewebstore/item?id=...`; search and
   similar-item results aid discovery but do not establish equivalent functionality.
3. Retrieve `/datasets/chrome-extensions/items/{id}` and `/history/{id}` under
   the same dataset prefix. History is chronological and **change-only**, with
   optional `from`/`to` dates and `limit` up to 1000. Missing calendar days are
   not zero users or evidence that the extension was checked and unchanged.
4. Inspect recent change observations with `/datasets/chrome-extensions/changes`
   and optional `change_type`. Attribute a change to its observation time, not
   an exact transfer or release date. A changed developer label is not by itself
   proof of ownership transfer; compare identity and website evidence.
5. For access/privacy comparisons, use `/chromewebstore/permissions` and
   `/chromewebstore/privacy` with the same ID. Distinguish required from optional
   API permissions and required from optional host permissions. A declaration
   is not proof that every permission is currently granted or used; a privacy
   statement is a developer disclosure, not an independent audit.
6. Read a bounded live review sample, preserving dates, reviewed versions, and
   collection filters. Tie claimed feature gaps to specific evidence. Separate
   a sampled complaint from population prevalence and distinguish publisher
   identity fields from a verified business relationship.

```sh
scripts/crawlora.sh /datasets/chrome-extensions/search \
  q="tab manager" item_type=extension status=active page_size=5
# Resolve a returned ID before reading its live item, permissions, or history.
```

## Output and interpretation

Return a comparison with store ID/link, verified feature evidence, dated user and
rating counts, current version, observed changes, access requirements, disclosures,
review themes, and missing evidence. Use [Chrome's permission definitions](https://developer.chrome.com/docs/extensions/develop/concepts/declare-permissions)
when explaining the access fields.

- Store user counts are adoption indicators, not revenue, active usage, or exact
  install/uninstall flows. Dataset trending measures observed movement over its
  available interval; compare matching observation windows.
- Broad permissions, removal, or publisher changes can justify investigation;
  they do not independently prove malware. Low permissions or high ratings do
  not independently prove safety. Do not install an extension merely to research it.
- Dataset pages max at 100 with a 10,000-result window. Bound enrichments to the
  shortlist and stop at no progress or source end. Back off on `429`, retry a
  transient `5xx` once, stop on `401`/`403`, and
  check application `code`. Keep failed refreshes labeled as stored observations.

