Semua yang Saya Tahu Tentang AI Coding Ternyata Salah

AAI LABS
Computing/SoftwareInternet Technology

Transcript

00:00:00Anda sudah mengetahui tentang framework coding AI seperti Beemad,
00:00:03Speckit dan lainnya,
00:00:04tetapi ini bukan satu-satunya.
00:00:06Ada ratusan orang yang bereksperimen dan meluncurkan workflow mereka sendiri,
00:00:09tetapi ketika Anda mencobanya,
00:00:10Anda akan menyadari bahwa sering kali mereka gagal memenuhi janjinya.
00:00:13Bukan karena metode mereka buruk,
00:00:15melainkan karena tidak cocok dengan kasus penggunaan spesifik Anda.
00:00:18Ketika kami membangun aplikasi,
00:00:19sebagian besar waktu kami membuat workflow sendiri alih-alih mengandalkan yang sudah jadi.
00:00:23Ini karena workflow harus dibangun sesuai kasus penggunaan spesifik Anda dan hanya berfungsi jika selaras dengan proyek yang ingin Anda bangun.
00:00:30Jadi bagaimana Anda membangun workflow untuk proses Anda sendiri?
00:00:32Untuk itu, Anda perlu mengetahui prinsip-prinsip tertentu.
00:00:34Ini adalah prinsip-prinsip yang digunakan setiap framework dengan cara yang satu atau lain.
00:00:38Sebelum membahas prinsip-prinsip utama,
00:00:40penting bagi Anda untuk mengetahui apa yang ada di dalam context window dari tools AI ini.
00:00:44Ini sangat penting,
00:00:45karena mengelola konteks pada dasarnya adalah yang dilakukan framework-framework ini.
00:00:48Context window pada dasarnya adalah jumlah informasi yang dapat diingat model sekaligus.
00:00:53Apa pun yang keluar dari context window model akan keluar dari memori kerjanya,
00:00:56dan tidak ada cara untuk mengingatnya kembali.
00:00:59Model memiliki context window yang terbatas.
00:01:00Misalnya,
00:01:01model Anthropic memiliki context window 200k token,
00:01:04dan model Gemini memiliki 1 juta.
00:01:06Meskipun angka-angka ini terlihat sangat besar dalam hal pesan yang Anda kirim,
00:01:10sebenarnya tidak begitu besar,
00:01:11karena di tools AI ini,
00:01:13context window tidak hanya terdiri dari system prompt dan pesan pengguna Anda,
00:01:17tetapi juga mencakup banyak hal lain seperti pesan masa lalu Anda,
00:01:20file memori,
00:01:21tools,
00:01:21panggilan MCP dan sebagainya.
00:01:23Anda perlu belajar cara memaksimalkan ruang kerja terbatas ini,
00:01:26sehingga ketika Anda membangun workflow,
00:01:28model melakukan persis seperti yang Anda inginkan.
00:01:30Saya akan menggunakan Claude Code sebagai tool coding utama saya di sepanjang video,
00:01:34tetapi Anda bisa membangun workflow Anda dengan platform apa pun,
00:01:36karena semuanya memiliki tools yang diperlukan untuk prinsip-prinsip ini.
00:01:39Prinsip paling penting dan kunci dari desain workflow apa pun adalah progressive disclosure.
00:01:44Artinya hanya mengungkapkan kepada LLM apa yang penting,
00:01:46dan menjaga fokus perhatian model pada apa yang benar-benar dibutuhkan saat ini,
00:01:50daripada mengisi context window dengan semua yang mungkin dibutuhkan di masa depan.
00:01:54Sekarang,
00:01:55model yang lebih canggih seperti Sonnet 4.5 memiliki fitur context editing yang sudah terintegrasi,
00:01:59di mana mereka dapat memahami apa yang merupakan noise dan mencoba menyaringnya sendiri,
00:02:03dan mereka menggunakan perintah grep untuk mempersempit apa yang Anda inginkan.
00:02:07Tetapi itu saja tidak cukup.
00:02:08Ketika kita memberikan instruksi yang samar,
00:02:10bahkan model yang lebih baru ini memuat banyak hal yang tidak diperlukan dan mencemari window.
00:02:14Alih-alih meminta Claude untuk memperbaiki error di backend Anda,
00:02:17lebih baik memintanya untuk memeriksa endpoint satu per satu,
00:02:20daripada memintanya memperbaiki semuanya sekaligus.
00:02:23Fitur skills di Claude sekarang bersifat open source dan semua tools dapat menggunakannya.
00:02:27Skills pada dasarnya adalah perwujudan dari progressive disclosure.
00:02:29Deskripsi mereka hanya memberikan informasi yang cukup bagi platform coding AI Anda untuk mengetahui kapan setiap skill harus digunakan tanpa memuat semuanya ke dalam konteks.
00:02:38Kesalahan besar yang dilakukan orang adalah menggunakan MCP untuk segalanya.
00:02:41Anda hanya harus menggunakan MCP ketika data eksternal diperlukan dan menggunakan skills untuk yang lainnya.
00:02:46Prinsip kedua yang sama pentingnya adalah bahwa informasi yang tidak dibutuhkan saat ini tidak boleh berada di context window.
00:02:52Untuk mencapai ini,
00:02:53tools menggunakan structured note-taking.
00:02:55Dan kita bisa menggunakan ini untuk keuntungan kita dengan menyediakan file eksternal kepada tool AI Anda yang dapat digunakan untuk mendokumentasikan keputusan,
00:03:01masalah,
00:03:02atau technical debt apa pun.
00:03:03Pendekatan ini memungkinkan agent Anda mempertahankan konteks kritis yang mungkin hilang ketika membangun sesuatu yang sangat kompleks.
00:03:09Tools ini juga memiliki fitur compaction untuk mengelola context window.
00:03:13Dan ketika konteks direset,
00:03:15Anda tidak perlu hanya mengandalkan ringkasan compaction.
00:03:17Misalnya,
00:03:18agent Anda dapat menggunakan catatan ini untuk mendapatkan konteks tentang apa yang sudah dikerjakan dan apa yang masih perlu dilakukan.
00:03:23Pendekatan ini sangat membantu untuk tugas jangka panjang,
00:03:26yang secara inheren kompleks.
00:03:28Anda mungkin sudah familiar dengan agent.md.
00:03:30Ini adalah file konteks standar yang dibaca semua agent sebelum memulai sesi.
00:03:34Beberapa agent tidak mengikuti ini dan memiliki file sendiri,
00:03:37seperti claud.md,
00:03:38dan saya menggunakannya untuk memandu agent tentang bagaimana file eksternal distrukturkan dan apa yang harus ditulis di masing-masing file.
00:03:44Terkadang agent ini berhenti secara acak di tengah tugas yang berjalan lama.
00:03:47Sering kali ini terjadi karena konteks telah melewati 70% dari batasnya.
00:03:52Di sinilah konsep attention budget masuk.
00:03:55Context window Anda adalah apa yang diperhatikan model saat menghasilkan output.
00:03:59Ketika melewati 70%,
00:04:00model harus lebih fokus dan ada kemungkinan lebih tinggi terjadi halusinasi.
00:04:04Dalam hal AI agent,
00:04:05ini menghentikan mereka dari menggunakan tools mereka secara efektif dan sering kali mereka hanya memilih untuk mengabaikannya.
00:04:10Untuk mengatasi ini,
00:04:11ada beberapa tools bawaan yang bisa Anda gunakan.
00:04:14Seperti yang sudah Anda ketahui,
00:04:15compaction memungkinkan model untuk memulai lagi dengan ringkasan yang tepat tentang apa yang telah terjadi sebagai prompt awal dan context window yang berkurang.
00:04:21Jadi alih-alih membiarkannya terisi hingga 90% dan memicu fitur auto-compact,
00:04:25cobalah untuk mengawasi context window dan melakukannya sendiri.
00:04:28Jika Anda bereksperimen,
00:04:29gunakan rewind bawaan claud sehingga Anda dapat menghapus bagian yang tidak perlu alih-alih melanjutkannya dan meminta claud untuk melakukan perubahan.
00:04:36Anda juga harus menghapus atau memulai context window baru untuk tugas baru apa pun sehingga konteks sebelumnya tidak memperlambat model.
00:04:42Hal lain yang berasal dari prinsip progressive disclosure adalah kemampuan agent ini untuk menjalankan tugas di background tanpa mencemari context window utama.
00:04:51Sub-agent bekerja di context window terisolasi mereka sendiri dan hanya melaporkan output kembali ke agent utama.
00:04:57Ini sangat membantu ketika mengerjakan tugas yang terisolasi satu sama lain karena context window utama Anda terlindungi dari pembengkakan dengan panggilan tools dan pencarian yang dilakukan sub-agent,
00:05:07memastikan informasi tetap berada di zona kerja khususnya.
00:05:10Karena agent ini berjalan di background,
00:05:11Anda dapat terus berinteraksi dengan agent utama Anda dan membiarkannya mengerjakan sesuatu yang benar-benar memerlukan perhatian Anda.
00:05:17Setiap kali saya ingin sesuatu diteliti,
00:05:19seperti aturan framework baru yang sedang saya kerjakan,
00:05:21saya hanya menggunakan sub-agent ini.
00:05:23Dengan cara ini,
00:05:24panggilan tools dan pencarian mereka terisolasi dan mereka hanya mengembalikan jawaban ke agent utama.
00:05:29Jika Anda memahami prinsip note-taking,
00:05:31Anda juga harus tahu format file mana yang digunakan untuk tugas mana.
00:05:34Karena file-file ini memiliki format yang berbeda,
00:05:37mereka mempengaruhi jumlah token dan karenanya efisiensi workflow Anda.
00:05:40YAML adalah yang paling efisien dalam token,
00:05:42jadi saya terutama menggunakannya untuk skema database,
00:05:44konfigurasi keamanan,
00:05:45dan detail API.
00:05:46Indentasinya membantu model menyusun informasi dengan benar.
00:05:49Markdown lebih baik untuk dokumentasi seperti claud.md Anda karena tingkat heading memudahkan model untuk bernavigasi antar bagian.
00:05:56XML secara khusus dioptimalkan untuk model claud.
00:05:59Anthropic menyatakan bahwa model mereka di-fine-tune untuk mengenali tag ini sebagai container dan separator,
00:06:04yang berguna ketika Anda memiliki bagian yang berbeda seperti constraints,
00:06:08ringkasan,
00:06:09atau detail visual.
00:06:10Model lain umumnya lebih menyukai Markdown dan YAML daripada XML.
00:06:13Dan terakhir, JSON.
00:06:14Ini adalah yang paling tidak efisien dalam token karena semua kurung kurawal dan tanda kutip ekstra,
00:06:18jadi saya hanya menggunakannya untuk hal-hal kecil seperti status tugas dan tidak terlalu merekomendasikan menggunakannya untuk sebagian besar kasus.
00:06:23Git adalah salah satu hal paling dasar yang diajarkan ketika mulai belajar programming.
00:06:26Kami telah melihat tren lain dengan workflow konteks ini di mana orang benar-benar menggunakan riwayat git commit sebagai pengingat bagi model tentang kemajuan yang telah dibuat,
00:06:35baik di seluruh proyek atau pada satu tugas.
00:06:37Bahkan jika Anda tidak ingin menggunakannya untuk menyimpan progress,
00:06:40umumnya Anda harus menggunakan workflow context engineering ini di repositori yang sudah diinisialisasi git.
00:06:44Memiliki alur kerja rekayasa konteks berarti Anda tidak membiarkan model melakukan semuanya sekaligus,
00:06:48melainkan bertindak berdasarkan langkah-langkah terencana satu per satu.
00:06:51Jika di tahap mana pun Anda mengalami masalah,
00:06:53git memungkinkan Anda mengontrol versi mana yang akan dikembalikan dan membantu dalam mengevaluasi perubahan mana yang menyebabkan masalah.
00:06:59Orang-orang juga telah menerapkan paralelisme dengan git worktrees.
00:07:02Saya juga telah menunjukkan banyak alur kerja di mana sub-agen bekerja di worktrees khusus untuk pekerjaan paralel.
00:07:07Apa pun alur kerja yang Anda buat,
00:07:09akan selalu ada kasus di mana Anda mengulangi instruksi untuk prosedur umum.
00:07:13Contoh yang baik adalah bagaimana Anda meminta alat AI untuk melakukan git commit atau memperbarui dokumentasi Anda.
00:07:18Di hampir semua alat AI ini,
00:07:19ada cara untuk menggunakan kembali prompt yang paling sering Anda gunakan.
00:07:22Saya sering menggunakan custom/commands dalam proyek saya sendiri karena pada dasarnya memberi Claude panduan yang dapat digunakan kembali.
00:07:28Saya sering menggunakan perintah catchup yang berisi instruksi tentang bagaimana saya menyusun memori di luar jendela konteks,
00:07:34sehingga Claude tahu cara mengejar perkembangan proyek tanpa membaca setiap file.
00:07:38Mereka juga baik dalam menegakkan struktur.
00:07:40Agar commit dan dokumentasi saya mengikuti format yang ditentukan,
00:07:43saya menggunakan commit/command yang mengikuti struktur khusus untuk bagaimana ia harus menulis pesan commit dan pemeriksaan pra-commit apa yang harus dilakukan sebelum melakukan commit.
00:07:51Dengan cara ini /commands menjaga semuanya tetap terstandarisasi,
00:07:53dan saya tidak perlu menginstruksikan Claude berulang kali untuk melakukan tugas sesuai cara yang saya sukai.
00:07:58Seperti yang Anda ketahui,
00:07:59MCP harus digunakan kapan pun data eksternal diperlukan.
00:08:01Jira adalah perangkat lunak manajemen tim yang paling banyak digunakan.
00:08:04Jika Anda ingin mendapatkan informasi dari tiket,
00:08:06Anda dapat menggunakan Jira MCP sehingga dapat mengakses tiket secara langsung dan mulai menerapkan perubahan.
00:08:11Demikian pula,
00:08:12saya menggunakan Figma MCP untuk menyediakan kode Claude dengan panduan gaya aplikasi yang kemudian digunakan untuk menyusun desain.
00:08:18Untuk tugas-tugas di mana kemampuan bawaan model tidak mencukupi,
00:08:21MCP sangat penting untuk berinteraksi dengan sumber eksternal secara efisien.
00:08:25Anda dapat menyertakan MCP ini langsung dalam /commands Anda sehingga menjadi bagian dari keseluruhan alur kerja Anda.
00:08:31Itu membawa kita ke akhir video ini.
00:08:32Jika Anda ingin mendukung channel ini dan membantu kami terus membuat video seperti ini,
00:08:36Anda dapat melakukannya dengan menggunakan tombol super thanks di bawah.
00:08:39Seperti biasa,
00:08:39terima kasih telah menonton dan sampai jumpa di video berikutnya.

