关于 Vytrix
Vytrix 是面向 macOS 和 Linux 的只读系统活动监控器,适用于排查主机、应用、项目和容器活动。无依赖的 Python 采集器向仪表板提供实时或导入的遥测数据,并支持历史记录和证据视图。
主要功能
- 01按应用或可执行文件归组进程
- 02监控 Docker 和 Podman 容器
- 03将监听端口关联到项目
- 04查看活动历史和异常
- 05导入或导出遥测快照
- 06用单个 Python 文件采集主机数据
适用场景
- 01查找占用 CPU 或内存的应用
- 02定位监听项目端口的进程
- 03检查容器资源使用情况
- 04查看历史活动和异常区间
MCP 相关
项目文档介绍了供 MCP 客户端查询采集器的 MCP 服务,提供六个只读工具,并可选提供集群或 Fleet Pro 工具、四个提示词和两个资源。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
docker run -i --rm -e VYTRIX_URL -e VYTRIX_TOKEN ghcr.io/zyvorai/vytrix-mcp:0.8.0VYTRIX_URLBase URL of the Vytrix collector, e.g. http://host.docker.internal:9847 or https://vytrix.example. Plain HTTP is accepted only for localhost; inside a container 127.0.0.1 is the container itself, so set this explicitly.VYTRIX_TOKEN密钥Bearer token of the collector. Read from the environment only; never printed.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
ghcr.io/zyvorai/vytrix-mcp:0.8.0stdio工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Zyvor Vytrix

了解你的机器究竟在做什么。
适用于 macOS 和 Linux 的只读系统活动监视器。 应用程序按你熟悉的方式分组,同时显示进程、监听端口、项目文件夹以及 Docker 和 Podman 容器;可使用 macOS 27 窗口、macOS 26 Liquid Glass 窗口或 Adwaita 窗口。它由一个无依赖的单文件 Python 采集器提供数据。
只读 · 无依赖采集器 · macOS 27 + Liquid Glass + Adwaita · 支持 Docker 和 Podman · 本地优先
为什么选择 Vytrix
| 使用场景 | Vytrix 提供 |
|---|---|
| 活动监视器列出 24 条“Google Chrome Helper”记录,而你只想看一个数字 | 按可执行文件或 .app 捆绑包分组的进程,显示每个应用程序的 CPU 和内存用量,并可一键打开进程详情面板 |
| “哪个容器正在占用机器资源?它运行在 Docker 还是 Podman 上?” | 通过只读命令行调用,查看两种运行时的状态、CPU、相对于限制的内存用量、网络 I/O 和已发布端口 |
| “哪个程序在监听 5173 端口?” | 与应用程序及其项目文件夹关联的监听端口 |
| 你想在远程服务上运行监视器,但不想安装一整套 Agent | 一个 Python 文件、一个 systemd 单元、HTTPS 和一个 bearer token |
| 你准备让它在生产主机上持续运行 | 它是只读的:绝不会终止进程、发送信号或更改任何内容 |
查看效果
试用在线演示:在浏览器中运行的真实仪表板,使用模拟遥测数据(无需安装,任何数据都不会离开页面)。
下载 Mac 版:原生应用,版本为 v0.7.0,提供 DMG 和 pkg(Apple 芯片,macOS 26+);发行说明会注明构建是否已签名和公证。

使用内置模拟遥测数据的约 12 秒演示:概览、应用程序的进程、容器、切换到 Adwaita 窗口样式,然后切换到深色模式。
| macOS 27,浅色 | macOS 27,深色 |
|---|---|
![]() | ![]() |
| Liquid Glass,浅色 | Liquid Glass,深色 |
|---|---|
![]() | ![]() |
| Adwaita,浅色 | Adwaita,深色 |
|---|---|
![]() | ![]() |
| 手机(390px) | 手机,容器 |
|---|---|
![]() | ![]() |
此处所有图片均为应用内置的模拟遥测数据(主机 zyvor-dev-01)。网页无法读取你的进程,因此托管预览会在屏幕上明确说明这一点。请参阅 UX 契约。
运作方式

