mcpField
G
git-a2a

git-a2a

ローカル
github.com/neprelバージョン管理06 週間前に更新

git-a2a について

git-a2aは、コーディングエージェントやコンポーネントの保守担当者向けのクロスプラットフォームGit依存関係管理ツールです。コンポーネントのコミット、アダプター、担当者のAgent Card参照を記録しますが、エージェントの実行やA2A通信は行いません。

主な機能

  1. 01プラットフォームアダプター経由のコンポーネント接続
  2. 02依存関係の正確なコミット記録
  3. 03担当エージェントとAgent Cardの追跡
  4. 04依存関係の取得、確認、削除
  5. 05任意のコンポーネント情報の公開

活用シーン

  1. 01プロジェクトへの共有ライブラリ追加
  2. 02依存コンポーネントの担当エージェント特定
  3. 03選択したアダプターによる依存関係の更新
  4. 04コンポーネント情報とローカル問題の確認

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ
パッケージ
npmgit-a2a1.7.1
ocighcr.io/neprel/git-a2a:1.7.1
mcpbgit-a2a_1.7.1.mcpb

ツール

8

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
rootstringいいえrepository のルート。許可されたルート(起動ディレクトリ、--roots、クライアントのルート)内である必要があります。

詳細

git-a2a

built with HINT release CI npm PyPI Homebrew

Git コンポーネントを、その担当エージェントとともに接続します。

git-a2a は、クロスプラットフォームのコンポーネント依存関係マネージャーです。コンポーネントのリポジトリは、コード、所有者の A2A Agent Card への参照を 1 つ、さらに任意で API ドキュメント、サンプル、ソースなどの参照可能な情報を公開します。利用側は、自身のプラットフォームのアダプターを通じてコードを接続し、正確なコミット、アダプター、パッケージマネージャーのバリアントを記録します。

git-a2a はメッセージを送信したり、タスクを管理したり、エージェントを実行したり、Agent Card をホストしたりしません。git a2a whose NAME が示す利用可能な Agent Card 参照を、外部 A2A クライアントで使用してください。これは HTTPS URL、または適用したコミットから取得したリポジトリ相対パスのカードのローカルコピーです。

クイックスタート

バイナリを git-a2a として直接実行するか、PATH にインストールして、Git の同等の形式である git a2a を使用してください。

git a2a init
git a2a add https://github.com/acme/lib-utils.git --name lib-utils
git a2a list
git a2a whose lib-utils
git a2a pull lib-utils
git a2a remove lib-utils

バージョン 2.1.0 では whose NAME が導入され、list の位置引数が削除されました。list NAME --json を使用するスクリプトでは、list --json を使用し、配列からエイリアスを選択してください。

ドメインコマンドはちょうど 6 つです。

コマンド結果
init既存のマニフェストを上書きせず、最小限のスキーマ 2 の a2amodule.yml を作成します。
add SOURCE1 つのコミットを解決し、適用可能なアダプターを選択してコンポーネントを接続し、その所有者と参照可能な情報を記録します。
pull [NAME]add で選択したアダプターとバリアントを通じて、1 つまたはすべての依存関係を更新します。依存関係がない場合は No dependencies. と報告し、変更を加えずに成功します。
remove NAME選択した依存関係が所有する統合とローカルの実体化のみを削除します。
listすべての直接依存関係、コミット、アダプター、Agent Card、参照可能な情報、ローカルの問題を報告します。--json は既存の配列形式を返します。
whose NAME1 つの依存関係の担当エージェント、利用可能な Agent Card 参照、任意のローカル情報、復旧可能なメタデータの問題を報告します。--json は 1 つのオブジェクトを返します。

pull はアダプターのライフサイクルであり、git pull のラッパーではありません。多言語コンポーネントのすべてのバインディングは、同じ解決済みコミットを使用します。アダプターとマネージャーの選択は保持されるため、後から PATH や利用側のマーカーファイルを変更しても、暗黙に切り替わることはありません。

エンドツーエンドデモ

ACME アプリのウォークスルーでは、コンポーネントを接続し、担当エージェントを見つけ、A2A 経由でリクエストを送信し、所有者にライブラリを変更してもらい、git-a2a pull を実行して新しい結果を確認するまでの一連の流れを紹介しています。アプリのリポジトリとライブラリのリポジトリは、互いに隣接する場所にクローンする必要があります。実行時に必要なのは Docker と Compose のみです。

git clone https://github.com/neprel/git-a2a-demo-acme-lib.git
git clone https://github.com/neprel/git-a2a-demo-acme-app.git
cd git-a2a-demo-acme-app
./demo/run.sh

# Short npm-only profile
DEMO_PROFILE=npm ./demo/run.sh