Key Takeaway

Membangun workflow AI coding yang efektif memerlukan pemahaman prinsip-prinsip seperti progressive disclosure, pengelolaan context window, structured note-taking, dan penggunaan tools yang tepat untuk kasus spesifik, bukan sekadar mengandalkan framework yang sudah jadi.

Highlights

Framework AI coding seperti Beemad dan Speckit sering gagal karena tidak cocok dengan kasus penggunaan spesifik, bukan karena metodologi buruk

Progressive disclosure adalah prinsip kunci - hanya mengungkapkan informasi penting ke LLM dan menjaga fokus pada yang dibutuhkan saat ini

Context window terbatas (200k token Anthropic, 1 juta Gemini) harus dikelola dengan hati-hati karena mencakup system prompt, pesan, file memori, tools, dan panggilan MCP

Skills adalah perwujudan progressive disclosure yang lebih baik dari MCP untuk sebagian besar kasus - gunakan MCP hanya untuk data eksternal

Structured note-taking dengan file eksternal membantu mendokumentasikan keputusan dan technical debt, mencegah kehilangan konteks pada proyek kompleks

Sub-agent bekerja di context window terisolasi untuk tugas background tanpa mencemari context window utama

Format file mempengaruhi efisiensi token: YAML paling efisien, Markdown untuk dokumentasi, XML optimal untuk Claude, JSON paling tidak efisien

