Dev Classmethod Jp Agent Trace Jujutsu
Agent Trace × Jujutsu でたどる AI コードの来歴
- URL: https://dev.classmethod.jp/articles/agent-trace-jujutsu-ai-code-tracking/
- 日付: 2026-06-11
- Tier: Tier 2
- 要旨: CursorがRFC v0.1.0で公開したオープンデータ仕様「Agent Trace」(どの行をどのAIがどの会話で書いたか記録する仕様)を、Claude Codeのhookとjujutsu(jj)VCSを組み合わせて実装・動作検証。jjのchange IDがrebaseに強く、Agent Traceとの相性が良いことを実測で確認。
詳細
Agent Trace仕様の概要:
- Cursor製。Cognition(Devin)、Google Julesが策定協力
TraceRecord: 1ファイル編集イベントを記録するJSONL行。vcs.revision(change ID)・contributor(ai/human)・model_id・ranges(行番号)を持つ- 保存先は未定義(参照実装はsidecar JSONL:
.agent-trace/traces.jsonl)
jjとの相性が良い理由:
- jjのchange IDはrebase/amendで変わらない → AI生成コードを人間が手直ししてもtraceが壊れにくい
- working copyが常に@(commit)なので、編集時点のrevisionに即時紐付く
- gitではcommitまでHEADが変わらないが、jjはこの問題がない
Claude Code hookによる実装例:
PostToolUse(Write/Edit)に.claude/hooks/agent-trace-jj.shを登録し、jj log -r @ --ignore-working-copyでchange IDを取得してJSONLに追記。行範囲(ranges)はstructuredPatchの追加行から算出。
確認フロー:jj file annotate → change ID → .agent-trace/traces.jsonlをgrep → 会話URLへ
自作TUI tij で[AI]バッジと行マーカー(▎)のoverlayを実現した完成度の高い実装報告。