8 poin oleh GN⁺ 2025-08-24 | 2 komentar | Bagikan ke WhatsApp
  • Claude Code adalah agen AI/workflow yang sangat unggul dari sisi kegunaan
  • Berkat kesederhanaan arsitektur dan control loop yang jelas, ia memberikan pengalaman yang memudahkan debugging dan pemeliharaan
  • Dengan meminimalkan adopsi RAG dan secara aktif memanfaatkan prompt yang canggih serta file konteks, kekuatan LLM dapat dimaksimalkan
  • Melalui beragam tool dan panduan yang jelas, kejelasan serta konsistensi kerja tetap terjaga
  • Alih-alih kompleksitas, ia unggul karena struktur yang mudah dipahami dan desain prompt, sehingga agen LLM buatan sendiri pun bisa diimplementasikan dengan cara serupa

Gambaran umum

  • Claude Code (selanjutnya disebut CC) memberikan pengalaman paling memuaskan di antara agen AI/workflow coding yang saat ini tersedia
  • Kelebihan CC terletak pada pengeditan kode yang tepat sasaran, berkurangnya gangguan yang tidak perlu, dan UX yang nyaman dengan tetap mempertahankan kendali pengguna
  • Model Claude 4 dan Interleaved Thinking khasnya memang berperan penting, tetapi dibandingkan alat lain berbasis model yang sama seperti Cursor atau Github Copilot, CC memberikan lebih sedikit friksi
  • Artikel ini membedah prinsip implementasi CC dan memberikan panduan praktis untuk membuat agen LLM sendiri yang dapat menghadirkan pengalaman serupa

Keutamaan utama Claude Code: kesederhanaan

  • Pelajaran terbesar darinya adalah "buat tetap sederhana (Keep Things Simple, Dummy)"
  • Jika agen LLM mengadopsi struktur yang rumit (multi-agent, RAG yang kompleks, sistem verifikasi, dan sebagainya), maka debugging dan peningkatan akan menjadi sangat sulit
  • CC mengadopsi single main loop, set tool yang sederhana, dan struktur yang bisa dipahami sekilas, sambil menaruh seluruh logika inti dalam satu file untuk menyingkirkan boilerplate dan kompleksitas yang tidak perlu

Mengapa kesederhanaan penting

  • Alih-alih struktur multi-agent, sebagian besar pekerjaan ditangani dalam satu main thread
    • Ringkasan riwayat, integrasi pesan untuk UX, dan sejenisnya diterapkan sebagai bantuan tambahan
    • Saat butuh pekerjaan yang kompleks, ia menggandakan dirinya sendiri untuk bercabang menjadi sub-agen (tanpa percabangan rekursif, hanya diizinkan sampai satu tingkat)
  • Daftar tugas (todo list) dimanfaatkan secara aktif
    • Masalah yang kompleks dipecah dan ditangani oleh sub-agen, lalu hasilnya digabungkan kembali ke riwayat pesan utama
    • Struktur multi-layer yang terlalu abstrak (banyak agen, navigasi graf) justru berpotensi menurunkan stabilitas dan skalabilitas sistem

Pemanfaatan aktif model ringan

  • Model LLM ringan seperti claude-3-5-haiku digunakan untuk sebagian besar permintaan
    • Banyak tugas seperti membaca file besar, parsing halaman web, dan merangkum riwayat git dapat diproses secara efisien
    • Penggunaan model ringan dapat mengurangi biaya hingga 70–80%
  • Disarankan memakai kombinasi model yang dioptimalkan untuk setiap pemanggilan fungsi utama

Desain prompt yang cermat

  • System prompt CC terdiri dari ukuran yang sangat besar (sekitar 2800 tokens) dan beragam bagian (tone & style, manajemen tugas, kebijakan penggunaan tool, informasi OS/direktori, dll.)
    • Seluruh file konteks seperti claude.md selalu disertakan untuk memaksimalkan kekayaan konteks
    • System prompt memberikan panduan yang sangat rinci tentang aturan kebijakan, contoh, hal-hal yang perlu diperhatikan, waktu penggunaan tool, dan lain-lain

Penggunaan XML dan Markdown secara bersamaan

  • Tag XML dan struktur Markdown dipakai secara bersamaan di dalam prompt
    • Informasi yang detail dan memungkinkan percabangan kondisi disampaikan melalui <system-reminder>, <good-example>, <bad-example> dan sebagainya
    • Bagian-bagian dibedakan dengan jelas memakai heading markdown

Pentingnya file konteks

  • Ada perbedaan performa CC yang sangat mencolok bergantung pada ada tidaknya claude.md
    • Ini penting untuk menyampaikan aturan tambahan yang sulit disimpulkan dari codebase saja (misalnya mengecualikan folder/library tertentu, kebijakan preferensi, dll.)
    • MinusX juga menata preferensi tim/pengguna secara sistematis melalui minusx.md