Timeline

Permasalahan Framework AI Coding dan Pentingnya Custom Workflow

Video dibuka dengan menjelaskan bahwa meskipun ada ratusan framework AI coding seperti Beemad dan Speckit, framework tersebut sering gagal memenuhi harapan. Kegagalan ini bukan karena metode yang buruk, melainkan karena framework tersebut tidak cocok dengan kasus penggunaan spesifik pengguna. Dalam membangun aplikasi, lebih baik membuat workflow sendiri yang disesuaikan dengan kebutuhan proyek spesifik daripada mengandalkan solusi yang sudah jadi. Untuk membangun workflow yang efektif, diperlukan pemahaman tentang prinsip-prinsip tertentu yang digunakan oleh setiap framework.

Memahami Context Window dan Pengelolaannya

Sebelum membahas prinsip utama, penting memahami context window yang merupakan jumlah informasi yang dapat diingat model sekaligus. Context window memiliki batasan seperti 200k token untuk model Anthropic dan 1 juta untuk Gemini. Meskipun angka ini terlihat besar, dalam praktiknya tidak terlalu luas karena context window tidak hanya berisi system prompt dan pesan pengguna, tetapi juga pesan masa lalu, file memori, tools, dan panggilan MCP. Segala yang keluar dari context window akan hilang dari memori kerja model tanpa bisa diingat kembali. Mengelola konteks adalah inti dari apa yang dilakukan framework-framework AI coding ini.

