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

@bbqin/registration-workbench-local

v0.1.3

Published

Local host for registration workbench

Readme

Registration Workbench Local

本目录是独立的 Node.js 本地工具包,可作为公开 npm CLI 包发布。

推荐使用方式:

npx @bbqin/registration-workbench-local

或全局安装:

npm install -g @bbqin/registration-workbench-local
registration-workbench-local

CLI 命令:

registration-workbench-local          # 启动本地服务并打开页面
registration-workbench-local start    # 后台启动服务
registration-workbench-local status   # 查看状态
registration-workbench-local logs 20  # 查看最近日志
registration-workbench-local stop     # 停止服务
registration-workbench-local config   # 生成并显示本地配置路径

脚本分层:

  • 仓库根 scripts/registration-workbench-local-*.{cmd,ps1,sh} 是项目级入口,供 AI 和仓库协作脚本统一调用。
  • 包内 scripts/*.js 是实际实现层。
  • 包内 bootstrap.cmd/.ps1/.command 是面向人工双击启动的便捷入口,不作为 AI 默认入口;如需非交互执行,可设置 WORKBENCH_LOCAL_SKIP_OPEN=1 跳过自动打开浏览器,并设置 WORKBENCH_LOCAL_NO_PAUSE=1 跳过窗口暂停。

最小使用方式:

npm install
npm run setup
npm start

默认行为:

  • 远程地址默认使用 https://assistant.lqjqc.com,模板写在 config.example.json 中。
  • config.json 是本机运行配置,首次运行或执行 registration-workbench-local config 会自动生成;后续 install/start/open 也会自动按最新模板补齐新增字段与空值默认项,不提交到仓库。
  • GoPay 自动支付页位于 http://127.0.0.1:<port>/tools/gopay-auto-pay,也是当前唯一页面入口。
  • 配置、日志、pid 和 runtime 文件存放在用户数据目录,避免写入 npm 包安装目录。
    • Windows:%APPDATA%\registration-workbench-local
    • macOS:~/Library/Application Support/registration-workbench-local
    • Linux:~/.config/registration-workbench-local
  • daemon 实际运行的是用户目录下的 runtime/app 快照,不依赖 npx 临时安装目录;同版本源码有变化时也会自动刷新快照。
  • 如果 config.json 中未配置 remote.basicAuth.user/password,首次访问页面时浏览器会弹出原生 Basic Auth 输入框;输入一次后,本地服务会把这组凭据写回同一个 config.json,后续直接复用。
  • 端口同样写在 config.jsonserver.port 中,默认 17810

生命周期命令:

npm run setup
npm run daemon-start
npm run status
npm run logs -- 20
npm run stop

默认行为:

  • GoPay 自动支付任务采用混合链路:checkoutcheckout approvemidtrans linking 固定走本机 Chrome,其余 Stripe/GoPay API 步骤继续走本地服务端请求。
  • 本地 Chrome 与服务端请求都会读取 config.json 里的 gopay.localProxyUrl;支持 http://socks5:// 代理。
  • 如果未找到 Chrome,会返回 未找到本机 Chrome,请安装 Chrome 后重试
  • 邮箱、TG 等接口由本地服务转发到 config.json 中的 remote.baseUrl
  • GoPay 自动支付任务默认复用远端 Telegram 配置和消息查询接口,本地只保存 PIN、代理和 GoPay 相关 endpoint/cookie。
  • 配置优先级为:环境变量 > config.json > 模板默认值;环境变量空值会被忽略,不回写到文件。

核心配置模板:

{
  "server": {
    "port": 17810
  },
  "remote": {
    "baseUrl": "https://assistant.lqjqc.com",
    "basicAuth": {
      "user": "",
      "password": ""
    }
  },
  "gopay": {
    "pin": "789789",
    "localProxyUrl": "http://127.0.0.1:10808",
    "checkoutEndpoint": "https://chatgpt.com/backend-api/payments/checkout",
    "checkoutApproveEndpoint": "https://chatgpt.com/backend-api/payments/checkout/approve",
    "midtransBaseUrl": "https://app.midtrans.com",
    "gopayGwaBaseUrl": "https://gwa.gopayapi.com",
    "gopayCustomerBaseUrl": "https://customer.gopayapi.com",
    "midtransLinkingAuthorization": "",
    "midtransLinkingCookie": "",
    "midtransChargeCookie": "",
    "otp": {
      "pollIntervalMs": 5000,
      "timeoutMs": 120000
    },
    "verify": {
      "pollIntervalMs": 2000,
      "timeoutMs": 120000
    }
  }
}