Claude Code作業履歴を自動で記録したい実験
⚠️ 注意: これは実験段階のメモです。実際の検証はまだ行っていません。
背景・課題
現在の問題
Claude Codeを使用してローカルで開発作業を行う際、以下の課題が発生している:
- Claude CodeがPRを作成してくれるが、なぜその実装をしたのかの背景情報がGitHub上に残らない
- 作業過程での判断理由や試行錯誤がローカルにしか保存されず、ほかのメンバー(後日すべてを忘れた自分自身含む)が背景を理解できない
技術的な背景
- Claude Codeの会話履歴は
~/.claude/projects/**/*.jsonl
にローカル保存される - GitHub上のIssueやPRには、Claude Codeの思考過程や判断理由が記録されない
- 既存のClaude Code GitHub Actionsは、GitHub Actions上での実行を前提としており、ローカル実行の履歴は対象外
調査結果
既存事例の探索
GitHub OpsでClaude Codeの行動履歴をIssueに集めた事例を調査したが、以下のような状況だった:
アイディア
- headless mode:
claude -p "<prompt>" --output-format stream-json
でJSON形式の出力が可能 - GitHub CLI:
gh
でIssueにコメントを投稿できる
制約・限界
- claude-code-base-actionはGitHub Actions上での実行が前提で、ローカル実行履歴は対象外
- ローカル実行履歴をGitHub Issueに自動投稿する確立された事例は発見できず
- この分野はまだ未開拓領域と判断される
解決策(仮説)
提案するワークフロー
以下のシンプルなアプローチで課題解決を図る:
- Issue作成: GitHub上で作業内容のIssueを事前に作成
- Claude Code実行: headless modeでClaude Codeに明示的指示
claude -p "Issue #123を見て実装しろ。作業過程と判断理由をそのIssueにコメントとして投稿しろ" --output-format stream-json
- 自動記録: Claude CodeがGitHub CLIを使ってIssue commentに作業履歴を投稿
- PR作成: 実装完了後、PRも作成
この方法の利点
- シンプル: 既存機能のみで実現可能、複雑な追加開発不要
- トレーサブル: Issue上に「なぜこの実装をしたのか」が記録される
想定される技術要素
- Claude Code headless mode (
--output-format stream-json
) - GitHub CLI (
gh issue comment
) - Issue事前作成によるコンテキスト提供
次のステップ
検証予定項目
- Claude CodeがGitHub CLI経由でIssue commentを投稿できるかの確認
- headless modeでの指示内容の最適化
- 作業過程記録の品質評価
期待される効果
- PRレビュー時の文脈理解向上
- コードメンテナンス時の背景情報活用
- Claude Code利用時のトレーサビリティ確保
- チーム開発における透明性向上
Claude Code作業履歴を自動で記録したい実験 https://www.tricrow.com/claude-code/observability.html