Token导航 LogoToken导航TokenDH.com
研究检索敏感数据github未标认证来源可访问许可证需确认审计异常

mini-browser迷你浏览器

Agent Skill

mini-browser 用于处理浏览器自动化、网页检查和页面信息提取,适合在 Codex、Claude、Cursor、Gemini CLI 中需要让 Agent 打开页面、读取网页或验证前端流程时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

55,752

周安装

2,295

GitHub Stars

31

下载量

18,216
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:mini-browser(迷你浏览器)
来源仓库:https://github.com/runablehq/mini-browser
仓库路径:skills/mini-browser
安装命令:
npx skills add https://github.com/runablehq/mini-browser --skill mini-browser
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/runablehq/mini-browser --skill mini-browser

简介

mini-browser 用于处理浏览器自动化、网页检查和页面信息提取,适合在 Codex、Claude、Cursor、Gemini CLI 中让 Agent 打开页面、读取网页或验证前端流程。

  • 适用于网页内容抓取、前端功能测试或动态页面交互验证等场景。
  • 通过安装命令添加后,可结合来源仓库和 README 文档进一步了解具体用法。
  • 安装前需确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写操作。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

mini-browser (mb) — Browser CLI for Agents

mb is a browser CLI where each command is a small Unix tool. It talks to Chrome over CDP (port 9222) via puppeteer-core.

Setup (only if not already available)

Setup is only needed when mb is not installed or Chrome is not reachable. Run these checks first — if both pass, skip straight to the Command Reference.

Check if ready

# 1. Is mb installed?
which mb && echo "mb: ok" || echo "mb: MISSING"

# 2. Is Chrome listening on CDP?
curl -sf http://127.0.0.1:9222/json/version > /dev/null && echo "chrome: ok" || echo "chrome: NOT RUNNING"

If both print "ok", everything is ready — go use mb commands directly.

Install (only if mb is missing)

npm install -g @runablehq/mini-browser

Start Chrome (only if not running)

mb-start-chrome

This launches Chrome with --remote-debugging-port=9222, a fresh profile, and a 1024×768 window. It no-ops if Chrome is already running.

To kill and relaunch:

mb-restart-chrome

Verify

mb go "https://example.com" && mb text

Environment Variables

VariableDefaultDescription
CHROME_PORT9222CDP port
CHROME_BINauto-detectedPath to Chrome/Chromium binary
CHROME_PID_FILE<scripts>/.chrome-pidPID file location
CHROME_USER_DATA_DIR<scripts>/.chrome-profileChrome profile directory

Command Reference

Navigation

CommandDescription
mb go <url>Navigate to URL (waits for networkidle)
mb urlPrint current URL
mb backGo back
mb forwardGo forward

Observation

CommandDescription
mb text [selector]Visible text content (default: body)
mb shot [file]Screenshot to PNG (default:./shot.png)
mb snapList interactive elements with coordinates

Interaction

CommandDescription
mb click <x> <y>Click at coordinates
mb type [x y] <text>Type text (with coords: selects first)
mb fill <k=v...>Fill form fields by label/name/placeholder
mb key <key...>Press keys (Enter, Tab, Meta+a)
mb move <x> <y>Hover at coordinates
mb drag <x1> <y1> <x2> <y2>Drag between points
mb scroll [dir] [px]Scroll (default: down 500)

Recording

CommandDescription
mb record start <file>Start recording (.webm,.mp4,.gif)
mb record stopStop recording and save
mb record statusCheck if recording is active

Tabs

CommandDescription
mb tab listList open tabs
mb tab new [url]Open new tab, print index
mb tab close [n]Close tab (default: last)

Other

CommandDescription
mb js <code>Run JavaScript in page context
mb wait <target>Wait for ms / selector / networkidle / url:pattern
mb auditDesign audit (palette, typography, contrast, a11y, SEO)
mb logsStream console logs (Ctrl+C to stop)

Flags

FlagDefaultDescription
--timeout <ms>30000Command timeout
--tab <n>0Target tab index
--jsonfalseStructured JSON output
--rightfalseRight-click
--doublefalseDouble-click
--fps <n>30Recording frame rate
--scale <n>1Recording scale factor

Usage Patterns

Observe → Act loop

The standard agent loop: snapshot the page, pick an element, act on it.

mb snap                          # list interactive elements with (x, y)
mb click 512 380                 # click the button at those coordinates
mb wait networkidle              # wait for the page to settle
mb snap                          # observe again

Fill and submit a form

mb go "https://example.com/login"
mb fill "Email=user@example.com" "Password=hunter2"
mb key Enter
mb wait url:/dashboard

Take a screenshot

mb shot page.png

Extract text

mb text "main"                   # text from <main>
mb text "#content"               # text from #content
mb text                          # full body text

Run JavaScript

mb js 'document.title'
echo 'document.querySelectorAll("a").length' | mb js -

Record a screencast

mb record start demo.mp4 --fps 30 --scale 1
# ... interact with the page ...
mb record stop

Design audit

mb audit                         # human-readable report
mb audit --json                  # structured JSON output

Dismiss overlays

Cookie banners and modals block clicks. Remove them with JS:

mb js 'document.querySelector("[class*=cookie]")?.remove()'

Wait strategies

mb wait 2000                     # sleep 2 seconds
mb wait ".modal"                 # wait for selector to appear
mb wait networkidle              # wait for no network activity
mb wait url:/dashboard           # wait for URL to contain string

Important Notes

  • Viewport is 1024×768. snap only returns elements in the current viewport — scroll and snap again to find more.
  • text uses querySelector — returns first match only. Use text "main" over text "p" for better results.
  • go waits for networkidle. For heavy SPAs, follow up with wait ".selector".
  • type with coordinates triple-clicks first to select existing text, then types the replacement.
  • fill field matching order: aria-label → placeholder → name attr → id → label text → CSS selector (use #/./[ prefix).
  • --json output: snap[{role, name, x, y, state}], tab list[{index, url, title}], logs → JSON lines, audit → full audit object.
  • Recording state is stored in ~/.mb-recorder.json. Only one recording at a time.
  • tab close cannot close the last remaining tab.

Troubleshooting

ProblemFix
"Chrome not found"Set CHROME_BIN=/path/to/chrome
Connection refusedRun mb-start-chrome first
Stale recording stateDelete ~/.mb-recorder.json
Chrome window wrong sizemb-restart-chrome (creates fresh profile)
Element not in snap outputmb scroll down 500 then mb snap again

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.42%
按下载量换算6,270

Claude

30.18%
按下载量换算5,498

Cursor

19.72%
按下载量换算3,592

Gemini CLI

8.81%
按下载量换算1,605

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

未通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills