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

mu-agent-bridge

v1.0.82

Published

将 AUN Agent 连接到本地桌面 AI 客户端的插件平台。

Readme

mu-agent-bridge 动态插件平台

运行时使用 TypeScript/Node.js,实现一个可动态发现、启动、停止、重载和安装插件的 daemon。 当前插件包括千问办公 qwenwork、DeepSeek Harness dsh、豆包 doubao、基于 CodeBuddy CLI 的 workbuddy、ZCode 桌面端 CDP 插件 zcode、远程 ChatGPT/Codex CDP 插件 chatgpt、个人助理管理 Agent personal-assistant,以及插件化管理后台 abweb。插件之间独立失败,管理 API 和 OpenAI 兼容接口由同一个本地控制服务提供。

快速开始

npm install
npm test
npm run start

默认监听 http://127.0.0.1:26107,管理页面为 http://127.0.0.1:26107/abweb/,管理 API 为 /api/health、/api/plugins,千问办公的 OpenAI 兼容 API 为 /v1/models 和 /v1/chat/completions。管理页面位于 /abweb。 千问办公支持通过 AUN 输入文件、图片和视频附件,并从本轮“已展示最终文件”收集实际输出附件。输入附件文件名会追加本轮唯一后缀并保留扩展名,以便失败时只清理桥接自己的附件。插件等待生成结束后再回传,输出保留文件名和 MIME 类型;桌面客户端不支持的媒体能力以实际回复为准。

千问办公插件使用 CDP 9228;没有运行千问办公时,daemon 仍会启动,qwenwork 会显示为失败状态, 可以通过管理 API 重载。

安装后使用 mab start 启动。旧桥仍可使用 17893,不会与管理页面冲突。局域网访问时设置 AGENT_BRIDGE_HOST=0.0.0.0 和 AGENT_BRIDGE_TOKEN,然后访问 http://<Windows 主机 IP>:26107/abweb/。页面使用一次性配置码配对后管理插件;请只在可信网络使用。 如果 26107 被旧的 mab 进程占用,可执行 mab restart;Windows 会扫描并结束同一 CLI 安装路径的全部旧 daemon,并重新启动。mab stop 只停止 daemon, mab update 和 ABWeb 的后台升级按钮使用相同规则:只有 npmjs 的 mu-agent-bridge@latest 高于当前版本时才升级,并启动新版本。全局安装、测试目录和源码目录按同一版本规则处理;测试时请设置高于 npmjs 的版本,避免被正式版覆盖。不会把自己的旧进程误当成新的 daemon,也不会因此默认改用临时端口。 已有 AID 的连接状态由 AUN 插件查询,只有当前已连接的身份才能关联 Agent。 本机 AID 来自 AUN 插件自身的密钥库,不依赖 ec 命令,ec stop 后仍会显示。 未配置 aun_path 时密钥库默认使用共享 AUN 目录(AUN_HOME/EVOLCORE_HOME 或 ~/.evolcore),已注册的 AID 无需迁移;插件启动时自动连接密钥库中的全部 AID。 创建新 AID 必须填写 Owner AID,并安装、启动 AUN 插件;创建与通信由该插件完成。 已连接身份保存在 AUN 插件自身的密钥库和配置中。关联 AID 到 Agent 时,由 AUN 插件直接保持连接并转发来信和回复,不再执行 ec agent set/reload。 其他 Agent 插件可关联 AUN 插件自己创建的身份,由通道直接转发来信和回复。 Windows 可运行 start-mab.ps1 注册并启动登录时自动运行的计划任务;令牌保存在 %USERPROFILE%\.mab\token.txt,页面输入该令牌即可使用管理 API。

本机打开 http://127.0.0.1:26107/abweb/ 无需配置码。局域网管理页可用一次性配置码配对。 在 Windows 主机运行 mab pair,将显示的 6 位码输入 abweb 的“配置码”栏;配对码 10 分钟有效,只能使用一次,连续输错 5 次后需重新执行 mab pair。配对成功后登录有效期为 24 小时,浏览器关闭再打开仍可使用;过期后需重新配对。后台重启及升级不会使配对登录提前失效,会话校验信息保存在状态目录的 paired-sessions.json 中,磁盘仅保存令牌哈希及原定过期时间;重启不会延长有效期。本机免配对和手动配置的管理令牌按原有规则使用。配置码只能从 Windows 本机的 127.0.0.1 接口取得,远程浏览器不能读取。

