Browser
/Browser
Debuguje frontend w przeglądarce: zbiera logi konsoli, żądania sieciowe i błędy od razu, bez dodatkowej konfiguracji.
- Autor
- virtualian ↗
- Repozytorium
- pai ↗
- Licencja
- MIT
- Ostatnia zmiana repozytorium
- 09.06.2026
Ocena i bezpieczeństwo
- Pliki w paczce
- 16
- Skrypty
- 6
- Komentarze HTML
- 0
- Adresy URL w SKILL.md
- 5
Brak sygnałów. Repozytorium zmienione 09.06.2026, bez odwołań do wycofanych modeli i API.
MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.
- 6 skryptów w paczce. Przejrzyj je przed instalacją, bo Claude może je uruchomić.
Skrypty: Tools/Browse.ts, Tools/BrowserSession.ts, examples/comprehensive-test.ts, examples/screenshot.ts, examples/verify-page.ts, index.ts
Co robi i kiedy
Debuguje frontend w przeglądarce: zbiera logi konsoli, żądania sieciowe i błędy od razu, bez dodatkowej konfiguracji.
Oryginalny opis (EN)
Debug-first browser automation with always-on visibility. Console logs, network requests, and errors captured by default. USE WHEN browser, screenshot, debug web, verify UI, troubleshoot frontend.
Jak działa
- Customization
- 🚨 MANDATORY: Voice Notification (REQUIRED BEFORE ANY ACTION)
- Philosophy
- Quick Start
- Commands
- Debugging Workflow
- Architecture
- Comparison to v1.x
- API Reference
- TypeScript API
Podgląd SKILL.md
---
name: Browser
description: Debug-first browser automation with always-on visibility. Console logs, network requests, and errors captured by default. USE WHEN browser, screenshot, debug web, verify UI, troubleshoot frontend.
version: 2.0.0
---
## Customization
**Before executing, check for user customizations at:**
`~/.claude/skills/PAI/USER/SKILLCUSTOMIZATIONS/Browser/`
If this directory exists, load and apply any PREFERENCES.md, configurations, or resources found there. These override default behavior. If the directory does not exist, proceed with skill defaults.
## 🚨 MANDATORY: Voice Notification (REQUIRED BEFORE ANY ACTION)
**You MUST send this notification BEFORE doing anything else when this skill is invoked.**
1. **Send voice notification**:
```bash
curl -s -X POST http://localhost:8888/notify \
-H "Content-Type: application/json" \
-d '{"message": "Running the WORKFLOWNAME workflow in the Browser skill to ACTION"}' \
> /dev/null 2>&1 &
```
2. **Output text notification**:
```
Running the **WorkflowName** workflow in the **Browser** skill to ACTION...
```
**This is not optional. Execute this curl command immediately upon skill invocation.**
# Browser v2.0.0 - Debug-First Browser Automation
**Debugging visibility by DEFAULT.** Console logs, network requests, and errors are always captured. No opt-in required.
---
## Philosophy
Debugging shouldn't be opt-in. Like good logging frameworks - you don't turn on logging when you have a problem, you have it enabled from the start so the data exists when problems occur.
**Headless by default.** All automation runs in headless mode. When the user says "show me" or wants to see what the assistant is seeing, open the URL in their preferred browser from `~/.claude/skills/PAI/USER/TECHSTACKPREFERENCES.md`:
```bash
# Open URL in user's preferred browser
open -a "$BROWSER" "<url>" # BROWSER from tech stack prefs
```
**v2.0.0 Changes:**
- Session auto-starts on first use (no explicit `session start`)
- Console and network capture always enabled
- Diagnostic output included by default
- 30-minute idle timeout (auto-cleanup)
- New primary command: `Browse.ts <url>` for full diagnostics
---
## Quick Start
```bash
# Navigate with full diagnostics (PRIMARY COMMAND)
bun run ~/.claude/skills/Browser/Tools/Browse.ts https://example.com
# Output:
# 📸 Screenshot: /tmp/browse-1704614400.png
# 🔴 Console Errors (2): ...
# 🌐 Failed Requests (1): ...
# 📊 Network: 34 requests | 1.2MB | avg 120ms
# ✅ Page: "Example" loaded successfully
```
Session auto-starts. No setup needed.
---
## Commands
### Primary - Navigate with Diagnostics
```bash
bun run Browse.ts <url>
```
Navigates to URL, takes screenshot, and reports:
- Console errors and warnings
- Failed network requests (4xx, 5xx)
- Network statistics
- Page load status
### Query Commands
```bash
bun run Browse.ts errors # Console errors only
bun run Browse.ts warnings # Console warnings only
bun run Browse.ts console # All console output
bun run Browse.ts network # All network activity
bun run Browse.ts failed # Failed requests only (4xx, 5xx)
```
### Interaction Commands
```bash
bun run Browse.ts click <selector> # Click element
bun run Browse.ts fill <selector> <value> # Fill input
bun run Browse.ts type <selector> <text> # Type with delay
bun run Browse.ts screenshot [path] # Take screenshot
bun run Browse.ts navigate <url> # Navigate without report
bun run Browse.ts eval "<javascript>" # Execute JavaScript
bun run Browse.ts open <url> # Open in user's preferred browser (from tech stack prefs)
```
### Management Commands
```bash
bun run Browse.ts status # Session info
bun run Browse.ts restart # Fresh session (clears logs)
bun run Browse.ts stop # Stop session (rarely needed)
```
---
## Debugging Workflow
**Scenario: "Why isn't the user list loading?"**
```bash
# Step 1: Load the page
$ bun run Browse.ts https://myapp.com/users
📸 Screenshot: /tmp/browse-xxx.png
🔴 Console Errors (1):
• TypeError: Cannot read property 'map' of undefined
🌐 Failed Requests (1):
• GET /api/users → 500 Internal Server Error
📊 Network: 23 requests | 847KB | avg 89ms
⚠️ Page: "Users" loaded with issues
```
**Immediately know:**
1. API returning 500
2. Frontend JS crashing because no data
3. Specific error location
**Step 2: Dig deeper**
```bash
# Full console output
$ bun run Browse.ts console
# All network activity
$ bun run Browse.ts network
# Just the failures
$ bun run Browse.ts failed
```
---
## Architecture
### Auto-Start Session
First command auto-starts a persistent browser session:
```
Any command → ensureSession() → Session running?
├─ Yes → Execute command
└─ No → Start session → Execute command
```
No explicit `session start` needed.
### Always-On Event Capture
From the moment the browser launches:
- **Console logs** - All `console.log`, `console.error`, etc.
- **Network requests** - Every request with headers, timing, size
- **Network responses** - Status codes, response times, sizes
- **Page errors** - Uncaught exceptions, promise rejections
### Idle Timeout
Session auto-closes after 30 minutes of inactivity:
- No zombie processes
- No manual cleanup needed
- Restarts automatically on next command
---
## Comparison to v1.x
| Aspect | v1.x | v2.0.0 |
|--------|------|--------|
| Session management | Manual `session start/stop` | Automatic |
| Console capture | Only in session mode | Always |
| Network capture | Only in session mode | Always |
| Error visibility | Must query explicitly | Default in output |
| Idle cleanup | Manual stop | Auto 30-min timeout |
| Primary command | `screenshot <url>` | `<url>` (full diagnostic) |
---
## API Reference
### CLI Tool
**Location:** `~/.claude/skills/Browser/Tools/Browse.ts`
| Command | Description |
|---------|-------------|
| `<url>` | Navigate with full diagnostics |
| `errors` | Show console errors |
| `warnings` | Show console warnings |
| `console` | Show all console output |
| `network` | Show network activity |
| `failed` | Show failed requests |
| `screenshot [path]` | Take screenshot |
| `navigate <url>` | Navigate without report |
| `click <selector>` | Click element |
| `fill <sel> <val>` | Fill input |
| `type <sel> <text>` | Type with delay |
| `eval "<js>"` | Execute JavaScript |
| `open <url>` | Open in user's preferred browser (tech stack prefs) |
| `status` | Session info |
| `restart` | Fresh session |
| `stop` | Stop session |
### Server Endpoints
**Location:** `~/.claude/skills/Browser/Tools/BrowserSession.ts`
| Endpoint | Method | Description |
|----------|--------|-------------|
| `/diagnostics` | GET | Full diagnostic summary |
| `/console` | GET | Console logs |
| `/network` | GET | Network logs |
| `/health` | GET | Health check |
| `/session` | GET | Session info |
| `/navigate` | POST | Navigate (clears logs) |
| `/click` | POST | Click element |
| `/fill` | POST | Fill input |
| `/screenshot` | POST | Take screenshot |
| `/evaluate` | POST | Run JavaScript |
| `/stop` | POST | Stop server |
---
## TypeScript API
For complex automation, use the TypeScript API directly:
```typescript
import { PlaywrightBrowser } from '~/.claude/skills/Browser/index.ts'
const browser = new PlaywrightBrowser()
await browser.launch({ headless: true })
await browser.navigate('https://example.com')
// Get diagnostics
const errors = browser.getConsoleLogs({ type: 'error' })
const failed = browser.getNetworkLogs({ status: [400, 404, 500] })
const stats = browser.getNetworkStats()
await browser.close()
```
**Full API:** See `index.ts` for all methods.
---
## VERIFY Phase Integration
**MANDATORY for verifying web changes:**
```bash
# Before claiming any web change is "live" or "working":
bun run Browse.ts https://example.com/changed-page
# Check the screenshot AND diagnostics
# If errors or failed requests exist, the change is NOT verified
```
**If you haven't LOOKED at the rendered page and its diagnostics, you CANNOT claim it works.**
Pliki w paczce (16)
- README.md 5 KB
- SKILL.md 8 KB
- bun.lock 2 KB
- index.ts 23 KB
- package.json 1 KB
- tsconfig.json 1 KB
- Tools/Browse.ts 19 KB
- Tools/BrowserSession.ts 14 KB
- Workflows/Extract.md 3 KB
- Workflows/Interact.md 3 KB
- Workflows/Screenshot.md 1 KB
- Workflows/Update.md 2 KB
- Workflows/VerifyPage.md 2 KB
- examples/comprehensive-test.ts 13 KB
- examples/screenshot.ts 2 KB
- examples/verify-page.ts 2 KB
Wersje
| Repozytorium | Wynik | Licencja |
|---|---|---|
| Ta strona · virtualian/pai | 95 | MIT |
| vibiumdev/vibium | 100 | Apache-2.0 |
| phnx-labs/agi-cli | 100 | Apache-2.0 |
| BlackBeltTechnology/pi-agent-dashboard | 100 | MIT |
| dreamlab-ai/agentbox | 100 | AGPL-3.0 |
| drobins25/craft | 100 | MIT |
| 5uck1ess/devkit | 100 | MIT |
| richardgill/nix | 100 | MIT |
Identyczna treść występuje jeszcze w 1 innych folderach na GitHubie. Tu pokazujemy jedną, najlepiej ocenioną kopię.
Migawka bazy z 28.10.2026 · wersja paczki 356885256310 (skrót SHA-256 całej paczki)
Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.
Podobne skille
- 100web-debug
Debuguje lokalną aplikację webową w Playwright: sprawdza działanie interfejsu, robi zrzuty ekranu i czyta logi konsoli. - 100chrome-devtools
Debuguje strony, profiluje wydajność i automatyzuje przeglądarkę przez Chrome DevTools MCP: zrzuty ekranu, żądania sieciowe, błędy konsoli i analiza ładowania strony. - 90browser-verification
Weryfikuje zmiany frontendu w prawdziwej przeglądarce: układ, błędy konsoli, stany responsywne, błędy sieci, zrzuty ekranu i interakcje. - 90webapp-testing
Weryfikuje zachowanie frontendu i UI oraz zbiera zrzuty ekranu przeglądarki i logi konsoli, bez zmian zdalnych i wdrożeń. - 100hybrid-debugging
Łączy Browser Use (DOM, kliknięcia, zrzuty) z claude-in-chrome (konsola, sieć, JS) do pełnego debugowania, gdy trzeba zbadać błędy konsoli lub żądania sieciowe. - 100browser-interact
Steruje prawdziwą przeglądarką podczas pracy nad frontendem: sprawdza renderowanie zmiany, przechodzi przepływ, wypełnia formularze, czyta błędy konsoli, robi zrzuty ekranu i debuguje wydajność, pamięć i sieć.