Meminimalkan RAG, memanfaatkan pencarian oleh LLM

  • Alih-alih RAG (Retrieval Augmented Generation), CC lebih memilih struktur berbasis pencarian kode langsung memakai perintah seperti ripgrep, jq, dan find, sebagaimana dilakukan developer sungguhan
    • Ini menjadi alternatif terhadap kemungkinan kegagalan tersembunyi yang datang dari konfigurasi RAG yang kompleks (misalnya similarity function, reranker, chunking)
    • Dengan struktur di mana LLM langsung menelusuri dan memahami konteks kode nyata, jumlah komponen bergerak berkurang dan efisiensi pelatihan RL pun berpotensi meningkat

Desain tool dan struktur berlapis

  • CC mendukung tool level rendah (Bash, Read, Write), level menengah (Edit, Grep, Glob), dan level tinggi (Task, WebFetch, dll.)
    • Tool yang diperlukan dipisahkan satu per satu dengan mempertimbangkan frekuensi penggunaan dan akurasi
    • Deskripsi, contoh, dan waktu penggunaan tool diinformasikan dengan jelas di system prompt
  • Pekerjaan yang kompleks dikelola secara konsisten melalui Task atau tool level tinggi

Manajemen Todo eksplisit untuk mencegah hilangnya konteks

  • Untuk mengatasi masalah umum agen LLM yang berjalan lama (hilangnya konteks, kehilangan arah), CC mengelola status melalui daftar Todo yang dipertahankan secara langsung
    • Alih-alih sistem multi-agent, model memperbarui Todo secara mandiri sehingga arah kerja dan fleksibilitas bisa dijaga sekaligus

Mengontrol tone, style, dan tingkat keramahan agen

  • Tone, style, tingkat proaktif, dan sebagainya dikelola dalam bagian terpisah
    • Dengan aturan seperti menahan diri dari penjelasan yang tidak perlu dan emoji hanya diizinkan jika diminta secara eksplisit, dirancanglah pengalaman pengguna yang konsisten
  • Perhatian penting disampaikan dengan penguat yang tegas seperti "sangat penting (IMPORTANT)", "jangan pernah (NEVER)", dan "selalu (ALWAYS)"

Desain algoritme dan alur pengambilan keputusan

  • Algoritme utama yang harus diikuti LLM dijelaskan dan dicontohkan secara jelas
    • Dibanding sekadar daftar Do/Don't, flow chart dan checklist bertahap lebih efektif untuk menjaga stabilitas algoritme
    • Dengan mempertimbangkan kemungkinan benturan antarberbagai panduan dan contoh, cakupan peran serta kebijakan dinyatakan secara terstruktur

Pola desain dan tips praktis penerapan

  • Opini yang kuat dan struktur yang jelas layak langsung dijadikan benchmark saat merancang agen sendiri
    • Daripada menyalahgunakan framework yang membuat kepala makin rumit, yang lebih penting adalah merancang struktur yang sederhana namun efektif
  • Di MinusX sendiri, banyak prinsip ini sudah diterapkan dan rencananya akan terus diperluas

Kesimpulan

  • Pelajaran terbesar dari Claude Code: “kesederhanaan adalah kekuatan terbaik”
  • Kejelasan struktural, desain prompt yang bermakna, dan kombinasi tool ringan memungkinkan lahirnya agen LLM yang kuat
  • Saat mengembangkan agen LLM sendiri, filosofi desain dan panduan dari CC sangat layak dijadikan rujukan aktif

2 komentar

 
kaydash 2025-08-25