环境变量:AGENT_BRIDGE_PORT、AGENT_BRIDGE_HOST、AGENT_BRIDGE_TOKEN、 AGENT_BRIDGE_PLUGINS_DIR、AGENT_BRIDGE_STATE_DIR。默认插件目录是仓库的 plugins/,状态目录 是 Windows 的 %APPDATA%\agent-bridge\state。

跨会话读取默认 allowFrom: [](白名单留空),允许所有 Peer 查询本机各来源的 AUN/飞书归档和插件已提供的原生历史,可通过独立无工具端点总结。归档采集默认关闭;读取范围仍受各插件历史能力限制。个人助理也默认接受所有 Peer、允许调用所有已就绪的普通 Agent;需要限制时可配置名单。配置与 /sessions 命令见跨会话读取说明。

npm 插件

默认包 mu-agent-bridge 已内置 abweb、AUN、千问办公、DSH 桌面版与 Linux Chrome 网页版、豆包、飞书、WorkBuddy、ZCode、ChatGPT/Codex、Codex CLI、Claude CLI 和个人助理共十三个插件,直接安装即可使用:

npm install -g mu-agent-bridge@latest
mab start

十三个插件会从核心包的 plugins/ 目录自动发现。插件仍分别发布为独立 npm 包,可用于单独测试、升级或替换版本。安装与发布说明见 docs/npm-publishing.md。

mab start 启动时会查询核心包和托管插件的 npm 最新版本,检查状态保存于 mab 状态目录的 versions.json,abweb 的“版本管理”区域可查看。托管插件发现新版本后会自动下载、验证并替换; 升级失败会恢复旧插件并继续启动。核心在启动及运行中定时检查 npmjs,仅升级较低版本,不降级高版本测试包。 核心先暂存并验证新包与依赖,再备份和更新当前启动目录中的发布文件;保留其他本地文件,新 daemon 健康检查失败时恢复旧文件。Windows 的 start-mab.ps1 登录任务、命令行和 ABWeb 共用核心升级器,计划任务不必更换启动路径。全局单独安装的插件暂不自动升级。

插件候选包校验通过后,最多等待旧任务两小时;到期以 PLUGIN_UPGRADE_WAIT_TIMEOUT 结束桥接任务,最多再给旧插件五秒清理,然后继续升级,失败仍回滚。升级清理会要求保留桌面进程;千问、豆包和 ChatGPT 需使用支持该选项的配套插件。桌面原生生成可能继续,核心会拦截迟到回复;普通停止和重载不套用此期限。详见升级等待设计。

可用 mab status 查看后台、插件以及 AUN 已连接 AID 和关联 Agent 的状态。AUN 插件自己加载本地 ~/.evolcore/AIDs 并建立连接,不要求先启动 ec start,也不调用 ec agent list/show。

插件更新策略可在 ABWeb 的“版本管理”中选择:默认“自动下载并安装”;“自动下载,手动安装”会把新版本缓存到状态目录并等待页面操作;“手动下载和安装”只检查版本。策略保存在 state/update-policy.json,插件下载缓存位于 state/downloads。

自动升级信任可在 ABWeb 的“自动升级信任”中设置。npm 提供者 m2lihui 默认可信,其他提供者默认不可信;用户可以取消提供者信任,也可以对单个插件设置允许或禁止。插件单独设置优先于提供者设置。信任配置保存在 state/plugin-trust.json,npm 发布者信息以 registry 元数据为准;查询失败时插件保持发现状态,但不会自动升级。旧的 AGENT_BRIDGE_TRUSTED_PACKAGES 包名名单继续兼容,直到对应提供者或插件存在明确设置。

运行时会发现核心包依赖和 AGENT_BRIDGE_PLUGIN_PACKAGES 中声明的 npm 包。插件包在自己的 package.json 中声明 agentBridge.plugin,平台复用统一的 activate、deactivate、health、 handle 生命周期。已加载插件可以通过管理 API 重载;新增 npm 包后重启 daemon 最可靠。

