aboutsummaryrefslogtreecommitdiff
path: root/skills
diff options
context:
space:
mode:
authorIgor Soarez <igor@soarez.org>2026-08-05 13:42:46 +0100
committerIgor Soarez <igor@soarez.org>2026-10-14 12:19:26 +0100
commit681ea9d0b3b89bec1ad8c57ef79ae2d4d82ef49b (patch)
tree6aee901bedca763e09f53e2778b5a7d50d1f3028 /skills
parentcdcfb137a83d178d0d22df0eb97aae768e8abf9c (diff)
docs(readpage): flag SPA-shell results so models don't trust them as the page
Diffstat (limited to 'skills')
-rw-r--r--skills/pi-browser-harness/SKILL.md2
1 files changed, 2 insertions, 0 deletions
diff --git a/skills/pi-browser-harness/SKILL.md b/skills/pi-browser-harness/SKILL.md
index e3bf7dc..a5ca4ca 100644
--- a/skills/pi-browser-harness/SKILL.md
+++ b/skills/pi-browser-harness/SKILL.md
@@ -41,6 +41,8 @@ Pass `@(x,y)` from `browser_snapshot` straight to `browser_click`. No screenshot
`browser_web_search` and `browser_read_page` each run in their own isolated tab and never touch the user's current tab. Pair them for a research question: search for candidate URLs, then read the promising ones.
+`browser_read_page` runs a reader-mode heuristic: JS-rendered pages (X, social SPAs, login walls) can come back as a short nav shell — if the result is tiny or reads like chrome, don't treat it as the page; re-read the `og:title`/`og:description` meta or pull the content with `browser_execute_js` (e.g. `document.querySelector('article')?.innerText`).
+
## Connection Setup
Browser control is **on-demand** — the daemon does NOT start automatically.