Progressive Disclosure sebagai Prinsip Utama

Progressive disclosure adalah prinsip paling penting dalam desain workflow AI, yang berarti hanya mengungkapkan kepada LLM apa yang penting dan menjaga fokus model pada yang benar-benar dibutuhkan saat ini. Video menggunakan Claude Code sebagai contoh dan menjelaskan bahwa meskipun model canggih seperti Sonnet 4.5 memiliki fitur context editing bawaan untuk menyaring noise, itu saja tidak cukup. Alih-alih memberikan instruksi samar seperti 'perbaiki error di backend', lebih baik meminta pemeriksaan endpoint satu per satu. Skills di Claude adalah perwujudan progressive disclosure, di mana deskripsi mereka memberikan informasi yang cukup untuk mengetahui kapan harus digunakan tanpa memuat semuanya ke konteks. Kesalahan besar adalah menggunakan MCP untuk segalanya - MCP harus digunakan hanya untuk data eksternal, sementara skills untuk yang lainnya.

Structured Note-Taking dan Pengelolaan Informasi Eksternal

Prinsip kedua adalah informasi yang tidak dibutuhkan saat ini tidak boleh berada di context window, yang dicapai melalui structured note-taking. Tools AI dapat menggunakan file eksternal untuk mendokumentasikan keputusan, masalah, atau technical debt apa pun, memungkinkan agent mempertahankan konteks kritis yang mungkin hilang pada proyek kompleks. Ketika context window direset melalui compaction, agent dapat menggunakan catatan ini untuk mendapatkan konteks tentang apa yang sudah dikerjakan dan yang masih perlu dilakukan. File agent.md adalah file konteks standar yang dibaca semua agent sebelum memulai sesi, dan beberapa menggunakan file seperti claud.md untuk memandu agent tentang struktur file eksternal. Pendekatan ini sangat membantu untuk tugas jangka panjang yang inheren kompleks.

