Vytrix

io.github.zyvorai由 GitHub 帳號 zyvorai 發布v0.8.0更新於 Nov 1, 2026

Read-only host activity, history, anomalies and evidence from a Vytrix collector.

概覽

AI 產生的概覽

以唯讀方式透過 MCP 存取 Vytrix 收集器的主機活動、歷史、異常與證據資料,適用於 macOS 與 Linux。

可以做什麼
  • 查詢 Vytrix 收集器的主機快照:CPU、記憶體、磁碟、網路與電池讀數。
  • 檢視依應用程式分組的行程、監聽埠與專案資料夾。
  • 檢查 Docker 與 Podman 容器的狀態、資源用量與已發佈的埠。
  • 讀取已保存的歷史記錄與異常區間,並取得所選時段的證據。
  • 可選用叢集與 Fleet Pro 資料,並提供提示詞與資源輔助查詢。
適用情境
適合讓助理回答某台 Mac 或 Linux 主機正在做什麼的問題,例如哪個應用程式或容器佔用資源、某個埠由誰監聽、異常時段發生了什麼事,同時不給它任何控制機器的能力。
執行需求
以本機 stdio 程序執行,來自已發佈的容器映像。需要可連線的 Vytrix 收集器,透過 VYTRIX_URL 設定(明文 HTTP 僅限 localhost),以及收集器的 Bearer 權杖 VYTRIX_TOKEN。收集器本身在被監控主機上需要 Python 3.10 以上。
安裝前請注意
需要在 VYTRIX_TOKEN 中提供收集器 Bearer 權杖,請勿納入版本控制,遠端收集器應使用 HTTPS。儀表板本身沒有登入機制,需自行加上存取控制。遙測為唯讀,但會把主機、行程與容器的詳細資訊暴露給助理。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Vytrix,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Zyvor Vytrix

[verify] [License] [Node] [Python] [Platforms]

[Zyvor Vytrix: see what your machine is really doing]

See what your machine is really doing.

A read-only system activity monitor for macOS and Linux. Applications grouped the way you think about them, processes, listening ports, project folders, and Docker and Podman containers, in a macOS 27 window, a macOS 26 Liquid Glass one, or an Adwaita one. A single-file Python collector with no dependencies feeds it.

Read-only · Dependency-free collector · macOS 27 + Liquid Glass + Adwaita · Docker and Podman aware · Local-first

🎮 Live demo · 🌐 Site · 🚀 Quickstart · 🧩 How it fits · 🔒 Security · 📖 API

Why Vytrix

When this happensVytrix gives you
Activity Monitor lists 24 "Google Chrome Helper" rows and you want one numberProcesses grouped by executable or .app bundle, with CPU and memory per application and a process sheet one click away
"Which container is eating the box, and is it Docker or Podman?"State, CPU, memory against its limit, network I/O and published ports for both runtimes, from read-only CLI calls
"What is listening on 5173?"Listening ports tied to the application and its project folder
You want a monitor on a remote server without an agent suiteOne Python file, one systemd unit, HTTPS and a bearer token
You will leave it running on a production hostIt is read-only: it never kills, signals or changes anything

See it

Try the live demo: the real dashboard, running in your browser on simulated telemetry (nothing to install, nothing leaves the page).

Download for Mac: the native app, v0.7.0, DMG and pkg (Apple silicon, macOS 26+); the release notes say whether the build is signed and notarized.

