Sebuah alat untuk setiap tugas: alur kerja dinamis di Claude Code
Penulis asli: @trq212
Compile: Peggy
Editor's Note: Claude Code sedang berubah dari asisten kode menjadi platform Agent yang dapat diatur.
Workflows yang dijelaskan dalam artikel ini memiliki nilai inti dalam membuat Claude tidak lagi hanya "berpikir dulu, baru bertindak" dalam jendela konteks yang sama, tetapi dapat secara dinamis menghasilkan kerangka eksekusi berdasarkan tugas: membagi tugas, mendistribusikan Sub-Agent, memproses secara paralel, melakukan verifikasi silang, melakukan iterasi berulang, bahkan memungkinkan berbagai Agent saling bersaing, lalu menggabungkan hasilnya.
Ini berarti penggunaan Claude Code sedang meluas secara signifikan. Tidak hanya cocok untuk migrasi kode, refaktorasi, replikasi pengujian, dan tinjauan kode, tetapi juga dapat digunakan untuk tugas-tugas non-teknis seperti penelitian mendalam, verifikasi fakta, penyaringan resume, analisis insiden, pengkodifikasian aturan, evaluasi rencana bisnis, dan brainstorming nama. Banyak pekerjaan kompleks pada dasarnya mirip dengan pemrograman: memerlukan pemecahan masalah, isolasi konteks, verifikasi hipotesis, penanganan sejumlah besar detail, serta pemilihan di antara beberapa jalur alternatif.
Dynamic workflows mencoba menyelesaikan beberapa masalah umum yang sering terjadi pada model besar dalam tugas panjang: "agent laziness" yang mengumumkan penyelesaian di tengah jalan, "self-bias" yang cenderung menyetujui kesimpulan sendiri, serta "goal drift" yang secara bertahap menyimpang dari tujuan awal setelah beberapa siklus eksekusi. Dengan menyerahkan tugas kepada beberapa Claude yang memiliki konteks independen, tugas kompleks diubah dari "lari tunggal agent" menjadi "kolaborasi multi-agent".
Tentu, workflow bukanlah solusi ajaib. Biasanya ia mengonsumsi lebih banyak token, dan tidak selalu cocok untuk setiap tugas pemrograman biasa. Namun, ia memberikan arah penting: persaingan alat AI masa depan mungkin tidak hanya bergantung pada seberapa cerdas model tunggal, tetapi pada sejauh mana ia dapat mengorganisasi alur eksekusi yang andal, dapat digunakan kembali, dan dapat diaudit seputar tujuan yang kompleks.
Berikut adalah teks aslinya:
Meskipun kerangka eksekusi Claude Code default dibangun untuk pemrograman, ia juga cocok untuk banyak jenis tugas lainnya. Faktanya, banyak tugas memiliki struktur yang sangat mirip dengan tugas pemrograman. Namun, untuk mencapai kinerja optimal pada beberapa jenis tugas tertentu, kami tetap perlu membangun kerangka eksekusi khusus di atas Claude Code, seperti penelitian, analisis keamanan, kolaborasi tim agen, atau tinjauan kode.
Workflows memungkinkan Anda membuat kerangka eksekusi secara dinamis, sehingga Claude dapat menyelesaikan masalah di atas dan berbagai jenis masalah lainnya secara lebih alami di dalam Claude Code. Anda juga dapat berbagi dan menggunakan kembali workflow ini dengan orang lain.
Dalam artikel ini, saya akan membagikan pengalaman dan wawasan saya saat pertama kali menggunakan workflows, untuk membantu Anda memaksimalkan kemampuannya.
Namun perlu ditekankan bahwa praktik terbaik terkait masih dalam proses pembentukan. Alur kerja dinamis biasanya mengonsumsi lebih banyak token, sehingga Anda perlu mempertimbangkan dengan cermat 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:
Tes ini gagal sekitar 1 kali setiap 50 kali berjalan. Bangun sebuah workflow untuk mereproduksinya, buat hipotesis, dan lakukan pengujian adversarial di berbagai worktree. /goal Jangan berhenti sampai satu hipotesis terbukti benar.
Gunakan workflow untuk meninjau 50 sesi terakhir saya, gali koreksi yang saya lakukan berulang kali, dan ubah masalah berulang ini menjadi aturan CLAUDE.md.
Gunakan workflow untuk menelusuri saluran #incidents di Slack selama enam bulan terakhir, dan identifikasi akar penyebab yang muncul berulang kali tetapi tidak ada yang mengajukan ticket.
Gunakan rencana bisnis saya untuk menjalankan workflow, biarkan agen yang berbeda memecahnya dari sudut pandang investor, klien, dan pesaing.
Ada folder yang berisi 80 resume. Gunakan workflow untuk mengurutkannya berdasarkan persyaratan posisi backend, lalu tinjau kembali sepuluh teratas. Gunakan alat AskUserQuestion untuk bertanya kepada saya, agar membantu Anda membuat kriteria penilaian.
Saya perlu memberi nama untuk alat CLI ini. Gunakan workflow untuk brainstorming sejumlah opsi, lalu pilih tiga teratas melalui mekanisme turnamen.
Gunakan workflow untuk menamai ulang model User kami menjadi Account di semua tempat.
Baca draf blog saya, dan verifikasi setiap penilaian teknisnya menggunakan workflow terhadap repositori kode. Saya tidak ingin mempublikasikan konten yang salah.
Bagaimana alur kerja dinamis berfungsi
Workflow dinamis akan menjalankan file JavaScript yang berisi beberapa fungsi khusus untuk menghasilkan dan mengoordinasikan agen-agen sub.

