Belajar A2A - Pre-Requisites Skill & Setup Environment
Episode 0 of 23

Belajar A2A - Pre-Requisites Skill & Setup Environment

Episode pembuka: skill dasar AI agent, JSON-RPC & HTTP/SSE, dan discoverability ala OpenAPI yang wajib dikuasai. Sekaligus setup Node.js/Python, A2A SDKs, Google ADK opsional, dan environment untuk menjalankan dua agent lokal secara bersamaan.

AI Agent
AI AgentAugust 3, 2026
0 views
3 min read

Pendahuluan

Selamat datang di series Belajar A2A! Selama 23 episode ke depan, kita akan membongkar A2A (Agent2Agent Protocol) — open protocol dari Google yang kini berada di bawah Linux Foundation — mulai dari konsep dasar, Agent Card, sampai deployment multi-agent yang production-grade.

Episode 0 ini murni fondasi. Tujuannya satu: memastikan lingkungan kalian siap sebelum berpraktik. Kita akan memastikan runtime terpasang, SDK resmi terinstal, dan environment lokal mampu menjalankan minimal dua agent sekaligus. Materi teknis yang sesungguhnya dimulai di episode 1.

Skill Dasar yang Wajib Dimiliki

AI Agent Basics: Tool Calling & Orchestration

A2A menghubungkan antar agent, jadi kalian harus paham dulu bagaimana satu agent bekerja. Dua konsep kunci: tool calling — kemampuan model meminta fungsi eksternal dijalankan (misal query database), dan orchestration — cara agent memecah pekerjaan menjadi langkah-langkah yang dieksekusi berurutan atau paralel. Tanpa pemahaman ini, kita akan tersesat membedakan "agent" dengan "tool".

JSON-RPC & HTTP/SSE

Seluruh komunikasi A2A dibangun di atas JSON-RPC 2.0 — protokol remote procedure call yang ringan, tidak bergantung pada HTTP method atau REST convention. Kalian juga perlu paham SSE (Server-Sent Events), kanal streaming satu arah yang dipakai agent untuk mengirim hasil parsial secara real-time. Jangan khawatir jika belum hafal detail; episode 5 akan membedah keduanya secara mendalam.

TypeScript atau Python

SDK resmi A2A paling matang tersedia untuk Python dan TypeScript. Pilih salah satu yang paling nyaman; seluruh contoh di series ini menggunakan keduanya. Prasyarat ini bukan pilihan berat — kalian cukup terbiasa menulis fungsi, class, dan async handler, karena di situlah hidupnya SDK.

Konsep Discoverability ala OpenAPI

Sebelum memanggil API apa pun, client perlu tahu bentuknya. Di dunia REST ada OpenAPI spec; di dunia A2A ada Agent Card — metadata JSON yang mendeskripsikan kemampuan sebuah agent. Konsep ini yang membuat sebuah agent bisa "ditemukan" dan dipahami oleh agent lain, persis seperti OpenAPI membantu client memahami REST API.

Menyiapkan Runtime: Node.js dan Python

Gunakan versi modern: Node.js 20 ke atas dan Python 3.11 ke atas. Verifikasi versi yang sudah terpasang:

Cek versi runtime
node --version
python --version

Keluaran v20.x.x dan Python 3.11.x berarti sudah siap. Untuk mengelola versi Node.js yang berubah-ubah antar proyek, gunakan nvm — manajer versi Node paling populer — dengan nvm install --lts. Untuk Python, pertimbangkan pyenv atau uv agar versi interpreter terkunci per proyek.

Instalasi A2A SDKs

Ekosistem resmi A2A menyediakan SDK untuk Python, TypeScript, Go, Java, dan .NET. Kita instal dua yang paling penting untuk seri ini.

Instalasi SDK Python
pip install a2a-sdk
Instalasi SDK TypeScript
npm install @a2a-js/sdk
import a2a
 
print(a2a.__version__)

Catatan untuk tim yang memakai bun: pip install a2a-sdk cukup dijalankan di lingkungan Python; sedangkan untuk JavaScript, perintah bun add @a2a-js/sdk menggantikan npm install. SDK Go, Java, dan .NET bisa diambil dari registry resmi masing-masing — fungsinya sama, hanya bahasanya yang beda.

Google ADK: Opsional tapi Berguna

ADK (Agent Development Kit) adalah framework agent dari Google yang memiliki dukungan native terhadap A2A. Tidak wajib, tetapi sangat membantu karena satu framework bisa dipakai untuk membangun agent sekaligus mengeksposnya ke protokol A2A.

Instalasi Google ADK
pip install google-adk

Kita akan memakai ADK di episode 12 untuk integrasi framework. Untuk sekarang, cukup pasang saja — atau tunda jika ingin fokus ke inti protokol dulu.

Environment untuk Menjalankan Dua Agent Lokal

Latihan di series ini sering membutuhkan minimal dua agent berjalan bersamaan: satu bertindak sebagai client, satu sebagai remote agent. Siapkan struktur folder proyek:

Struktur proyek latihan A2A
mkdir -p ~/belajar-a2a/agent-a ~/belajar-a2a/agent-b
cd ~/belajar-a2a

Nanti agent-a berjalan di port 8080 dan agent-b di port 8081, keduanya di mesin yang sama. Karena A2A berjalan di atas HTTP, kalian bisa menguji komunikasi antar agent dengan curl dari folder ini:

Smoke test server agent
curl -s http://localhost:8080

Info

Dalam mode pengembangan, jangan ragu menjalankan agent di localhost. Namun pahami perbedaan utama nanti: di production, client agent dan remote agent biasanya berada di jaringan yang berbeda, sehingga discovery melalui Agent Card menjadi kritis.

Verifikasi Setup

Sebelum lanjut, pastikan empat hal berikut berfungsi:

  • node --version mengeluarkan 20 ke atas, dan python --version 3.11 ke atas.
  • pip show a2a-sdk menampilkan metadata SDK Python.
  • npm ls @a2a-js/sdk menampilkan SDK TypeScript tanpa error.
  • Folder ~/belajar-a2a siap dengan dua subfolder agent.

Jika semua hijau, environment kalian resmi siap untuk seri ini.

Penutup

Episode 0 selesai. Inilah yang wajib kalian bawa pulang:

  • Kuasai dasar AI agent (tool calling, orchestration) dan JSON-RPC 2.0 di atas HTTP/SSE.
  • Pahami konsep discoverability ala OpenAPI sebagai fondasi dari Agent Card.
  • Siapkan Node.js 20+ dan Python 3.11+ dengan nvm atau pyenv/uv.
  • Instal SDK resmi a2a-sdk untuk Python dan @a2a-js/sdk untuk TypeScript; ADK opsional.
  • Siapkan environment yang mampu menjalankan dua agent lokal sekaligus.

Selanjutnya, di episode 1 kita menjawab pertanyaan terpenting sebelum menulis kode: kenapa protokol ini lahir, dari mana asal usulnya, dan masalah apa yang sebenarnya dipecahkan A2A. Sampai jumpa!