Native Shell
Native Shell은 모든 플랫폼의 앱 안에서 만들어지는 AI UI입니다
홈랩용 Linux 시스템 모니터: 터미널 UI, 실시간·과거 차트, SMART·하드웨어 상태, 알림, 자체 메트릭 SQL 조회
A Linux system monitor for homelabs: a terminal UI with live and historical charts, SMART and hardware health, alerts, and SQL queries over your own metrics.
개발 도구Go · ShellGitHub @duggan온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
Linux server monitoring daemon with TUI
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗bewitch monitors homelab servers, Raspberry Pis and VPSes. It has two binaries:
bewitchd, a daemon that collects metrics from /proc, /sys and the hardware, stores them in
a local DuckDB database, and evaluates alert rules.bewitch, a client with a terminal UI (live views, history charts, hardware health, alerts), a
SQL console, and maintenance commands.Each machine runs its own daemon; there is no central server. The packaged daemon runs as an unprivileged, sandboxed systemd service and caps DuckDB's memory use at 512 MB by default.
curl -fsSL https://bewitch.dev/install.sh | sudo sh
On Debian and Ubuntu this adds the signed APT repository, so updates arrive with apt upgrade.
On other distributions it installs a prebuilt binary and a systemd service. Builds are available
for amd64 and arm64. See Installation for the manual
APT setup, the dev channel, and tarballs.
bewitch # the TUI: 1–9 switch views, < > change the time range
bewitch repl # SQL over your own metrics
bewitch -addr myhost:9119 # a remote daemon, over TLS with fingerprint pinning
/metrics endpoint.| Processes | Hardware |
|---|---|
| Alerts | Services |
| CPU | Disk |
Full documentation is at bewitch.dev/docs:
bewitch targets Linux, but builds and runs on macOS too: mock mode generates synthetic data for
every view, so you can work on the TUI anywhere. You need Go (see go.mod) and a C toolchain,
because DuckDB is linked through cgo.
make build # bin/bewitchd and bin/bewitch
make test # unit tests (make test-integration for the DuckDB ones)
To run against mock data, use a config like this:
[daemon]
mock = true
socket = "/tmp/bewitch.sock"
db_path = "/tmp/bewitch.duckdb"
bin/bewitchd -config dev.toml &
bin/bewitch -config dev.toml
CLAUDE.md has detailed architecture notes for contributors.