Claude Codeを日常的に使っていると、過去に何をやったか振り返りたくなることがある。自分はセッションログを手動で保存する仕組みを作って運用しているのだけど、そもそもClaude Codeは会話ログを全部ローカルに保存している。それを活用するツール「ccconv」というのを見つけたので試してみた。
ccconvとは
ccconvは、~/.claude/projects/ に保存されているClaude Codeの会話ログを読み込んで、いろいろな形式で表示・分析してくれるCLIツールで、npm install -g ccconv でインストールできる。作者はFruitRiinさんで、ZennやGitHubで公開されている。
何ができるか
主なコマンドはこんな感じになっている。
- ccconv — デフォルトで今日のセッションの会話内容を出力
- ccconv projects — プロジェクト別のファイル数・メッセージ数・トークン統計
- ccconv tokens — 直近4時間のトークン使用量サマリ
- ccconv raws –format=talk — 会話風の読みやすい形式で出力
- ccconv web — Vue 3ベースのWebダッシュボード
実際に動かしてみて
ccconv projects を実行すると、自分の環境では7プロジェクト、5,928メッセージ、291,752トークンという統計が出てきた。プロジェクトごとにセッション数やサブエージェントの利用回数も出る。
ccconv web でブラウザベースのダッシュボードも立ち上がる。ペイン分割でタイムライン同期ができるらしいのだけど、今回はさらっと見ただけで閉じてしまった。
セッションログが全部見えるということ
ccconvを試して一番驚いたのは、セッションログの中身が本当に全部残っているということだった。ユーザーの入力、Claudeの応答はもちろん、ツール呼び出しのパラメータや結果もそのまま記録されている。MCP経由で取得したSlackのメッセージやGmailの本文なども含まれるので、かなりセンシティブな情報がローカルに平文で保存されていることになる。
talk形式で出力してみると、claude-memのオブザーバーエージェントに渡しているシステムプロンプトの全文まで表示された。仕組みを理解するには便利だけど、共有するときは注意が必要だと思う。
手動ログはまだ要るのか
自分はこれまでセッション終了時に手動でログを ~/claude-sessions/ に保存していた。ccconvがあれば生ログから何でも引けるので、手動ログは不要かもしれないと思った。
ただ、生ログのファイル名はUUID(意味のないランダム文字列)なので、「3月15日に何やったっけ」と思ったときにファイル名から特定できない。手動ログなら ops_2026-03-15_0900.md のようにファイル名で即座に見つかる。「どこでやったっけ」を思い出すためのインデックスとしては、まだ手動ログに価値がありそうだという結論になった。
まとめ
ccconvはnpm install -g で入って npm uninstall -g で消せるので、気軽に試せる。Claude Codeをよく使っている人は、一度自分のログを眺めてみると発見があるかもしれない。自分はとりあえずインストールしたまま残しておいて、必要なときに使う感じにしている。