abweb 插件目录从 npm 搜索带 mu-agent-bridge-plugin 关键词的包,按包元数据中的 agentBridge.type 展示 Agent、Channel 和管理插件;安装后以 plugin.json 的类型和能力 再次校验,不根据包名推断类型。搜索结果有收录延迟,可在页面直接输入 agent-bridge-* 包名安装。已安装插件按清单能力兼容旧版分类。AUN 通道插件包名为 agent-bridge-aun,安装后在 AUN 身份页手动关联每个 AID;未关联的 AID 不会自动投递,关联操作只修改指定 AID。

个人助理的独立 npm 包名为 agent-bridge-pa,运行时 ID、源码和数据目录仍用 personal-assistant。在 ABWeb 的“已安装插件 → 个人助理 → 配置模型”选择已安装来源:五个桌面 Agent、Codex CLI、Claude CLI,或 OpenAI 兼容接口;列表由后台动态发现。来源未就绪时显示原因并保留原配置。专用 AUN AID 仍关联到 personal-assistant,Peer 和可调用 Agent 仍受原白名单限制。详见个人助理使用说明。

个人助理支持按 AUN Peer 保存长期偏好、加载个人或共享 SKILL.md,并在当前会话提炼技能。/assistant memory 提供查看、设置、确认和忘记,/assistant skill 提供查看、学习、运行、启停与恢复;默认自动提炼为草稿。ABWeb 原配置对话框可设置“技能与习惯”,资料跨新会话和模型来源保留。共享目录由管理员显式配置,内容会对获准访问个人助理的 Peer 可见。

workbuddy 插件包名为 agent-bridge-workbuddy,显式关联后按对端保持会话。默认问答使用独立的 @tencent-ai/codebuddy-code CLI,须单独登录;没有 CLI 时使用桌面端 CDP。CLI 未登录时不会自动切换到桌面账号。个人助理选择 WorkBuddy 桌面模型来源时请设置 transport: "cdp"。

zcode 插件包名为 agent-bridge-zcode,通过 ZCode v4 桌面端 CDP 收发文本。Windows 后台启动或重载插件时,会自动从注册信息和开始菜单查找并带 CDP 参数启动 ZCode;默认端口为 9231,可在插件配置设置 cdpPort,或使用 ZCODE_CDP_PORT 覆盖。插件保护未发送的草稿;已人工启动但未开启 CDP 时,请先从托盘退出再重载。启动参数和会话说明见 插件文档。

插件仍在 daemon 的同一个 Node.js 进程内运行。修改插件入口依赖后应重启 daemon,避免模块缓存 影响新代码。

npm 尚未发布时,核心包内置的十三个默认插件仍会出现在插件列表。abweb 的“安装本地插件” 可填写 Windows 主机上包含 plugin.json 的目录路径,例如编译后的 C:\path\to\agent_bridge\packages\dsh;安装后可在下拉框中启动。已内置的千问办公无需再次安装。 “安装 npm 插件”只适用于包已经公开发布的情况。npm 发布令牌仅供发布脚本向 npm 官网认证, 与 abweb 配置码无关;账号锁定期间无需填写发布令牌。

开发目录

开发 checkout 仍支持 plugins/<id>/plugin.json 平铺目录。设置 AGENT_BRIDGE_PLUGINS_DIR 可以使用其他插件目录;这条路径用于本地开发,不是公开 npm 包的安装方式。

WorkBuddy、千问办公、豆包、DSH、DSH Chrome、ZCode 和 ChatGPT 均支持独立的 Ability 注册目录。源码开发可用 mab ability add <plugin> <path> --name <名称> 生成默认禁用的扩展模板,完成 handler 后编译进对应插件;AUN 复用统一的能力发布、发现和逐次确认流程。当前内置机器能力为 agent/status/readiness,具体步骤见桌面 Agent Ability 使用说明。

旧桥入口

仓库仍保留 Python bridge 作为兼容入口:

  • src/llprobe-qwen-bridge.py:连接千问办公 CDP 9226,默认身份 qwenbg.agentid.cn
  • src/llprobe-wb-bridge.py:调用 CodeBuddy CLI

准备环境

在 Windows PowerShell 中执行:

.\setup.ps1

脚本会创建 .venv 并安装 fastaun 与 aiohttp。CodeBuddy 桥还需要已登录的 @tencent-ai/codebuddy-code 和 PATH 中的 Node.js。若 CodeBuddy 不在默认 npm 目录,可设置:

$env:CODEBUDDY_NPM_DIR = 'C:\path\to\node_modules\@tencent-ai\codebuddy-code'