仪表板启动时显示明确标注的模拟遥测数据。要查看自己的机器,请运行采集器并连接(实时),或导入一次性快照(离线)。
Mac 集群
可选且只读:每台 Mac 上的小型工作进程会将快照推送到协调器,Monitor → Mac cluster 会显示每台机器的 CPU、内存、磁盘、网络、应用和容器。没有命令通道。请参阅 docs/CLUSTER.md。
原生 Mac 应用
一个 SwiftUI 应用(native/),可在原生 macOS 27 窗口中显示相同的遥测数据。它会在环回地址上启动内置采集器,并在内存中保存随机令牌;也可以连接到你在其他位置运行的采集器(Connect…;除 localhost 外均使用 HTTPS)。与此处的其他所有内容一样,它是只读的。
下载 Mac 版 Vytrix 0.7.0(Apple silicon,macOS 26 或更高版本):Vytrix-0.7.0.pkg 会安装到 Applications,或者打开 Vytrix-0.7.0.dmg 并将 Vytrix 拖到那里。v0.7.0 文件已使用 Developer ID 签名并经过公证。如果你使用的构建未经签名或公证(本地构建或未使用 Apple secrets 的 CI 构建),首次启动会被阻止:打开系统设置 → 隐私与安全性,然后在 Vytrix 提示旁选择仍要打开。每个文件都附有 .sha256;使用 shasum -a 256 -c Vytrix-0.7.0.pkg.sha256 校验。v0.3.0 仍可作为手动签名的 DMG 获取。应用内置了采集器,采集器需要 Python 3.10+(见下文)。
或者从源代码构建:
./scripts/build-native.sh # native/build/Vytrix.app, ad-hoc signed development build
open native/build/Vytrix.app # or add --args --demo for simulated telemetry
./scripts/shots-native.sh # docs/ux/native-*.png, from the simulated telemetry
./scripts/build-native-widgets.sh # the same app plus the widget and App Intents (needs xcodegen), see docs/WIDGETS.md
需要 macOS 26 或更高版本、Xcode 命令行工具,以及用于采集器的 Python 3.10+(系统的 /usr/bin/python3 是 3.9;应用会优先查找 Homebrew 的 Python)。概览、应用、容器、项目、告警和设置均已实现,并像仪表板一样归入 Monitor、Workloads 和 System;此外还有菜单栏项目(CPU、主机总计、告警数、最繁忙的应用)。关闭窗口后,Vytrix 会继续在菜单栏运行;退出会停止应用及其采集器。在资源页面上,异常范围会以阴影标示,拖动范围会打开证据面板(需要采集器,因此演示模式下不可用)。告警使用仪表板的规则(阈值默认为 80%,严重级别为阈值 +10),并为每条告警发送一次本地通知;演示数据不会触发通知。CPU、内存、磁盘、网络和电池页面以及设置(外观、强调色、阈值、快照导入与导出、数据源)也已实现。System 小组件和两个快捷指令操作(“什么在占用我的 CPU?”、“我的 Mac 状态如何?”)见 docs/WIDGETS.md。已在 macOS 27.2 上构建并运行。
| 概览,浅色 | 应用,浅色 |
|---|---|
![]() | ![]() |
| 容器,深色 | 概览,深色 |
|---|---|
![]() | ![]() |
快速开始
1. 仪表板,使用模拟数据(Node ≥ 22.13;无需安装 pnpm 即可使用 npx [email protected] …):
git clone https://github.com/zyvorai/zyvor-vytrix.git && cd zyvor-vytrix
npx [email protected] install --frozen-lockfile
npx [email protected] dev # http://localhost:5173
2. 查看自己的读数,离线使用(Python 3.10+,Linux 或 macOS,无需 root):
python3 agent/vytrix.py --once > snapshot.json
在仪表板中选择连接 → 导入采集器快照(或设置 → 导入)。任何数据都不会离开你的机器。
3. 实时遥测
export VYTRIX_TOKEN="$(python3 -c 'import secrets; print(secrets.token_urlsafe(32))')" # keep it out of source control
python3 agent/vytrix.py --allow-origin http://localhost:5173
在连接中输入 http://127.0.0.1:9847/v1/snapshot 和令牌。仪表板每两秒轮询一次。令牌仅保存在当前标签页的内存中:不会存储在 localStorage 中,也不会发送到其他任何位置。若要连接另一台机器,请使用 --tls-cert/--tls-key 提供 HTTPS 服务(或使用会传递 Authorization 的 TLS 反向代理)。除环回地址外,界面会拒绝使用纯 HTTP 的采集器 URL。
Collector 标志
| 标志 | 默认值 | 用途 |
|---|---|---|
--once | 打印一次快照,然后退出 | |
--bind、--port | 127.0.0.1、9847 | 监听地址。非环回地址上的纯 HTTP 会打印警告 |
--allow-origin | 无 | CORS 允许的精确浏览器来源。可重复指定 |
--tls-cert、--tls-key | PEM 文件:提供 HTTPS(远程浏览器访问所需) | |
--ui-upstream | 将非 API 路径代理到仪表板 URL(同源部署) | |
--interval | 2 | 采样间隔(秒) |
--database | ~/.local/share/vytrix/history.sqlite | 历史记录(保留 30 天,目录权限 0700,文件权限 0600) |
--no-containers | 跳过 Docker 和 Podman | |
--container-interval | 5 | 容器轮询间隔(秒) |
端点:GET /v1/snapshot、GET /v1/history?since=…&limit=…(两者都需要 bearer token 和允许的来源),以及无需身份验证的 GET /healthz。所有操作都只读;不支持修改。参见 docs/API.md。
视图
| 区域 | 视图 |
|---|---|
| 监控 | 概览、CPU、内存、磁盘、网络、电池 |
| 工作负载 | 应用程序(分组显示)、容器(Docker 和 Podman)、项目(按文件夹显示的开发者服务) |
| 系统 | 警报(阈值检查)、设置(窗口样式、外观、强调色、降低透明度、阈值、导入/导出) |
此外还支持:搜索、按 CPU 或内存排序、暂停和恢复、1m/5m/1h 活动历史记录(在标签页打开期间采集,最多 1,800 个样本),以及 JSON 导入/导出。
安装为服务

