Read one web page for research — a plain-HTTP fetch that passes bot walls headless browsers cannot, cleaned to its main content, cached, and recorded in the source registry. TRIGGER when a research or review step needs a page's text. DO NOT TRIGGER to screenshot a page or drive an interactive surface (screenshot, agent-browser), or to score a source you have already read (review-source).
Scanned 9/5/2026
Install to Claude Code
npx -y skills add heyJordanParker/dotfiles --skill browse --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Browse?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/heyjordanparker-browse)More formats (shields.io, HTML) on the badges page.
---
name: browse
description: Read one web page for research — a plain-HTTP fetch that passes bot walls headless browsers cannot, cleaned to its main content, cached, and recorded in the source registry. TRIGGER when a research or review step needs a page's text. DO NOT TRIGGER to screenshot a page or drive an interactive surface (screenshot, agent-browser), or to score a source you have already read (review-source).
---
# Browse
One Process — read one page through the registry gate. `browse.py` OWNS the reading: a browser-User-Agent plain-HTTP fetch (which passes bot walls that block headless browsers — 13/13 review quotes recovered on a Cloudflare-gated page where agent-browser and Playwright both failed), a deterministic readability cleaner, caching, and the one agent-browser fallback with its session closed inside the command. It records every outcome into the source registry, so an unreadable page is logged, never guessed.
## 1. Check the registry before reading
Check the domain's trust before you open a page:
python3 <profile>/scripts/sources.py check <url>
Deprioritize a low-trust domain by reading it more skeptically — never auto-skip it. The check informs how you read, not whether you read.
## 2. Run browse.py and read the cached text it prints
python3 <profile>/skills/browse/scripts/browse.py <url>
Exit 0 prints the path to the cleaned main-content text — read that file. A `<hash>.raw.txt` sits beside it with the full stripped text; pass `--raw` to print that path instead, and read it when the cleaner dropped something you need. A nonzero exit is the stop: the page could not be read and the registry already recorded the outcome (2 blocked, 3 gone/network, 4 invalid URL, 6 dead URL), so move on — never guess the page's contents.
Verification: the domain trust was checked; browse.py ran; on exit 0 you read the cached text it printed; on a nonzero exit you moved on without guessing, the outcome already recorded.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!