Handoff desain telah menjadi masalah yang terpecahkan untuk developer manusia sejak sekitar tahun 2016. Zeplin, InVision Inspect, Avocode, Dev Mode milik Figma sendiri — semuanya melakukan hal yang sama: memberi developer antarmuka web tempat mereka dapat mengklik sebuah node dan membaca propertinya.
Alur kerja itu benar-benar gagal ketika "developer"-nya adalah agen AI.
Artikel ini menjelaskan mengapa demikian, apa yang sebenarnya dibutuhkan agen, dan cara menyusun alur kerja handoff yang menghasilkan kode yang benar, bukan kode yang kira-kira saja. Solusinya adalah figmascope — alat berbasis browser yang mengekspor bundel konteks terstruktur langsung dari file Figma Anda. Untuk alur kerja langkah demi langkah, lihat Figma ke Claude Code atau Figma ke Cursor.
Asumsi handoff desain
Setiap alat handoff yang dibuat sebelum 2023 membuat asumsi implisit yang sama: ada manusia di ujung lainnya, yang mengklik-klik, membaca nilai, membuat keputusan. Pekerjaan alat ini adalah menyajikan informasi dengan cukup jelas sehingga seorang developer terampil dapat bekerja darinya tanpa terus-menerus berpindah konteks kembali ke desainer.
Asumsi ini tertanam dalam keseluruhan UX alat-alat tersebut:
- Nilai ditampilkan dalam panel, bukan diekspor ke file
- Cuplikan kode dibuat sesuai permintaan per pilihan, bukan untuk seluruh file
- Developer menavigasi desain dengan mengklik, bukan dengan mengkueri struktur data
- Anotasi ditulis dalam bahasa alami, bukan dalam format yang dapat diurai mesin
Tidak ada yang salah dari ini. Ini sudah benar untuk alur kerja developer manusia. Ini hanyalah antarmuka yang salah untuk sebuah agen.
Apa yang sebenarnya dibutuhkan agen dari sebuah desain
Agen AI yang menerima tugas desain membutuhkan:
- Spesifikasi yang dibacanya sebelum melakukan apa pun — batasan, cakupan, konvensi penamaan token, catatan versi. Tidak tersirat hanya dengan mengarahkan kursor ke panel; ditulis secara eksplisit.
- Kamus token bertipe — bukan nilai hex mentah dan angka piksel, melainkan token bernama dan bertipe dengan nilainya. Agen perlu tahu bahwa
#d96a3aadalahcolor.accentagar dapat menghasilkan nama kelas Tailwind atau properti CSS custom yang benar. - Pohon tata letak layar penuh — hierarki setiap node, hubungan tata letaknya, ukurannya, referensi tokennya. Bukan satu node pada satu waktu sesuai permintaan; pohon penuh di memori.
- String yang dikonsolidasi — semua konten teks, dinormalisasi, dengan kunci resource. Tidak tersebar di seluruh node individual.
- Kebenaran visual — render referensi yang dapat dibandingkan oleh agen dengan outputnya. Screenshot desain pada 2×.
- Nama komponen — pengenal kanonik yang harus digunakan oleh kode yang dihasilkan, bukan nama yang dibuat-buat.
Alat handoff tradisional tidak menyediakan satu pun dari ini dalam bentuk yang dapat digunakan agen. Aplikasi figmascope menghasilkan semuanya dalam satu zip — tempelkan URL Figma Anda, dapatkan bundel. Tanpa unggah, tanpa backend. Format token dibahas secara mendalam di Ekspor Token Desain untuk Agen AI.
Mengapa screenshot gagal
Solusi cepat yang paling sering dicoba orang: ekspor PNG dari Figma dan berikan ke agen dengan prompt seperti "implementasikan layar ini." Agen menghasilkan kode. Kadang terlihat cukup mirip. Tapi:
- Nilai spasi ditebak. Agen melihat "kira-kira jarak 16px" dan menghasilkan 14px atau 20px.
- Warna dideskripsikan, tidak diekstrak. "Oranye hangat" menjadi
#E67A40alih-alih#D96A3A. - Tipografi disimpulkan. Ketebalan font dan tinggi baris didekati.
- Nama komponen dibuat-buat. Agen akan menyebut sesuatu
UserCardsementara desain menyebutnyaProfileTile. - String kadang di-OCR, kadang diparafrasekan. Salinan Anda ditulis ulang.
Masing-masing kesalahan ini kecil secara individual. Bersama-sama, jumlahnya membentuk komponen yang memerlukan koreksi manual yang signifikan — yang mengalahkan sebagian besar penghematan waktu dari penggunaan agen sama sekali.
Lihat mengapa screenshot gagal untuk AI codegen untuk rincian lengkap dengan contoh.
Screenshot memberi tahu agen seperti apa tampilan desain. Konteks terstruktur memberi tahu agen apa desain itu.
Alat handoff tradisional, dinilai
Zeplin
Antarmuka utama Zeplin adalah aplikasi web tempat developer memeriksa desain node demi node. Ini memiliki fitur "Styleguide" yang mengagregasi warna dan tipografi dari file — hal yang paling mendekati ekspor token. Ini tidak mengekspor pohon tata letak yang dapat dibaca mesin. Fitur "Connected Components"-nya menghubungkan komponen Storybook ke frame Figma, yang berguna untuk dokumentasi tetapi tidak membantu agen menghasilkan kode baru.
Figma Dev Mode
Jawaban asli Figma untuk handoff. Panel kode menghasilkan CSS dari node yang dipilih dan menampilkan nama Variabel jika sudah diatur. Dirancang dengan baik untuk developer manusia. Tidak mendukung ekspor tingkat file, tidak menghasilkan pohon tata letak, dan cuplikan kodenya hanya CSS (bukan token agnostik framework). Memerlukan kursi Dev Mode.
Avocode
Avocode diakuisisi oleh Abstract dan kemudian dihentikan pada tahun 2022. Disebutkan karena masih muncul dalam hasil pencarian untuk "alat handoff desain" dan mendorong beberapa lalu lintas perbandingan. Ini tidak lagi tersedia.
Locofy, Builder.io, Anima
Alat-alat ini mencoba menghasilkan kode framework aktual (React, Next.js, HTML) langsung dari desain Figma. Mereka lebih dekat ke ruang masalah — mereka memahami bahwa outputnya harus berupa kode, bukan hanya panel properti. Tapi mereka menghasilkan kode yang Anda deploy, bukan konteks yang Anda berikan ke agen. Perbedaan ini penting: Anda tidak dapat meminta "Implementasikan layar Pengaturan, menggunakan kembali komponen UserAvatar yang sudah saya buat" saat alat tersebut sendiri yang menghasilkan kode. Anda dapat meminta itu ke Claude Code atau Cursor saat Anda telah memberikan konteks terstruktur kepada mereka.
Lihat figmascope vs Locofy dan figmascope vs Builder.io untuk perbandingan terperinci.
Seperti apa handoff yang siap untuk agen
Handoff yang siap untuk agen memiliki tiga properti yang membedakannya dari handoff tradisional:
1. Ini adalah artefak file, bukan UI
Artefak handoff adalah file (atau sekumpulan file) berversi yang hidup di repositori di samping kode. Bukan tautan bersama yang memerlukan login. Bukan panel di aplikasi web. Sebuah direktori design/ dengan file JSON, PNG, dan Markdown.
Ini memiliki beberapa konsekuensi:
- Dikontrol versi. Anda dapat
git diffperubahan token antar sprint desain. - Dapat digunakan offline. Agen tidak perlu memanggil API pada saat codegen.
- Dapat direproduksi. File Figma yang sama + versi figmascope yang sama menghasilkan bundel yang sama.
2. Menggunakan data bertipe, bukan teks yang dirender
Token desain di tokens.json bertipe — $type: "color", $type: "dimension" — bukan sekadar string dalam tabel Markdown. IR tata letak di screens/*.json memiliki jenis node eksplisit (stack, overlay, absolute, leaf) dan referensi token menggunakan notasi $ref. String di strings.json memiliki kunci notasi titik, bukan hanya label yang dapat dibaca manusia.
Data bertipe berarti agen dapat bernalar tentangnya secara terprogram: "semua node dengan background.$ref == color.surface menggunakan warna latar belakang yang sama," bukan "semua node yang tampaknya berada di latar belakang yang sama."
3. Menyertakan dokumen spesifikasi yang dibaca agen terlebih dahulu
CONTEXT.md adalah kontrak antara desainer dan agen. Ini mendeskripsikan:
- Frame mana yang ada dalam cakupan dan mana yang tidak
- Konvensi penamaan token yang digunakan
- Contoh yang telah dikerjakan — "node dengan
background: { $ref: 'color.surface' }harus menggunakanbg-surfacedi Tailwind" - Anomali yang diketahui — frame di mana auto-layout tidak ada dan figmascope menyimpulkan tata letak dari posisi anak
- Versi figmascope yang digunakan dan cap waktu ekspor
Handoff tradisional tidak memiliki padanannya. Dev Mode memiliki field "catatan developer" per frame, tetapi ditulis secara ad-hoc oleh desainer tanpa struktur. CONTEXT.md dihasilkan secara konsisten dari konten sebenarnya file tersebut.
Alur kerja handoff langkah demi langkah
- Desainer menandai frame siap — di Figma, desainer menandai frame yang siap untuk implementasi (konvensi penamaan, label "siap", apa pun yang digunakan tim Anda).
- Developer menjalankan figmascope — tempelkan URL file dan PAT di figmascope.dev, klik ekspor, unduh zip.
- Unzip ke design/ —
unzip figmascope-<fileKey>.zip -d design/ - Commit design/ ke repo — bundel adalah artefak handoff. PR mencakup bundel desain dan implementasi.
- Agen mengimplementasikan — arahkan Claude Code atau Cursor ke
design/CONTEXT.mddan JSON layar yang relevan. Agen menghasilkan kode yang menggunakan nilai token, nama komponen, dan string dari bundel. - Review dan iterasi — developer melakukan review terhadap
screens/*.png, mencatat celah apa pun, menyempurnakan prompt.
Saat desain berubah, ulangi dari langkah 2. Cap waktu _meta.json memberi tahu Anda kapan bundel terakhir dibuat relatif terhadap kapan file Figma terakhir dimodifikasi — pemeriksaan kesegaran yang sederhana.
{
"figmascopeVersion": "1.0.0",
"fileKey": "ABC123",
"exportedAt": "2026-05-11T09:14:00Z",
"figmaLastModified": "2026-05-10T18:30:00Z",
"frameCount": 8,
"warnings": [
{
"code": "layout-mode-none-inferred",
"message": "Frame 'Modal' has no auto-layout; child positions inferred from absolute coordinates.",
"nodeId": "2:34"
}
]
}
Apa yang tidak berubah
Handoff yang siap untuk agen tidak menggantikan review desain. Agen mengimplementasikan dari konteks terstruktur; manusia masih memverifikasi hasilnya. Status interaksi, animasi, perilaku responsif, aksesibilitas — ini memerlukan penilaian yang dapat didekati agen tetapi tidak dapat dijamin hanya dari data desain statis.
Konteks terstruktur juga tidak menggantikan percakapan desainer-developer. Jika sebuah token diberi nama yang ambigu, atau komponen berperilaku berbeda di berbagai breakpoint dari yang disarankan frame statis, itu perlu diskusi. CONTEXT.md menangkap apa yang ada di file; itu tidak menyimpulkan apa yang dimaksudkan desainer untuk kasus yang tidak ditangani file.
Yang berubah: implementasi tata letak layar statis dari desain yang stabil berubah dari proses manual berjam-jam menjadi alur kerja prompt-dan-review. Agen menangani terjemahan mekanis; developer menangani keputusan penilaian.
Daftar periksa: apakah handoff desain Anda siap untuk agen?
- Token desain diekspor ke file JSON yang dapat dibaca mesin (bukan hanya panel Figma Variables atau halaman Notion)
- Token memiliki nama semantik, bukan hanya nilai hex atau angka piksel
- Hierarki tata letak untuk setiap layar tersedia sebagai file data terstruktur, bukan hanya screenshot
- String UI dikonsolidasi dengan kunci resource yang stabil
- Nama komponen kanonik dan konsisten antara file desain dan codebase
- Dokumen spesifikasi ada yang dapat dibaca agen sebelum mengimplementasikan
- Artefak handoff dikontrol versi bersama kode
Jika sebagian besar dari ini tidak ada, agen akan menghasilkan kode yang memerlukan lebih banyak koreksi daripada memulai dari awal dengan konteks yang baik. Bundel yang dihasilkan figmascope memenuhi semua persyaratan dalam satu ekspor. Kunjungi blog figmascope untuk studi kasus dan penyelaman lebih dalam pada setiap item daftar periksa, atau lihat Alternatif Figma Inspector untuk perbandingan langsung dengan Dev Mode dan plugin.