scripts/install-macos.sh --allow-origin http://localhost:5173 # launchd agent, token in the login Keychain
scripts/install-linux.sh --allow-origin http://localhost:5173 # systemd user unit (--system for a hardened system unit)
两者都接受 --dry-run、--port 和 --no-containers。
部署到 Linux 服务端
./scripts/deploy-remote.sh 203.0.113.10 deploy # HOST USER, or user@host
./scripts/deploy-remote.sh HOST USER --quick # sync + restart, no build
./scripts/deploy-remote.sh HOST USER --verify-only
./scripts/deploy-remote.sh HOST USER --dry-run # prints the plan; no SSH
它会通过 SSH(使用一个多路复用连接)将检出内容同步到 ~/.vytrix/app,在该处构建(如果系统 Node 版本较旧,则使用私有 Node 22),并安装两个 systemd 单元:仪表板位于 127.0.0.1:8787,Collector 位于 https://HOST:30847,并使用涵盖主机名的自签名证书,同时在同一来源代理仪表板。Token 会在 ~/.vytrix/env 中创建一次(权限 0600)。打开 URL,接受证书,点击 Connect(端点已预填),然后粘贴 Token。需要 SSH、免密码 sudo、Python 3.10+、curl、openssl、rsync。详情参见:docs/RELEASE.md。
设计上只读

