背景

Claude Code で作業することが増えてきて、「何をやったか」をどこに残すかが問題になってきた。AIとのセッションは流れるように進むので、あとから振り返ると何を決めたのかわからなくなる。

そこで、作業ログを Git で管理する logs リポジトリを整備した。

ディレクトリ構成

logs/
├── raw/2026/          # 生ログ。低摩擦・私的。セッション単位で残す
└── journals/2026/     # 整理済み。Note.com などへの発信用

raw/ は摩擦なく書けることを優先している。ファイル名は YYYYMMDD_snake_case_title.md で統一。内容は箇条書きでも走り書きでもOK。

journals/raw/ を元に整理したもの。外に出せる形に直したものだけ置く。

Makefile で操作を簡単に

毎回ファイル名を考えるのが面倒なので、Makefile にまとめた。

note:   ## 今日の日付でrawログを開く
new:    ## タイトルを指定して新規作成
save:   ## add → commit → push を一発で
install: ## Claude skillをグローバルに配置

make note で今日のファイルが開き、make save でそのまま GitHub に上がる。

Claude Code の /journal スキル

Claude Code には独自スキルを定義できるので、/journal コマンドを作った。~/.claude/commands/journal.md に置いておくと、Claude がセッション中に自動的にそのルールに従ってログを書いてくれる。

~/.claude/commands/journal.md
↓ make install で展開

スキル自体は logs/journals/ 配下で管理していて、make install でグローバルなパスに配置する仕組み。

GitHub private repo に接続

logs リポジトリは private にして GitHub に置いている。手元のメモがそのままバージョン管理される形だ。

git remote add origin git@github.com:yhamamon/logs.git
git push -u origin main

使ってみて

セッションが終わったら make save するだけ、という習慣がつくと割と快適だ。AIとの会話の文脈がファイルとして残るので、次のセッションで「前回のログを渡す」だけで続きから始められる。

iPhoneから音声でログを入れる仕組み(Siriショートカット + GitHub API)は次の課題。

追記(2026-08-01):月フォルダ分割と時刻付与

この仕組みは順調に回り続け、開始から2ヶ月でrawログが136件に積み上がった。1つのフォルダでは見渡せなくなったため、raw/2026/07/ のような月フォルダでの分割と、ファイル名への時刻付与YYYYMMDD_HHMM_topic.md)を行っている。

「1ディレクトリ何件までなら人は見渡せるのか?」という議論や、過去136件への時刻付与をgit履歴で解決した話は、別の記事にまとめた。