AIコーディングエージェントの作業を記録・比較・ロールバックできるツールを作ってみた
Claude Code、Codex、CursorなどのAIコーディングエージェントを使って開発する機会が増えてきました。
AIに複数ファイルにまたがる実装やリファクタリングを任せると、かなり速く作業してくれる一方で、個人的には次のような問題を感じることがありました。
- AIが実際に何をしたのか、後から追いにくい
- どのファイルを読んで、どのファイルを変更したのか分かりにくい
- 途中で実装方針が変わった場合、その経緯を確認しにくい
- 大きな変更を任せた後、問題が発生すると復旧が面倒
- Claude、Codex、ローカルモデルなど、複数のモデルの実装結果を比較しにくい
- 「AIが書いたコード」だけではなく、「AIがどのように作業したか」も確認したい
そこで、この問題を解決するために AX Code というAIコーディングエージェントのランタイムを作っています。
AX Codeとは
AX Codeは、単純にAIにコードを書かせるためのツールというより、
AIエージェントが実際のリポジトリで作業した過程を記録し、検証し、比較し、必要に応じて戻せるようにする
ことを目的としています。
現在はClaude Code、Codex、ローカルモデルなど複数のAIモデル/エージェントを利用できるようにしています。
1. AIの作業過程を記録する
通常のGitでは、最終的にどのコードが変更されたかは確認できます。
ただ、AIエージェントが作業している途中で、
- どのファイルを読んだのか
- どのファイルを変更したのか
- どのコマンドを実行したのか
- どのツールを呼び出したのか
- どのタイミングで何が起きたのか
といった「AIの作業過程」までは、Gitだけでは分かりません。
AX Codeでは、こうした実行イベントを記録して、後からセッションとして確認できるようにしています。
2. 作業途中の状態に戻す
AIに大規模な変更を任せると、
「途中までは良かったけど、最後の変更でおかしくなった」
ということがあります。
AX Codeでは作業中の状態をスナップショットとして保存し、必要に応じて以前の状態へ戻せるようにしています。
もちろんGitのcommitやbranchを置き換えることが目的ではありません。
むしろ、
Git = ソースコードの履歴
AX Code = AIエージェントの作業履歴
という関係を目指しています。
3. 複数のAIに同じタスクをやらせて比較する
個人的に一番試してみたかった機能がこれです。
例えば同じリポジトリ、同じタスクに対して、
Claude
↓
Implementation A
Codex
↓
Implementation B
Local Model
↓
Implementation C
のように、それぞれ独立した環境で実装させます。
その後、
- test
- lint
- typecheck
など、実際のリポジトリに設定されている検証を実行して結果を比較します。
AIモデルをベンチマークで比較するのではなく、
「自分たちのコードベースでは、どのモデルの実装が一番良かったのか?」
を確認できるようにしたいと考えています。
4. 変更の影響範囲を調べる
大規模なリファクタリングでは、
「この関数を変更したら、どこまで影響するのか?」
が問題になります。
AX Codeではコードの依存関係を解析して、変更対象からどの範囲に影響する可能性があるのかを確認できるようにしています。
LLMに「たぶんここが影響します」と推測させるだけではなく、コードの依存関係を利用したdeterministicな分析を目指しています。
5. ローカルモデルにも対応
クラウドのAIモデルだけではなく、Ollama、LM Studioなどのローカル環境も利用できます。
そのため、ソースコードを外部サービスに送信したくないプロジェクトでも利用できる可能性があります。
ただ、まだ自分でも「本当に必要なのか?」と思っています
ここが今回この記事を書いた一番の理由です。
実際、開発者の方から、
「この程度ならGitでcommitしておけばrollbackできますよね」
という意見をいただきました。
これは非常にもっともだと思います。
Gitは非常に強力ですし、単純なrollbackだけならAX Codeが必要ないケースも多いと思います。
そのため、現在は、
「AX Codeでしか得られない価値は何なのか?」
を実際の開発者の方々からフィードバックしてもらいながら検証しています。
特にAIコーディングエージェントを普段から使っている方に、以下を聞いてみたいです。
質問
-
Claude Code / Codex / Cursorなどを実際の開発で使っていますか?
-
AIに大きな変更を任せたとき、「AIが何をしていたのか分からない」と感じたことはありますか?
-
AIの作業履歴を後から確認できる機能は必要だと思いますか?
-
Gitのcommit / branchだけで十分だと思いますか?
-
複数のAIモデルに同じタスクを実装させて比較する機能は使ってみたいですか?
-
AIが変更する前に「この変更はここまで影響する可能性がある」と分かったら便利でしょうか?
-
その他、「AI coding agentにこういう機能が欲しい」というものがあれば教えていただきたいです。
良い点だけではなく、
「これはGitで十分」
「これは使わない」
「こうした方がいい」
というような厳しい意見もぜひいただきたいです。
実際にAI coding agentを使っている開発者の方々の意見を聞きながら、AX Codeを改善していきたいと思っています。
プロジェクト:
AX Code
[https://ax-code.app/ja/]
ご意見・フィードバックをいただけると嬉しいです。