Dynamic workflows also include standard JavaScript functions such as JSON, Math, and Array for data processing.
Terutama perlu dicatat bahwa alur kerja dinamis dapat menentukan model mana yang digunakan oleh agen tertentu, serta apakah agen anak akan berjalan di worktree-nya sendiri. Ini memungkinkan Claude untuk secara mandiri memilih tingkat kecerdasan dan tingkat isolasi yang diperlukan sesuai kebutuhan tugas.
Jika sebuah workflow terputus, misalnya karena tindakan manual pengguna atau penutupan terminal, setelah sesi dipulihkan, workflow tersebut dapat melanjutkan eksekusi dari titik terputus.
Mengapa diperlukan alur kerja dinamis
Ketika Anda meminta kerangka kerja Claude Code default untuk menangani tugas, ia perlu menyelesaikan perencanaan dan eksekusi dalam jendela konteks yang sama. Untuk banyak tugas pemrograman, cara ini sangat efektif, tetapi dalam tugas yang berjalan lama, paralel dalam skala besar, atau sangat terstruktur dan bersifat adversarial, ia terkadang gagal.
Alasannya adalah semakin lama Claude memproses tugas kompleks dalam jendela konteks tunggal, semakin rentan ia terhadap beberapa pola kegagalan tertentu:
Agentic laziness (kemalasan agen) merujuk pada Claude yang berhenti lebih awal sebelum benar-benar menyelesaikan tugas kompleks yang terdiri dari beberapa bagian, dan menyatakan tugas selesai hanya setelah mencapai kemajuan sebagian. Misalnya, dalam tinjauan keamanan, hanya menangani 20 dari 50 proyek, lalu menyatakan pekerjaan selesai.
Self-preferential bias(自我偏好偏差)merujuk pada kecenderungan Claude untuk lebih memilih hasil atau temuannya sendiri, terutama ketika diminta untuk memverifikasi atau menilai konten yang dihasilkannya berdasarkan sejumlah kriteria evaluasi.
Goal drift (pergeseran tujuan) merujuk pada penurunan kesetiaan Claude terhadap tujuan awal selama proses eksekusi berulang, terutama setelah konteks dikompresi. Setiap ringkasan menyebabkan kehilangan informasi, dan beberapa persyaratan rinci, seperti kasus tepi, atau batasan seperti "jangan lakukan X", dapat hilang.
Membuat workflow membantu mengurangi masalah-masalah ini, karena dapat mengoordinasikan beberapa Claude independen, memungkinkan masing-masing memiliki jendela konteks sendiri dan fokus pada tugas-tugas yang terisolasi satu sama lain dengan tujuan yang jelas.
Dynamic workflow and static workflow
Anda mungkin sebelumnya telah membuat alur kerja statis melalui Claude Agent SDK atau claude -p untuk mengoordinasikan beberapa contoh Claude Code.
Namun, karena alur kerja statis perlu menangani berbagai kasus tepi, mereka biasanya lebih umum. Dengan munculnya Claude Opus 4.8 dan alur kerja dinamis, Claude sekarang cukup cerdas untuk menulis kerangka eksekusi yang disesuaikan secara khusus untuk skenario penggunaan Anda.