Attention Budget dan Strategi Mengatasi Pembatasan Context

Agent AI sering berhenti secara acak pada tugas panjang karena konteks melewati 70% dari batasnya, yang disebut attention budget. Ketika context window melewati 70%, model harus lebih fokus dan ada kemungkinan lebih tinggi terjadi halusinasi, yang membuat AI agent tidak menggunakan tools secara efektif. Untuk mengatasi ini, ada beberapa tools bawaan: compaction memungkinkan model memulai lagi dengan ringkasan yang tepat, rewind bawaan Claude untuk menghapus bagian yang tidak perlu, dan memulai context window baru untuk tugas baru agar konteks sebelumnya tidak memperlambat model. Alih-alih membiarkan konteks terisi hingga 90% dan memicu auto-compact, lebih baik mengawasi context window dan melakukan compaction sendiri secara proaktif.

Sub-Agent untuk Isolasi Context Window

Konsep sub-agent berasal dari prinsip progressive disclosure, memungkinkan agent menjalankan tugas di background tanpa mencemari context window utama. Sub-agent bekerja di context window terisolasi mereka sendiri dan hanya melaporkan output kembali ke agent utama. Ini sangat membantu untuk tugas yang terisolasi karena context window utama terlindungi dari pembengkakan dengan panggilan tools dan pencarian yang dilakukan sub-agent, memastikan informasi tetap di zona kerja khususnya. Karena berjalan di background, pengguna dapat terus berinteraksi dengan agent utama untuk hal yang memerlukan perhatian. Contoh penggunaan adalah untuk penelitian tentang aturan framework baru, di mana panggilan tools dan pencarian terisolasi dan hanya jawaban yang dikembalikan ke agent utama.

