Show HN: Let your AI agents paint big arrows, boxes and text on your screen

AI Agent dan Dilema Antarmuka Visual: Analisis Teknis di Balik "Big Arrow on the Screen"

Eksperimen yang baru-baru ini ramai di Hacker News, bertajuk “Let your AI agents paint big arrows, boxes and text on your screen” (berbasis repositori big-arrow-on-the-screen), mengangkat kembali perdebatan mendasar dalam interaksi manusia dan kecerdasan buatan: bagaimana cara terbaik menjembatani keputusan model otonom ke dalam ruang kerja fisik pengguna tanpa merusak alur kerja yang sedang berjalan?

Alih-alih membiarkan model bahasa besar (LLM) dengan kapabilitas Vision langsung mengeksekusi kontrol kursor secara agresif ala Anthropic Computer Use, proyek ini memilih pendekatan visual overlay. Agent bertindak sebagai pemandu visual di atas antarmuka sistem operasi (OS) pengguna.

Di atas kertas, pendekatannya tampak sederhana. Namun, implementasi teknis di balik layar membuka sejumlah kompromi arsitektural yang krusial untuk dipahami oleh sistem engineer.

---

Problem Statement: Kerapuhan Direct Control

Model eksekusi GUI berbasis AI saat ini memiliki dua kelemahan utama:

  1. Risiko Desinkronisasi State: Mengizinkan agent mengirim event mouse_click atau key_down secara langsung ke OS adalah mimpi buruk determinisme. Satu frame lag atau pergeseran rendering window dapat menyebabkan agent mengklik tombol Delete Database alih-alih Save.
  2. Ketiadaan Observabilitas Real-Time: Pengguna kesulitan memvalidasi pemahaman spasial model sebelum aksi destruktif dilakukan.

Memberikan kemampuan bagi agent untuk menggambar elemen visual (panah, bounding box, teks instruksi) langsung di layar memecahkan masalah validasi ini. Sistem mengubah paradigma agent dari unsupervised automation menjadi human-in-the-loop guidance. Pengguna tetap memegang kendali eksekusi, sementara agent memproyeksikan intensinya.

---

Mekanisme di Balik Layar: Arsitektur Overlay dan Koordinat Spasial

Membangun sistem yang memungkinkan proses eksternal menggambar secara bebas di atas seluruh desktop melibatkan interaksi level rendah dengan window manager.

[OS Framebuffer / Screen Capture]
           │
           ▼
[VLM Inference (Claude / Local VLM)] ──> Menghasilkan Koordinat (X, Y)
           │
           ▼
[IPC / WebSocket Server]
           │
           ▼
[Transparent Click-Through Canvas] ──> Render Primitif (Arrow / Box)
           │
           ▼
[Layar Pengguna (OS Window Compositor)]

1. Transparent Click-Through Windowing

Aplikasi overlay harus berjalan sebagai jendela global tanpa batas (borderless fullscreen window) yang selalu berada di layer teratas (always-on-top). Masalah teknis pertamanya adalah memastikan jendela ini tidak menangkap event input pengguna.

  • Pada Windows, ini memerlukan manipulasi atribut jendela menggunakan Win32 API: flag WS_EX_TRANSPARENT dikombinasikan dengan WS_EX_LAYERED agar klik mouse menembus kanvas langsung ke aplikasi di bawahnya.
  • Pada macOS, jendela harus dikonfigurasi melalui Cocoa API dengan properti ignoresMouseEvents = true pada level NSWindowSharingNone atau level overlay status bar.
  • Pada Linux, khususnya di lingkungan Wayland, pendekatan ini langsung berbenturan dengan isolasi keamanan model compositor. Berbeda dengan X11 yang memungkinkan jendela manapun menggambar di root canvas, Wayland membatasi window agar tidak dapat memanipulasi ruang di luar permukaannya sendiri tanpa protokol khusus seperti wlr-layer-shell.

2. Normalisasi Koordinat dan DPI Scaling

Model visi biasanya menerima screenshot yang telah dikompresi atau diubah ukurannya (misalnya 1024x1024 piksel) untuk menghemat token dan menjaga latensi inferensi.

Tantangan terbesarnya adalah transformasi koordinat:

  • Model memprediksi bahwa target berada pada titik normalisasi [x: 0.45, y: 0.62].
  • Sistem render overlay harus memetakan koordinat tersebut kembali ke resolusi fisik layar pengguna.
  • Keberadaan multi-monitor dengan tingkat DPI scaling berbeda (misalnya satu layar 4K dengan scaling 175% dan layar sekunder 1080p pada 100%) menuntut pipeline transformasi matriks yang ketat. Jika terjadi kesalahan kalkulasi offset, panah penunjuk akan meleset beberapa puluh piksel, menghilangkan nilai utilitas visual tersebut.

