← Back to Blog Agent Client Protocol: LSP-nya AI Coding Agent

Agent Client Protocol: LSP-nya AI Coding Agent

Ratrekt Labs 5 min read

Setiap kali AI coding agent baru rilis, dev community punya pertanyaan yang sama: “bisa jalan di editor apa?” Jawabannya selalu beda-beda. Claude Code punya CLI sendiri, Cursor punya ekstensi sendiri, Copilot terintegrasi di VS Code. Setiap agent-editor combo butuh integrasi custom.

Agent Client Protocol (ACP) hadir buat solve masalah ini.


Apa itu ACP?

ACP adalah open standard yang menstandarkan komunikasi antara code editor dan AI coding agent. Think of it as LSP (Language Server Protocol) buat AI agent — satu protocol, semua editor, semua agent.

Diinisiasi oleh Google Gemini CLI team, sekarang dikembangkan bareng JetBrains. Lisensinya Apache 2.0.

Masalah yang diselesaikan sederhana: setiap kombinasi agent-editor butuh integrasi custom. ACP memisahkan agent dari editor. Implement ACP sekali, agent lo jalan di semua editor yang kompatibel. Dan sebaliknya.


Cara Kerjanya

ACP pakai JSON-RPC 2.0 sebagai transport layer. Ada dua mode:

  • Local agent: stdio (subprocess dari editor)
  • Remote agent: HTTP/WebSocket (masih dalam pengembangan)

Alur kerjanya:

  1. Client (editor) menjalankan agent sebagai subprocess
  2. initialize — negosiasi versi dan kemampuan
  3. session/new atau session/load — buat atau lanjutkan percakapan
  4. session/prompt — kirim pesan user, agent mengirim update lewat notifications
  5. Agent bisa meminta izin, baca/tulis file, buat terminal lewat client methods

Desain yang menarik: ACP memakai ulang tipe JSON dari MCP (Model Context Protocol) dimana mungkin. Jadi ekosistem MCP dan ACP saling kompatibel.


Harness

Ini bagian yang sering membingungkan. ACP punya konsep harness — yaitu adapter yang menghubungkan agent dengan editor melalui protocol ACP.

Tanpa harness, setiap agent harus tahu cara berkomunikasi dengan setiap editor. Dengan harness, agent cukup mengimplementasi ACP spec, dan harness menangani sisanya.

Analoginya gampang: ACP itu USB-C, harness itu adapter cable. Device lo cuma butuh port USB-C, adapter yang handle konversi ke port yang berbeda.

Contoh harness di dunia nyata:

  • Zed punya harness adapter buat Claude Agent, Codex CLI, dan Gemini CLI
  • JetBrains punya native harness support di IDE mereka
  • VS Code punya extension yang jadi ACP harness
  • OpenClaw support ACP lewat openclaw acp — agent bisa jalan di editor dan tetap terhubung ke automation stack

Harness juga menangani hal-hal UX yang penting: permission prompts, rendering file diff, progress indicators, dan manajemen terminal. Ini bukan sekadar pipe data — ini layer integrasi penuh.


Ekosistem

ACP sudah didukung oleh 25+ agent dan puluhan editor/client:

Agent besar: Claude Code, Codex CLI, Gemini CLI, GitHub Copilot CLI, Cursor, Cline, Goose (Block), OpenHands, OpenCode

Editor: Zed, JetBrains, VS Code, Neovim, Emacs

Standalone apps: ACP UI, acpx CLI, DeepChat

Pertumbuhannya cepat. Dari proposal Google awal 2025 menjadi ekosistem yang matang di 2026. Ini bukan vaporware — ini sudah production-grade.


Kenapa Ini Penting

Buat developer

Lo ga perlu ganti editor cuma karena mau pakai agent tertentu. Pakai Zed dengan Claude Code, VS Code dengan Codex CLI, atau Neovim dengan Gemini CLI. Pilihan ada di tangan lo, bukan di tangan vendor.

Buat agent builder

Implement ACP sekali, agent lo jalan di semua editor. Ga perlu bikin integrasi custom buat tiap editor. Ini mengurangi development cost secara signifikan.

Buat ekosistem

Standard protocol berarti kompetisi yang sehat. Agent bersaing di kualitas, bukan di lock-in. Editor bersaing di UX, bukan di integrasi eksklusif.


ACP vs MCP

Sering bingung bedanya:

  • MCP = agent berkomunikasi dengan tools/data sources (API, database, file system)
  • ACP = agent berkomunikasi dengan editor/client (file editing, terminal, permissions)

MCP itu “agent ke dunia luar.” ACP itu “agent ke editor.” Keduanya saling melengkapi, bukan saling bersaing.


OpenClaw dan ACP

Di RatrektLabs kita pakai OpenClaw sebagai otomasi utama, dan ACP sebagai jembatan ke coding agent. Setup-nya:

  • OpenClaw handle scheduling, otomasi, riset, dan monitoring
  • ACP harness menghubungkan coding agent (Claude Code, Codex) ke editor
  • OpenClaw bisa spawn ACP sessions lewat sessions_spawn dengan runtime: "acp"
  • Thread-bound persistent sessions buat coding tasks jangka panjang

Artinya lo bisa punya satu layer otomasi yang bisa spawn dan manage coding agent sesuai kebutuhan, tanpa campur tangan manual.


Masih Berkembang

ACP masih terus berkembang. Beberapa hal yang perlu diperhatikan:

  • Dukungan remote agent (HTTP/WebSocket) masih dalam pengembangan
  • Model permission masih sederhana — trusted model, belum ada fine-grained access control
  • Tidak semua agent mengimplementasikan full ACP spec — ada yang partial support
  • Ekosistem harness masih bertumbuh — beberapa editor butuh setup manual

Tapi arahnya jelas. Ini menuju standard de facto untuk komunikasi agent-editor.


Kesimpulan

ACP menyelesaikan masalah fundamental di AI coding: fragmentasi. Dengan satu standard protocol, developer punya kebebasan memilih agent dan editor tanpa terkunci di satu ekosistem. Harness membuat integrasi jadi plug-and-play. Dan buat yang membangun otomasi di atas coding agent, ACP membuka kemungkinan orchestration yang sebelumnya tidak mungkin.

Kalau lo developer yang pakai AI coding agent, ACP itu sesuatu yang perlu dipahami. Karena ini bukan pertanyaan “apakah” — ini pertanyaan “kapan” semua agent dan editor akan mendukungnya.


Spesifikasi ACP bisa dicek di agentclientprotocol.com