jpskill.com
💬 コミュニケーション コミュニティ

gasp-diagnostics

ユーザーがLinuxシステムのパフォーマンスについて質問したり、システムチェックを依頼したりした場合に、GASPを用いてシステム診断を行い、必要に応じてHTTP経由でメトリクスを取得したり、JSON出力を解析したりするSkill。

📜 元の英語説明(参考)

System diagnostics using GASP (General AI Specialized Process monitor). Use when user asks about Linux system performance, requests system checks, mentions GASP, asks to diagnose hosts, or says things like "check my system" or "what's wrong with [hostname]". Can actively fetch GASP metrics from hosts via HTTP or interpret provided JSON output.

🇯🇵 日本人クリエイター向け解説

一言でいうと

ユーザーがLinuxシステムのパフォーマンスについて質問したり、システムチェックを依頼したりした場合に、GASPを用いてシステム診断を行い、必要に応じてHTTP経由でメトリクスを取得したり、JSON出力を解析したりするSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o gasp-diagnostics.zip https://jpskill.com/download/16968.zip && unzip -o gasp-diagnostics.zip && rm gasp-diagnostics.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/16968.zip -OutFile "$d\gasp-diagnostics.zip"; Expand-Archive "$d\gasp-diagnostics.zip" -DestinationPath $d -Force; ri "$d\gasp-diagnostics.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して gasp-diagnostics.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → gasp-diagnostics フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
5

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

GASP Diagnostics

GASP の AI 最適化された監視出力を使用して、包括的な Linux システム診断を有効にします。ホストからメトリクスを積極的に取得し、コンテキストを考慮した解釈によるインテリジェントな分析を提供します。

GASP メトリクスの取得

ユーザーがホストに言及したり、システムチェックを要求した場合:

  1. メトリクスエンドポイントを取得

    web_fetch("http://{hostname}:8080/metrics")
  2. サポートされているホスト名の形式

    • mDNS/ローカル: accelerated.local, hyperion.local
    • DNS 名: proxmox1, dev-server, workstation
    • IP アドレス: 192.168.1.100
  3. デフォルトポート: 8080 (ユーザーが特に指定しない限り)

  4. エラー処理

    • ホストに到達不能: ユーザーに通知し、GASP が実行されているか確認することを提案
    • ポートが閉じている/拒否された: ホストで systemctl status gasp を提案してみる
    • JSON パースエラー: GASP がインストールされていないか、エンドポイントが間違っている可能性があります
    • タイムアウト: ネットワークの問題またはホストダウン
  5. 複数ホストのクエリ: ユーザーが複数のホストに言及した場合、それぞれを順番に取得して比較

クイック診断ワークフロー

システムチェックのリクエストの場合:

  1. 指定されたホストからメトリクスを取得
  2. 最初にサマリーを確認: summary.healthsummary.concerns[] を確認
  3. 以下のメトリックの相関関係を使用して問題を特定
  4. 重大度と具体的な推奨事項とともに結果を報告

トリガーの例

これらのユーザーメッセージは、このスキルとアクティブな取得をトリガーする必要があります。

  • "Check hyperion for me"
  • "What's going on with accelerated.local?"
  • "Is proxmox1 having issues?"
  • "Compare hyperion and proxmox1"
  • "Why is my system slow?" (localhost を取得)
  • "Diagnose 192.168.1.50"
  • "Check all my proxmox nodes"

メトリックの解釈

Health Summary

  • summary.health: 簡単な評価
    • "healthy": アクションは不要
    • "degraded": 問題は存在するが、重大ではない
    • "critical": 直ちに対応が必要
  • summary.concerns[]: 最初に調査する事前分析された問題
  • summary.recent_changes[]: 現在の状態のコンテキスト

CPU 分析

負荷率 = load_avg_1m / cores:

  • < 0.7: 通常の使用状況
  • 0.7-1.0: ビジーだが正常
  • 1.0-2.0: 飽和状態 (遅延の原因となる可能性あり)
  • > 2.0: 深刻な過負荷

