Claude Code Hooks運用|SessionStart hook で作業時間を自動記録する仕組み|配送業40代の実戦記録

Claude Code Hooks運用|SessionStart hook で作業時間を自動記録する仕組み|配送業40代の実戦記録

副業ブログを2週間続けた結果、ある気づきがありました。

いつ・何時間・何をしたか が記録されてないと、振り返りができない」

手動で記録するとほぼ挫折します(私は3日で挫折しました)。

そこで使ったのが、Claude Code の Hooks(フック)機能。Claude Code を起動した瞬間に作業ログが 自動記録 される仕組みを作りました。

この記事では、プログラミング未経験の私が実際に使っている SessionStart hook の全コード を公開します。コピペで動きます。

※ hook で「完了音を鳴らす」Tips は他にもありますが、この記事は作業時間が”振り返れる資産”になる hook の実戦記録です。音を鳴らす話ではなく、続けるための仕組みの話をします。

シンラボくん

シンラボくん
仕組み化って、最初は難しそうですが、コピペで早ければ5〜10分で導入できます。

目次

🚀 30秒で読める要約

  • ✅ Claude Code には「複数の hook(フック)=自動実行ポイント」がある
  • SessionStart hook で作業時間を自動記録できる(手動記録は時間が足りない)
  • ✅ 必要なのは settings.json(Claude Codeの設定ファイル)に10行のコードを追記するだけ
  • ✅ コピペで早ければ5〜10分・プログラミング未経験でも導入できる
  • ✅ 月別ファイルに自動的に開始時刻が積み重なる(作業内容と終了時刻は、あとでClaudeに追記してもらう)
  • コードを書きたくない人は、後述の【コピペプロンプト】をClaude Codeに投げるだけでOK
シンラボくん

シンラボくん
「コードって難しそう…」と感じても大丈夫。分からないところは「クロに聞いてOK」です。Claude Codeに聞きながら、一つずつ確認できます。

Claude Code Hooks とは何か

📌 30秒要約

hook(フック)=Claude Codeが特定のタイミングで自動的にコマンドを実行する仕組み。AIの判断は入らず「条件が揃えば自動的に動く」シンプルな決定的動作です。

Claude Code には複数の hook(フック)が用意されています。

hook = 「特定のタイミングで自動実行される仕組み(自動実行ポイント)」
Git hooks の AI版・Claude Code が動いた瞬間に裏でコマンドを動かせます。

この記事で扱うのは SessionStart hook だけ

Claude Code には複数のhookが用意されていますが、種類や仕様はバージョンで変わる可能性があります。この記事では、作業開始時に動く「SessionStart hook」1つに絞って解説します(その他のhookやクラウド側の自動化は仕様変更があり得るため、公式ドキュメントを確認のうえ別記事で扱います)。

1つに絞るのは、初心者がいきなり複数のhookを触ると混乱しやすいからです。まず「起動したら作業ログが1行残る」だけを動かせれば、それで十分に価値があります。

hookは「決定的(AIじゃない)」

hook は 決定的なコマンド実行(AIの判断は入らない)。
Git hooks と同じく、「条件 → 自動的に実行」のシンプルな仕組みです。

つまり「AIが気まぐれに動かなかった」ということは起こりません。条件が揃えば自動で動きます。

シンラボくん

シンラボくん
「AIだから、たまに動かないんじゃない?」と心配しなくて大丈夫。hookは完全に決定的な動きです。私も毎朝、作業ログにきちんと記録されていることを確認できています。

なぜ SessionStart hook で作業ログを取るのか

📌 30秒要約

振り返りがあった方がモチベーションにつながると思いました。手動記録は時間が足りません。SessionStart hook で自動化すればゼロ工数で蓄積できます。

振り返りがあるとモチベーションにつながる

副業ブログは、本業(私の場合は配送業)の合間に作業します。1日30分〜2時間の隙間時間。

シンラボくん

シンラボくん
作業実績の記録があるとモチベーション上がります。

「いつ・何時間・何をしたか」が記録されていれば:

  • 月集計で「先月20時間頑張った」と確認できる
  • 「3時間やったから今日はゆっくり休もう」と決められる
  • note 記事の素材として「実働時間」がそのまま使える
  • 副業の収益化への軌跡がそのまま残る

