Vitalsが見ているものすべてを、ターミナルで。

vitalsと入力すれば、Macを使っているアプリ、各プロジェクトが使っているポートと開発サーバ、コーディングエージェント、AIプランの残りがわかります。読みやすい表、スクリプトで解析できるJSON。そして、あなたの許可なしには何も停止しません。

Terminal — zsh
~ vitals status
● CPU 27% · Apple M4 Pro, 14 cores
● Memory 52.6 GB of 64 GB · pressure normal
● GPU 18%
● Disk 412 GB free of 1 TB
● Network down 1.2 MB/s · up 84 KB/s
● Battery 82% · 4h 10m left
● Heat CPU 52° · fans 1,800 rpm
~ vitals top memory 4
APP MEMORY CPU PROCS
Google Chrome 21.2 GB 48% 96
VS Code 8.2 GB 14% 31
Terminal 3.9 GB 3% 12
Figma 2.8 GB 6% 8
62 apps running · by memory
~ vitals ports
PORT PROCESS PROJECT OPEN TO
3000 node storefront-web network
4322 node docs-site this Mac
5432 postgres – this Mac
8080 python api this Mac
4 ports listening · 1 open to the network
~ vitals stop --idle
✓ Safe to quit node (48211) of docs-site · port 4322
Idle for 3 days. Stopping it frees 458 MB.
Continue? [y/N] y
Stopped node (48211). Port 4322 is free.
~ vitals agents
AGENT PROJECT STATUS MEMORY
Claude Code storefront-web working 412 MB
Codex api waiting for you 4m 287 MB
Gemini CLI docs-site working 198 MB
3 sessions · 6 processes started
~ vitals limits
TOOL LIMIT LEFT RESETS PACE
Claude 5-hour session 59% in 2h 10m on pace
Claude This week 72% Mon 9:00 on pace
Codex This week 38% Thu 14:00 runs out Wed
Cursor This month 81% Nov 3 on pace

数値はシミュレーションです。WebページはMacの情報を読み取れませんし、読み取るべきでもありません。

01インストール

アプリに付属し、Homebrewでも入手できます。

コマンドはVitalsの中に入っています。“設定”→“連携”で“AIアシスタントがVitalsに問い合わせることを許可”をオンにすると、Vitalsがvitalsを、マニュアルページとタブ補完とともにPATHに置きます。または、Homebrewの1行でアプリとコマンドをまとめてインストールできます。

  • /opt/homebrew/binまたは/usr/local/binにリンク
  • マニュアルページ:man vitals
  • zsh、bash、fish用のタブ補完
  • Homebrewの1行でアプリとコマンドをインストール
~ brew install --cask foredotstudio/tap/vitals
==> Installing Cask vitals
==> Linking Binary 'vitals'
==> Linking Manpage 'vitals.1'
==> Linking Zsh Completion '_vitals'
🍺 vitals was successfully installed!
~ vitals version
vitals 1.8.0
Vitals is running and answering.
アプリとコマンドを一緒に または“設定”→“連携”から
02読み込み中

ウインドウに表示される内容を、表で。

vitals statusは、数値ごとに1行、バー付きで表示します。vitals topは、メモリ、CPU、電力、ディスク、ネットワークを最も多く使っているアプリを、今この瞬間、または最長1年間で一覧にします。ポート、プロジェクト、コンテナ、エージェント、AIの上限にもそれぞれコマンドがあり、どの答えにも計測した時刻が付きます。

  • ウインドウと同じく、ヘルパーを合算したアプリ
  • 数値ごとにアプリと同じ色
  • ネットワークに開いているポートと、このMacだけに開いているポート
  • --watchで2秒ごとに答えを更新
~ vitals status
● CPU 27%
● Memory 52.6 GB of 64 GB
● GPU 18%
● Disk 412 GB free
● Battery 82%
Measured just now
数値ごとに1行 アプリと同じ色で
03スクリプト

スクリプトにはJSON、表計算にはCSV。

--jsonを付ければ、どの答えもスクリプトが読めるJSONになります。MCPサーバが返すものと同じ答えです。--csvは主なリストを表計算アプリ用に出力します。パイプでは何も切り詰められないので、スクリプトやエージェントはすべてを読めます。

  • すべてのコマンドで--json
  • 主なリストには--csv
  • パイプではプレーンテキスト、切り詰めなし
  • Vitalsが答えなかったときは終了コード1
~ vitals top --json | jq '.apps[0]'
{
"name": "Google Chrome",
"memory_mb": 21709,
"cpu_percent": 48.2,
"processes_count": 96
}
~ vitals ports --csv > ports.csv
スクリプトが読めるJSON 表計算アプリ用のCSV
04停止

何かを停止する前に確認します。

