← Kembali ke blog

AI Agent Tidak Hanya Butuh API dan MCP: CLI Menjadi Interface Baru untuk Software

AI agent tidak selalu harus terhubung lewat public API atau MCP. Command-line interface dapat menjadi jalur aksi yang terstruktur, mudah diaudit, dan cocok untuk otomasi—asal dirancang dengan kontrol keamanan yang ketat.

AI Agent Tidak Hanya Butuh API dan MCP: CLI Menjadi Interface Baru untuk Software

AI Agent Tidak Hanya Terhubung lewat API dan MCP

Selama ini, pembahasan integrasi AI agent sering berhenti pada dua hal: public API dan MCP (Model Context Protocol). Keduanya memang penting. API memberi jalur integrasi formal antar-sistem, sementara MCP mulai menjadi standar agar model AI dapat mengakses tool, data, dan konteks dengan cara yang lebih terstruktur.

Namun ada satu interface lama yang kini kembali relevan: CLI atau command-line interface.

Bagi software engineer, CLI bukan hal baru. Banyak workflow development, deployment, observability, cloud operation, hingga data processing sudah lama dijalankan dari terminal. Yang berubah adalah konteksnya: CLI tidak lagi hanya dipakai manusia, tetapi juga dapat menjadi interface yang dijalankan oleh AI agent untuk melakukan aksi secara terstruktur.

Contoh: DoorDash CLI untuk Developer dan AI Agent

Sebagai contoh terbaru, TechCrunch melaporkan pada 16 Juli 2026 bahwa DoorDash membuka limited beta untuk dd-cli, sebuah tool command-line yang memungkinkan developer dan AI agent melakukan beberapa aksi dari terminal, seperti mencari toko, menyusun cart, dan melakukan order.

Poin penting dari contoh ini bukan sekadar “memesan makanan dari terminal”. Yang lebih menarik adalah arah desain software-nya: layanan yang sebelumnya sangat identik dengan UI aplikasi atau web mulai menyediakan interface yang bisa dikonsumsi oleh developer workflow dan AI agent.

Dengan kata lain, software modern tidak cukup hanya memikirkan pengalaman pengguna di browser atau mobile app. Jika AI agent akan menjadi bagian dari workflow pengguna, maka software juga perlu menyediakan interface yang bisa dipanggil, dibatasi, diaudit, dan diotomasi.

Kenapa CLI Menarik untuk AI Agent?

CLI memiliki beberapa karakteristik yang cocok untuk agentic workflow:

  1. Struktur perintah jelas
    CLI biasanya memiliki format eksplisit: command, subcommand, flag, input, dan output. Ini membantu agent memahami aksi yang tersedia dan parameter yang dibutuhkan.

  2. Mudah diintegrasikan ke workflow developer
    CLI bisa dipanggil dari shell script, CI/CD pipeline, container, job scheduler, atau environment automation lain tanpa perlu membangun UI khusus.

  3. Cocok untuk aksi operasional
    Banyak aksi software bersifat operasional: membuat resource, mengambil status, menjalankan deployment, mengirim request, membuat laporan, atau memicu transaksi. CLI sudah lama dipakai untuk pola seperti ini.

  4. Output bisa dibuat machine-readable
    CLI yang baik dapat menyediakan output JSON, exit code yang konsisten, dan mode --dry-run. Ini membuatnya lebih mudah dipakai oleh agent maupun sistem otomasi.

  5. Lebih mudah dibatasi dibanding UI penuh
    Dibanding membiarkan agent “mengklik” UI seperti manusia, CLI dapat dirancang dengan perintah yang lebih eksplisit, permission yang spesifik, dan audit log yang lebih rapi.

API, MCP, dan CLI: Bukan Saling Menggantikan

Public API, MCP, dan CLI sebaiknya tidak dilihat sebagai pilihan yang saling meniadakan. Ketiganya punya peran berbeda.

Public API cocok untuk integrasi sistem-ke-sistem yang stabil, terdokumentasi, dan berskala. API menjadi fondasi utama untuk aplikasi pihak ketiga, backend service, dan integrasi produk.

MCP membantu AI model dan agent mengakses tool atau konteks dengan cara yang lebih standar. MCP relevan ketika software ingin “dikenali” dan digunakan oleh ekosistem agent secara lebih langsung.

CLI cocok untuk workflow teknis, operasional, dan agentic automation yang berjalan di environment seperti terminal, container, server, atau pipeline. CLI juga dapat menjadi wrapper di atas API, sehingga developer dan agent tidak harus menyusun request HTTP secara manual.

Ke depan, software yang ingin lebih AI-agent friendly perlu mempertimbangkan ketiganya: UI/UX browser untuk manusia, API untuk integrasi, MCP untuk konteks agent, dan CLI untuk aksi terstruktur di environment otomasi.

Risiko Keamanan Saat AI Agent Menjalankan CLI

Memberi AI agent akses ke CLI bukan tanpa risiko. Justru karena CLI bisa mengeksekusi aksi nyata, desain keamanannya harus jauh lebih ketat.

Beberapa risiko utama yang perlu diperhatikan:

  • Prompt injection: agent dapat menerima instruksi berbahaya dari data eksternal, lalu menjalankan command yang tidak seharusnya.
  • Tool abuse: tool yang awalnya dibuat untuk membantu workflow bisa disalahgunakan untuk mengambil data, membuat transaksi, atau mengubah konfigurasi.
  • Excessive permissions: agent diberi permission terlalu luas, misalnya bisa membaca, menulis, dan mengeksekusi semua aksi tanpa batas.
  • Secret exposure: token, API key, session, atau credential bocor melalui log, output command, environment variable, atau error message.
  • Transaksi tanpa approval: agent melakukan pembelian, pengiriman, pembayaran, atau perubahan penting tanpa konfirmasi manusia.
  • Supply-chain dan command injection: dependency CLI, plugin, script, atau input command dapat menjadi jalur eksekusi perintah berbahaya.