---

Trade-Off Arsitektur: Vision vs. DOM/Accessibility Tree

Proyek seperti ini mengandalkan pendekatan murni visual (pixel-in, pixel-out). Ada trade-off performa dan biaya yang signifikan di sini jika dibandingkan dengan inspeksi struktural.

| Parameter | Pendekatan Vision Overlay (Pixel-based) | Pendekatan Accessibility Tree (AX/DOM) | | :--- | :--- | :--- | | Universality | Sangat tinggi. Bekerja di aplikasi apapun: web, legacy Win32, canvas terminal, game engine. | Rendah hingga moderat. Bergantung pada kepatuhan developer terhadap standar AX API OS. | | Latency | Buruk. Siklus capture -> encoding -> inferensi VLM membutuhkan waktu 1000ms hingga 3500ms. | Sangat cepat. Query tree UI OS memakan waktu kurang dari 50ms. | | Token / Compute Cost | Mahal. Setiap iterasi memakan ribuan token input berbasis gambar. | Murah. Struktur berbasis teks/JSON mengonsumsi token jauh lebih sedikit. | | Determinisme | Probabilistik. Output koordinat dapat bergeser akibat variasi rendering atau hallucination. | Deterministik. Elemen diidentifikasi via ID node spesifik. |

Penggunaan Vision murni adalah pilihan pragmatis untuk menghindari inkonsistensi Accessibility API di berbagai platform. Namun, latensi 2 detik untuk sekadar memunculkan panah di atas tombol submit bukanlah pengalaman komputasi yang efisien untuk kebutuhan real-time.

---

Implikasi Keamanan dan Lingkungan Produksi

Jika arsitektur ini dibawa ke lingkungan enterprise, tim platform engineer akan menghadapi sejumlah blocker operasional:

  1. False Positive pada EDR (Endpoint Detection and Response):

Aplikasi yang mengambil screenshot berkala di latar belakang, membuka soket komunikasi lokal, dan menyuntikkan jendela transparan di atas proses lain memiliki pola perilaku yang identik dengan malware jenis screen-scraper atau clickjacking injector. Konfigurasi bypass EDR akan menjadi keharusan.

  1. Resiko Data Leakage via Visual Capture:

Mengirimkan seluruh tampilan layar ke endpoint API eksternal (OpenAI, Anthropic, atau provider lain) mengekspos data sensitif seperti tab browser lain, notifikasi Slack yang masuk, atau kredensial di terminal. Solusi produksi membutuhkan masking lokal berbasis PII sebelum frame diteruskan ke model.

  1. Kompleksitas Wayland:

Ekosistem Linux modern sengaja mendesain compositing layer untuk memutus fungsionalitas global listener dan global painter demi alasan isolasi sandboxing. Mengimplementasikan tool semacam ini secara portabel di Linux tanpa hak akses root atau ekstensi compositor khusus adalah tantangan non-trivial.

---

Engineering Takeaways

Pendekatan big arrow on the screen patut dicatat bukan karena kecanggihan grafisnya, melainkan karena realisme interaksinya.

  • Jangan serahkan eksekusi ke agent jika visual guidance mencukupi: Menggambar intensi jauh lebih aman secara operasional daripada mengeksekusi klik langsung. Dalam skenario audit, training internal, atau alur kerja kompleks, memproyeksikan layer instruksi adalah pola mitigasi risiko yang tepat.
  • Waspadai biaya inferensi visual: Menggunakan VLM berukuran besar hanya untuk menghasilkan koordinat panah adalah pemborosan sumber daya. Sistem yang ideal harus menggunakan model hybrid: VLM berukuran kecil (seperti varian Qwen-VL atau Florence lokal) untuk lokalisasi elemen UI, sementara penalaran tugas tingkat tinggi tetap didelegasikan ke model penalaran berbasis teks.
  • Pemisahan thread rendering dan inferensi: Kanvas visual harus berjalan pada event loop lokal dengan framerate tinggi, sementara koordinat di-push secara asinkronus. Jangan pernah mengunci render thread OS hanya untuk menunggu respons jaringan dari model.

Visual overlay pada OS adalah solusi transisi yang fungsional. Selama OS modern belum menyediakan protokol komunikasi native khusus agent (Agent-to-OS IPC), teknik menggambar kanvas transparan di level compositor adalah cara paling universal yang kita miliki saat ini.

Arsitektur & Alur Visual Sistem

Arsitektur dan Alur Sistem: Show HN: Let your AI agents paint big arrows, boxes and text on your screen