Skip to main content

browser-use-integration

Detects the browser-use@magus plugin and captures screenshots of URL-based references. Use when designer agents need browser screenshot capture and claude-in-chrome is unavailable.

معلومات المصدر

المستودع
MadAppGang/magus
آخر نشاط في المصدر
١٥ سبتمبر ٢٠٢٦ في ٠٢:٤٥
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
١٠
التفرعات
٤

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
browser-use-integration
description
Detects the browser-use@magus plugin and captures screenshots of URL-based references. Use when designer agents need browser screenshot capture and claude-in-chrome is unavailable.
user-invocable
false
# Browser-Use Plugin Integration ## Overview The `browser-use` plugin provides headless Chromium screenshot capability as a fallback when the claude-in-chrome extension is unavailable. When installed alongside `designer`, it lets `designer:ui` screenshot its own artboards and lets the commands capture a page the user names, without requiring the user's Chrome instance to be open. This skill is **optional** — all designer plugin functionality works without browser-use installed. browser-use is the fallback for Tier 2 of the three-tier browser capture chain: 1. claude-in-chrome (preferred — real Chrome, CSS snapshot, JS execution) 2. browser-use (fallback — headless Chromium, screenshot only) 3. Error with install options `designer:review` takes image files only and never captures; the capture happens before it is dispatched, in the command or in `designer:ui`. ## When to Use Use this skill when: - `designer:ui` has written artboards and needs `screens/*.png` for the judge - A command was given a page URL as a reference or implementation and must capture it - claude-in-chrome extension is NOT installed or unavailable - User needs automated screenshot capture without opening Chrome manually ## Detection Pattern Probe the MCP tools directly — no subprocess, no plugin listing. A tool that answers is the only presence check this skill makes: ``` chrome_available = try mcp__claude-in-chrome__tabs_context_mcp() → success: use Tier 1 (claude-in-chrome) → error: chrome not available browser_use_available = try mcp__plugin_browser-use_browser-use__browser_list_sessions() → success: use Tier 2 (browser-use) → error: neither available → Tier 3 (error) ``` The tool names carry the plugin namespace: `mcp__plugin_browser-use_browser-use__<tool>`. An agent that wants them must list them in its `tools:` line by that full name. ## Screenshot Capture Pattern When browser-use is available (Tier 2), use this exact sequence. `TARGET_URL` may be a `file://<absolute path>` for a local HTML artboard. ``` Step 1: Navigate (creates session automatically) mcp__plugin_browser-use_browser-use__browser_navigate(url: TARGET_URL) → save session_id from response Step 2: Capture screenshot mcp__plugin_browser-use_browser-use__browser_screenshot(session_id: SESSION_ID, full_page: False) → returns: {"image": "<base64-PNG>", "format": "png", "width": N, "height": N} → save BASE64_DATA from response["image"] Step 3: Decode base64 to file Write the base64 text to "${OUTPUT_DIR}/filename.b64" with the Write tool, then: Bash: bun -e "const fs=require('fs');fs.writeFileSync(process.argv[2],Buffer.from(fs.readFileSync(process.argv[1],'utf8').trim(),'base64'))" "${OUTPUT_DIR}/filename.b64" "${OUTPUT_DIR}/filename.png" && rm "${OUTPUT_DIR}/filename.b64" Step 4: Verify file was created Bash: test -f "${OUTPUT_DIR}/filename.png" && echo "ok" || echo "decode_failed" If decode_failed: close session then stop with error. Step 5: Close session (ALWAYS — even on error) mcp__plugin_browser-use_browser-use__browser_close_session(session_id: SESSION_ID) ``` **Note**: CSS snapshot extraction (`mcp__claude-in-chrome__javascript_tool`) is NOT available in browser-use tier. Skip the reference-css.json step when using browser-use. ## Limitations vs claude-in-chrome | Capability | claude-in-chrome | browser-use | |------------|-----------------|-------------| | Screenshot capture | Yes | Yes | | Full-page screenshot | No (viewport only) | Yes (full_page=True) | | CSS snapshot (computed styles) | Yes (javascript_tool) | No | | JavaScript execution | Yes (javascript_tool) | Limited (retry_with_browser_use_agent) | | User's real Chrome session | Yes | No (separate headless instance) | | Authenticated sessions | Yes (user's cookies) | No (fresh session) | | Real DOM state | Yes | DOM index map only | | Animation disable (before capture) | Yes (CSS injection) | No | ## User Notification Template If NEITHER browser capture method is available, stop with this exact message: ``` ERROR: No browser capture method available. Options: 1. Install Claude-in-Chrome extension (preferred — full CSS snapshot support) → https://github.com/anthropics/claude-in-chrome 2. Enable browser-use plugin (headless screenshot fallback) → /plugin marketplace add browser-use@magus 3. Provide an image file reference instead → Re-run with REFERENCE_SOURCE=/path/to/screenshot.png ``` If browser-use IS available but claude-in-chrome is not, log this info message (do not stop): ``` INFO: Using browser-use for headless screenshot capture (Tier 2 fallback). Note: CSS snapshot will not be available — reference-css.json will not be written. ```
عرض على GitHub