chrome-verify-checks
Use when verifying a chrome-extension/ change before reporting done.
Skill by jhlee0409
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/jhlee0409-chrome-verify-checks
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, testing, writing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/chrome-verify-checks
What's inside
- Skill name
chrome-verify-checks- Description
- Use when verifying a chrome-extension/ change before reporting done. The canonical 7-check list (build → Service Worker vm.createContext compat → manifest sanity → per-site content-script DOM contract → message-passing trace → test suite → manual-load checklist) + verdict rules. chrome-extension/ is a strong-guard sub-context the maintainer cannot easily verify (MV3 SW quirks, per-site content-script breakage). Load when invoking chrome-verify or after any change in chrome-extension/. Triggers on chrome extension check, SW compatibility, MV3 check, content script behavior, extension load check.
- License
- MIT
- Instructions
- 50 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Chrome extension verification — 7 checks + manual-load checklist `chrome-extension/` is a **strong-guard** sub-context — a frontend maintainer cannot easily catch MV3 service-worker quirks or per-site content-script breakage. This skill is the canonical verification: prove or disprove that the extension still loads, still talks across its boundaries, and still works on each target site — with real evidence. You are a **fresh-context critic** when you load this: you did NOT make the change and you do NOT assume it works. **Falsify.** ## Setup 1. From `git diff --name-only`, confirm the change is in `chrome-extension/`. 2. Read the sub-context's own guide (TDD entry) and the manifest `chrome-extension/manifest.json` for the current permissions / matches / background entry. 3. Read `chrome-extension/shared/` for the message-passing protocol shape. ## The 7 checks (run every one — do not skip) 1. **Build the extension** — `cd chrome-extension && npm run build:dev`. Capture build output. Any error / warning = finding. 2. **Service Worker compat (`vm.createContext`)** — there is no dedicated sw-compat script in this repo. Inspect the SW entry from `chrome-extension/manifest.json` `background.service_worker`, then grep the entry file + its transitive imports for DOM-tied refs (`window.`, `document.`, `XMLHttpRequest`, `localStorage`) and for modules known to break under MV3 SW (axios with default adapter, any `node:*` import, anything pulling in `jsdom`). Any DOM-tied ref in the SW transitive closure = blocking finding. A `ReferenceError: window is not defined` at SW boot (visible from `chrome://extensions` on manual load) is the runtime symptom. 3. **Manifest sanity** — verify `manifest_version: 3`, `background.service_worker` path resolves to a real built file in `dist/`, every `host_permissions` entry is actually used by code (grep), every `matches` URL pattern resolves to an existing content-script file. 4. **Per-site content-script DOM contract** — for each target site the extension supports, grep the selector strings the content script depends on. If a selector is missing in the live DOM, the script silently no-ops on that site. List each selector + the file:line that owns it + the last-verified date if recorded. If a selector cannot be verified, flag it as CANT-VERIFY — manual browser load required by the maintainer. 5. **Message-passing trace** — for any new or changed `chrome.runtime.sendMessage` / `chrome.tabs.sendMessage` / `chrome.runtime.onMessage` handler, confirm both ends exist: a `sendMessage` without an `onMessage` listener for that type is broken; same for the reverse. Trace each message type end to end. 6. **Test suite** — `npm test` from `chrome-extension/`. Pass/fail counts. 7. **Manual-load checklist** — produce the exact step list the maintainer must run in Chrome (`chrome://extensions` → load unpacked from `dist/` → open each target site → confirm content script ran). The maintainer has to do this themselves; your job is to leave them a checklist they can run in <2 min, not a vague "test it in browser". ## Verdict rules — pick exactly 1 of 3 (all first-class) - **PASS** — all 7 checks passed including the maintainer-confirmed manual-load checklist. - **FAIL** — specific check(s) failed. List each with `file:line` and the failing evidence. - **CANT-VERIFY** — manual-load is the only path to confirm a check and the maintainer has not run it yet. First-class verdict; do NOT default to "PASS (conditional)". ## Output (BLUF header first) - **Conclusion**: one of the 3 above (+ one-line reason for CANT-VERIFY). - **Check results** — table: item / PASS/FAIL/CANT-VERIFY / evidence (build output, selector match count, message-trace file:line, manual-load step result). - **Defects** — every gap with `file:line`. Per-site silent no-ops are blocking. - **Manual verification checklist** — concrete steps in `chrome://extensions`, exact URLs to open, exact DOM signals to look for. ≤ 2 min for the maintainer to run. ## Constraints (strong guard) - Do NOT report "PASS" if any check could not be run. - Build green is necessary but not sufficient — per-site content-script behavior requires either a real DOM snapshot or the maintainer's manual load. - "Render ≠ works" — a passing build + clean console without a real selector match on the target site = CANT-VERIFY, not "PASS". - Real prod hostnames in fixtures BANNED — use mock fixtures. - **Citation-truth**: any file/contract you cite must be confirmed to exist via grep/read before it grounds a claim; a green test alone ≠ a verdict.
From jhlee0409/omni-harness-kit, MIT.
More from jhlee0409/omni-harness-kit
- 0.507score
localize
jhlee0409
Resolve a change request into an EXACT edit target before touching code, then gate the edit on tests — the localize → edit → validate loop.
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
perf-checks
jhlee0409
Use when investigating or optimizing performance in a real browser/build/DB before reporting a fix — the omp-native replacement for the chrome-devtools…
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
tdd
jhlee0409
Drive a single behavior change with Kent Beck's red → green → refactor loop — write the failing test FIRST, confirm it fails for the right reason, implement…
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
accessibility-checks
jhlee0409
Use when verifying accessibility (WCAG 2.2 AA) of a rendered UI in a real browser before reporting done — the omp-native replacement for the chrome-devtools…
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
ui-verify-checks
jhlee0409
Use when verifying a frontend UI change in a real browser before reporting done.
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
db-verify-checks
jhlee0409
Use when verifying data-shape claims against a real store — MongoDB or a SQL store (SQLAlchemy / SQLite / Postgres) — before reporting any data-touching…
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
assess
jhlee0409
Read-only maintainability audit of a whole codebase — ranks the files most likely to cause maintenance pain (size × churn hotspots, test gaps, lint debt) and…
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
blast-radius
jhlee0409
Enumerate the full impact set of a symbol before or during a change — every reference, caller, implementation/subtype, and reverse import — plus an explicit…
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
llm-eng-checks
jhlee0409
Use when building or hardening an LLM feature — prompt design, RAG, eval harness, model/provider selection, guardrails, and token/cost budgeting — with…
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
diagnose
jhlee0409
Disciplined diagnosis loop for a hard bug or performance regression — reproduce → minimize → hypothesize → instrument → fix the cause → regression-test.
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
handoff
jhlee0409
Write the live working-set state into a resume block so a FRESH session can continue this work without re-narration.
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
new-spec
jhlee0409
Scaffold a spec triplet (spec.md / plan.md / context.md) under specs/YYYYMMDD-<name>/ before starting a non-trivial piece of work.
SkillCFreshness: C★ 2Claude Code +9
Signals
- Stars
- 2
- Forks
- 1
- Open issues
- 0
- Last commit (this folder)
- Jul 14, 2026 (3 months ago)
- Last release
- Jul 22, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/jhlee0409/omni-harness-kit
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from jhlee0409
- 0.507score
db-verify-checks
jhlee0409
Use when verifying data-shape claims against a real store — MongoDB or a SQL store (SQLAlchemy / SQLite / Postgres) — before reporting any data-touching…
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
accessibility-checks
jhlee0409
Use when verifying accessibility (WCAG 2.2 AA) of a rendered UI in a real browser before reporting done — the omp-native replacement for the chrome-devtools…
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
perf-checks
jhlee0409
Use when investigating or optimizing performance in a real browser/build/DB before reporting a fix — the omp-native replacement for the chrome-devtools…
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
ui-verify-checks
jhlee0409
Use when verifying a frontend UI change in a real browser before reporting done.
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
llm-eng-checks
jhlee0409
Use when building or hardening an LLM feature — prompt design, RAG, eval harness, model/provider selection, guardrails, and token/cost budgeting — with…
SkillCFreshness: C★ 2Claude Code +9 - 0.507score
assess
jhlee0409
Read-only maintainability audit of a whole codebase — ranks the files most likely to cause maintenance pain (size × churn hotspots, test gaps, lint debt) and…
SkillCFreshness: C★ 2Claude Code +9
Cite this page
chrome-verify-checks skill. Agent Mart. https://agentmart.dev/skills/jhlee0409-chrome-verify-checks (last updated 2026-10-24)