Prabu Faizal
Prabu Faizal

Dipublikasikan 8 September 2025

Mulai Spec-Driven Development dengan AI: Toolkit Open Source Terbaru yang Wajib Dicoba!

Seiring kemajuan teknologi coding agents, muncul pola baru: Anda memberikan deskripsi tujuan, lalu mendapatkan kode yang terlihat benar, namun seringkali tidak sepenuhnya berfungsi sesuai harapan. Pendekatan ini, yang bisa disebut sebagai "vibe-coding," efektif untuk prototipe cepat namun kurang dapat diandalkan dalam pengembangan aplikasi serius atau saat bekerja dengan kode yang sudah ada.

Kode yang dihasilkan kadang gagal dikompilasi, atau hanya menyelesaikan sebagian masalah tanpa menangkap maksud sebenarnya. Tumpukan teknologi (stack) atau arsitekturnya pun mungkin tidak sesuai preferensi Anda.

Masalahnya bukan pada kemampuan coding agents itu sendiri, melainkan cara kita menggunakannya. Kita cenderung memperlakukan coding agents seperti mesin pencari, padahal mereka lebih cocok diperlakukan seperti pair programmer yang literal dan membutuhkan instruksi yang jelas.

Mengenal Spec-Driven Development dan Spec Kit

Kini, kita mulai mengubah konsep spesifikasi dari dokumen statis menjadi artefak dinamis yang dapat dieksekusi dan berkembang bersama proyek. Spesifikasi menjadi sumber kebenaran bersama. Jika ada keraguan, spesifikasi menjadi rujukan utama; saat proyek makin kompleks, spesifikasi diperbaiki; dan bila tugas terlalu besar, didekomposisi menjadi bagian lebih kecil.

Untuk mengimplementasikan metode ini, diperkenalkan Spec Kit, sebuah toolkit open source yang mendukung pengembangan dengan pendekatan spec-driven. Ia menyediakan proses terstruktur dan dapat bekerja dengan coding agents populer seperti GitHub Copilot, Claude Code, dan Gemini CLI.

Apa Itu Spec-Driven Development?

Alih-alih coding dulu baru menulis dokumentasi, dalam spec-driven development Anda mulai dengan membuat spesifikasi terlebih dahulu. Spesifikasi ini berfungsi sebagai kontrak yang menentukan bagaimana kode harus berperilaku, menjadi pusat kebenaran bagi tool dan agen AI yang digunakan untuk membuat, menguji, dan memvalidasi kode. Pendekatan ini mengurangi tebak-tebakan, kejutan tak terduga, dan menghasilkan kode berkualitas lebih baik.

Proses Spec-Driven dengan Spec Kit

Spec Kit menempatkan spesifikasi di pusat proses rekayasa perangkat lunak Anda. Spesifikasi tidak hanya ditulis dan disimpan, melainkan menjadi penggerak implementasi, daftar pemeriksaan, dan pembagian tugas. Anda sebagai pengembang berperan mengarahkan, sementara coding agent melakukan sebagian besar penulisan kode.

Prosesnya dibagi menjadi empat fase dengan titik pemeriksaan yang jelas. Anda tidak melanjutkan ke fase berikutnya sampai kegiatan saat ini tervalidasi sepenuhnya. Berikut gambaran setiap fase:

  1. Specify: Anda memberikan deskripsi umum tentang apa dan mengapa proyek dibuat. Coding agent kemudian membuat spesifikasi detail yang fokus pada perjalanan pengguna, pengalaman, dan hasil yang diinginkan. Ini adalah peta pengalaman pengguna yang terus diperbarui seiring pengetahuan bertambah.
  2. Plan: Pada tahap ini, aspek teknis seperti stack, arsitektur, dan batasan teknis dimasukkan. Coding agent menyusun rencana teknis lengkap yang disesuaikan dengan standar perusahaan atau kebutuhan integrasi, termasuk opsi rencana yang berbeda jika dibutuhkan.
  3. Tasks: Coding agent memecah spesifikasi dan rencana menjadi potongan pekerjaan kecil yang dapat di-review dan diuji secara independen. Contoh: bukan hanya "buat autentikasi", tapi "buat endpoint registrasi pengguna yang memvalidasi format email." Ini seperti prinsip test-driven development untuk AI.
  4. Implement: Coding agent mengerjakan tugas satu per satu, Anda fokus meninjau perubahan spesifik yang berhubungan dengan solusi masalah tertentu, sehingga review lebih terfokus dan efisien. Spesifikasi, rencana, dan tugas memberikan arahan jelas selama proses.

Peran Anda bukan hanya mengarahkan, tapi juga memverifikasi tiap tahap. Apakah spesifikasi sudah mewakili yang ingin dibangun? Apakah rencana sudah realistis dengan kondisi nyata? Adakah celah atau kasus sudut yang terlewat? Proses ini menyediakan kesempatan eksplisit untuk mengkritik dan memperbaiki sebelum melanjutkan.

Cara Menggunakan Spec Kit dalam Workflow Coding Agent Anda

Spec Kit kompatibel dengan coding agents seperti GitHub Copilot, Claude Code, dan Gemini CLI. Anda mengendalikan agen lewat serangkaian perintah sederhana, sementara agen melakukan pembuatan artefak kode secara otomatis.

Proses setup juga mudah, mulai dengan menginstal tool command line specify via perintah berikut:

Plain Text

uvx --from git+https://github.com/github/spec-kit.git specify init 

Setelah proyek diinisialisasi, gunakan perintah /specify untuk memasukkan prompt tingkat tinggi mengenai "apa" dan "mengapa" proyek dibuat. Coding agent akan menghasilkan spesifikasi lengkap.

Selanjutnya, jalankan /plan untuk meminta coding agent menyusun rencana teknis. Anda dapat menyatakan teknologi yang diinginkan, batasan, atau standar perusahaan, dan agen akan merancang rencana sesuai.

Terakhir, dengan /tasks, coding agent akan memecah spesifikasi dan rencana menjadi daftar tugas yang dapat langsung diimplementasikan dan diuji.

Alur kerja ini mengubah input yang samar menjadi tujuan yang jelas, sehingga coding agents dapat menjalankan tugasnya secara andal dan terstruktur.

Kenapa Pendekatan Ini Lebih Efektif?

Model bahasa sangat mahir mengenali pola, tapi tidak bisa membaca pikiran. Prompt yang umum seperti "tambah fitur berbagi foto di aplikasi" memaksa AI menebak ribuan kebutuhan tak tersampaikan. Akibatnya, ada asumsi yang salah yang baru terungkap saat implementasi lanjut.

Berbeda dengan itu, spesifikasi jelas, rencana teknis, dan tugas yang terfokus memberikan gambaran yang lengkap. Coding agent jadi memahami apa yang harus dibuat, bagaimana cara membangunnya, dan urutan pengerjaannya.

Metode ini berhasil di berbagai stack teknologi—Python, JavaScript, Go—karena fokusnya ada pada penerjemahan niat menjadi kode yang berjalan. Spesifikasi menjelaskan niat, rencana menentukan keputusan teknis, tugas membagi implementasi, dan AI yang coding.

Untuk organisasi besar, pendekatan ini juga menyelesaikan masalah menyimpan persyaratan keamanan, kepatuhan, dan aturan desain yang biasanya tersebar di banyak tempat dokumen internal dan obrolan. Dengan Spec Kit, semua persyaratan ini ditulis di spesifikasi dan rencana, sehingga AI dapat menggunakannya sejak awal.

Keunggulan Iteratif dan Fleksibilitas Pengembangan

Alih-alih terjebak pada keputusan awal yang kaku, spec-driven development bersifat iteratif. Anda cukup mengubah spesifikasi, membuat ulang rencana teknis, dan coding agent akan mengerjakan sisanya secara otomatis. Ini membuka kemungkinan untuk menguji beberapa versi dan eksperimen dengan cepat.

Tiga Kasus Penggunaan Ideal untuk Spec-Driven Development

  • Greenfield Projects (Zero-to-One): Saat memulai proyek baru, menghabiskan sedikit waktu untuk membuat spesifikasi dan rencana memastikan AI membangun sesuai niat, bukan solusi generik.
  • Pengembangan Fitur pada Sistem Eksisting (N-to-N+1): Menambahkan fitur baru pada basis kode kompleks lebih mudah dan aman dengan spesifikasi jelas dan rencana yang memuat batasan arsitektural, menjaga integrasi seamless.
  • Modernisasi Sistem Legacy: Niat asli sering hilang di sistem lama. Dengan pendekatan spec-driven, logika bisnis dapat didokumentasikan dalam spesifikasi modern, rencana arsitektur baru dapat dibuat, dan AI membangun ulang sistem tanpa utang teknis lama.

Manfaat utamanya adalah memisahkan "apa" yang stabil dari "bagaimana" yang fleksibel, sehingga memudahkan pengembangan iteratif tanpa perlu pengembangan ulang yang mahal.

Masa Depan: Dari "Code as Source of Truth" ke "Intent as Source of Truth"

Dengan AI, spesifikasi bukan sekadar dokumentasi, tapi menjadi sumber kebenaran utama yang langsung menentukan apa yang dibangun. Saat spesifikasi otomatis berubah menjadi kode kerja, fokus utama bergeser pada "intent" atau niat pengembangan.

Spec Kit menjadi eksperimen nyata untuk mewujudkan peralihan ini dan karena pendekatan ini melampaui alat atau perusahaan tertentu, toolkit ini bersifat open source.

Ke depannya, akan ada lebih banyak diskusi tentang penggabungan praktik spec-driven development dengan context engineering untuk memperkuat kapabilitas AI dalam pengembangan perangkat lunak.

Masukan untuk Pengembangan Spec Kit

Developer yang sudah mencoba pendekatan ini diundang untuk berbagi pengalaman, terutama terkait:

  • Meningkatkan pengalaman pengguna agar alur kerja terasa lebih menyenangkan dan mudah digunakan.
  • Integrasi yang ideal dengan Visual Studio Code agar workflow langsung dapat dijalankan tanpa hambatan.
  • Fitur pembandingan dan differensi antara beberapa implementasi untuk membuka kreativitas pengembangan.
  • Manajemen spesifikasi dan tugas dalam skala besar agar tetap terorganisir dan fokus di lingkungan kerja perusahaan.

Spec Kit dan spec-driven development membuka cara baru dalam memanfaatkan AI untuk mengubah kreativitas manusia menjadi perangkat lunak yang nyata dan berkualitas. Kami menantikan kontribusi Anda untuk mengembangkan ekosistem ini lebih jauh.