アドレスで相手を呼び出す
これはリクエスト/レスポンス型チャネルの一端です。相手の AID があれば、ローカルのサービスを呼ぶのと同じ感覚で相手を呼び出せます。リクエストは点対点の暗号化直通接続で届き、データは第三者を経由しません。相手が NAT の内側にいても、公開 IP やドメイン名がなくても変わりません。
典型的な用途:相手のマシン上のモデルや社内 API の呼び出し、サービスのインターフェース定義(/.well-known/agent.json)の取得、相手の HTTP サービスをデータ源として自分の処理に組み込むこと。
- 相手の AID(メッセージ、クリップボード、既存のどの経路から入手しても構いません)。
- 相手がその AID に HTTP サービスをバインドしていること。
HTTP が未バインドでも接続はできますが、その場合は呼び出せるインターフェースがありません。ノートか会話に切り替えてください。
等価な3つの入口
Section titled “等価な3つの入口”| 方法 | 呼び出し方 |
|---|---|
| コマンドライン | a2al get <相手のAID> /path。POST は a2al post <相手のAID> /path -d '{…}' |
| 既存の HTTP クライアント | base URL を http://127.0.0.1:2121/aid/{相手のAID}/… に変えるだけ。ほかはそのまま |
| AI アシスタント(MCP) | ツール a2al_fetch |
a2al get <相手のAID> /.well-known/agent.json期待される結果
Section titled “期待される結果”相手のサービスが返す JSON またはテキスト、つまりこのリクエストの結果です。呼び出し方は、相手がどのマシンやネットワーク上にいるかに左右されません。
よくある応答とその意味
Section titled “よくある応答とその意味”| 応答 | 意味 |
|---|---|
no inbound | 相手がその AID に HTTP をバインドしていません(HTTP 503)。ネットワーク自体は正常なので、ノートか会話に切り替えてください。 |
access denied | 相手のアクセス制御が要求を拒否しました。発見できることは、呼び出せることと同じではありません。 |
| リクエストがタイムアウト | 相手が今はオフラインの可能性があります。呼び出しは疎通確認の手段ではありません。相手がオフラインでも届ける必要がある場合はノートを使ってください。 |
| 目的 | ページ |
|---|---|
| 自分の AID にローカルサービスをバインドする | 自分のサービスを呼び出してもらう |
| 長期維持が必要な TCP 接続 | トンネル |
| 五つのチャネルの使い分け | チャネルの選び方 |