手動記録は時間が足りない

「Excel に毎日書く」「ノートに書く」 → 記録に時間が取られて、本来の作業時間が足りなくなりませんか?

自動化すればゼロ工数で蓄積される のが hook の威力です。

あなたが副業ブログを続けたいなら、最初に仕組み化すべきはこの「作業ログの自動記録」だと感じています。


自分で書くのが難しい方へ:コピペで使える完成プロンプト

📌 30秒要約

下のプロンプトをそのまま Claude Code に貼り付けて送信するだけ。設定ファイルへの追記から動作確認まで全部代行してくれます。コードを1行も書く必要はありません。

「コードを自分で書くのは難しそう…」と感じる方へ。安心してください。Claude Code に丸ごとお願いするための完成プロンプトを用意しました。

💡 コピペ用プロンプト

> 私はプログラミング未経験です。
> Claude Code の SessionStart hook を使って、
> 作業時間を自動記録する仕組みを導入したいです。
>
> 以下を全部代行してください:
>
> 1. ~/.claude/settings.json を確認(なければ新規作成)
> 2. SessionStart hook を追記
>    (時刻を「- 開始:HH:MM」形式で月別ファイルに記録)
> 3. 作業ログの保存先:~/Documents/[ブログ名]/worklog/$(date +%Y-%m).md
> 4. 必要なディレクトリが無ければ作成
> 5. 設定後、Claude Code を再起動して動作確認
> 6. うまく動かない場合のトラブルシュート方法も教えてください
>
> 「ブログ名」の部分は、私と相談して決めてください。
> ```

このプロンプトを そのまま Claude Code(クロ)に投げるだけで、settings.json への追記から動作確認の方法まで、全部代行してくれます。

シンラボくん

シンラボくん
私(プログラミング未経験40代)も最初はこの「丸投げ」スタイルで導入しました。コードの中身を理解しなくても動きます。理解したい人だけ、続きを読んでください。

コードの中身を理解したい方へ

「Claudeに丸投げ」で十分ですが、「中身を理解して自分でも書けるようになりたい」という方向けに、以下に全コードと解説を載せます。


実装する settings.json の全コード

📌 30秒要約

Claude Code の設定ファイル settings.json10行のJSONを追記するだけ。コピペで動きます。月別ファイル(2026-05.md 等)が自動生成され、起動時刻が記録されていきます。

ここからは実際のコードです。

設定ファイルの場所

Claude Code の設定ファイル(settings.json)は以下の場所にあります:

~/.claude/settings.json

~/ は「ホームディレクトリ(ユーザーフォルダ)」のことです。Macなら /Users/USERNAME/ に展開されます。

全コード(コピペで動きます)

{
  "hooks": {
    "SessionStart": [
      {
        "matcher": "*",
        "hooks": [
          {
            "type": "command",
            "command": "echo \"- 開始:$(date +%H:%M)\" >> ~/Documents/MyBlog/worklog/$(date +%Y-%m).md"
          }
        ]
      }
    ]
  }
}

各部分の意味

部分 意味
"hooks" hook の設定をここに書きますよ、という宣言
"SessionStart" 複数あるhookのうち「起動時」に動くものを選択
"matcher": "*" すべてのセッションで動かす(特定のプロジェクトだけにも絞れます)
"type": "command" 「コマンドを実行する」タイプ
"command": "..." 実際に動かすシェルコマンド
echo "- 開始:$(date +%H:%M)" 現在の時刻を「- 開始:07:30」の形で出力
>> ~/Documents/.../作業ログ/$(date +%Y-%m).md 月別ファイル(2026-05.md)に追記する

$(date +%Y-%m) の部分が月ごとに変わるので、月が変われば自動で新しいファイルが作られます。

シンラボくん

シンラボくん
このコード、最初に見るとパッと分からなくて当然です。「このコードの意味を1行ずつ解説して」と Claude Code に投げれば、丁寧に教えてくれます。私も最初はそうしました。

パスはあなたの環境に合わせて変える

~/Documents/MyBlog/worklog/ の部分はパスの一例です。

あなたが使う時は、自分の作業ログ保存先に変えてください。例:

~/Documents/MyBlog/worklog/

ディレクトリは事前に作っておく必要があります(mkdir -p ~/Documents/MyBlog/worklog/ で作成可能)。

シンラボくん

シンラボくん
パスや書き換え部分が分からない時は、「私の環境用に書き換えて」とクロに頼めばOK。一行ずつあなた専用の設定にしてくれます。

実際の作業ログのサンプル

📌 30秒要約

月別ファイル(例:2026-05.md)に時刻が自動で積み重なります。終了時刻と作業内容は Claude(クロ)が締めてくれます。

実際に蓄積されている作業ログはこんな感じです:

# 2026年5月 作業ログ

## 5/8(水)
- 開始:07:30
- 内容:note01「Claude Code 22ルール」最終推敲
- 終了:09:15
- 実働:1時間45分

## 5/9(木)
- 開始:05:50
- 内容:X 投稿テスト・引用RP戦略検討
- 終了:07:00
- 実働:1時間10分

## 5/10(金)
- 開始:06:15
- 内容:記事⑦執筆+メモリ拡張15本
- 終了:13:30
- 実働:7時間15分(途中昼休憩45分)

終了時刻と内容は Claude が締める

開始時刻は hook で自動記録されますが、終了時刻と作業内容は Claude(クロ)に締めてもらっています。

シンラボくん

シンラボくん
「今日の作業終わるよ」と言うと、Claude が 作業ログに終了時刻と内容を追記してくれます。この部分も「クロに聞いてOK」です。

月集計で振り返り

月末には Claude に「今月の作業ログ集計して」と頼めば、合計時間・記事本数・主なトピックを集計してくれます。「先月60時間頑張った」と数字で見えると、続けるモチベーションになると感じています。


応用:他のhookで何ができるか

📌 30秒要約

SessionStart 以外にも、PreToolUse(危険コマンドのブロック)・PostToolUse(ファイル編集後の通知)・Stop(セッション終了通知)など、4つの応用があります。

PreToolUse:危険なコマンドをブロック

"PreToolUse": [
  {
    "matcher": "Bash",
    "hooks": [
      {
        "type": "command",
        "command": "if echo \"$TOOL_INPUT\" | grep -q 'rm -rf'; then echo 'BLOCKED: rm -rf detected' && exit 1; fi"
      }
    ]
  }
]

rm -rf(フォルダごと一括削除する危険コマンド)が出たらブロックします。

PostToolUse:ファイル編集後の自動lint

ファイル書き込み後に自動で構文チェック(lint=コードの書き間違いチェック)を走らせる仕組みです。

Stop:セッション終了時の Slack/Discord 通知

"Stop": [
  {
    "hooks": [
      {
        "type": "command",
        "command": "curl -X POST https://hooks.slack.com/services/XXX -d '{\"text\":\"作業終了 $(date)\"}'"
      }
    ]
  }
]

セッションを終えると Slack に「作業終了」が飛びます。家族や仲間に「今ブログ作業終わった」と自動で伝わる仕組みも作れます。

クラウド側の定期実行(Routines等)について

※ Routines などクラウド側の自動化機能は、仕様変更があり得るため、本記事では深入りしません。公式情報を確認したうえで別記事で扱う予定です。まずはローカルで完結する SessionStart hook から始めるのが、初心者には一番安全で確実です。


hookのデバッグ方法

📌 30秒要約

動かない時のチェックは「権限・パス・コマンド構文」の3点。bash で直接コマンドを叩いて動作確認するのが基本です。

動かない時のチェックポイント

  1. パスが正しいか:書き込み先のディレクトリが事前に存在しているか
  2. 権限があるか:書き込み先に書き込み権限があるか
  3. コマンドが正しいか:シェルでそのまま動かしてみて結果が出るか

コマンド単体で動作確認

設定ファイルに書く前に、コマンドだけターミナルで叩いてみてください:

echo "- 開始:$(date +%H:%M)" >> ~/Documents/MyBlog/worklog/$(date +%Y-%m).md
cat ~/Documents/MyBlog/worklog/$(date +%Y-%m).md

ファイルに「- 開始:07:30」のような行が追加されていれば成功です。

シンラボくん

シンラボくん
エラーが出て分からない時は、エラーメッセージごとClaude Code にコピペして「これ何?」と聞けばOK。原因と修正案を出してくれます。

次に広げられるClaude Code活用

SessionStart hook に慣れたら、次の3つと組み合わせると活用の幅が広がります。いずれもこの記事の主題からは外れるので、それぞれ別記事で詳しく扱う予定です。

  • メモリ機能:過去の運用ルールを Claude が覚えた状態でセッションを始められる(→記事⑨で予定)
  • カスタムスキル:繰り返すタスクを /名前 で呼び出せる形にできる(→記事⑩で予定)
  • subagent:リサーチを別のClaudeに並列で投げ、メイン会話を汚さない(→記事⑯で予定)

まずは SessionStart hook 1つを動かすことに集中すれば、それだけで十分に価値があります。


私が hook を使い始めて変わったこと(失敗→AIに聞く→理解→今)

📌 30秒要約

手動の作業記録が続かず挫折 → AIに「自動でログを取れないか」と相談 → hookで解決 → 今は作業時間が”振り返れる資産”になっています。

読者「hookって難しそう。コード書けない自分でも続けられる?」
シンラボくん

シンラボくん
私もコードは書けません。設定ファイルはClaude Codeに書いてもらいました。どう辿り着いたか、4ステップで振り返ります。

STEP1:失敗 — 手動の作業記録が、まったく続かなかった

最初は「今日は何時間やった」をメモアプリに手で書いていました。でも本業から帰って疲れている日は、記録自体を忘れる。気づけば1週間分が空白で、振り返りようがありませんでした。

STEP2:AIに聞く — 「記録を自動でやれないか」と相談した

手動が続かないのを諦めて、Claude にそのまま聞きました。

「作業時間の記録が手動だと続きません。Claude Code を開いたら自動でログを残す方法はありますか?コードは書けません」

返ってきたのが「SessionStart hook を使えば、起動時に自動でログ行を追記できる」という答え。設定ファイルの中身も全部書いてくれました。

STEP3:一気に理解 — hook は「決まった処理を自動で挟む仕組み」

やり取りするうちに、hook は「特定のタイミングで、決まった処理を自動実行する仕組み」だと腑に落ちました。AIの気分で動くのではなく、毎回確実に動く。だから”記録し忘れ”が構造的にゼロになる、と理解できました。

STEP4:今の結論 — 作業時間が”振り返れる資産”になった

以前は「ブログ書いてる気はするけど、何時間やったか覚えてない」状態。hook を入れた後は、月ごとに正確な実働時間が分かります。先月(4月)は 約26時間 でした。「2週間で26時間も書いた、結果が出るまで続けよう」と思えています。

おまけ:3時間ブロックが意識できる

作業ログを見ると、自分の集中力のピーク時間帯がわかります。

  • 平日:本業(配送業)が終わった後、夕方16時〜19時の約3時間 が一番進む時間帯です。
  • 休みの日:朝〜午前中で 連続4〜5時間 まとめて取れます。記事1本仕上げる絶好のチャンスです。

ここに執筆を集中させるだけで、生産性がぐっと上がります。

変化③:仕組み化への原動力

2026年5月10日、SessionStart hook で作業時間を自動記録できる環境を活かして、たった4時間で「翌朝レポート Bot」を構築しました。

Bot が毎朝6時に X・GA4 のデータを集計してくれます。これは hook で土台を作っていなければ、構築する発想すら浮かばなかったと感じています。

シンラボくん

シンラボくん
仕組み化は、1つやると次のアイデアが浮かぶ連鎖反応があります。最初の1個(hook)から始めるのが一番ハードルが低いです。

22ルール × hook運用 = 仕組み化された副業ブログ

📌 30秒要約

note01「Claude Code 22ルール」と hook を組み合わせると、ルールが自動で守られる状態になり、副業ブログが「個人の頑張り」から「仕組みで回る装置」に進化します。

ルールだけだと忘れる・hook で強制力が生まれる

note01 で公開した「Claude Code 22ルール」は、Claude にどう動いてもらうかの設計書です。

ただ、ルールだけだと忘れる・守らないことが起きます。

hook を組み合わせると、「ルール違反になりそうな操作を自動でブロック」「ルール遵守の作業を自動で記録」といった強制力が生まれます。

📥 hook の前提になる「Claude Code 22ルール」note 販売中

この記事の hook 運用は、note01「Claude Code 22ルール」の設計書とセットで効きます。実際に私がClaudeへ送っていた指示や、詰まったポイントもそのまま入っています + 特典5点(CLAUDE.mdテンプレ・トラブル事例集・3記事リライト実例集・自動化スクリプト4本・アップデート保証)。

📘 価格 1,480円(買い切り・アップデート保証つき)

▶ noteで完全版を見る

仕組み化の最終形は note02「中級編」で

仕組み化を本格的にやりたいなら、note02「中級編」では:

  • hooks運用 完全版(PreToolUse・PostToolUse・Stop の3種類詳細)
  • CLAUDE.mdテンプレ(複数プロジェクト共通設定)
  • MCP連携集(Gmail/Calendar/Notion等の自動化)
  • 自動化スクリプト4本(メルマガ配信・X投稿・記事生成・売上集計)
  • アップデート保証(Claude Codeの仕様変更に追従)

を扱う予定です。

中級編「Claude Code 仕組み化15ルール」note02 販売予定(2026-07〜08)

SessionStart hook 含む15ルール + 特典5点(CLAUDE.mdテンプレ・MCP設定集・hook集・自動化スクリプト4本・アップデート保証)

👉 最新情報は X (@shinlabo_ai) で告知します。フォローして待っていてくださると嬉しいです。


あなたが今日やるべき3つのこと

まずは今日、SessionStart hook で「開始時刻だけ」記録してみてください。

完璧な自動化を目指さなくて大丈夫です。1行のログが残ることが、続く仕組みの第一歩です。実際にログが残った瞬間、私は「これなら続く」と思いました。手動記録だと忘れる。でも自動なら、疲れていても残る。配送後の副業には、この差が大きかったです。

副業ブログを「仕組み化された装置」に進化させる、最初の3ステップです。

✅ 0. 一番ラクなルート:上のコピペプロンプトを Claude Code に投げる

「自分で書くのが難しい方へ:コピペで使える完成プロンプト」セクションのプロンプトを、そのまま Claude Code に貼り付けて送信するだけ。これが最速・最簡単です。コードを1行も書かずに完了します。

シンラボくん

シンラボくん
「自分で書きたい派」の方は、続けて1〜3のステップを進めてください。

✅ 1. 作業ログ用ディレクトリを作る

mkdir -p ~/Documents/MyBlog/worklog

(パスは自分の環境に合わせて)

✅ 2. settings.json に10行追記

~/.claude/settings.json を開いて、本記事の SessionStart hook をコピペ。パスを自分の作業ログ用ディレクトリに変える。

✅ 3. Claude Code を再起動して動作確認

cat ~/Documents/MyBlog/worklog/2026-05.md

「- 開始:07:30」のような行が追加されていれば成功です。

シンラボくん

シンラボくん
動かないときは「クロに聞いてOK」。Claude Code が原因と修正案を出してくれます。1人で抱え込まないでください。

まとめ

  • ✅ Claude Code には 複数の hook(自動実行ポイント)がある
  • SessionStart hook で作業時間を自動記録できる
  • ✅ 必要なのは settings.json に10行のJSONを追記するだけ
  • ✅ 月別ファイルに時刻が積み重なり、振り返り・モチベ維持に直結
  • ✅ 慣れてきたら、他のhookと組み合わせて仕組み化を広げられる

副業ブログを「個人の頑張り」から「仕組みで回る装置」に進化させたいなら、今日この10行から始めてみてください。

早ければ5〜10分で導入できます。コピペでOKです。

シンラボくん

シンラボくん
私も配送業40代・プログラミング未経験から始めました。クロに伴走してもらいながら進めれば、行き詰まることはありません。今あなたが始めれば、3ヶ月後には作業ログが蓄積された「自分の足跡」が手元に残っています。一緒に前進しましょう。

関連記事


公開予定:2026年6月中旬

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次