ClawMonitor — OpenClaw セッション監視ツール

Tool

概要

ClawMonitor は OpenClaw を使う運用チーム向けのセッション監視ツールです。各セッションについて「最新のユーザー発話」と「最新のアシスタント応答」をタイムスタンプ付きで可視化し、セッションのワーク状態(WORKING / FINISHED / INTERRUPTED / NO_MESSAGE)を一覧で把握できます。ログのロック付き JSONL(*.jsonl.lock)を利用することで、Gateway がダウンしていても長時間の稼働状況を後追いで確認可能。オプションで Gateway ログの追尾(tail)や、Feishu/Telegram 向けの相関ルールを使ったチャネルランタイムスナップショット表示も行えます。テキストベースのフルスクリーンTUIを備え、必要に応じてオペレータが“nudge”して手動でメッセージを送ることも可能です。

GitHub

リポジトリの統計情報

  • スター数: 9
  • フォーク数: 0
  • ウォッチャー数: 9
  • コミット数: 17
  • ファイル数: 9
  • メインの言語: Python

主な特徴

  • 各セッションごとの直近ユーザー発話とアシスタント応答をプレビュー+タイムスタンプで表示
  • セッションのワーク状態(WORKING / FINISHED / INTERRUPTED / NO_MESSAGE)を一覧で監視
  • *.jsonl.lock を用いた長期可視化(Gateway が落ちている場合でも動作)
  • Gateway ログの tail とチャネル実行スナップショットの相関(Feishu/Telegram 向けルール)、フルスクリーン TUI と手動 nudge 機能

技術的なポイント

ClawMonitor は Python ベースで、主にファイル監視とリアルタイム表示を組み合わせたアーキテクチャになっています。監視対象は OpenClaw が出力する JSONL 形式のセッションログやロックファイル(*.jsonl.lock)で、これらをポーリングやファイルイベント検知で読み取り、最新のユーザー/アシスタント発話を抽出します。ロック付き JSONL を意識している点がミソで、Gateway や他プロセスが不安定な環境でも途中までのログを安全に解析し、長時間運転の可視化が可能です。

また、Gateway のログを tail して取得した出力とセッションログをタイムスタンプで突き合わせる相関機能を持ち、Feishu や Telegram といったチャネルごとに定義されたルールにより「どのチャネルでどのイベントが発生したか」をわかりやすく提示できます。これにより、外部チャネルでのメッセージ到達やエラーの原因追跡が容易になります。

表示部分はターミナル向けのフルスクリーン TUI(テキストユーザーインターフェース)で、一覧性を重視した UI により多数のセッションを同時管理できます。TUI からはオペレータが手動で“nudge”(例:リマインド用の短いメッセージや再試行コマンド)を送信でき、介入が必要なセッションに対して即応できます。設計上は軽量で依存を抑えつつ、ログファイルの堅牢な取り扱いとチャネル相関のルールベース処理を両立している点が特徴です。

内部では JSONL のパース、タイムスタンプの正規化、ワークステータス判定ロジック(最後のメッセージ時刻やエラーフラグに基づく)といったモジュールが分離されており、将来的な拡張(新チャネルのルール追加や外部ダッシュボード連携)を想定した作りになっています。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .gitignore: file
  • CONTRIBUTORS.md: file
  • LICENSE: file
  • README.md: file
  • README.zh-CN.md: file

…他 4 ファイル

(注:実装ファイルは Python ベースで、ログ解析・表示・相関ルールを担うスクリプト群が含まれます。README に使用方法や設定例、運用時の注意が記載されています。)

まとめ

OpenClaw 運用のログ可視化とトラブルシューティングを効率化する実用的な監視ツールです。

リポジトリ情報:

READMEの抜粋:

ClawMonitor

English | 简体中文

Real-time OpenClaw session monitor with:

  • Per-session last inbound user message + last outbound assistant message (preview + timestamp)
  • Work state: WORKING / FINISHED / INTERRUPTED / NO_MESSAGE (+ NO_FEEDBACK alert)
  • Long-run visibility via *.jsonl.lock (works even if Gateway is down)
  • Optional Gateway log tail + channel runtime snapshot correlation (Feishu/Telegram-focused rules)
  • Full-screen TUI with manual “nudge” (send a …