Kenapa Agen AI Kini Bisa Mengklik Aplikasi Tanpa Screenshot?
Vercel Labs merilis agent-desktop, tool open source yang memberi coding agent kendali atas aplikasi desktop lewat accessibility tree, tanpa screenshot.
Bayangkan coding agent favoritmu selama ini hanya hidup di terminal. Ia bisa menulis kode, menjalankan tes, dan membuka pull request. Namun begitu tugasmu keluar dari editor, misalnya membuka pengaturan aplikasi atau mengisi formulir di program desktop, ia angkat tangan.
Itulah celah yang ditutup Vercel Labs lewat agent-desktop. Tool open source ini diumumkan pada 30 Oktober 2026 dan langsung melesat ke puncak GitHub trending harian pada 3 November, dengan lebih dari 2.200 star dalam sehari.

Artikel ini menjelaskan cara kerja agent-desktop, kenapa ia tidak memakai screenshot sama sekali, dan batasan yang perlu kamu pahami sebelum memberinya kendali atas laptopmu.
Apa Itu agent-desktop dan Kenapa Ia Bukan Agen
agent-desktop adalah tool computer use untuk AI agent. Ia berjalan di macOS, Windows, dan Linux, dan tugasnya satu: membaca aplikasi desktop lalu mengoperasikannya atas perintah agen. Ia bukan agen itu sendiri. Di dalamnya tidak ada model bahasa, tidak ada antarmuka grafis, dan tidak ada prompt interaktif.
Tool ini datang dari Vercel Labs, tim yang sama di balik agent-browser. Chris Tate, pembangun agent-browser, memperkenalkannya sebagai agent-browser untuk seluruh komputermu. CEO Vercel Guillermo Rauch ikut membagikannya dengan kalimat singkat, agen di setiap desktop.
Proyek ini sebenarnya sudah dikerjakan sejak Februari 2026 sebagai proyek pribadi. Versi 1.0.0 terbit pada 28 Oktober, lalu pindah ke organisasi vercel-labs dan versi 1.0.2 menyusul pada 30 Oktober. Versi 1.1.0 mendarat pada 3 November 2026, di hari yang sama ia memuncaki trending GitHub.
Cara Kerjanya: Snapshot, Ref, lalu Verifikasi
Alih-alih memotret layar, agent-desktop membaca accessibility tree, struktur yang sama dipakai screen reader. Setiap tombol, kolom teks, menu, dan daftar punya peran dan label yang sudah dikelola sistem operasi. Tool ini mengubah struktur itu menjadi JSON dan memberi setiap elemen yang bisa diaksi sebuah ref.
Alurnya selalu tiga langkah. Agen meminta snapshot sebuah aplikasi, misalnya Finder, lalu menerima daftar elemen interaktif beserta ref-nya. Agen mengklik atau mengetik pada ref tertentu, kemudian meminta snapshot baru untuk memastikan hasilnya. Jika antarmuka berubah di tengah jalan, aksi itu gagal dengan kode STALE_REF atau AMBIGUOUS_TARGET, dan agen harus mengambil snapshot baru.
Di balik layar, agent-desktop memakai API aksesibilitas tiap sistem operasi. macOS memakai AX API, Windows memakai UI Automation, dan Linux memakai AT-SPI. Satu inti Rust yang sama melayani ketiganya lewat trait PlatformAdapter, dan tiap biner dikompilasi khusus untuk satu sistem operasi.
Secara bawaan semua aksi berjalan headless. Kursor tidak bergerak dan fokus jendela tidak berpindah, jadi agen bisa bekerja sementara kamu tetap memakai komputer. Kalau kamu memang ingin input fisik, ada flag headed untuk itu.
Kenapa Tanpa Screenshot Justru Lebih Hemat Token
Cara lama computer use memakai screenshot lalu menebak koordinat piksel. Cara itu rapuh dan boros. Satu gambar layar bisa menghabiskan ribuan token, dan tombol yang bergeser beberapa piksel saja sudah cukup membuat klik meleset.
Dengan accessibility tree, agen membaca struktur, bukan gambar. Vercel mengklaim penghematan besar lewat snapshot skeleton, versi ringkas dari pohon aksesibilitas. Snapshot skeleton aplikasi Slack misalnya hanya sekitar 3,6 KB, berbanding sekitar 17,3 KB untuk pohon lengkapnya.