Pola praktis saat menggunakan alur kerja dinamis
Anda dapat langsung meminta Claude untuk membuat alur kerja dinamis, atau gunakan kata pemicu «ultracode» untuk memastikan Claude Code membuat workflow.
Namun, jika Anda dapat membangun model mental tentang bagaimana alur kerja dinamis berfungsi, akan lebih mudah untuk menentukan kapan harus menggunakannya, serta lebih mudah untuk membimbing Claude melalui prompt.
Claude sering menggunakan dan menggabungkan pola berikut saat membangun workflow:

Klasifikasikan dan eksekusi: Gunakan agen klasifikasi untuk menentukan jenis tugas, lalu arahkan ke agen atau perilaku yang berbeda berdasarkan jenis tugas tersebut. Anda juga dapat menggunakan klasifier di akhir proses untuk menilai hasil output.
Decompose and aggregate: Break a task into multiple smaller steps, with each step handled by a separate agent, then aggregate the results. This approach is especially suitable for tasks involving numerous small steps, or when each step requires a clean context window to avoid interference or cross-contamination. The aggregation step acts as a "barrier": it waits for all decomposed agents to complete, then combines their structured outputs into a single result.
Adversarial validation: Untuk setiap agen yang dihasilkan, jalankan agen independen lain yang melakukan adversarial validation terhadap outputnya berdasarkan sejumlah kriteria atau standar evaluasi.
Generate and filter: Generate a large number of ideas around a theme, then screen them based on evaluation criteria or validation processes, remove duplicates, and return only tested, highest-quality ideas.
Turnamen: Bukan membagi pekerjaan, tetapi membiarkan agen bersaing satu sama lain. Hasilkan N agen, biarkan masing-masing mencoba menyelesaikan tugas yang sama dengan metode berbeda. Kemudian, prompt atau model menilai hasil agen melalui perbandingan berpasangan hingga menentukan pemenang.
Lanjutkan hingga selesai: Untuk tugas dengan volume kerja yang tidak diketahui, jangan tetapkan putaran tetap, tetapi terus menghasilkan agent hingga kondisi berhenti terpenuhi, misalnya tidak ada lagi temuan baru, atau tidak ada lagi kesalahan dalam log.
Skenario penggunaan
Anda bisa berpikir lebih kreatif tentang kapan dan bagaimana Claude Code membuat alur kerja dinamis. Saya menemukan bahwa alur kerja terkadang bahkan lebih berguna dalam pekerjaan non-teknis.

Migrasi dan Rekonstruksi
Bun pernah ditulis ulang dari Zig ke Rust menggunakan workflows. Anda dapat membaca postingan Jarred di X untuk mengetahui prosesnya.
Intinya adalah membagi tugas menjadi serangkaian langkah yang perlu diproses, seperti titik panggilan, pengujian kegagalan, modul, dll. Mulaikan agen anak di worktree untuk setiap tugas perbaikan, biarkan agen tersebut menyelesaikan perbaikan; kemudian biarkan agen lain melakukan tinjauan adversarial, dan akhirnya gabungkan hasilnya. Anda dapat mempertimbangkan untuk secara eksplisit memberi tahu agen agar tidak menggunakan perintah yang memakan banyak sumber daya, sehingga dapat memaksimalkan derajat paralelisme tanpa menghabiskan sumber daya mesin lokal.
Deep Research
Kami telah meluncurkan keterampilan deep research (/deep-research) di Claude Code, yang menggunakan alur kerja dinamis. Secara khusus, ia akan membagi tugas untuk menjalankan pencarian web, mengambil sumber, melakukan verifikasi kontraktif terhadap klaim-klaim terkait, dan mengintegrasikan hasilnya menjadi laporan tercetak dengan referensi.
Namun, penelitian semacam ini tidak hanya berlaku untuk pencarian web. Misalnya, Anda juga dapat meminta Claude untuk menyusun laporan status dari konteks Slack, atau meneliti bagaimana suatu fitur bekerja dengan menjelajahi kode secara mendalam.
Depth Verification

Di sisi lain, jika Anda memiliki sebuah laporan dan ingin memverifikasi setiap pernyataan fakta serta sumber yang dikutip di dalamnya, Anda dapat membuat workflow: pertama, agen mengidentifikasi semua klaim fakta, lalu memicu sub-agen untuk setiap klaim guna melakukan verifikasi mendalam. Anda juga dapat meminta agen verifikasi untuk memeriksa sub-agen yang bertanggung jawab atas pelacakan sumber, memastikan kualitas sumbernya cukup tinggi.
Sort

