あなたの作業をマップに加える

Claude Code の設定に3つの hook を追加すると、セッションの開始、送信したメッセージ、ターンごとのトークン数が匿名で記録されます。セッション数だけでなく、長い作業の中の実際の負荷もマップに反映されます。参加は任意で、数行削除すれば無効になります。

1. hook をインストール

方法 A:Claude Code に任せるいちばん簡単

プロンプトをコピーして Claude Code に送ってください。エージェントがスクリプトをダウンロードして内容を見せ、設定をバックアップし、古い Hourglyph の hook があれば置き換え、新しいエントリを既存の設定にマージして diff を表示します。ファイルを書き込む前に Claude Code が許可を求めます。

このマシンの Claude Code に Hourglyph の hooks を設定してください(https://hourglyph.github.io/ja/setup/)。

目的:セッションの開始時刻、メッセージを送信した時刻、ターンごとのトークン数を、ピーク時間マップに匿名で送信すること。メッセージのテキスト、応答、コード、パスは送信しません。

手順:
1. スクリプトをダウンロードし、先に進む前に内容をすべて見せてください:
   mkdir -p ~/.claude/hooks && curl -fsSL https://hourglyph.github.io/hook/hourglyph.sh -o ~/.claude/hooks/hourglyph.sh
   (GitHub のソース:https://github.com/hourglyph/hourglyph.github.io/blob/main/public/hook/hourglyph.sh)。イベント名と4つのトークン数を送る以外に何もしていないことを確認してください。
2. ~/.claude/settings.json を読み込みます(ファイルがなければ {} とみなす)。ファイルがある場合は、まず ~/.claude/settings.json.bak にバックアップしてください。
3. 重複しないよう、hooks から古い Hourglyph のエントリ("hourglyph.sh" / "rpc/checkin" を含むコマンド)をすべて削除してください。
4. 上書きではなくマージしてください。ほかの設定と hook はすべて残し、hooks.SessionStart・hooks.UserPromptSubmit・hooks.Stop の各配列(なければ作成)に次の要素をそのまま追加します:

{
  "SessionStart": [
    {
      "matcher": "startup",
      "hooks": [
        {
          "type": "command",
          "command": "sh \"$HOME/.claude/hooks/hourglyph.sh\" session",
          "async": true
        }
      ]
    }
  ],
  "UserPromptSubmit": [
    {
      "hooks": [
        {
          "type": "command",
          "command": "sh \"$HOME/.claude/hooks/hourglyph.sh\" message",
          "async": true
        }
      ]
    }
  ],
  "Stop": [
    {
      "hooks": [
        {
          "type": "command",
          "command": "sh \"$HOME/.claude/hooks/hourglyph.sh\" stop",
          "async": true
        }
      ]
    }
  ]
}

5. 有効な JSON としてファイルを書き戻し、読み直してパースできることを確認してください。
6. curl と awk が使えるか確認してください(command -v curl awk)。
7. diff を見せ、すべてを削除する方法を教えてください:settings.json からこの3つのエントリを消し、~/.claude/hooks/hourglyph.sh ファイルを削除する。またはコマンド1つで:curl -fsSL https://hourglyph.github.io/hook/uninstall.sh | sh

それ以外は何も変更しないでください。データは次の新しいセッションから送信されます。

方法 B:手動で設定

スクリプトをダウンロードします(GitHub でソースを見る、sh + awk で65行):

mkdir -p ~/.claude/hooks && curl -fsSL https://hourglyph.github.io/hook/hourglyph.sh -o ~/.claude/hooks/hourglyph.sh

次に hooks ブロックを ~/.claude/settings.json に追加します(既存のものがあればマージ)。rpc/checkin を使う古い hook があれば削除してください。

{
  "hooks": {
    "SessionStart": [
      {
        "matcher": "startup",
        "hooks": [
          {
            "type": "command",
            "command": "sh \"$HOME/.claude/hooks/hourglyph.sh\" session",
            "async": true
          }
        ]
      }
    ],
    "UserPromptSubmit": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "sh \"$HOME/.claude/hooks/hourglyph.sh\" message",
            "async": true
          }
        ]
      }
    ],
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "sh \"$HOME/.claude/hooks/hourglyph.sh\" stop",
            "async": true
          }
        ]
      }
    ]
  }
}

2. 送信される内容

Hookタイミング送信内容
SessionStart新しいセッションの開始{"p_event":"session"}
UserPromptSubmitメッセージを送信したとき{"p_event":"message"} — テキストなし
StopClaude が応答を終えたとき4つの整数:入力・出力・キャッシュ書き込み・キャッシュ読み取りのトークン数

3. 動作確認

新しいターミナルで claude を起動してメッセージを送り、1分ほど待ってからマップを開くと、メッセージとトークンのカウンターが増えています。有効な hook は /hooks コマンドで確認できます。

無効にする方法

コマンド1つで ~/.claude/settings.json から Hourglyph のエントリだけを削除し(バックアップは settings.json.hourglyph-bak)、スクリプト本体も削除します。ほかの hook や設定はそのまま残ります。GitHub でソースを見る。

curl -fsSL https://hourglyph.github.io/hook/uninstall.sh | sh

python3 か node が必要です。どちらもない場合は何も変更せず、手動で削除すべき箇所を表示します。

または Claude Code に頼む

このマシンの Claude Code から Hourglyph の hooks を削除してください(https://hourglyph.github.io/ja/setup/)。

1. ~/.claude/settings.json を ~/.claude/settings.json.hourglyph-bak にバックアップしてください。
2. hooks から Hourglyph のエントリ("hourglyph.sh" / "rpc/checkin" を含むコマンド)だけを削除してください。ほかの hook と設定はそのまま残し、空になったグループやイベントは削除します。
3. 有効な JSON としてファイルを書き戻し、読み直してパースできることを確認してください。
4. ~/.claude/hooks/hourglyph.sh ファイルを削除してください。
5. diff を見せてください。

手動で削除

~/.claude/settings.json から hourglyph.sh を含む3つのエントリを削除し、~/.claude/hooks/hourglyph.sh ファイルも削除してください。送信済みのデータは匿名で、あなたとは結び付いていません。

注意事項