このデモでは、LLM API キー不要の決定論的なエージェント、実際の A2A トランスポート、公開済みの git-a2a 2.0.0、一時的なローカル Git リモートを使用します。別途用意されたデモクライアントが A2A 通信を行い、git-a2a は依存関係のコードとメタデータを管理します。エージェントはローカルでの実行中のみ存在し、恒久的に利用可能な公開サービスではありません。記録されたフルプロファイルの結果については、検証済みのトランスクリプトを参照してください。

コンポーネントの契約

a2amodule.yml はスキーマ 2 を使用します。

schema: 2
component:
  id: lib-utils
  description: Shared parsing and validation utilities.
  repository: https://github.com/acme/lib-utils.git
  exports:
    - adapter: npm
      name: "@acme/lib-utils"
    - adapter: pypi
      name: acme-lib-utils
  surface: docs/public
agent:
  name: lib-utils-owner
  card: https://agents.acme.example/lib-utils/.well-known/agent-card.json

エージェントのインターフェース、スキル、認証については、引き続き Agent Card が基準となります。 マニフェストでは意図的にこれらを重複して記述しません。init は agent のない不完全なローカルマニフェストを作成できますが、add または pull で使用するリポジトリでは agent.card を宣言する必要があります。

オプションの component.surface は、同じ適用済みコミットから公開されるデータであり、.git-a2a/surfaces/NAME の下にマテリアライズされます。サーフェスが宣言されていない場合、リポジトリのコンテンツが暗黙的に公開されることはありません。サーフェスはインストールの仕組みではなく、サブモジュールでもありません。

マニフェストリファレンス、作成ガイド、利用ガイド、スキーマ 1 からの移行ガイドをご覧ください。

アダプターの対応表

既存のすべてのプラットフォーム統合が引き続き利用できます。ネイティブアダプターは各プラットフォーム独自のマネージャーを通じて依存関係を適用し、宣言、ネイティブロックファイル、インストール済みまたは解決済みの状態を更新します。ビルドシステムアダプターは、ソースを別のツリーにコピーするのではなく、1 回のサブモジュールチェックアウトと連携します。

モードアダプター
ネイティブ Git 依存関係npm(npm、Yarn、pnpm、Bun)、Python(uv、Poetry、PDM、PEP 621/pip)、Go、Cargo、SwiftPM、Pub、Bundler、Composer、Mix、Cabal/Stack、Zig、Clojure、Nix
サブモジュール+ビルド統合CMake、Gradle、MSBuild、Maven、Meson
サブモジュールのみ統合が適用されない場合、またはネイティブマネージャーでソースを表現できない場合のフォールバック

Git サブモジュールは、同じ add/pull/remove/inspect ライフサイクルを持つ通常のアダプターです。ネイティブのロックファイルは引き続き各パッケージマネージャーが管理します。詳細な対応表と適用範囲については、対応状況をご覧ください。

インストール

既存のインストール方法はそのまま利用できます。コマンドは最新の安定版を取得します。CI ではバージョンを固定してください。

チャネルコマンド
Gogo install github.com/neprel/git-a2a/v2/cmd/git-a2a@latest
Go ゼロインストールgo run github.com/neprel/git-a2a/v2/cmd/git-a2a@latest --version
macOS/Linux インストーラーcurl -fsSL https://git-a2a.com/install.sh | bash
Windows インストーラーirm https://git-a2a.com/install.ps1 | iex
Homebrewbrew install neprel/tap/git-a2a
Scoopscoop bucket add git-a2a https://github.com/neprel/scoop-bucket; scoop install git-a2a
npmnpx git-a2a@latest --version
uv 経由の PyPIuvx git-a2a --version
pipx 経由の PyPIpipx run git-a2a --version
コンテナdocker run --pull=always --rm ghcr.io/neprel/git-a2a:latest --version
Nix フレークnix run github:neprel/git-a2a -- --version

Linux の .deb、.rpm、.apk パッケージは GitHub Releases に添付されています。リリースアーカイブは amd64/arm64 向けの Darwin、Linux、Windows に対応し、チェックサムと SBOM を含みます。スタンドアロンインストーラーはチェックサムを検証し、バージョンの固定、インストール先の選択、ドライランに対応しています。パッケージマネージャーでインストールした場合は、そのパッケージマネージャーを使って更新してください。バイナリにセルフアップデーターはありません。

メンテナーと来歴の詳細については、リリースガイドをご覧ください。

ドキュメント

ポータブルな Agent Skill は、この 6 コマンドのワークフローをコーディングエージェントに教えます。MCP サーバーやエージェントハーネスを設定するものではありません。

ソースとしての仕様

リポジトリの決定事項と不変条件は、それらが適用される成果物の隣にある .hint ファイルに記載されています。 hint <path> はパスに適用されるナレッジを返し、hint check <path...> はリンクされた調査記録を検証します。 リポジトリと CI では HINT 2.0.1 を使用します。ツールと形式については HINT をご覧ください。

ライセンス:MIT。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。