具备智能监控功能的终端用户界面(TUI)开发助手
蜂鸣器(Brummer)是一款用于管理 npm、yarn、pnpm 和 bun 脚本的终端用户界面(TUI)工具,它集成了 MCP 服务器,方便外部工具访问。该工具提供智能日志管理、实时监控功能,并能与开发工具无缝集成。
你可以通过以下链接获取完整的文档和快速入门指南:
完整文档请访问:https://standardbeagle.github.io/brummer/
curl -sSL https://raw.githubusercontent.com/standardbeagle/brummer/main/quick-install.sh | bash
或者使用 wget:
wget -qO- https://raw.githubusercontent.com/standardbeagle/brummer/main/quick-install.sh | bash
irm https://raw.githubusercontent.com/standardbeagle/brummer/main/quick-install.ps1 | iex
# 直接使用 npx 运行(无需安装)
npx @standardbeagle/brum
# 全局安装
npm install -g @standardbeagle/brum
# 或者使用 yarn
yarn global add @standardbeagle/brum
# 或者使用 pnpm
pnpm add -g @standardbeagle/brum
go install github.com/standardbeagle/brummer/cmd/brum@latest
# 克隆仓库
git clone https://github.com/standardbeagle/brummer
cd brummer
# 使用 Make(推荐)
make install-user # 为当前用户安装 (~/.local/bin)
# 或者
make install # 系统级安装(需要 sudo)
# 使用交互式安装程序
./install.sh
# 手动构建
go build -o brum ./cmd/brum
mv brum ~/.local/bin/ # 添加到 PATH
在包含 package.json 文件的目录中,运行以下命令:
brum
brum [flags]
Flags:
-d, --dir string 包含 package.json 的工作目录(默认值为 ".")
-p, --port int MCP 服务器端口(默认值为 7777)
--no-mcp 禁用 MCP 服务器
--settings 显示当前配置设置及其来源
-h, --help 显示帮助信息
进程状态指示器:
自动清理:
Brummer 支持通过 .brum.toml 文件进行分层配置。配置按以下顺序加载(后面的值会覆盖前面的值):
~/.brum.toml(全局用户设置)。.brum.toml 文件。# 显示当前设置及其源文件
brum --settings
# 根据当前设置创建配置文件
brum --settings > .brum.example.toml
在项目或主目录中创建 .brum.toml 文件:
# 包管理器偏好
preferred_package_manager = "pnpm" # npm, yarn, pnpm, bun
# MCP 服务器设置
mcp_port = 7777
no_mcp = false
# 代理设置
proxy_port = 19888
proxy_mode = "reverse" # "reverse" 或 "full"
proxy_url = "http://localhost:3000" # 可选:自动代理此 URL
standard_proxy = false
no_proxy = false
设置标签页提供以下功能:
Brummer 中心模式允许 MCP 客户端通过单个连接发现和控制多个 Brummer 实例:
一次性配置 MCP 客户端:
{
"servers": {
"brummer-hub": {
"command": "brum",
"args": ["--mcp"]
}
}
}
在每个项目中运行 Brummer:
cd ~/projects/frontend && brum
cd ~/projects/backend && brum
在 MCP 客户端中使用中心工具:
instances/list - 查看所有正在运行的实例。instances/connect - 连接到特定实例。📚 完整中心模式文档
MCP 服务器默认运行在 7777 端口,并实现了官方 MCP 可流式 HTTP 传输协议:
单一端点:http://localhost:7777/mcp
连接类型:
Accept: application/json)。Accept: text/event-stream)。Accept: text/event-stream)。// SSE 流式连接
const eventSource = new EventSource('http://localhost:7777/mcp');
eventSource.onmessage = (event) => {
const msg = JSON.parse(event.data);
console.log('收到消息:', msg);
};
// 发送 JSON-RPC 请求
fetch('http://localhost:7777/mcp', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json'
},
body: JSON.stringify({
jsonrpc: '2.0',
id: 1,
method: 'tools/list'
})
});
脚本管理:scripts_list、scripts_run、scripts_stop、scripts_status
日志管理:logs_stream、logs_search
浏览器工具:browser_open、browser_screenshot、browser_navigate、repl_execute
代理工具:proxy_requests
遥测:telemetry_sessions、telemetry_events
brum -d ~/projects/my-app
brum -p 8888
brum --no-mcp
brum --no-tui
brummer/
├── cmd/brum/ # 主应用程序入口点
├── internal/
│ ├── tui/ # 终端 UI 组件
│ ├── process/ # 进程管理
│ ├── mcp/ # MCP 服务器实现
│ ├── logs/ # 日志存储和检测
│ └── parser/ # Package.json 解析
├── pkg/
│ ├── events/ # 事件系统
│ └── filters/ # 日志过滤
└── go.mod
go build -o brum ./cmd/brum
go test ./...
本项目采用 MIT 许可证。