Anda mungkin memiliki sekelompok proyek yang ingin Anda urutkan berdasarkan indikator kualitatif tertentu, dan Anda percaya Claude Code unggul dalam mengevaluasi indikator semacam itu. Misalnya, mengurutkan tiket dukungan berdasarkan tingkat keparahan bug.
Namun, jika Anda mencoba mengurutkan lebih dari 1000 baris dalam satu prompt, kualitasnya akan menurun dan jendela konteks tidak mampu menampungnya. Pendekatan yang lebih baik adalah menjalankan mekanisme turnamen, membangun alur kerja yang terdiri dari agen yang membandingkan berpasangan, karena penilaian perbandingan biasanya lebih andal daripada pemberian skor absolut; atau pertama-tama melakukan pengelompokan paralel, lalu menggabungkan hasilnya. Setiap perbandingan dilakukan oleh agen independen, sehingga siklus deterministik dapat mempertahankan struktur seluruh turnamen, dengan hanya urutan saat ini yang perlu disimpan dalam konteks.
Memory and rule compliance

Jika Anda memiliki serangkaian aturan spesifik, dan Claude sering melewatkan atau gagal melaksanakannya meskipun telah melihat aturan-aturan tersebut di CLAUDE.md, Anda dapat membuat workflow yang mencantumkan aturan-aturan ini dan meminta agen verifikasi untuk memeriksa satu per satu—setiap aturan memiliki agen verifikasi sendiri. Membuat sub-agen dengan kepribadian "skeptis" untuk meninjau apakah aturan-aturan tersebut masuk akal juga membantu menghindari terlalu banyak false positive.
Sebaliknya juga bisa: gali sesi dan ulasan kode terbaru Anda, temukan koreksi yang secara berulang Anda buat; minta agen paralel untuk mengelompokkan masalah-masalah ini; lalu lakukan verifikasi adversarial terhadap setiap aturan kandidat untuk menentukan apakah aturan tersebut benar-benar mencegah kesalahan nyata; terakhir, rangkum kembali aturan yang lolos seleksi ke dalam CLAUDE.md.
Investigasi akar penyebab
Cara paling efektif untuk debugging adalah mengajukan beberapa hipotesis yang saling independen dan mengujinya satu per satu. Namun, jika Anda hanya menggunakan satu jendela konteks, Claude mungkin terjebak dalam bias preferensi diri.
Workflow dapat mencegah situasi ini secara struktural: ia dapat memicu beberapa agen untuk menghasilkan hipotesis berdasarkan bukti yang tidak tumpang tindih. Misalnya, membiarkan agen yang berbeda memeriksa log, file, dan data secara terpisah. Selanjutnya, setiap hipotesis dapat menjalani tinjauan oleh sekelompok validator dan pembantah.
Ini tidak hanya berlaku untuk kode. Workflow juga dapat digunakan untuk analisis penjualan, misalnya "Mengapa penjualan bulan Maret turun?"; untuk teknik data, misalnya "Mengapa pipeline ini gagal?"; atau untuk apa pun yang memerlukan tinjauan pasca-kejadian.
Large-scale triage