Optimasi Format File untuk Efisiensi Token

Format file yang berbeda mempengaruhi jumlah token dan efisiensi workflow karena struktur formatnya. YAML adalah yang paling efisien dalam token sehingga cocok untuk skema database, konfigurasi keamanan, dan detail API, dengan indentasi yang membantu model menyusun informasi dengan benar. Markdown lebih baik untuk dokumentasi seperti claud.md karena tingkat heading memudahkan navigasi antar bagian. XML secara khusus dioptimalkan untuk model Claude karena Anthropic menyatakan model mereka di-fine-tune untuk mengenali tag sebagai container dan separator, berguna untuk constraints, ringkasan, atau detail visual, meskipun model lain umumnya lebih menyukai Markdown dan YAML. JSON adalah yang paling tidak efisien karena semua kurung kurawal dan tanda kutip ekstra, sehingga hanya digunakan untuk hal kecil seperti status tugas.

Git sebagai Fondasi Workflow Context Engineering

Git adalah hal paling dasar dalam programming dan ada tren menggunakan riwayat git commit sebagai pengingat bagi model tentang kemajuan yang telah dibuat, baik di seluruh proyek atau pada satu tugas. Workflow context engineering harus dilakukan di repositori yang sudah diinisialisasi git karena memiliki alur kerja ini berarti tidak membiarkan model melakukan semuanya sekaligus, melainkan bertindak berdasarkan langkah-langkah terencana satu per satu. Git memungkinkan kontrol versi untuk mengembalikan ke versi tertentu jika ada masalah, membantu dalam mengevaluasi perubahan mana yang menyebabkan masalah. Orang-orang juga telah menerapkan paralelisme dengan git worktrees, di mana sub-agent bekerja di worktrees khusus untuk pekerjaan paralel.

Custom Commands untuk Standarisasi Prosedur Berulang

Dalam workflow apa pun, selalu ada kasus mengulangi instruksi untuk prosedur umum seperti melakukan git commit atau memperbarui dokumentasi. Hampir semua tools AI memiliki cara untuk menggunakan kembali prompt yang paling sering digunakan melalui custom/commands yang memberi Claude panduan yang dapat digunakan kembali. Contohnya adalah perintah catchup yang berisi instruksi tentang cara menyusun memori di luar context window agar Claude dapat mengejar perkembangan proyek tanpa membaca setiap file. Commands juga baik dalam menegakkan struktur, seperti commit/command yang mengikuti format khusus untuk pesan commit dan pemeriksaan pra-commit. Dengan cara ini, /commands menjaga semuanya tetap terstandarisasi tanpa perlu menginstruksikan Claude berulang kali.

MCP untuk Integrasi Data Eksternal dan Penutup

MCP harus digunakan kapan pun data eksternal diperlukan, seperti Jira MCP untuk mengakses tiket manajemen tim secara langsung dan mulai menerapkan perubahan berdasarkan informasi tersebut. Figma MCP digunakan untuk menyediakan kode Claude dengan panduan gaya aplikasi yang kemudian digunakan untuk menyusun desain. Untuk tugas di mana kemampuan bawaan model tidak mencukupi, MCP sangat penting untuk berinteraksi dengan sumber eksternal secara efisien. MCP dapat disertakan langsung dalam /commands sehingga menjadi bagian integral dari keseluruhan workflow. Video ditutup dengan ajakan untuk mendukung channel melalui tombol super thanks dan ucapan terima kasih kepada penonton.

Community Posts

View all posts