Catatan Editor: Claude Code sedang berubah dari asisten kode menjadi meja kerja Agen yang dapat disusun.
Workflows (alur kerja) yang diperkenalkan di artikel ini, nilai intinya adalah memungkinkan Claude tidak hanya "memikirkan lalu melakukan" dalam jendela konteks yang sama, tetapi dapat menghasilkan kerangka eksekusi dinamis berdasarkan tugas: memecah tugas, membagikan sub-Agen, pemrosesan paralel, validasi silang, iterasi berulang, bahkan membuat Agen yang berbeda saling bersaing, dan akhirnya menyintesis hasilnya.
Ini berarti, skenario penggunaan Claude Code sedang meluas secara signifikan. Ia tidak hanya cocok untuk migrasi kode, refaktorisasi, reproduksi pengujian, dan review kode, tetapi juga dapat digunakan untuk penelitian mendalam, pemeriksaan fakta, penyaringan resume, tinjauan ulang insiden, pemadatan aturan, review rencana bisnis, brainstorming penamaan, dan tugas-tugas non-teknis lainnya. Banyak pekerjaan kompleks pada dasarnya mirip dengan pemrograman: perlu memecah masalah, mengisolasi konteks, menguji hipotesis, menangani banyak detail, dan membuat pilihan di antara beberapa jalur kandidat.
Dynamic workflows mencoba menyelesaikan tepatnya beberapa masalah umum model besar dalam tugas panjang: "agentic laziness" (keengganan agen) yang menyatakan selesai di tengah jalan, "self-preferential bias" (bias preferensi diri) yang cenderung mengakui kesimpulannya sendiri, dan "goal drift" (perpindahan tujuan) yang secara bertahap menyimpang dari tujuan awal setelah beberapa putaran eksekusi. Dengan menyerahkan tugas kepada beberapa Claude yang memiliki konteks independen, ia mengubah tugas kompleks dari "lari jarak jauh agen tunggal" menjadi "kolaborasi multi-agen".
Tentu saja, workflows juga bukan jawaban ajaib. Ia biasanya mengonsumsi lebih banyak token, dan belum tentu cocok untuk setiap tugas pengkodean biasa. Tetapi ia memberikan arah yang sangat penting: kompetisi alat AI di masa depan, mungkin tidak hanya tentang betapa pintarnya model tunggal, tetapi tentang kemampuannya untuk mengorganisir serangkaian proses eksekusi yang andal, dapat digunakan kembali, dan dapat ditinjau di sekitar tujuan yang kompleks.
Berikut adalah teks asli:
Meskipun kerangka eksekusi Claude Code default dibangun untuk pemrograman, ia juga cocok untuk banyak jenis tugas lainnya. Ternyata, banyak tugas secara struktural mirip dengan tugas pemrograman. Namun, untuk mencapai kinerja terbaik pada beberapa jenis tugas tertentu, kita masih perlu membangun kerangka eksekusi yang disesuaikan di atas Claude Code, seperti penelitian, analisis keamanan, kolaborasi tim agen, atau review kode.
Workflows (alur kerja) memungkinkan Anda membuat kerangka eksekusi secara dinamis, memungkinkan Claude untuk lebih asli menyelesaikan masalah di atas dan lebih banyak jenis masalah di dalam Claude Code. Anda juga dapat membagikan dan menggunakan kembali workflows ini dengan orang lain.
Dalam artikel ini, saya akan berbagi pengalaman dan wawasan awal saya menggunakan workflows, untuk membantu Anda memanfaatkan kemampuannya secara lebih penuh.
Namun perlu diingat, praktik terbaik terkait masih dalam pembentukan. Dynamic workflows biasanya mengonsumsi lebih banyak token, jadi Anda perlu mempertimbangkan dengan serius kapan dan bagaimana menggunakannya.
Catatan: Artikel ini juga dipublikasikan di Claude Blog.
Contoh Prompt
Sebelum masuk ke detail teknis, saya ingin memberikan beberapa contoh prompt untuk membantu Anda memahami kemungkinan workflows:
"Pengujian ini gagal sekitar 1 kali dari 50 kali jalankan. Bangun workflow untuk mereproduksinya, ajukan hipotesis, dan lakukan pengujian adversarials di worktree yang berbeda. /goal jangan berhenti sampai satu hipotesis terbukti benar."
"Gunakan workflow, tinjau 50 sesi terakhir saya, gali koreksi yang berulang kali saya lakukan, dan ubah masalah berulang ini menjadi aturan CLAUDE.md."
"Gunakan workflow, telusuri saluran Slack #incidents selama enam bulan terakhir, temukan akar penyebab yang berulang muncul, tetapi tidak ada yang mengirimkan tiket."
"Jalankan workflow untuk rencana bisnis saya, biarkan agen yang berbeda masing-masing menganalisisnya dari sudut pandang investor, pelanggan, dan pesaing."
"Ini ada folder berisi 80 resume. Gunakan workflow, urutkan sesuai persyaratan posisi backend, dan tinjau ulang sepuluh teratas. Ajukan pertanyaan kepada saya melalui alat AskUserQuestion untuk membantu Anda membangun kriteria evaluasi."
"Saya perlu memberi nama alat CLI ini. Gunakan workflow untuk brainstorming sekelompok opsi, lalu pilih tiga terbaik melalui mekanisme turnamen."
"Gunakan workflow, ganti nama model User kami menjadi Account di semua tempat."
"Baca draf blog saya, dan gunakan workflow untuk memverifikasi setiap penilaian teknis di dalamnya terhadap basis kode. Saya tidak ingin mempublikasikan konten yang salah."
Bagaimana Workflow Dinamis Bekerja
Dynamic workflow akan mengeksekusi file JavaScript yang berisi beberapa fungsi khusus, digunakan untuk menghasilkan dan mengoordinasikan sub-agen.
Dynamic workflow juga berisi fungsi JavaScript standar, seperti JSON, Math, dan Array, untuk memproses data.
Yang sangat perlu diperhatikan, dynamic workflow dapat memutuskan model mana yang digunakan oleh agen tertentu, dan juga dapat memutuskan apakah sub-agen berjalan di worktree-nya sendiri. Ini memungkinkan Claude untuk secara mandiri memilih tingkat kecerdasan dan tingkat isolasi yang dibutuhkan berdasarkan kebutuhan tugas.
Jika workflow terganggu, misalnya oleh operasi manual pengguna, atau terminal keluar, setelah sesi dipulihkan, workflow dapat melanjutkan eksekusi dari titik gangguan.
Mengapa Perlu Workflow Dinamis
Saat Anda meminta kerangka eksekusi Claude Code default menangani suatu tugas, ia perlu melakukan perencanaan dan eksekusi secara bersamaan dalam jendela konteks yang sama. Untuk banyak tugas pemrograman, cara ini sangat efektif, tetapi dalam tugas yang berjalan lama, paralel skala besar, atau tugas adversarials yang sangat terstruktur, terkadang gagal.
Alasannya adalah, semakin lama Claude menangani tugas kompleks dalam jendela konteks tunggal, semakin rentan ia mengalami beberapa jenis mode kegagalan tertentu:
Agentic laziness (keengganan agen), mengacu pada saat Claude menangani tugas yang sangat kompleks dan terdiri dari banyak bagian, berhenti sebelum benar-benar selesai, dan menyatakan tugas telah selesai hanya setelah mencapai kemajuan parsial. Misalnya, dalam review keamanan hanya menangani 20 dari 50 item, lalu menyatakan pekerjaan selesai.
Self-preferential bias (bias preferensi diri), mengacu pada kecenderungan Claude untuk lebih menyukai hasil atau temuannya sendiri, terutama ketika diminta untuk memverifikasi atau menilai konten yang dihasilkannya sendiri berdasarkan kriteria evaluasi tertentu.
Goal drift (perpindahan tujuan), mengacu pada penurunan kesetiaan Claude terhadap tujuan awal selama proses eksekusi multi-putaran, terutama setelah konteks dikompresi. Setiap ringkasan menyebabkan kehilangan informasi, beberapa persyaratan detail, seperti kasus tepi, atau batasan "jangan lakukan X", mungkin hilang.
Membuat workflow membantu meredakan masalah ini, karena dapat mengatur beberapa Claude independen, memberi mereka jendela konteks masing-masing, dan fokus pada tugas yang terisolasi dan memiliki tujuan yang jelas.
Workflow Dinamis vs Workflow Statis
Anda mungkin sebelumnya telah membuat workflow statis melalui Claude Agent SDK atau claude -p, untuk mengoordinasikan beberapa instance Claude Code.
Tetapi karena workflow statis perlu mencakup berbagai kasus tepi, mereka biasanya lebih umum. Dengan munculnya Claude Opus 4.8 dan dynamic workflows, Claude sekarang cukup cerdas untuk menulis kerangka eksekusi yang disesuaikan dengan skenario penggunaan spesifik Anda.
Pola Praktis saat Menggunakan Workflow Dinamis
Anda dapat langsung meminta Claude membuat dynamic workflow, atau menggunakan kata pemicu "ultracode", untuk memastikan Claude Code membuat workflow.
Namun, jika Anda dapat membangun model mental tentang bagaimana dynamic workflow bekerja, akan lebih mudah untuk menilai kapan harus menggunakannya, dan juga lebih mudah untuk membimbing Claude melalui prompt.
Saat membangun workflows, Claude umumnya akan menggunakan dan menggabungkan beberapa pola berikut:
Klasifikasi dan Eksekusi: Gunakan agen klasifikasi untuk menilai jenis tugas, lalu merutekannya ke agen atau perilaku yang berbeda berdasarkan jenis tugas. Juga dapat menggunakan pengklasifikasi di akhir proses untuk menilai hasil output.
Fan-out dan Sintesis: Pecah satu tugas menjadi beberapa langkah yang lebih kecil, biarkan setiap langkah ditangani oleh satu agen, lalu sintesiskan hasil ini. Cara ini sangat cocok ketika tugas mengandung banyak langkah kecil, atau setiap langkah memerlukan jendela konteks yang bersih untuk menghindari interferensi atau kontaminasi silang. Langkah sintesis setara dengan "penghalang": ia akan menunggu semua agen yang di-fan-out selesai, lalu menggabungkan output terstruktur mereka menjadi satu hasil.
Validasi Adversarial: Untuk setiap agen yang dihasilkan, jalankan agen independen lain untuk memvalidasi outputnya secara adversarial menurut kriteria atau pedoman evaluasi tertentu.
Hasilkan dan Saring: Hasilkan banyak ide seputar suatu tema, lalu saring berdasarkan kriteria evaluasi atau proses validasi, hapus duplikat, dan kembalikan hanya ide-ide yang telah diuji dan berkualitas tinggi.
Turnamen: Bukan membagi pekerjaan, tetapi membuat agen saling bersaing. Hasilkan N agen, biarkan masing-masing mencoba menyelesaikan tugas yang sama dengan metode berbeda. Kemudian hasil dievaluasi oleh agen peninjau melalui prompt atau model dengan perbandingan berpasangan, sampai pemenang terpilih.
Loop Sampai Selesai: Untuk tugas dengan volume kerja yang tidak diketahui, jangan tetapkan putaran tetap, tetapi hasilkan agen secara berulang sampai kondisi berhenti terpenuhi, misalnya tidak ada temuan baru muncul, atau tidak ada lagi kesalahan dalam log.
Skenario Penggunaan
Anda dapat berpikir lebih kreatif tentang kapan dan bagaimana membuat Claude Code membuat dynamic workflow. Saya menemukan workflows terkadang bahkan lebih berguna dalam pekerjaan non-teknis.
Migrasi dan Refaktorisasi
Bun pernah menggunakan workflows untuk menulis ulang dari Zig menjadi Rust. Anda dapat membaca postingan Jarred di X untuk mengetahui proses spesifiknya.
Kuncinya adalah memecah tugas menjadi serangkaian langkah yang perlu ditangani, misalnya titik panggilan, tes gagal, modul, dll. Luncurkan sub-agen untuk setiap tugas perbaikan di worktree, biarkan menyelesaikan perbaikan; kemudian biarkan agen lain melakukan review adversarial, akhirnya gabungkan hasilnya. Anda dapat mempertimbangkan untuk secara eksplisit memberi tahu agen untuk tidak menggunakan perintah yang mengonsumsi sumber daya berlebihan, sehingga memaksimalkan tingkat paralelisme tanpa menghabiskan sumber daya mesin lokal.
Penelitian Mendalam
Kami merilis skill penelitian mendalam (/deep-research) di Claude Code, yang menggunakan dynamic workflow. Secara spesifik, ia akan melakukan fan-out eksekusi pencarian web, mengambil sumber, melakukan validasi adversarial terhadap klaim terkait, dan mensintesis laporan dengan kutipan.
Tapi penelitian semacam ini tidak hanya berlaku untuk pencarian web. Misalnya, Anda juga dapat meminta Claude menyusun laporan status dari konteks Slack, atau menjelajahi basis kode secara mendalam untuk meneliti bagaimana suatu fitur bekerja.
Verifikasi Mendalam
Di sisi lain, jika Anda memiliki laporan, dan ingin memeriksa setiap penilaian faktual dan sumber yang dikutip di dalamnya, Anda dapat menghasilkan workflow: pertama agen mengidentifikasi semua klaim faktual, lalu luncurkan sub-agen untuk setiap klaim melakukan pemeriksaan mendetail. Anda juga dapat meminta agen validasi memeriksa sub-agen yang bertanggung jawab untuk penelusuran sumber, memastikan kualitas sumbernya cukup tinggi.
Pengurutan
Anda mungkin memiliki sekelompok item yang ingin diurutkan menurut metrik kualitatif tertentu, dan Anda percaya Claude Code pandai mengevaluasi metrik semacam ini. Misalnya, mengurutkan tiket dukungan berdasarkan tingkat keparahan bug.
Tetapi jika Anda mencoba mengurutkan lebih dari 1000 baris dalam satu prompt, kualitas akan turun, dan jendela konteks juga tidak akan muat. Cara yang lebih baik adalah menjalankan mekanisme turnamen, membangun pipeline yang terdiri dari agen perbandingan berpasangan, karena penilaian komparatif biasanya lebih andal daripada penilaian absolut; atau urutkan secara paralel dengan pengelompokan bucket terlebih dahulu, lalu gabungkan hasilnya. Setiap perbandingan diselesaikan oleh agen independen, sehingga loop deterministik dapat mempertahankan struktur seluruh turnamen, hanya urutan lari saat ini yang perlu disimpan dalam konteks.
Memori dan Kepatuhan Aturan
Jika Anda memiliki seperangkat aturan tertentu, dan Claude bahkan setelah melihat aturan ini di CLAUDE.md, masih sering melewatkan atau mengeksekusi dengan buruk, maka Anda dapat membuat workflow, daftarkan aturan-aturan ini, dan minta agen validasi memeriksanya satu per satu — setiap aturan sesuai dengan satu agen validasi. Membuat sub-agen dengan kepribadian "skeptis" untuk meninjau apakah aturan-aturan ini masuk akal juga membantu menghindari terlalu banyak false positive.
Sebaliknya juga bisa: gali sesi dan komentar review kode terbaru Anda, temukan koreksi yang berulang kali Anda lakukan; minta agen paralel melakukan pengelompokan pada masalah-masalah ini; lalu lakukan validasi adversarial pada setiap aturan kandidat, menilai apakah ia benar-benar dapat mencegah kesalahan nyata; akhirnya saring aturan yang lolos kembali ke dalam CLAUDE.md.
Penyelidikan Akar Penyebab
Cara debugging yang paling efektif adalah mengajukan beberapa hipotesis yang saling independen, dan menguji masing-masing satu per satu. Tetapi jika Anda hanya menggunakan satu jendela konteks, Claude mungkin terjebak dalam bias preferensi diri.
Workflow dapat mencegah hal ini secara struktural: ia dapat meluncurkan beberapa agen, membuat mereka menghasilkan hipotesis berdasarkan bukti yang tidak tumpang tindih. Misalnya, biarkan agen yang berbeda masing-masing melihat log, file, dan data. Kemudian, setiap hipotesis dapat ditinjau oleh sekelompok validator dan pembantah.
Ini tidak hanya berlaku untuk kode. Workflows juga dapat digunakan untuk analisis penjualan, misalnya "mengapa penjualan Maret turun?"; untuk rekayasa data, misalnya "mengapa pipeline ini gagal?"; atau untuk tinjauan ulang pasca-insiden apa pun.
Triage Skala Besar
Setiap tim memiliki antrian dukungan, laporan bug, atau backlog lainnya yang tidak dapat sepenuhnya ditangani oleh manusia. Workflow triage dapat mengklasifikasikan setiap item, melakukan deduplikasi dengan masalah yang sudah dilacak, dan mengambil tindakan. Ini mungkin berarti mencoba memperbaiki, atau mungkin berarti mengeskalasi ke pengguna manusia.
Untuk workflow triage, pola yang berguna adalah karantina. Artinya, larang agen yang membaca konten publik yang tidak terpercaya untuk menjalankan operasi berprivilege tinggi; operasi berprivilege tinggi harus dilakukan oleh agen yang khusus bertanggung jawab untuk tindakan.
Anda dapat menggabungkan workflows triage dengan /loop, membiarkan Claude terus menjalankan tugas semacam ini.
Eksplorasi dan Penilaian Selera
Ketika Anda perlu mengeksplorasi jalur solusi yang berbeda, terutama tugas-tugas yang melibatkan penilaian estetika seperti desain, penamaan, dan dapat memperoleh manfaat dari seperangkat kriteria evaluasi, workflows sangat berguna.
Anda dapat meminta Claude mengeksplorasi banyak skema, dan memberi agen peninjau seperangkat kriteria tentang "seperti apa skema yang baik". Ketika agen peninjau menganggap hasil sudah memenuhi kriteria, tugas selesai. Skema yang berbeda juga dapat diurutkan atau disaring berdasarkan kriteria evaluasi ini melalui mekanisme turnamen.
Evals (Evaluasi)
Anda dapat menjalankan evals ringan untuk tugas tertentu dengan meluncurkan agen independen di worktree, lalu meluncurkan agen perbandingan, membandingkan dan memberi skor output spesifik berdasarkan kriteria evaluasi. Misalnya, Anda dapat mengevaluasi dan meningkatkan skill tertentu yang Anda buat, melihat apakah ia memenuhi standar tertentu.
Perutean Model dan Tingkat Kecerdasan: Anda dapat membuat agen klasifikasi yang disesuaikan untuk tugas Anda sendiri, membiarkannya memutuskan model mana yang akan digunakan. Cara ini berguna ketika tugas melibatkan banyak panggilan alat, dan melakukan penelitian sebelum eksekusi dapat membantu mengidentifikasi model yang paling tepat.
Misalnya, untuk tugas "jelaskan bagaimana modul auth bekerja", model yang paling tepat tergantung pada berapa banyak file dalam modul auth, dan seperti apa struktur basis kode. Agen klasifikasi dapat melakukan penelitian ini terlebih dahulu, lalu merutekan tugas ke Sonnet atau Opus berdasarkan kompleksitas yang diharapkan.
Kapan Tidak Harus Menggunakan Workflow Dinamis
Workflows masih merupakan hal baru. Meskipun dalam banyak skenario penggunaan, ia dapat membawa efek yang jauh melampaui cara konvensional, tetapi tidak setiap tugas membutuhkannya, dan ia dapat secara signifikan meningkatkan konsumsi token.
Sebaiknya gunakan workflows pada tugas-tugas yang dapat memperluas batas kemampuan Claude Code dengan cara baru. Untuk tugas pemrograman konvensional, Anda dapat bertanya pada diri sendiri: apakah tugas ini benar-benar membutuhkan lebih banyak sumber daya komputasi? Misalnya, sebagian besar tugas pemrograman tradisional tidak memerlukan panel yang terdiri dari 5 peninjau.
Kiat Membangun Workflow Dinamis
Desain Prompt
Saat menulis prompt untuk dynamic workflow, semakin detail biasanya semakin baik, terutama menggunakan teknik spesifik yang disebutkan di atas.
Workflows tidak hanya berlaku untuk tugas besar. Anda juga dapat meminta model menggunakan "quick workflow". Misalnya, Anda dapat membuat proses review adversarial cepat untuk memeriksa suatu hipotesis.
Kombinasikan dengan /goal dan /loop
Saat Anda menggunakan workflows yang dapat dieksekusi berulang, seperti workflow triage, penelitian, atau validasi, Anda dapat menggabungkannya dengan /loop, membiarkannya berjalan pada interval tetap; sekaligus menggunakan /goal untuk menetapkan persyaratan penyelesaian yang ketat.
Anggaran Penggunaan Token
Anda dapat menetapkan anggaran penggunaan token yang jelas untuk dynamic workflow, untuk membatasi jumlah token yang dikonsumsi tugas. Anda dapat menulis persyaratan anggaran seperti "gunakan 10k token" dalam prompt, yang akan menetapkan batas atas menjadi 10k token.
Menyimpan dan Berbagi Workflow Dinamis
Anda dapat menekan "s" di menu workflow untuk menyimpan workflows. Anda dapat mengirimkannya ke ~/.claude/workflows, atau mendistribusikannya melalui skill.
Jika ingin membagikannya melalui skill, Anda dapat memasukkan file workflow JavaScript ke folder skill, dan merujuknya di SKILL.md. Untuk fleksibilitas yang lebih besar, Anda juga dapat meminta Claude: anggap workflows dalam skill sebagai template, bukan skrip yang harus dijalankan kata demi kata.
Dunia yang Sepenuhnya Baru
Workflows adalah cara baru yang berguna untuk memperluas Claude Code. Saya mendorong Anda untuk menganggapnya sebagai titik awal. Masih banyak yang perlu kita eksplorasi tentang cara terbaik menggunakannya. Selamat berbagi temuan Anda.
Thariq Shihipar dan Sid Bidasaria(@sidbid) adalah anggota tim teknis Anthropic, bertanggung jawab atas pekerjaan terkait Claude Code.
















