タイル型ペイン、ワークスペース、永続セッション、各ペインで動くコーディングエージェント用Inboxを備えた、Go製のターミナルマルチプレクサ兼ウィンドウマネージャー。
feder-cr/git-ai
compare-and-swapによる変更の反映とAIによるコンフリクト解決を備えた、サーバー中心・エージェント指向のGit設計を再実装するGo製サーバーとCLI。
- スター
- 1,280
- フォーク
- 124
- 未解決の Issue
- 2
- 最終コミット
- 10 時間前
これは何?
gitaiは、コーディングエージェント向けのサーバー中心型バージョン管理設計を独立して実装したオープンソースプロジェクトです。クライアントごとにリポジトリ全体をcloneし、長時間の作業後にpushする代わりに、クライアントはオンライン状態を保ち、必要なオブジェクトとsparse pathだけを取得します。また、blame、パスの履歴、コード検索などの履歴に関する問い合わせをサーバーに行います。リポジトリの状態は、内部では通常のGitリポジトリに保存されます。
書き込みが競合した場合、変更は現在のブランチ先端にrebaseされ、merge queueを介さずcompare-and-swapで反映されます。同じブランチへの同時反映は、1回の参照更新にまとめられます。コンフリクトは、プラグイン可能なresolver(LLMプロバイダー、決定論的なツール、またはresolverなし)に渡せます。モデルが提案した解決策が反映されるのは、最終的なツリーに対して設定済みのverifyコマンドが成功した場合に限られます。
このプロジェクトには、クライアントが一覧表示や監視をできるchangeset log、エージェントごとのトークンとブランチポリシー、セマンティックレビューのルール、SQLiteまたはPostgreSQLでメタデータを管理し、ファイル、S3、GCS、Azureのオブジェクトストレージを利用できるストレージコアも含まれています。Go製のサーバーとgraft CLIはmakeでビルドでき、LinuxまたはmacOSが必要です。
主な機能
- 01クライアントはリポジトリ全体をcloneせず、単一のオブジェクトとsparse treeを取得します。
- 02blame、パスの履歴、祖先関係、コード検索をサーバー上で実行し、コミットごとにキャッシュします。
- 03変更をブランチ先端にrebaseしてcompare-and-swapで反映し、同時の反映はまとめて処理します。
- 04プラグイン可能なresolverでコンフリクトを解決でき、モデルの提案は設定済みのコマンドで検証されます。
- 05メタデータはSQLiteまたはPostgreSQLに、packはファイル、S3、GCS、Azureのオブジェクトストレージに保存します。
ユースケース
- 多数のコーディングエージェントが同じブランチに同時にcommitする環境を運用する。
- エージェントにsparse checkoutが必要な、セルフマネージドのGitサービスをホストする。
- 検証ゲートを設けたAI支援のマージコンフリクト解決を試す。
- 誰がどの参照を変更したかを追跡できる、監査可能なchangeset logを追加する。
クイックスタート
- 1
リポジトリをクローンする
git clone https://github.com/feder-cr/git-ai.git - 2
プロジェクトディレクトリに移動する
cd git-ai - 3
サーバー、CLI、ツールをビルドする
make build - 4
クイックスタートの例を実行する。この例では一時ディレクトリにサーバー、キャッシュデーモン、2つのエージェント、landを起動します
examples/graft/quickstart.sh
使う前に知っておきたいこと
- LinuxとmacOSのみをサポートしています。
- 同梱のGitをコンパイルするため、ビルドにはGo 1.26、Cツールチェーン、Meson、Ninjaが必要です。
- バージョンは0.3.0です。1.0より前にインターフェースが変更される可能性があります。
- ストレージコアのpackのガベージコレクションなど、既知の未対応機能はまだ実装されていません。
トピック
よくある質問
- git-ai とは?
- compare-and-swapによる変更の反映とAIによるコンフリクト解決を備えた、サーバー中心・エージェント指向のGit設計を再実装するGo製サーバーとCLI。 gitaiは、コーディングエージェント向けのサーバー中心型バージョン管理設計を独立して実装したオープンソースプロジェクトです。クライアントごとにリポジトリ全体をcloneし、長時間の作業後にpushする代わりに、クライアントはオンライン状態を保ち、必要なオブジェクトとsparse pathだけを取得します。また、blame、パスの履歴、コード検索などの履歴に関する問い合わせをサーバーに行います。リポジトリの状態は、内部では通常のGitリポジトリに保存されます。
- git-ai は無料で使えますか?ライセンスは?
- git-ai は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- git-ai は今もメンテナンスされていますか?
- 活発にメンテナンス中。git-ai の最終コミットは 2026年10月21日 です。
- git-ai は何に使えますか?
- 多数のコーディングエージェントが同じブランチに同時にcommitする環境を運用する。 エージェントにsparse checkoutが必要な、セルフマネージドのGitサービスをホストする。 検証ゲートを設けたAI支援のマージコンフリクト解決を試す。 誰がどの参照を変更したかを追跡できる、監査可能なchangeset logを追加する。
- git-ai のインストール方法は?
- リポジトリをクローンする: git clone https://github.com/feder-cr/git-ai.git プロジェクトディレクトリに移動する: cd git-ai サーバー、CLI、ツールをビルドする: make build クイックスタートの例を実行する。この例では一時ディレクトリにサーバー、キャッシュデーモン、2つのエージェント、landを起動します: examples/graft/quickstart.sh
- git-ai はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/feder-cr/git-ai
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Go製のオールインワンなセルフホスト型ソフトウェア開発サービス。Gitホスティング、コードレビュー、Issue、パッケージ、CI/CDを提供します。
Gitのようにテーブルをフォーク、クローン、ブランチ、マージ、プッシュ、プルでき、MySQLと同様に接続できるSQLデータベース。
AIエージェントとチーム向けのMarkdownファイルシステム。全文検索とベクトル検索、Gitによるバージョン管理、組み込みWeb UIを単一のGoバイナリで提供します。
Go製のセルフホスト型Gitサービス。課題管理、プルリクエスト、Wiki、Webhookを備え、単一のバイナリで配布されています。