仪表板没有自己的登录功能:请将其置于你自己的访问控制之后。Collector Token 能保护什么、不能保护什么,详见 SECURITY.md。
验证
pnpm typecheck && pnpm lint
pnpm test # telemetry schema tests + Python collector tests
pnpm build
pnpm test:e2e # Playwright: WebKit, Chromium, mobile WebKit
pnpm shots # regenerate docs/ux screenshots (simulated telemetry)
实际在哪些环境中运行了哪些测试,以及哪些测试未运行,均如实列于 docs/RELEASE.md 和 docs/TESTING.md。
文档索引
| 我想要…… | 阅读 |
|---|---|
| 调用 Collector,或了解各项指标的含义 | docs/API.md |
让 MCP 客户端向 Collector 发起请求(六个只读工具、可选的集群/Fleet Pro 工具、四个提示词和两个资源;注册表名称为 io.github.zyvorai/vytrix,镜像为 ghcr.io/zyvorai/vytrix-mcp:0.8.0,两者均从 v0.8.0 版本发布) | docs/MCP.md |
| 监控多台 Mac(只读) | docs/CLUSTER.md |
| Fleet 历史记录、角色、警报、Prometheus 导出 | docs/FLEET-PRO.md |
| 在 macOS 和 Linux 上测试 | docs/TESTING.md |
| 发布或部署 | docs/RELEASE.md |
| 了解设计规则 | docs/design/UX-CONTRACT.md |
| 报告漏洞 | SECURITY.md |
| 参与贡献 | CONTRIBUTING.md、AGENTS.md |
| 重新生成截图、演示 GIF、社交图片和 Pages 网站 | docs/README.md |
| 查看变更内容 | CHANGELOG.md |
范围
首个只读版本。它不会终止进程、控制风扇或音量、检查蓝牙设备、测量各应用的网络或磁盘 I/O,也不会收集 GPU 指标。应用内存为 RSS,而非唯一物理内存。在 macOS 上,Docker Desktop 和 Podman 会在 Linux 虚拟机中运行容器,因此容器的 CPU 和内存数据均相对于该虚拟机。采集器会在 SQLite 中保留最多 30 天的数据;仪表板自身的历史记录则是标签页打开期间采集的样本。
成熟度
| 区域 | 状态 |
|---|---|
| 采集器(Linux、macOS)、API、历史记录、TLS、代理 | 可用;原生运行已在 macOS 26 和 Ubuntu 24.04 上验证,并在 CI 中测试 |
| Docker 和 Podman | 可用;已使用录制的输出测试解析,并在 CI 中进行真实 Docker 和 Podman 检查 |
| 仪表板 | 可用;已通过 Playwright 在 WebKit、Chromium 和移动版 WebKit 上测试 |
| 安装程序(launchd、systemd)和远程部署 | 可用;已在 CI 中进行 dry-run 检查 |
| Mac 集群(工作节点 + 协调器,只读) | 实验性;已通过单元测试和模拟 e2e 测试验证,并有一台真实 Mac 通过回环连接加入。尚未在两台 Mac 之间或通过 HTTPS 检查 |
| 原生 Mac 应用 | 已在 macOS 27.2(Apple 芯片)上使用实时和演示数据构建并运行;警报逻辑以及窗口和侧边栏流程有脚本测试(scripts/test-native-logic.sh、scripts/test-native-ui.sh),但未在 CI 中运行。未经 macOS 26 验证;尚未在小组件图库中看到该小组件。发布中的 v0.7.0 DMG 和 pkg 已通过 Developer ID 签名并经过公证(已用 spctl 和 stapler validate 检查;DMG 和 pkg 带有票据,DMG 内的应用没有);此仓库的 CI 构建没有 Apple 密钥,因此未签名且未经公证;v0.3.0 DMG 已通过 Developer ID 签名,但未经公证(仅限 Apple 芯片) |
| Homebrew formula | 存根,尚未发布 |
Fleet Pro(agent/vytrix_fleet.py、cluster/fleet_coordinator.py) | 新功能且需选择启用;已通过单元测试并纳入 CI。尚未在多台 Mac 之间、通过 HTTPS,或使用真实 webhook、SSO 和 Prometheus 接收端进行检查 |
| GPU、传感器、各应用网络 | 基础采集器不收集这些数据。Fleet Pro 会尽力收集 GPU 和热数据(Apple 能力;Linux 上则在 DRM 导出数据时收集),以及通过 nettop 获取 macOS 各进程的网络数据;不可用的计数器会被省略,且不提供 Linux 各进程的网络数据 |
许可证
Vytrix 根据 Business Source License 1.1 授权。
根据 BSL 的条款,你可以将 Vytrix 用于开发、评估、测试、演示及其他非生产用途。
生产和商业部署需要获得 Zyvor AI Labs Private Limited 的商业许可证。Supporter Commercial License 为一次性付款,可授权你在自己的机器上使用:随意支付,建议 ₹99 或 US$1(该页面使用 INR;目前尚未设置 USD 页面)。公司、USD 发票和多实体许可证事宜,请写信至 [email protected],我们会发送发票。未付费使用 Vytrix 不会改变应用的任何功能;没有任何功能被锁定。
每个版本在首次发布四年后,都会根据 Business Source License 转为 Apache License 2.0。
完整条款请参阅 LICENSE、NOTICE 和 THIRD_PARTY.md。截至 v0.3.0(含)的版本均以 Apache-2.0 发布,且仍受该许可证约束。
版权所有 © 2026 Zyvor AI Labs Private Limited · zyvor.dev
Fleet Pro
需选择启用,且仍为只读(无命令通道):更丰富的芯片和 AI 工作负载遥测、集中式历史记录、标签和分组、auditor 和 editor 角色、警报和 webhook、SSO 代理端点、Prometheus 导出以及本地容量预测。请参阅 docs/FLEET-PRO.md。原有采集器和协调器仍可用作回滚路径。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。