Angka dari pembangunnya bahkan lebih ekstrem. Sekali melihat Apple Maps disebut hanya butuh 273 token, berbanding 3.811 token untuk seluruh jendela. Tugas simulasi 52 langkah disebut turun dari 198 ribu token menjadi 31 ribu token. Angka ini datang dari pembangunnya sendiri dan belum diuji pihak independen, jadi anggap sebagai klaim, bukan benchmark.
Apa Saja yang Bisa Dilakukan: 56 Perintah
agent-desktop punya 60 nama perintah, dan 56 di antaranya operasional. Empat sisanya, penahan tombol dan mouse, menolak berjalan sampai ada daemon yang bisa melepasnya. Perintahnya dikelompokkan rapi: observasi, aksi pada ref, keyboard dan mouse, aplikasi dan jendela, notifikasi, clipboard, sesi, dan sistem.
Kamu bisa meminta snapshot, mencari elemen, mengklik, mengetik, menggulir, membuka dan menutup aplikasi, mengatur ukuran jendela, membaca dan menghapus notifikasi, sampai mengakses clipboard. Ada juga perintah wait untuk menunggu kondisi tertentu, dan cursor-overlay yang menampilkan penanda di layar saat agen bekerja.
Instalasi dibuat semudah mungkin. Satu perintah npm install -g agent-desktop sudah cukup, dan Homebrew juga tersedia di macOS dan Linux. Paketnya membawa biner native untuk x64 dan ARM64, plus library C bernama libagent_desktop_ffi agar program lain bisa memanggilnya langsung dari dalam proses.
Untuk agen, ada mode MCP. Perintah agent-desktop mcp menyajikan setiap perintah sebagai tool MCP lewat stdio, jadi Claude Code, Codex, atau agen lain bisa memakainya tanpa integrasi khusus. Ada juga skill bawaan yang bisa diambil lewat perintah skills get, lengkap dengan aturan loop, ref, dan verifikasi.
Batasan dan Risiko yang Jangan Diabaikan
Tool ini punya batas yang jelas. Aplikasi yang tidak mengekspos accessibility tree tidak terlihat sama sekali olehnya. Antarmuka yang hanya berbasis piksel, misalnya sebagian game atau aplikasi kustom, tetap di luar jangkauan.
Risiko terbesar justru datang dari kekuatannya. Agen yang memakai tool ini bisa melakukan apa pun yang bisa dilakukan akunmu di aplikasi mana pun yang terbuka. README-nya sendiri memperingatkan bahwa snapshot, isi clipboard, screenshot, dan output perintah bisa berisi konten privat dari desktopmu. Semua itu harus dijauhkan dari log publik dan unggahan.
Di macOS, agent-desktop butuh izin Accessibility, dan ada panduan bawaan lewat perintah permissions --guide untuk mengaturnya. Izin ini bukan formalitas. Ia adalah gerbang yang sama dipakai screen reader, dan memberikannya berarti memberi akses membaca dan mengendalikan aplikasi di komputermu.
Praktik amannya sederhana. Arahkan agen hanya ke tugas dan jendela yang memang kamu percayai, dan perlakukan teks apa pun yang ia baca di layar sebagai input yang tidak tepercaya. Sama seperti memberi kunci rumah, kamu tidak memberikannya ke sembarang orang.
Cara Mencoba dan Apa Artinya buat Kamu
Kalau kamu penasaran, mulailah dari perintah status untuk memeriksa platform dan izin, lalu coba snapshot pada satu aplikasi. Lisensinya Apache-2.0, jadi kamu bebas memakai dan memodifikasinya, dan repositorinya terbuka di github.com/vercel-labs/agent-desktop.
Buat developer, ini membuka pola kerja baru. Agen coding yang selama ini berhenti di batas terminal kini bisa melanjutkan ke aplikasi desktop. Ia bisa mengisi formulir, memeriksa hasil di aplikasi lain, atau menyelesaikan alur kerja yang selama ini butuh tangan manusia.
Buat kamu yang membangun proyek sendiri, pola yang sama patut dicoba di /projects. Tool seperti ini menunjukkan bahwa batas antara agen dan desktop makin tipis, dan yang membedakan agen yang membantu dengan agen yang membahayakan adalah izin yang kamu berikan.
agent-desktop bukan sulap. Ia hanya membaca struktur yang selama ini sudah ada di sistem operasimu, lalu memberikannya ke agen dalam format yang bisa dipahami mesin. Namun justru kesederhanaan itulah yang membuatnya menarik. Ketika agen tidak lagi menebak piksel, ia bekerja lebih cepat, lebih murah, dan lebih bisa diandalkan.

Dimas Febriyanto
Fullstack & Mobile Developer specializing in Golang & Flutter. Aktif sebagai Junior Mobile Developer di Sagara Technology & asisten lab di Universitas Gunadarma. Passionate about building scalable algorithms & high-impact applications.
Lihat Portofolio