Suka banget, bahagia, ini yang terbaik, manis banget, pengin lanjut terus

 
GN⁺ 2025-08-24
Komentar Hacker News
  • Ada keyakinan bahwa kesederhanaan ala KISS selalu menang, dan tulisan ini terasa bermanfaat karena merangkum hal itu dengan baik

  • Sayang Claude Code bukan open source, tetapi ada pengenalan beberapa alat yang bisa membantu memahami cara kerjanya secara lebih baik; kalau benar-benar tertarik bagaimana ia bekerja, direkomendasikan Claude Trace
    https://github.com/badlogic/lemmy/tree/main/apps/claude-trace
    Alat ini membuat file JSON yang menampilkan semua alat dan prompt yang dipakai dalam sebuah sesi, serta file HTML yang diformat agar mudah dibaca

  • Ada pendapat bahwa ini bermanfaat karena memperlihatkan bagaimana organisasi yang berpusat pada LLM mendekati masalah di tengah masa ketika sistem multi-agent sedang naik daun; penulis komentar juga merasa relate karena sedang bereksperimen dengan berbagai sudut pandang desain dalam keseharian
    Insight utamanya adalah
    (1) prompt boleh panjang, dan penjelasan dasar seperti tujuan alat atau bagaimana alat itu membantu harus selalu disertakan
    (2) pemanggilan alat adalah bagian yang sangat mendasar, jadi konteks perlu lebih banyak tercermin di sana (kapan dipakai, kapan tidak dipakai, dan sebagainya)
    (3) mengelola status sistem sebagai pesan itu tidak masalah; memang sempat terpikir metode yang lebih fancy (menyimpan dataframe, parsing variabel, dll.), tetapi jika context window makin panjang, pesan saja dianggap sudah cukup

    • Prompt yang panjang memang bagus, tetapi hanya jika modelnya dioptimalkan untuk memproses itu dengan baik; orang ini pernah mengganti model lain di Claude Code, dan hampir tidak ada model lokal yang bisa menangani prompt panjang maupun penggunaan alat sebaik yang diiklankan
      Model seperti OpenAI dan Google Gemini juga sudah dicoba, tetapi terasa tidak sebaik model Anthropic dan juga lebih lambat; makin panjang prompt-nya, makin sering model lupa alat yang harus dipakai atau mengeluarkan hasil dalam format yang salah
    • (Penulis blog) berpendapat bahwa dengan memanfaatkan fitur dasar saja, performa yang baik bisa dicapai di hampir 99% situasi; yang penting adalah menjaga loop tetap sederhana dan menyediakan alat yang jelas, meski ada fitur yang tumpang tindih pun tidak apa-apa
      Kejelasan dan kesederhanaan adalah prioritas utama
  • Ada pertanyaan tentang bagaimana Google Gemini, khususnya versi Pro, dibandingkan dengan Claude; banyak produk Google disukai, tetapi ada kekhawatiran karena mereka sering menghentikan produk, bersikap kasar dalam kontrol korporat (seperti Chrome), dan ada isu sensor

    • Gemini sangat unggul terutama ketika bisa memasukkan file merge dari seluruh repositori sekaligus untuk diajak berdialog; tingkat pemahamannya terhadap keseluruhan codebase terasa mengejutkan, dan sangat membantu dalam desain arsitektur; di sisi ini Claude terasa jauh lebih lemah
      Strategi pribadinya adalah memakai Gemini untuk membuat ringkasan proyek dan rencana desain tingkat tinggi, lalu meminta gpt5 menyempurnakan dan merancang workflow yang lebih detail (misalnya dokumen XML), kemudian semuanya diberikan lagi ke Claude; dengan cara ini, perilaku Claude yang kadang bingung bisa hampir sepenuhnya dihindari
    • Gemini Pro tidak buruk untuk coding, tetapi dari pengalaman pribadi Claude jauh lebih baik untuk pekerjaan terkait terminal (CLI, dll.); kebanyakan CLI juga banyak memakai Claude
      https://www.tbench.ai/leaderboard
    • Untuk web UI (chat), Gemini 2.5 Pro cukup disukai; untuk alat command line, Gemini code tidak berguna dan Claude code kebanyakan lambat
    • Gemini lebih unggul untuk debugging masalah sulit yang mengharuskan mengikuti banyak function call; Claude selalu lebih dapat diprediksi dan patuh pada instruksi, serta sangat bagus dalam mengelola daftar todo
    • Dulu cukup suka, tetapi belakangan terasa jadi lebih bodoh (dan bertanya-tanya apakah hanya dirinya yang merasa begitu)
  • Ada pendapat bahwa pengguna memberi penilaian bagus karena model dasarnya sendiri sangat kuat untuk pekerjaan coding nyata, berbeda dari soal benchmark umum; kalau mencoba GitHub Copilot, Claude terasa jauh lebih unggul daripada model OpenAI maupun Google, sampai-sampai model lain terasa nyaris tak berguna dalam praktik

    • Anthropic bisa mengoptimalkan model dan prompt secara internal selama reinforcement learning, jadi nasihat dalam tulisan untuk “gunakan saja pendekatan yang ada” dianggap lebih cocok untuk model Anthropic; model langganan mereka juga memberi insentif kuat untuk efisiensi loop
    • Ini tidak bisa dijelaskan hanya dari perbedaan model dasar; saat memakai opus dan cline bersama di vs code dibanding saat memakai Claude code, produktivitasnya sulit dijelaskan secara angka, tetapi dengan CC terasa bisa menyelesaikan lebih banyak hal
    • Setelah melihat banyak pujian, orang ini memakai Claude Code selama sebulan dengan ekspektasi tinggi, tetapi justru makin kecewa; pengalamannya lebih buruk daripada sidebar Cursor, dan sampai bertanya-tanya apakah dirinya yang salah memakainya; di dua codebase berbeda, alat itu terus membuat kesalahan coding yang konyol sehingga terasa mengecewakan
  • Saat ini ada yang sedang mencoba memakai Claude Code untuk debugging masalah terkait Elastic di Security Onion, tetapi setelah beberapa menit malah keluar kode JS yang rumit lalu muncul error Error: kill EPERM
    Dari log-nya, ia menduga Claude mungkin membunuh proses Node.js sehingga Claude sendiri ikut mati, atau mungkin Claude menutup dirinya sendiri karena tidak bisa menyelesaikan masalah
    Bagaimanapun, kalau prosesnya bisa tetap hidup, ia berharap alat itu bisa membantu lebih lama

    • Claude dan sebagian localstack memang kurang cocok satu sama lain; anehnya, di Rust justru cukup bagus
      Ada pandangan bahwa ke depan bahasa/platform/arsitektur yang paling dikuasai LLM akan makin dominan; misalnya, kalau LLM 10 kali lebih mahir di nodejs, maka masuk akal memilih nodejs sejak awal daripada Elixir atau Go; bahkan developer junior pun bisa dimanfaatkan seperti level menengah/senior dengan bantuan LLM
    • Error seperti itu bisa muncul ketika mencoba menjalankan proses dengan hak superuser memakai sudo lalu terkena timeout
    • Kadang masalahnya selesai dengan meng-upgrade instalasi atau menghapus file instalasi lama lalu memasang ulang; ada yang mengaku memperbaikinya dengan cara itu
    • Ada juga yang punya pengalaman berpindah ke LLM lain untuk melihat apa yang sebenarnya terjadi (bukan saran resmi)
    • Ada yang belum pernah mendapat hasil bagus dari kombinasi Elasticsearch dan LLM; kebanyakan hasilnya berupa “halusinasi” tanpa dasar, kemungkinan karena memang tidak banyak contoh yang baik di internet
  • Ada yang mengatakan bahwa ia membangun seluruh MVP pertama startup-nya dengan Claude Code dan sekarang bahkan sudah mendapatkan pelanggan berbayar; tentu masih ada kecemasan mendasar bahwa semuanya bisa runtuh seketika jika terjadi insiden SEV (gangguan layanan), tetapi ia tetap aktif memakai Claude untuk perbaikan kerentanan keamanan, test-driven development, dan perancangan arsitektur perangkat lunak berdasarkan roadmap jangka panjang
    Ia berharap kisah seperti ini akan makin umum ke depannya

    • Ada permintaan untuk membagikan tautan produk karena penasaran dengan contoh penggunaan nyata
    • Ada pertanyaan bercanda apakah “perbaikan kerentanan keamanan” itu berarti Claude yang sejak awal menulis kode sekaligus menciptakan celah keamanannya
    • Ada permintaan untuk menjelaskan contoh konkret bagaimana bantuan Claude dipakai dalam hal seperti test-driven development dan desain perangkat lunak
    • Ada lelucon bahwa seseorang menyuruh Claude Code mengirim uang ke rekening bank tiap bulan, dan ternyata benar-benar dilakukan
    • Ada masukan agar dijelaskan secara terbuka apa tepatnya yang dibuat dengan Claude Code
  • Ada pendapat bahwa jika klaim “Keep things simple” memang benar, justru susunannya terasa agak kompleks
    Orang ini selama ini bisa mengerjakan cukup banyak hal hanya dengan cara sederhana, yaitu menanyakan kebutuhan satu prompt demi satu prompt
    Ia belum yakin struktur kompleks yang dibahas benar-benar memberi nilai tambah dibanding prompt yang sangat dirancang dengan baik
    Misalnya, untuk pertanyaan seperti "cara membuat while loop di bahasa yang baru dipelajari", prompt satu kalimat justru mungkin lebih efisien
    Control flow malah terasa kurang jelas; ia juga ragu apakah LLM benar-benar memanfaatkan bagian appendix (alat atau prompt sistem) dengan baik; kalau permintaannya terlalu kompleks, mungkin sebagian diabaikan atau hanya memboroskan token
    Memprogram dengan melempar prompt terpisah per bagian terasa jauh lebih alami baginya
    Ia ingin melihat contoh kasus atau prompt yang memakai pendekatan lain
    Ia penasaran bagaimana orang benar-benar membangun program secara menyeluruh dengan memanfaatkan LLM, dan ingin melihat contoh yang dibangun dengan memecahnya per prompt

    • Ada juga yang mengatakan ia memakainya dengan cara yang sama, jadi penasaran dengan jawaban orang lain
  • Sebagai catatan, di bagian akhir tulisan ada tautan ke minusx.com, tetapi sertifikat keamanannya sudah kedaluwarsa sejak 553 hari lalu; ada peringatan agar berhati-hati karena situsnya tidak valid