Setiap tim memiliki antrian dukungan, laporan bug, atau tugas tertunda lainnya yang tidak dapat sepenuhnya ditangani oleh manusia. Sebuah workflow triase dapat mengklasifikasikan setiap item, menghilangkan duplikasi dengan masalah yang sudah dilacak, dan mengambil tindakan. Ini bisa berarti mencoba memperbaiki, atau menaikkan tingkatnya untuk ditangani oleh pengguna manusia.
Untuk alur kerja triase, pola yang berguna adalah quarantine (karantina). Artinya, larang agen yang membaca konten publik tidak tepercaya untuk melakukan operasi berwewenang tinggi; operasi berwewenang tinggi harus dilakukan oleh agen khusus yang bertanggung jawab atas tindakan.
Anda dapat menggabungkan workflow triase dengan /loop untuk memungkinkan Claude menjalankan tugas-tugas semacam ini secara berkelanjutan.
Eksplorasi dan penilaian rasa
Workflows berguna ketika Anda perlu mengeksplorasi berbagai jalur solusi, terutama untuk tugas-tugas seperti desain dan penamaan yang melibatkan penilaian estetika dan dapat diuntungkan dengan seperangkat kriteria evaluasi.
Anda dapat meminta Claude untuk mengeksplorasi sejumlah besar solusi dan memberikan agen peninjau seperangkat kriteria evaluasi tentang "seperti apa solusi yang baik". Ketika agen peninjau menilai hasil telah memenuhi kriteria tersebut, tugas selesai. Solusi yang berbeda juga dapat diurutkan atau disaring melalui mekanisme turnamen berdasarkan kriteria evaluasi ini.
Evals (Ulasan)
Anda dapat menjalankan evals ringan untuk tugas tertentu dengan memulai agent independen di worktree, lalu memulai agent perbandingan, dan membandingkan serta memberi skor output berdasarkan kriteria evaluasi. Misalnya, Anda dapat mengevaluasi dan meningkatkan skill yang Anda buat sendiri untuk melihat apakah ia memenuhi beberapa kriteria tertentu.
Model dan routing tingkat kecerdasan: Anda dapat membuat agent klasifikasi yang dioptimalkan untuk tugas Anda sendiri, yang akan menentukan model mana yang digunakan. Pendekatan ini sangat berguna ketika tugas melibatkan banyak pemanggilan 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 bergantung pada berapa banyak file di modul auth dan bagaimana struktur repositori kode. Agen klasifikasi dapat menyelesaikan penelitian ini terlebih dahulu, lalu mengarahkan tugas ke Sonnet atau Opus berdasarkan kompleksitas yang diharapkan.
Kapan sebaiknya tidak menggunakan dynamic workflow
Workflows masih merupakan hal baru. Meskipun dalam banyak skenario penggunaan, ia dapat menghasilkan efek jauh melebihi cara konvensional, tidak setiap tugas memerlukannya, dan ia dapat secara signifikan meningkatkan konsumsi token.
Gunakan workflows untuk tugas-tugas yang dapat memperluas batasan kemampuan Claude Code dengan cara baru. Untuk tugas pemrograman rutin, tanyakan pada diri sendiri: apakah tugas ini benar-benar memerlukan lebih banyak sumber daya komputasi? Misalnya, sebagian besar tugas pemrograman tradisional tidak memerlukan kelompok lima reviewer.
Tips untuk membangun alur kerja dinamis
Prompt design
Saat menulis prompt untuk alur kerja dinamis, semakin rinci detailnya, biasanya semakin baik hasilnya, terutama saat menggunakan teknik spesifik yang disebutkan sebelumnya.
Workflows tidak hanya berlaku untuk tugas besar. Anda juga dapat meminta model menggunakan 'quick workflow'. Misalnya, Anda dapat membuat proses tinjauan adversarial cepat untuk memeriksa suatu hipotesis.
Digunakan bersama /goal dan /loop
Ketika Anda menggunakan workflow yang dapat dijalankan berulang-ulang, seperti workflow triase, penelitian, atau verifikasi, Anda dapat menggabungkannya dengan /loop untuk menjalankannya pada interval tetap, sekaligus menggunakan /goal untuk menetapkan persyaratan penyelesaian yang ketat.
Anggaran penggunaan token
Anda dapat menetapkan anggaran token yang jelas untuk alur kerja dinamis untuk membatasi jumlah token yang digunakan oleh tugas. Anda dapat menulis permintaan anggaran seperti «use 10k tokens» di prompt, yang akan menetapkan batas atas sebesar 10k token.
Simpan dan bagikan alur kerja dinamis
Anda dapat menekan 's' di menu workflow untuk menyimpan workflow. Anda dapat mengirimkannya ke ~/.claude/workflows atau mendistribusikannya melalui skill.

Jika ingin berbagi melalui skill, letakkan file workflow JavaScript ke dalam folder skill dan sebutkan di SKILL.md. Untuk fleksibilitas yang lebih besar, Anda juga dapat meminta Claude: anggap workflows dalam skill sebagai template, bukan skrip yang harus dijalankan secara harfiah.

Sebuah dunia baru
Workflows adalah cara baru yang berguna untuk memperluas Claude Code. Saya mendorong Anda untuk melihatnya sebagai titik awal. Masih banyak yang perlu kami eksplorasi mengenai cara terbaik menggunakannya. Silakan beri tahu kami temuan Anda.
Thariq Shihipar dan Sid Bidasaria (@sidbid) adalah anggota tim teknis Anthropic yang bertanggung jawab atas pekerjaan terkait Claude Code.
Klik untuk mengetahui posisi yang sedang dibuka oleh BlockBeats
Selamat bergabung dengan komunitas resmi BlockBeats:
Grup langganan Telegram: https://t.me/theblockbeats
Grup Telegram: https://t.me/BlockBeats_App
Akun resmi Twitter: https://twitter.com/BlockBeatsAsia
