npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@daleccs/pm-studio-operator

v0.9.16

Published

pm-studio-web browser automation - control Chrome/Edge with user's login state, strict-lock, and overlay

Readme

pm-studio-web

给 PM Studio agent 使用的真实浏览器自动化工具。

npm Node.js License

English · 中文


pm-studio-web 通过浏览器扩展和本地 daemon,让 AI agent 操作你真实 Chrome 或 Edge 里的 tab。这个 fork 保留 PM Studio Operator 的使用体验:

  • agent 操作的 tab 上有可见操作蒙层。
  • strict-lock 默认开启,受保护操作只能作用在已锁定 tab。
  • 支持后台 tab 操作,agent 不会把焦点从你正在使用的 tab 抢走。
  • 使用浏览器现有登录态,不导出 Cookie 或凭据。

安装

npm install -g @daleccs/pm-studio-operator

包里同时安装新的命令名和旧的兼容别名:

pm-studio-web --version
pm-studio-web-mcp

# 兼容旧脚本:
bb-browser --version
bb-browser-mcp

加载扩展

从已安装 npm 包里加载 unpacked extension:

<global npm package root>/@daleccs/pm-studio-operator/extension

在 Chrome 或 Edge 中:

  1. 打开 chrome://extensions/edge://extensions/
  2. 开启开发者模式。
  3. 选择“加载已解压的扩展程序”。
  4. 选择这个包里的 extension 目录。

扩展名称显示为 PM Studio Operator

CLI 用法

pm-studio-web daemon
pm-studio-web open https://example.com --background --lock --json
pm-studio-web snapshot --tab <tabId> -i --json
pm-studio-web click @3 --tab <tabId>
pm-studio-web fill @5 "hello" --tab <tabId>
pm-studio-web eval "document.title" --tab <tabId>
pm-studio-web screenshot output.png --tab <tabId>
pm-studio-web overlay hide --tab <tabId>

页面操作建议始终指定已锁定的 tab。这是故意的安全边界,用来避免 agent 误操作用户正在使用的标签页。

MCP 用法

{
  "mcpServers": {
    "pm-studio-web": {
      "command": "pm-studio-web-mcp"
    }
  }
}

如果不想依赖全局命令,也可以用 npx

{
  "mcpServers": {
    "pm-studio-web": {
      "command": "npx",
      "args": ["-y", "--package", "@daleccs/pm-studio-operator", "pm-studio-web-mcp"]
    }
  }
}

已有的 bb-browserbb-browser-mcp 配置仍然可以继续使用。

架构

AI Agent (Codex、Claude Code、Cursor 等)
       | CLI 或 MCP (stdio)
       v
pm-studio-web CLI -> 本地 daemon -> 浏览器扩展
                                     |
                                     v chrome.debugger (CDP)
                                你的真实浏览器 tab

许可证和来源

MIT。见 LICENSE

这个包基于 MIT 许可的 epiral/bb-browser 修改而来。见 NOTICE