# Discover Documentation with Browser Automation

JavaScript-rendered documentation can hide links from static fetches. This skill selects available browser tools and extracts structured navigation after pages render.

## Install

```bash
npx skillstore add consiliency/browser-discovery
```

## Metadata

- Status: approved
- Slug: consiliency-browser-discovery
- Skillstore revision: r1
- Version status: missing
- Tree hash: ac12c818f7d4c81a0869852839b8a062517dc21943ddaa1f7feef4b095528ace
- Author: Consiliency
- GitHub username: Consiliency
- License: MIT
- Repository: https://github.com/Consiliency/treesitter-chunker/tree/main/.ai-dev-kit/skills/browser-discovery
- Ref: 635f69fb8d2f4e6330ba47a4e5a0fb239c04d110
- Supported tools: Claude, Codex, Claude Code
- Audit status: complete
- Agent install advisory: allowed
- Manual install advisory: allowed
- Artifact signature: available
- Audit attestation: unavailable
- Human verification: not\_verified
- Risk factors: network, filesystem, external\_commands
- Quality score: 71
- Public page: https://skillstore.pages.dev/skills/consiliency-browser-discovery
- Manifest: https://skillstore.pages.dev/api/skills/consiliency-browser-discovery/manifest

## Capabilities

- Detects available Antigravity, Cursor, or Playwright browser tooling before use.
- Determines when static curl retrieval is insufficient for JavaScript-rendered documentation.
- Navigates documentation sites and waits for client-side content to render.
- Extracts navigation links from accessibility snapshots or browser results.
- Provides fallback instructions for browser startup, connectivity checks, and tool failures.

## Use Cases

- Map Dynamic Documentation: Discover sidebar and navigation links that appear only after JavaScript renders.
- Select an Available Browser: Choose among Antigravity, Cursor, and Playwright based on tools available in the current environment.
- Diagnose Missing Web Content: Compare static retrieval with rendered browser output when documentation pages appear empty or incomplete.

## Prompt Templates

### Check Browser Need

```
Check whether {documentation_url} needs browser automation. Try static retrieval first, detect available browser tools, and report the recommended method.
```

### Discover Navigation Links

```
Discover navigation links on {documentation_url}. Use the best available browser tool, wait for rendering, and return page titles, URLs, and sections.
```

### Map Documentation Sections

```
Map up to {max_pages} pages from {documentation_url}. Expand collapsed navigation, use accessibility snapshots, group pages by section, and note rendering failures.
```

### Compare Discovery Methods

```
Audit documentation discovery for {documentation_url} across curl and available browser tools. Compare coverage, identify dynamic routes, deduplicate links, and explain unresolved gaps.
```

## Limitations

- Requires an installed browser integration; it does not bundle browser software or the referenced Playwright wrapper.
- Depends on site availability, rendering behavior, authentication, and access permissions.
- Hardcoded examples use docs.viperjuice.dev and must be replaced with the intended documentation site.
- Does not define crawl deduplication, robots compliance, or full content indexing.

## Best Practices

- Try static retrieval before browser automation unless configuration explicitly requires JavaScript rendering.
- Prefer accessibility snapshots for structured links and use screenshots only when visual layout matters.
- Limit page scope, wait for rendering, and close browser sessions after discovery.

## Anti Patterns

- Do not assume a browser tool exists before checking the current environment.
- Do not navigate authenticated or sensitive sites without explicit permission and an approved browser profile.
- Do not execute unpinned packages or expose Chrome debugging beyond trusted local interfaces.

## Security Audit

- Audited at: 2026-07-13T15:38:52.983\+00:00
- Summary: All 31 static findings are false positives caused by documentation URLs, loopback checks, /dev/null, WSL host addressing, or Markdown backticks. One medium-risk issue remains: the troubleshooting guide executes an unpinned @playwright/mcp@latest package through npx.

## Stats

- Views: 312
- Downloads: 7
- Favorites: 0
- Popularity score: 0