主要な指標:

  • trend: 現在の負荷が許容範囲内であっても、"increasing" は懸念される
  • baseline_load: ベースラインからのデルタは、絶対値よりも重要
  • top_processes[]: 予期しない CPU ホグを確認

メモリ分析

危険信号 (優先順位):

  1. oom_kills_recent > 0: CRITICAL - システムがプロセスを強制終了しました。すぐにメモリホグを見つけてください
  2. swap_used_mb > 0: パフォーマンスの低下が進行中
  3. pressure_pct > 5%: システムはメモリ競合に苦労しています
  4. usage_percent > 90%: 制限に近づいています

重要: Linux はキャッシュにメモリを使用するため、usage_percent が高いだけでは正常です。プレッシャーとスワップに焦点を当ててください。

ディスク I/O

飽和指標:

  • io_wait_ms > 10: 深刻なディスクボトルネック
  • queue_depth が一貫して高い: ディスクが追いついていない
  • 高い read_iops または write_iops で応答が遅い: ディスクのパフォーマンスの問題

ストレージ容量:

  • usage_percent > 90%: 容量不足
  • usage_percent > 95%: 致命的 - まもなく障害が発生します

ネットワーク

  • rx_bytes_per_sec / tx_bytes_per_sec: 予期しないトラフィックの急増を確認
  • errors > 0 または drops > 0: ネットワークハードウェア/構成の問題
  • 多数の time_wait 接続: 接続リークを示している可能性があります

プロセスインテリジェンス

  • zombie > 0: プロセスの管理バグ (通常は良性ですが、問題を示しています)
  • D state のプロセス: 割り込み不可能なスリープ状態 (ディスクまたはカーネルの問題)
  • new_since_last[]: 予期しないプロセスの生成を確認

Systemd サービス

  • units_failed > 0: failed_units[] 配列を確認
  • recent_restarts[]: 不安定性を示している可能性があります

ログサマリー

  • errors_last_interval: エラー率の上昇は問題を示しています
  • message_rate_per_min: スパイクはロギングストームまたは深刻な問題を示唆しています
  • 特定の問題について recent_errors[] を確認

デスクトップメトリクス (存在する場合)

  • gpu.utilization_pct vs CPU: GPU バウンドのワークロードと CPU バウンドのワークロードを識別
  • gpu.temperature_c > 85: サーマルスロットリングの可能性が高い
  • active_window: リソース使用状況のコンテキストを提供

一般的なシステムパターン

開発ワークステーション (予想)

  • IDE、ブラウザからの高いメモリ使用量
  • Firefox/Chrome は、多くの場合、メモリ消費量の上位
  • CPU/メモリを使用する Docker デーモン
  • VSCode、JetBrains IDE が上位プロセス
  • ベースライン負荷: コアの 10 ~ 30%

コンテナホスト (予想)

  • 上昇したベースライン負荷 (多数のプロセス)
  • dockerd/containerd が上位プロセス
  • 50 ~ 70% のメモリ使用量は正常
  • 上位リストに多数のプロセス

Proxmox/仮想化ホスト (予想)

  • VM 数に比例するベースライン負荷
  • 一貫した低レベルのリソース使用量
  • Proxmox 自体のオーバーヘッドは約 2GB
  • 複数の QEMU/KVM プロセス

GPU ワークロード (予想)

  • CPU が低い状態で高い GPU 使用率
  • 重要な GPU メモリ使用量
  • 一般的な用途: レンダリング、ML 推論、ゲーム

複数ホスト分析

複数のホストをチェックする場合:

  1. 最初にすべてのホストを取得 (並列思考)
  2. ベースラインを比較: 外れ値を特定
  3. 相関関係を探す: ネットワークイベント vs 個々のホストの問題
  4. recent_changes を確認: 移行、デプロイメント、パッケージの更新
  5. 異質なものを特定: どのホストがパターンと異なりますか?

分析パターンの例:

