@mtop-devtools/native-host
v1.42.0
Published
Native Messaging Host for Mtop DevTools — bridges Chrome Extension and local socket server
Readme
@mtop-devtools/native-host
Mtop DevTools 的 Native Messaging Host —— 桥接 Chrome 扩展与本地 socket 服务。
浏览器扩展通过 chrome.runtime.connectNative() 拉起本进程;进程对内通过 CDP(Chrome DevTools Protocol)与浏览器交互,对外通过 Unix Socket 暴露给 @mtop-devtools/client 等本地调用方,并可作为云端链路的本地落点。
安装与注册
注册 Native Messaging Host manifest(让浏览器能够拉起本进程):
# 同时注册 Skills 与 MCP 两种集成模式(默认)
mtop-devtools-native-host --init
# 仅注册某一种模式
mtop-devtools-native-host --init --mode skills
mtop-devtools-native-host --init --mode mcp
# 指定自定义扩展 ID(开发版)
mtop-devtools-native-host --init --extension-id <your-extension-id>Skills 与 MCP 两个 host 运行同一份二进制、共享同一个 Unix socket,因此可同时启用。
也可在代码中调用安装入口:
import { installNativeHost } from '@mtop-devtools/native-host';
await installNativeHost(); // 默认注册两种模式运行时入口(被浏览器拉起、或手动启动)通过子路径导出:
import '@mtop-devtools/native-host/runtime';CLI 选项
mtop-devtools-native-host [options]
--init [--mode <skills|mcp|both>] [--extension-id <id>] 注册 host manifest
--daemon 独立 CDP daemon
--cdp-port <port> 指定 CDP 端口
--cdp-user-data-dir <dir> 指定 Chrome Profile
--browser-id <id> 指定浏览器注册 ID
--browser-name <name> 指定浏览器显示名称
--version, -v 查看版本
--help, -h 查看帮助架构
Chrome Extension
↓ (Native Messaging)
@mtop-devtools/native-host ← CDP → Chrome
↓ (Unix Socket)
@mtop-devtools/client / @mtop-devtools/cloud-connectorbrowser_launch 会为每个托管 Chrome 启动一个带独立 CDP 配置的 native-host 子进程,使多个 headless/Profile/TDBank 账号实例可以同时被现有浏览器注册表寻址。设计细节见 托管浏览器与 TDBank 多账号设计。
构建
pnpm build # esbuild 打包到 dist/(内联 browser-core / daemon-core)
pnpm typecheck # 仅类型检查License
ISC