千问工作区默认使用 %APPDATA%\QwenWorkCN\workspace,可用 $env:QWEN_WORKSPACE 覆盖;AUN 数据默认使用 $env:EVOLCORE_HOME 或用户目录下的 .evolcore。 千问 CDP 端口默认为 9228,也可用 $env:QWEN_CDP_PORT 或 $env:AGENT_BRIDGE_QWEN_CDP_PORT 覆盖。守护进程注入端口优先级最高,用来覆盖插件配置中的冲突端口;之后依次读取插件配置、环境变量和默认值。守护进程默认保持监听端口 26107;被其他程序占用时报告错误,仅显式配置 AGENT_BRIDGE_FALLBACK_PORTS 才允许回退。豆包和 WorkBuddy 分别使用 DOUBAO_CDP_PORT、WORKBUDDY_CDP_PORT,也支持对应的 AGENT_BRIDGE_*_CDP_PORT。

自检与运行

.\.venv\Scripts\python.exe src\llprobe-wb-bridge.py --test "你好"
.\.venv\Scripts\python.exe src\llprobe-qwen-bridge.py --probe
.\.venv\Scripts\python.exe src\llprobe-qwen-bridge.py --direct "hi"
.\.venv\Scripts\python.exe src\llprobe-wb-bridge.py --aid <AID>
.\.venv\Scripts\python.exe src\llprobe-qwen-bridge.py --aid <AID>

两个桥都只加载已有 AID;首次使用前请先在相同的 EVOLCORE_HOME 中注册身份。

TypeScript 自检

npm install
npm test
npm run self-test -- hi

Agent 通过 AgentRegistry 注册;DSH 也可以作为动态 dsh 插件加载。DeepSeek Harness 不在默认 Windows 路径时,可设置 DSH_INSTALL_DIR。

AUN 身份管理

创建、连接、关联和 AUN 通信统一由独立 agent-bridge-aun 插件完成。安装并启动 AUN 后,在 ABWeb 的“通道 → AUN”创建或选择身份,再将已连接 AID 关联到已启动的 Agent;用 mab status 查看状态。创建 AID 时将 Owner 传给 SDK 的注册流程并尝试同步 Owner 名录;注册、连接及名录成功不代表 Owner 双边共识已激活。完整步骤见 AUN 插件与 AID 身份管理;给 Codex、Claude Code 直接执行的 CLI 说明见 使用说明。

名录查询由 AUN 插件直接访问 SDK,支持 mab directory list --self <已连接AID> --format json 和 mab directory show <联系人AID或名称> --self <已连接AID> --format json。旧身份可运行 mab aun repair-owner <已连接AID> --owner <原OwnerAID> --json 修复单个 AID,或运行 mab aun repair-old-aids --json 检查并修复当前已连接且关联桌面 Agent 的旧 AID。命令只使用新鲜签名核验出的 Owner,不从默认配置猜测或转移到其他 Owner;需 Owner 确认时返回待办状态和操作号。详见名录与旧身份修复设计。

飞书凭据与办公 Agent 关联

在 ABWeb 的“飞书通道 → 手动配置凭据”中填写 App ID、App Secret,并选择“关联办公 Agent”。Secret 使用密码框显示;已保存的密钥保持掩码,不通过状态接口返回。WorkBuddy、千问办公、豆包根据运行后台的机器上是否存在可执行文件检测,文件缺失或插件未就绪的选项置灰。自定义安装位置请在对应插件配置中填写 executablePath。

也可以使用 CLI,Secret 在命令执行后隐藏输入,不写在命令参数中:

mab feishu configure cli_你的应用ID --agent workbuddy
mab feishu agents
mab feishu list
mab feishu bind cli_你的应用ID workbuddy
mab feishu unbind cli_你的应用ID

configure 保存凭据及可选关联后,需要在 ABWeb 重载飞书插件以连接机器人。非交互终端请使用网页密码框;不要把 Secret 写进命令行、脚本或仓库。

本地 CLI Agent

新增两个独立插件:agent-bridge-codex-cli(Codex CLI)与 agent-bridge-claude-cli(Claude Code CLI),随核心默认打包。支持在 abweb 配置、启停及通过通道关联 AID,沿用本机 CLI 的登录和默认模型。详见 本地 CLI 插件使用说明。