Host 1: Load 2.1/8 cores (26%), normal
Host 2: Load 7.8/8 cores (97%), ATTENTION NEEDED  ← outlier
Host 3: Load 1.9/8 cores (24%), normal

Focus on Host 2 - investigate top_processes

診断戦略

"システムが遅い"

  1. 負荷率を確認 (CPU 飽和状態?)
  2. io_wait を確認 (ディスクボトルネック?)
  3. メモリプレッシャーを確認 (スワップ?)
  4. 関連するカテゴリで上位の消費者を特定
  5. 消費量がそのプロセスで予想されるかどうかを評価

"メモリ使用量が多い"

  1. まず: pressure_pct を確認 (実際の問題か、単なるキャッシュ?)
  2. swap_used_mb を確認 (実際の問題?)
  3. 上位のメモリ消費者を検索
  4. プロセスの稼働時間を確認 (リークまたは正常?)
  5. ベースラインと比較 (デルタ
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

GASP Diagnostics

Enables comprehensive Linux system diagnostics using GASP's AI-optimized monitoring output. Actively fetches metrics from hosts and provides intelligent analysis with context-aware interpretation.

Fetching GASP Metrics

When user mentions a host or requests a system check:

  1. Fetch the metrics endpoint

    web_fetch("http://{hostname}:8080/metrics")
  2. Hostname formats supported

    • mDNS/local: accelerated.local, hyperion.local
    • DNS names: proxmox1, dev-server, workstation
    • IP addresses: 192.168.1.100
  3. Default port: 8080 (unless user specifies otherwise)

  4. Error handling

    • Host unreachable: Inform user, suggest checking if GASP is running
    • Port closed/refused: Try suggesting systemctl status gasp on the host
    • JSON parse error: GASP may not be installed or wrong endpoint
    • Timeout: Network issue or host down
  5. Multi-host queries: If user mentions multiple hosts, fetch each in sequence and compare

Quick Diagnosis Workflow

For any system check request:

  1. Fetch metrics from specified host(s)
  2. Check summary first: Look at summary.health and summary.concerns[]
  3. Identify issues using metric correlations below
  4. Report findings with severity and specific recommendations

Trigger Examples

These user messages should trigger this skill and active fetching:

  • "Check hyperion for me"
  • "What's going on with accelerated.local?"
  • "Is proxmox1 having issues?"
  • "Compare hyperion and proxmox1"
  • "Why is my system slow?" (fetch localhost)
  • "Diagnose 192.168.1.50"
  • "Check all my proxmox nodes"

Metric Interpretation

Health Summary

  • summary.health: Quick assessment
    • "healthy": No action needed
    • "degraded": Issues present but not critical
    • "critical": Immediate attention required
  • summary.concerns[]: Pre-analyzed issues to investigate first
  • summary.recent_changes[]: Context for current state

CPU Analysis

Load ratio = load_avg_1m / cores:

  • < 0.7: Normal usage
  • 0.7-1.0: Busy but healthy
  • 1.0-2.0: Saturated (may cause slowness)
  • > 2.0: Severe overload

Key indicators:

  • trend: "increasing" is concerning even if current load is acceptable
  • baseline_load: Delta from baseline is more important than absolute value
  • top_processes[]: Check for unexpected CPU hogs

Memory Analysis

Red flags (priority order):

  1. oom_kills_recent > 0: CRITICAL - system killed processes, find memory hog immediately
  2. swap_used_mb > 0: Performance degradation in progress
  3. pressure_pct > 5%: System struggling with memory contention
  4. usage_percent > 90%: Getting close to limits

Important: Linux uses memory for cache, so high usage_percent alone is normal. Focus on pressure and swap.

Disk I/O

Saturation indicators:

  • io_wait_ms > 10: Significant disk bottleneck
  • queue_depth consistently high: Disk can't keep up
  • High read_iops or write_iops with slow response: Disk performance issue

Storage capacity:

  • usage_percent > 90%: Running out of space
  • usage_percent > 95%: Critical - will cause failures soon

Network

  • rx_bytes_per_sec / tx_bytes_per_sec: Check for unexpected traffic spikes
  • errors > 0 or drops > 0: Network hardware/configuration issue
  • Large number of time_wait connections: May indicate connection leak

Process Intelligence

  • zombie > 0: Process management bug (usually benign but indicates issue)
  • Processes in D state: Stuck in uninterruptible sleep (disk or kernel issue)
  • new_since_last[]: Check for unexpected process spawning

Systemd Services

  • units_failed > 0: Check failed_units[] array
  • recent_restarts[]: May indicate instability

Log Summary

  • errors_last_interval: Elevated error rate indicates problems
  • message_rate_per_min: Spikes suggest logging storm or serious issue
  • Review recent_errors[] for specific problems

Desktop Metrics (when present)

  • gpu.utilization_pct vs CPU: Identify GPU-bound vs CPU-bound workloads
  • gpu.temperature_c > 85: Thermal throttling likely
  • active_window: Provides context for resource usage

Common System Patterns

Development Workstation (Expected)

  • High memory usage from IDEs, browsers
  • Firefox/Chrome often in top memory consumers
  • Docker daemon using CPU/memory
  • VSCode, JetBrains IDEs in top processes
  • Baseline load: 10-30% of cores

Container Host (Expected)

  • Elevated baseline load (many processes)
  • dockerd/containerd in top processes
  • 50-70% memory usage normal
  • Many processes in top list

Proxmox/Virtualization Host (Expected)

  • Baseline load proportional to VM count
  • Consistent low-level resource usage
  • ~2GB overhead for Proxmox itself
  • Multiple QEMU/KVM processes

GPU Workload (Expected)

  • High GPU utilization with lower CPU
  • Significant GPU memory usage
  • Common for: rendering, ML inference, gaming

Multi-Host Analysis

When checking multiple hosts:

  1. Fetch all hosts first (parallel thinking)
  2. Compare baselines: Identify outliers
  3. Look for correlations: Network event vs individual host issue
  4. Check recent_changes: Migrations, deployments, package updates
  5. Identify the odd one out: Which host differs from the pattern?

Example analysis pattern:

Host 1: Load 2.1/8 cores (26%), normal
Host 2: Load 7.8/8 cores (97%), ATTENTION NEEDED  ← outlier
Host 3: Load 1.9/8 cores (24%), normal

Focus on Host 2 - investigate top_processes

Diagnosis Strategies

"System is slow"

  1. Check load ratio (CPU saturation?)
  2. Check io_wait (disk bottleneck?)
  3. Check memory pressure (swapping?)
  4. Identify top consumer in relevant category
  5. Assess if consumption is expected for that process

"High memory usage"

  1. First: Check pressure_pct (real issue or just cache?)
  2. Check swap_used_mb (actual problem?)
  3. Find top memory consumers
  4. Check process uptime (leak or normal?)
  5. Compare to baseline (delta more important than absolute)

"Unexpected behavior"

  1. Check recent_changes for clues
  2. Review systemd failed units
  3. Check recent_errors in logs
  4. Look for new processes since last snapshot
  5. Compare current metrics to baseline

Reporting Guidelines

When reporting findings:

  1. Start with verdict: "Healthy", "Issue found", "Critical problem"
  2. Be specific: Name the process/service causing issues
  3. Provide context: Is this expected for this host type?
  4. Give actionable recommendations: What should user do?
  5. Include relevant metrics: Back up findings with data

Good example:

"Issue found on accelerated.local: Memory pressure at 8.2%. The postgres container started swapping 2 hours ago and is now using 12GB RAM (up from 4GB baseline). This likely indicates a query leak. Recommend checking recent queries and restarting the container."

Bad example:

"Memory usage is high. You might want to look into it."

Advanced Diagnostics

For complex issues or when initial analysis is unclear, consult:

Using with Provided JSON

If user pastes GASP JSON instead of requesting a fetch:

  1. Analyze the provided JSON using all guidance above
  2. Don't attempt to fetch (data already provided)
  3. Apply same interpretation and reporting guidelines

同梱ファイル

※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。