browsing

Automate authenticated browsing, form filling, and dynamic content extraction in Chrome.

Updated Jan 14, 2024
One-click install
npx skills add https://github.com/michellepellon/dotfiles --skill browsing
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: browsing
Source: https://github.com/michellepellon/dotfiles/tree/main/.claude/skills/browsing
Command: npx skills add https://github.com/michellepellon/dotfiles --skill browsing

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) and examples (resource) components.

What problem does it solve?

This skill enables seamless interaction with complex, dynamic websites that require authentication, JavaScript execution, or multi-step workflows. It eliminates the limitations of simple HTTP requests, allowing you to automate tasks like logging in, filling forms, scraping dynamic content, and managing multiple browser tabs, just as a human would.

Core Features & Use Cases

  • Full Browser Control: Navigate, click, type, select, and execute JavaScript directly in a Chrome instance.
  • Authenticated Sessions: Maintain login sessions for interacting with private web applications.
  • Dynamic Content Extraction: Extract data from JavaScript-heavy pages that load content asynchronously.
  • Use Case: You need to log into an internal company portal, navigate to a specific report, apply filters, and then download the resulting data. This skill can automate the entire sequence, handling the login, clicks, form submissions, and waiting for dynamic content to load, delivering the report directly to you.

Quick Start

Navigate and extract content:

{action: "navigate", payload: "https://example.com"} {action: "await_element", selector: "h1"} {action: "extract", payload: "text", selector: "h1"}

Fill and submit form:

{action: "navigate", payload: "https://example.com/login"} {action: "await_element", selector: "input[name=email]"} {action: "type", selector: "input[name=email]", payload: "[email protected]"} {action: "type", selector: "input[name=password]", payload: "password123 "} {action: "await_text", payload: "Welcome"}