[Vytrix: overview, an application's processes, containers, the Adwaita window style, then dark mode]

About 12 seconds against the built-in simulated telemetry: overview, an application's processes, containers, switching to the Adwaita window style, then dark mode.

Phone (390px)Phone, containers
[Overview on a phone][Containers on a phone]

Every image here is the app's built-in simulated telemetry (host zyvor-dev-01). A web page cannot read your processes, so the hosted preview says so on screen. See the UX contract.

How it fits together

[A browser dashboard talks to a read-only collector over HTTPS; the collector reads the host]

The dashboard starts on clearly labeled simulated telemetry. To see your own machine, run the collector and connect (live), or import a one-off snapshot (offline).

Mac cluster

Optional and read-only: a small worker on each Mac pushes its snapshot to a coordinator, and Monitor → Mac cluster shows every machine's CPU, memory, disk, network, applications and containers. There is no command channel. See docs/CLUSTER.md.

Native Mac app

A SwiftUI app (native/) that shows the same telemetry in a native macOS 27 window. It starts the bundled collector on loopback with a random token held in memory, or connects to one you run elsewhere (Connect…, HTTPS unless it is localhost). It is read-only, like everything else here.

Download Vytrix 0.7.0 for Mac (Apple silicon, macOS 26 or newer): Vytrix-0.7.0.pkg installs into Applications, or open Vytrix-0.7.0.dmg and drag Vytrix there. The v0.7.0 files are Developer ID signed and notarized. If you use a build that is not (a local or CI build without Apple secrets), the first launch is blocked: open System Settings → Privacy & Security and choose Open Anyway next to the Vytrix message. Each file has a .sha256; check it with shasum -a 256 -c Vytrix-0.7.0.pkg.sha256. v0.3.0 remains available as a hand-signed DMG. The app bundles the collector, which needs Python 3.10+ (see below).

Or build it from source:

bash
./scripts/build-native.sh      # native/build/Vytrix.app, ad-hoc signed development buildopen 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

Needs macOS 26 or newer, the Xcode command line tools, and Python 3.10+ for the collector (the system /usr/bin/python3 is 3.9; the app looks for Homebrew's first). Overview, Applications, Containers, Projects, Alerts and Settings are in, grouped Monitor, Workloads and System like the dashboard, along with a menu bar item (CPU, host totals, alert count, busiest apps). Closing the window keeps Vytrix running in the menu bar; Quit stops it and its collector. On the resource pages, anomalous ranges are shaded and a dragged range opens an evidence sheet (needs a collector, so not in demo mode). Alerts use the dashboard's rules (threshold default 80%, critical at +10) and post local notifications, once per alert, never for demo data. The CPU, Memory, Disk, Network and Battery pages and Settings (appearance, accent, threshold, snapshot import and export, data source) are in too. A System widget and two Shortcuts actions ("What is using my CPU?", "How is my Mac doing?") are in docs/WIDGETS.md. Built and run on macOS 27.2.

Quickstart

1. The dashboard, on simulated data (Node ≥ 22.13; npx [email protected] … works without installing pnpm):

bash
git clone https://github.com/zyvorai/zyvor-vytrix.git && cd zyvor-vytrixnpx [email protected] install --frozen-lockfilenpx [email protected] dev            # http://localhost:5173

2. Your own readings, offline (Python 3.10+, Linux or macOS, no root):

bash
python3 agent/vytrix.py --once > snapshot.json

In the dashboard choose Connect → Import collector snapshot (or Settings → Import). Nothing leaves your machine.

3. Live telemetry

bash
export VYTRIX_TOKEN="$(python3 -c 'import secrets; print(secrets.token_urlsafe(32))')"   # keep it out of source controlpython3 agent/vytrix.py --allow-origin http://localhost:5173

Enter http://127.0.0.1:9847/v1/snapshot and the token in Connect. The dashboard polls every two seconds. The token stays in tab memory: it is not stored in localStorage and not sent anywhere else. For another machine, serve HTTPS with --tls-cert/--tls-key (or a TLS reverse proxy that passes Authorization). The UI refuses plain-HTTP collector URLs except on loopback.

Collector flags

FlagDefaultPurpose
--oncePrint one snapshot, then exit
--bind, --port127.0.0.1, 9847Where to listen. Plain HTTP on a non-loopback address prints a warning
--allow-originnoneExact browser origin allowed by CORS. Repeatable
--tls-cert, --tls-keyPEM files: serve HTTPS (needed for remote browser access)
--ui-upstreamProxy non-API paths to a dashboard URL (same-origin deploys)
--interval2Seconds between samples
--database~/.local/share/vytrix/history.sqliteHistory (30-day retention, directory 0700, file 0600)
--no-containersSkip Docker and Podman
--container-interval5Seconds between container polls

Endpoints: GET /v1/snapshot, GET /v1/history?since=…&limit=… (both need the bearer token and an allowed origin), and unauthenticated GET /healthz. Everything is a read; mutations are not supported. See docs/API.md.

Views

SectionViews
MonitorOverview, CPU, Memory, Disk, Network, Battery
WorkloadsApplications (grouped), Containers (Docker and Podman), Projects (developer servers by folder)
SystemAlerts (threshold checks), Settings (window style, appearance, accent, reduced transparency, thresholds, import/export)

Also: search, CPU or memory sort, pause and resume, 1m/5m/1h activity history (captured while the tab is open, at most 1,800 samples), and JSON import/export.

Install as a service

[macOS launchd, Linux systemd, remote Linux, Docker and Podman]

bash
scripts/install-macos.sh --allow-origin http://localhost:5173     # launchd agent, token in the login Keychainscripts/install-linux.sh --allow-origin http://localhost:5173     # systemd user unit (--system for a hardened system unit)

Both accept --dry-run, --port and --no-containers.

Deploy to a Linux server

bash
./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

It syncs the checkout over SSH (one multiplexed connection) to ~/.vytrix/app, builds it there (with a private Node 22 if the system Node is older), and installs two systemd units: the dashboard on 127.0.0.1:8787 and the collector on https://HOST:30847 with a self-signed certificate that covers the host, proxying the dashboard on the same origin. The token is created once in ~/.vytrix/env (0600). Open the URL, accept the certificate, Connect (the endpoint is pre-filled) and paste the token. Needs SSH, passwordless sudo, Python 3.10+, curl, openssl, rsync. Details: docs/RELEASE.md.

Read-only by design

[Vytrix reads processes, ports, resources and containers; it never kills, signals or changes anything]

The dashboard has no login of its own: put it behind your own access control. What the collector token protects, and what it does not, is in SECURITY.md.

Verification

bash
pnpm typecheck && pnpm lintpnpm test          # telemetry schema tests + Python collector testspnpm buildpnpm test:e2e      # Playwright: WebKit, Chromium, mobile WebKitpnpm shots         # regenerate docs/ux screenshots (simulated telemetry)

What was run where, and what was not, is listed honestly in docs/RELEASE.md and docs/TESTING.md.

Documentation map

I want to…Read
Call the collector, or learn what each metric meansdocs/API.md
Let an MCP client ask the collector (six read-only tools, optional cluster/Fleet Pro tools, four prompts and two resources; registry name io.github.zyvorai/vytrix, image ghcr.io/zyvorai/vytrix-mcp:0.8.0, both published from the v0.8.0 release)docs/MCP.md
Monitor several Macs (read-only)docs/CLUSTER.md
Fleet history, roles, alerts, Prometheus exportdocs/FLEET-PRO.md
Test on macOS and Linuxdocs/TESTING.md
Release or deploydocs/RELEASE.md
Understand the design rulesdocs/design/UX-CONTRACT.md
Report a vulnerabilitySECURITY.md
ContributeCONTRIBUTING.md, AGENTS.md
Regenerate screenshots, the demo GIF, social images and the Pages sitedocs/README.md
See what changedCHANGELOG.md

Scope

An initial read-only release. It does not kill processes, control fans or volume, inspect Bluetooth devices, measure per-app network or disk I/O, or collect GPU metrics. App memory is RSS, not unique physical memory. On macOS, Docker Desktop and Podman run containers inside a Linux VM, so container CPU and memory are relative to that VM. The collector retains up to 30 days in SQLite; the dashboard's own history is the samples captured while the tab is open.

Maturity

AreaStatus
Collector (Linux, macOS), API, history, TLS, proxyWorking; native runs on macOS 26 and Ubuntu 24.04, tested in CI
Docker and PodmanWorking; parsing tested from recorded output, plus real Docker and Podman checks in CI
DashboardWorking; Playwright on WebKit, Chromium and mobile WebKit
Installers (launchd, systemd) and remote deployWorking; dry-run checked in CI
Mac cluster (worker + coordinator, read-only)Experimental; tested with unit and mocked e2e tests and one real Mac enrolled over loopback. Not yet checked across two Macs or over HTTPS
Native Mac appBuilt and run on macOS 27.2 (Apple silicon) with live and demo data; alert logic and the window and sidebar flow have scripted tests (scripts/test-native-logic.sh, scripts/test-native-ui.sh), not run in CI. Not checked on macOS 26; the widget has not been seen in the widget gallery. the v0.7.0 DMG and pkg on the release are Developer ID signed and notarized (checked with spctl and stapler validate; the DMG and pkg carry the tickets, the app inside the DMG does not); builds from this repository's CI have no Apple secrets and are not; v0.3.0 DMG is Developer ID signed, not notarized (Apple silicon only)
Homebrew formulaStub, not published
Fleet Pro (agent/vytrix_fleet.py, cluster/fleet_coordinator.py)New and opt-in; unit-tested and covered by CI. Not yet checked across several Macs, over HTTPS, or with real webhook, SSO and Prometheus receivers
GPU, sensors, per-app networkNot collected by the base collector. Fleet Pro adds best-effort GPU and thermal data (Apple capability; Linux DRM where exported) and macOS per-process network via nettop; unavailable counters are omitted, and Linux per-process network is not provided

License

Vytrix is licensed under the Business Source License 1.1.

You may use Vytrix for development, evaluation, testing, demonstration, and other non-production purposes under the terms of the BSL.

Production and commercial deployments require a commercial license from Zyvor AI Labs Private Limited. The Supporter Commercial License is a one-time payment that grants it for your own machines: ₹899 incl. GST (about US$10) (the page takes INR; a USD page is not set up yet). Need something customised, a company invoice or multi-entity terms? Write to [email protected]. Companies get a USD invoice. Using Vytrix without paying changes nothing in the app; nothing is locked.

Each version converts to the Apache License 2.0 four years after its initial release under the Business Source License.

See LICENSE for the complete terms, NOTICE and THIRD_PARTY.md. Releases up to and including v0.3.0 were published under Apache-2.0 and remain so.

Copyright © 2026 Zyvor AI Labs Private Limited · zyvor.dev

See what your machine is really doing. · Quickstart · Security · Changelog

Fleet Pro

Opt-in and still read-only (no command channel): richer silicon and AI workload telemetry, central history, tags and groups, auditor and editor roles, alerts and webhooks, an SSO-proxy endpoint, Prometheus export and local capacity forecasting. See docs/FLEET-PRO.md. The original collector and coordinator stay available as a rollback path.

來源:README.md,提交 083802a

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

2
  1. v0.8.0最新Oct 18, 2026
  2. v0.7.1Oct 15, 2026

評分

已滿足適用檢查項的 40%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。