vitals can-quitは、何かを終了しても安全かどうか、その理由、一緒に止まるものを伝えます。vitals quitとvitals stopは、まずその判断を示し、あなたの許可を待ちます。人の判断が必要なものは、ターミナルがなければ--yesを付けても拒否されるので、スクリプトやエージェントが勝手に通すことはできません。

  • “安全”“先に確認”“やめておく”を、理由とともに
  • stop --idleで、誰も使っていない開発サーバをすべて停止
  • アプリは⌘Qと同じように終了するので、保存を確認できる
  • すべての終了は“設定”→“連携”に記録
~ vitals stop --port 4322
✓ Safe to quit node (48211) of docs-site
Idle for 3 days. Stopping it frees 458 MB.
Continue? [y/N] y
Stopped node (48211).
~ vitals stop WindowServer
✗ Leave it alone WindowServer (615) of macOS
停止する前に判断を表示 あなたの許可なしには何も停止しません
リファレンス

インストール方法と、すべてのコマンド

アプリから

“設定”→“連携”→“AIアシスタントがVitalsに問い合わせることを許可”。そこにある“ターミナル”セクションに、コマンドの場所が表示されます。

$ vitals version
Homebrewで

アプリとコマンドをまとめて。マニュアルページと、zsh、bash、fish用のタブ補完付き。

$ brew install --cask foredotstudio/tap/vitals
vitals help
コマンド
コマンドわかること
vitals status [<part>…] CPU、メモリ、GPU、Neural Engine、ディスク、ネットワーク、バッテリー、電力、熱を1行ずつ。または指定した項目だけ
vitals top [<by>] [<period>] [N] メモリ、CPU、電力、ディスク、ネットワークを最も多く使っているアプリ。今、または1時間、1日、1週間、1か月、四半期、半年、1年の期間で
vitals app <name> 1つのアプリ:そのプロセス、ポート、プロジェクト、コンテナと、ある期間に使った量
vitals find <name|pid|:port> 名前、PID、ポートでプロセスを検索
vitals ports [<port>…] どのポートで何がリッスンしているか。そのプロセス、アプリ、プロジェクトと、このMacだけに開いているかネットワークに開いているか
vitals projects [<name>] 何かが実行中のプロジェクトフォルダ。そのポート、メモリ、CPUと、誰も使っていない開発サーバ
vitals containers [<name>] Docker、OrbStack、Podman、Colimaで実行中のコンテナ。そのメモリ、CPU、ネットワーク、ポート
vitals agents [<name>] いま実行中のコーディングエージェント:各セッションのプロジェクト、作業中かあなたを待っているか、起動したもの
vitals limits [<tool>] 各AIプランの残り、各上限がリセットされる時刻、今のペースで持つかどうか
vitals awake Macのスリープを妨げているもの
vitals battery バッテリーと、電力を最も多く使っているアプリ
vitals history [<reading>…] [<period>] ある期間にMacにどれだけ負荷がかかったか、そしてそれはいつか
vitals whats-wrong Vitalsが気づいたこと:CPUを使い続けているアプリやメモリが増え続けているアプリ、メモリプレッシャー、熱、残されたままの開発サーバ
vitals can-quit [<app>] 何かを終了しても安全かどうか。理由と、一緒に止まるもの付き。名前、--pid、--port、--projectで指定
vitals quit <app> 判断を示し、あなたの許可を得てからアプリを終了。--forceならすぐに終了
vitals stop [<name>] 自分のプロセスを同じ方法で停止。名前、--pid、--portで指定。--idleでアイドル状態の開発サーバをすべて停止
vitals completions <shell> zsh、bash、またはfish用のタブ補完
vitals mcp AIアシスタント向けに、標準入出力でMCPを話す
vitals help すべてのコマンドとオプション
オプション
オプション動作
--json 答えをJSONで、スクリプト用に
--csv 主なリストをCSVで、表計算用に
--watch Control-Cを押すまで2秒ごとに更新。間隔を変えるには--every N
--no-color プレーンテキスト。環境変数のNO_COLORでも同じ
大事な理由

コマンドライン:これまでとVitals

macOSがターミナルに用意しているのはtopとpsです。どちらもプロセスを約1,000個も一覧にしますが、それぞれがどのアプリやプロジェクトのものかはわからず、昨日のことも何もわかりません。ポート3000を何が使っているかを調べるには、lsofでPIDを調べ、さらに別のコマンドでそのPIDが何かを確かめる必要があります。

コーディングエージェントもターミナルで動きます。何がMacを遅くしているのか、ポートで何が動いているのかを知りたいとき、エージェントは同じコマンドを実行し、その一覧から推測します。

vitalsは、代わりに実行中のVitalsアプリに問い合わせます。ヘルパーを合算したアプリ、ポート付きのプロジェクト、起動したもの付きのエージェント、残りがわかるAIプラン、最長1年分の履歴が、読みやすい表で、またはスクリプトで解析できるJSONで得られます。コマンド自体は何も計測しないので、問い合わせてもMacへの負荷はほとんどありません。