Risiko ini tidak spesifik pada DoorDash. Ini adalah risiko umum ketika AI agent diberi kemampuan menjalankan tool yang memiliki dampak nyata.

Checklist Keamanan untuk CLI yang AI-Agent Friendly

Jika sebuah tim ingin membuat CLI yang aman untuk AI agent, checklist berikut bisa dijadikan baseline:

1. Terapkan RBAC dan least privilege

Gunakan role-based access control. Jangan beri agent akses admin secara default. Pisahkan role untuk membaca data, membuat draft, menjalankan aksi, dan melakukan approval.

Prinsipnya sederhana: agent hanya boleh memiliki permission yang benar-benar dibutuhkan untuk tugasnya.

2. Pisahkan read, write, dan execute

Perintah yang hanya membaca data harus dipisahkan dari perintah yang mengubah data atau mengeksekusi aksi. Misalnya:

  • search dan list untuk read-only
  • create-cart atau update-config untuk write
  • place-order, deploy, atau delete untuk execute/high-impact action

Dengan pemisahan ini, policy keamanan dapat diterapkan lebih presisi.

3. Wajibkan approval manusia untuk aksi berisiko

Untuk aksi seperti transaksi, pembayaran, penghapusan data, perubahan permission, atau deployment production, gunakan human-in-the-loop approval.

AI agent boleh menyiapkan rencana dan command, tetapi eksekusi final tetap membutuhkan persetujuan manusia.

4. Gunakan command allowlist

Jangan biarkan agent menjalankan command bebas. Terapkan allowlist untuk command dan flag yang boleh digunakan.

Contoh: agent boleh menjalankan search-store dan cart-preview, tetapi tidak boleh menjalankan place-order tanpa token approval khusus.

5. Jalankan di sandbox

Eksekusi CLI sebaiknya dilakukan di environment terisolasi seperti container, restricted shell, atau sandbox dengan akses file system dan network yang dibatasi.

Ini mengurangi dampak jika agent menjalankan command yang salah atau terkena prompt injection.

6. Isolasi credential

Credential untuk agent harus dipisahkan dari credential manusia dan service production. Gunakan token jangka pendek, scope terbatas, dan rotasi berkala.

Hindari menyimpan secret di plain text, log, shell history, atau output yang bisa dibaca agent secara tidak perlu.

7. Simpan audit log lengkap

Setiap command yang dijalankan agent perlu dicatat: siapa/apa yang menjalankan, kapan, parameter apa yang digunakan, output apa yang dihasilkan, dan apakah ada approval manusia.

Audit log penting untuk debugging, investigasi insiden, dan kepatuhan.

8. Terapkan rate limit dan quota

Agent bisa melakukan loop atau retry berlebihan. Rate limit membantu mencegah spam request, transaksi berulang, biaya tidak terkendali, atau beban sistem yang tidak wajar.

9. Sediakan mode dry-run

CLI yang AI-friendly sebaiknya punya mode --dry-run atau --preview. Mode ini memungkinkan agent menunjukkan rencana aksi tanpa benar-benar mengeksekusinya.

Untuk aksi sensitif, dry-run bisa menjadi tahap wajib sebelum approval.

10. Siapkan rollback

Jika CLI dapat mengubah data atau konfigurasi, pikirkan juga mekanisme rollback. Minimal, simpan state sebelum perubahan, buat idempotency key, dan pastikan aksi penting bisa dibatalkan jika memungkinkan.

11. Monitoring dan alerting

Aktivitas agent perlu dimonitor seperti aktivitas sistem penting lainnya. Buat alert untuk pola tidak wajar: command gagal berulang, volume request melonjak, akses data sensitif, atau percobaan menjalankan command di luar allowlist.

12. Patuhi perlindungan data personal Indonesia

Jika CLI mengakses data pengguna, tim perlu memperhatikan prinsip perlindungan data personal sesuai regulasi yang berlaku di Indonesia, termasuk pembatasan tujuan pemrosesan, minimisasi data, keamanan pemrosesan, dan pengendalian akses.

Agent tidak boleh diberi akses data personal lebih luas dari kebutuhan tugasnya.

Implikasi untuk Product dan Engineering Team

Bagi tim produk, pertanyaannya bukan lagi hanya “apakah aplikasi kita mudah dipakai manusia?” tetapi juga “apakah aplikasi kita aman dan jelas ketika dipakai agent?”

Bagi tim engineering, ini berarti dokumentasi command, permission model, output JSON, error handling, observability, dan approval flow menjadi bagian dari desain produk—not an afterthought.

CLI yang baik untuk AI agent bukan sekadar kumpulan command. Ia harus menjadi interface resmi yang:

  • terdokumentasi,
  • stabil,
  • bisa diuji,
  • memiliki permission granular,
  • aman untuk otomasi,
  • dan mudah diaudit.

Penutup

Contoh DoorDash CLI menunjukkan arah yang lebih luas: AI agent tidak harus selalu masuk lewat public API atau MCP. Dalam banyak workflow, CLI justru bisa menjadi interface yang praktis, terstruktur, dan dekat dengan cara software engineer bekerja.

Namun semakin besar kemampuan agent untuk menjalankan aksi, semakin besar pula kebutuhan kontrol keamanan. Software masa depan perlu dirancang bukan hanya untuk manusia yang mengklik UI, tetapi juga untuk agent yang menjalankan tool.

Kombinasi UI, API, MCP, dan CLI akan menjadi fondasi penting bagi software yang benar-benar siap memasuki era AI automation.

Referensi