使い方

Vitalsのどこにあるか

タブ、メニューバー項目、設定を、使う順に並べました。

  1. 01

    インストールする

    “設定”→“連携”で“AIアシスタントがVitalsに問い合わせることを許可”をオンにすると、VitalsがコマンドをPATHにリンクします。フォルダにパスワードが必要な場合は、“インストール”ボタンで一度だけ求められます。Homebrewなら、brew install --cask foredotstudio/tap/vitalsでアプリとコマンドをまとめてインストールできます。

  2. 02

    問い合わせる

    Mac全体はvitals status、今日CPUを最も多く使ったものはvitals top cpu day、リッスン中のポートはvitals ports、コーディングエージェントはvitals agents、AIプランはvitals limits。vitals helpですべてのコマンドが一覧になり、man vitalsでそれぞれの説明を読めます。

  3. 03

    スクリプトで使う

    どのコマンドにも--jsonを付けてjqにパイプするか、表計算用に--csvを付けます。--watchは、Control-Cを押すまで2秒ごとに答えを更新します。

  4. 04

    必要ないものを停止する

    vitals can-quit --port 3000は、そのポートを何が使っていて、停止しても安全かを伝えます。vitals stop --port 3000はあなたの許可を得てから停止し、vitals stop --idleは誰も使っていない開発サーバをすべて停止します。

比較

コマンドライン:アクティビティモニタとVitals

比較の全体では、項目ごとに比べています。ここではコマンドラインに関する項目だけを載せています。

アクティビティモニタ Vitals
ターミナルで
アクティビティモニタtopとps、1行に1プロセス
Vitalsvitals、1行に1アプリ、ヘルパーも合算
ポート
アクティビティモニタlsofのあとでPIDを調べる
Vitalsvitals ports。プロジェクトと、誰が接続できるかも
コーディングエージェントとAIプラン
アクティビティモニタなし
Vitalsvitals agentsとvitals limits
過去
アクティビティモニタなし
Vitalsvitals historyとvitals top、最長1年分
スクリプト向け
アクティビティモニタ解析が必要なテキスト
VitalsすべてのコマンドでJSONとCSV
何かを停止する
アクティビティモニタkill、確認なし
Vitalsまず判断、次にあなたの許可

関連する用語

数値の意味を、アクティビティモニタ用語集から紹介します。

お問い合わせ

コマンドラインについて、購入前によく聞かれる質問。

Vitalsが動いている必要がありますか?

はい。コマンドは実行中のアプリに問い合わせます。アプリはすでに数値と履歴を記録しているので、問い合わせてもMacへの負荷はほとんどありません。Vitalsが動いていないときや、“AIアシスタントがVitalsに問い合わせることを許可”がオフのときは、コマンドがそう伝え、どうすればよいかを示します。

Homebrewでインストールするには?

brew install --cask foredotstudio/tap/vitalsを実行します。アプリがインストールされ、vitalsコマンド、そのマニュアルページ、zsh、bash、fish用のタブ補完がリンクされます。Vitalsは自分でアップデートするので、brew upgradeの対象にはなりません。

すでにVitalsを使っています。コマンドはどうすれば使えますか?

“設定”→“連携”で“AIアシスタントがVitalsに問い合わせることを許可”をオンにします。VitalsがvitalsをPATH上の/opt/homebrew/binまたは/usr/local/binにリンクし、そこにある“ターミナル”セクションに場所が表示されます。フォルダにパスワードが必要な場合は、“インストール”ボタンで一度だけ入力を求められます。

AIエージェントも使えますか?

はい。シェルを使えるエージェントならvitalsを実行して答えを読めます。パイプでは何も切り詰められません。ただし、人の判断が必要なものは停止できません。確認するためのターミナルがなければ、--yesを付けても拒否されます。

MCPサーバとは何が違いますか?

アプリへの接続は同じで、答えも同じです。コマンドにはquitとstopが加わり、ターミナルであなたに確認します。MCPで話すアシスタントは、代わりにVitals専用のウインドウで確認を求めます。そのサーバがvitals mcpです。

無料の試用期間でも使えますか?

はい。試用期間中は、コマンドも含めてVitalsのすべての機能が使えます。

タブ補完が使えるシェルは?

zsh、bash、fishです。アプリ名は実行中のものから補完されます。zshとfish用は、Vitalsがコマンドと一緒にインストールします。bashでは、.bashrcにeval "$(vitals completions bash)"を追加してください。Homebrewなら3つともインストールされます。

関連情報

これを使うガイドと、同じ目的で買われるアプリとVitalsの比較。

Vitalsのほかの機能

すべての機能

発売記念価格のあいだ、Lifetimeが$15

この価格は残り50本です。 その後は$39。1年間のアップデートなら$9。買い切りで、14日間の返金保証付き。

Vitalsを購入 $15