Kursus
Gagasannya bukan hal baru. Pengembang telah membangun wrapper, scaffold, dan lingkungan eksekusi di sekitar model selama bertahun-tahun. Label ini menyebar setelah Mitchell Hashimoto, salah satu pendiri HashiCorp, menggunakan istilah "harness engineering" dalam posting blog Februari 2026 tentang alur kerja AI-nya. Pesannya sederhana: ketika agen melakukan kesalahan, ubah lingkungannya agar kesalahan itu tidak bisa terjadi lagi. OpenAI mengadopsi istilah tersebut pada minggu yang sama untuk Codex, dan LangChain mengikuti dengan kerangka pikir yang sama.
Dalam artikel ini, saya akan menjelaskan apa itu agent harness, mengapa agen AI membutuhkannya, bagaimana perbedaannya dari framework dan runtime, serta tools apa yang digunakan pengembang untuk membangun sistem mirip harness.
Apa Itu Agent Harness?
Salah satu definisi datang dari LangChain: "Jika Anda bukan modelnya, Anda adalah harness-nya." Dalam praktiknya, agent harness adalah perangkat lunak yang mengelilingi model bahasa: tools, memori, state, eksekusi, guardrail, dan observabilitas.
Agen = Model + Harness
Model melakukan penalaran. Harness memberi penalaran itu tempat untuk bertindak, mengingat, memeriksa hasil, dan mengikuti aturan.

Model di dalam agent harness tempat kerjanya. Gambar oleh Penulis.
Formula ini berguna, tetapi itu adalah model mental, bukan standar industri. Beberapa vendor masih menggunakan "harness", "framework", dan "scaffold" untuk merujuk pada hal yang kira-kira sama.
Mengapa Agen AI Membutuhkan Harness
Model bahasa mentah memiliki batasan saat Anda memintanya bekerja dalam banyak langkah. Ia tidak menyimpan state yang tahan lama sendiri, mengeksekusi tools secara mandiri, mengelola jendela konteks yang membesar, atau memulihkan dari kegagalan pemanggilan tool tanpa bantuan.

Bayangkan sebuah agen diminta memperbaiki tes yang gagal pada proyek Python. Tanpa harness, model dapat menulis sesuatu yang tampak seperti perbaikan, tetapi ia tidak bisa membaca file tes sebenarnya, menjalankan pytest, melihat error yang nyata, mengedit fungsi yang gagal, atau memastikan perbaikan itu lulus. Dengan harness, seluruh loop itu menjadi pekerjaan beberapa menit yang dilakukan agen secara mandiri, dengan setiap langkah dicatat di tempat yang bisa diperiksa manusia.
Namun, panduan dari Anthropic tetap berlaku: mulai dengan pendekatan sesederhana mungkin dan hanya tambahkan komponen bergerak ketika tugas membutuhkannya.
Komponen Penyusun Agent Harness
Bagiannya bervariasi, tetapi sebagian besar berbagi beberapa blok bangunan. Anggap ini sebagai daftar periksa, bukan spesifikasi produk yang kaku. Agen kecil mungkin hanya memerlukan beberapa bagian ini, sementara agen produksi akan memerlukan lebih banyak.
System prompt dan aturan perilaku
Harness biasanya mengendalikan instruksi dasar model. Ini mencakup system prompt, tetapi juga dapat mencakup aturan proyek, standar pengkodean, batasan peran, dan kebijakan keamanan. Dalam Deep Agents milik LangChain, misalnya, sebuah berkas AGENTS.md dapat menetapkan aturan dasar sebelum tugas dimulai.
Beberapa harness pada 2026 juga menggunakan pengungkapan progresif untuk instruksi. Alih-alih memuat setiap deskripsi tool ke dalam konteks saat mulai, harness hanya menambahkan ringkasan tentang apa yang tersedia. Instruksi lengkap untuk sebuah tool dimuat hanya ketika model membutuhkan tool tersebut.
Tools: cara agen berinteraksi dengan dunia
Tools memungkinkan agen melakukan hal-hal di luar sekadar menghasilkan teks. Contoh umum meliputi penelusuran web, baca-tulis file, kueri basis data, pemanggilan API, aksi peramban, eksekusi kode, dan perintah terminal. Harness mengendalikan tools mana yang tersedia, kapan model boleh memanggilnya, serta bagaimana hasil diformat dan dikembalikan ke konteks agen.
Model Context Protocol (MCP) telah menjadi antarmuka standar untuk hal ini pada 2026. Banyak harness, termasuk Anthropic Agent SDK, LangChain Deep Agents, dan OpenAI Agents SDK, menggunakan MCP untuk menghubungkan server tool eksternal tanpa perlu menulis kode integrasi kustom untuk masing-masing.
Memori dan state
Agen perlu mengetahui apa yang terjadi sebelumnya dalam suatu tugas. Harness dapat menyimpan state jangka pendek di percakapan aktif dan state jangka panjang di file, log, ringkasan, atau preferensi tersimpan. Beberapa harness juga memadatkan riwayat panjang menjadi ringkasan yang lebih pendek sehingga model tidak membawa setiap detail dalam konteks.
Lingkungan eksekusi: tempat agen berjalan dan bertindak
Banyak agen yang berguna membutuhkan tempat untuk benar-benar bekerja. Itu bisa berupa filesystem, container, terminal sandbox, instance peramban, atau runtime cloud. Tanpa lingkungan eksekusi yang dikelola oleh harness, pemanggilan tool tidak punya tempat untuk dijalankan.
Banyak harness kini menggunakan container sandbox terisolasi: lingkungan berumur pendek yang dibatasi pada satu sesi, dibersihkan saat tugas berakhir, sehingga penulisan file, paket yang diinstal, dan panggilan jaringan dari satu tugas agen tidak merembes ke tugas lain.
Orkestrasi dan perencanaan
Sebagian tugas tidak cocok dengan satu jalur langkah yang lurus. Harness dapat menyediakan tool perencanaan yang memecah tujuan menjadi sub-tugas dan melacak statusnya. Ia juga dapat memunculkan sub-agen yang menangani satu bagian pekerjaan dan hanya mengembalikan ringkasan kepada agen utama.
LangChain Deep Agents, misalnya, melacak langkah rencana dalam sebuah file di filesystem, memperbarui setiap langkah dari pending menjadi completed saat tugas berjalan.
Guardrail dan perizinan
Harness adalah tempat Anda meletakkan aturan: persetujuan manusia, pemblokiran pemanggilan tool, izin berbasis peran, dan pemeriksaan output. OpenAI Agents SDK, LangChain Deep Agents, dan Microsoft Agent Framework semuanya mendukung kontrol seperti ini. Pola yang lebih aman adalah memeriksa input, output, dan izin tool secara terpisah.
Observabilitas dan tracing
Ketika tugas agen dengan lima puluh langkah gagal pada langkah tiga puluh tujuh, trace menunjukkan apa yang terjadi. Tracing merekam panggilan model, panggilan tool, handoff, error, latensi, dan biaya sepanjang satu run penuh. OpenAI Agents SDK menyalakan tracing secara bawaan. LangSmith menambahkan dasbor debugging dan evaluasi di atasnya. OpenTelemetry telah menjadi standar untuk mengekspor trace dalam format netral-vendor, sehingga Anda tidak terkunci pada satu tool observabilitas.
Agent Harness vs. Framework vs. Runtime: Apa Bedanya?
Pertanyaan ini sering muncul, dan jawabannya lebih berantakan daripada yang disarankan kebanyakan penjelasan. Taksonominya berguna, tetapi tidak tetap.

Tiga lapisan, tingkat abstraksi meningkat dari bawah. Gambar oleh Penulis.
Saya akan mulai dengan framework, karena banyak pengembang sudah pernah menggunakannya.
Apa itu agent framework?
Agent framework memberi pengembang blok bangunan untuk membuat agen. Ini mencakup panggilan model, definisi tool, pola memori, dan struktur loop agen. Contohnya termasuk LangChain awal, CrewAI, dan Google ADK. Framework memberi tahu Anda bagaimana menyusun agen, tetapi tidak selalu bagaimana menjalankannya secara andal di produksi.
Apa itu agent runtime?
Agent runtime adalah lapisan yang membantu agen berjalan andal dari waktu ke waktu. Ia menangani eksekusi yang tahan lama, persistensi state, retry, langkah human-in-the-loop, dan streaming. LangGraph, Temporal, dan Inngest adalah contohnya. Harrison Chase menawarkan analogi ini: jika Node.js adalah runtime dan Express adalah framework, maka harness seperti Next.js.
Apa yang membuat harness berbeda?
Harness berada pada tingkat yang lebih tinggi daripada framework. Jika framework memberi Anda komponen, harness biasanya hadir dengan lebih banyak keputusan yang sudah dibuat: tools, perencanaan, akses filesystem, dan manajemen konteks.
Use Case Agent Harness: Koding, Riset, Data, dan Enterprise
Blok bangunannya sama muncul di pekerjaan yang sangat berbeda, tetapi komposisinya yang berubah. Agen untuk koding dan agen alur kerja enterprise sama-sama membutuhkan harness, tetapi menekankan bagian yang berbeda. Kategori ini bukan standar formal. Ini adalah cara praktis untuk melihat bagaimana ide yang sama menyesuaikan diri dengan pekerjaan di depannya.
Harness agen koding
Agen koding adalah contoh yang bagus saat ini karena harness-nya terlihat jelas. Untuk melakukan pekerjaan koding yang berguna, agen membutuhkan akses file, konteks git, eksekusi terminal, menjalankan tes, instalasi dependensi, dan aturan proyek. Claude Code dan Codex adalah contoh pola ini: keduanya berjalan di atas banyak kode harness, bukan sekadar API model mentah.
Perbedaan antara harness koding yang baik dan yang biasa-biasa saja biasanya terlihat pada detail kecil: bagaimana ia memulihkan dari tes yang gagal, apakah bisa membatalkan (rollback) edit yang buruk, seberapa bersih ia mengekspos riwayat git ke model. Detail-detail itulah tempat sebagian besar upaya rekayasa sebenarnya pergi.
Harness agen riset
Agen riset membutuhkan set tool yang berbeda: penelusuran web, pelacakan sumber, pencatatan, manajemen sitasi, dan peringkasan. Harness mengelola bagaimana hasil penelusuran disimpan, bagaimana sumber diatribusikan, dan bagaimana dokumen panjang dipotong-potong dan dipindahkan agar tidak menghabiskan seluruh jendela konteks sekaligus.
Harness agen analisis data
Agen data memerlukan akses ke dataset, basis data SQL, lingkungan eksekusi Python, dan konteks skema sehingga mereka tahu tabel dan kolom apa yang tersedia sebelum mulai menulis kueri. Harness juga menegakkan batas izin, yang penting ketika agen dapat menyentuh data produksi.
Harness alur kerja enterprise
Penerapan enterprise menambahkan lapisan kebutuhan lain: autentikasi, log audit, alur persetujuan, kontrol akses berbasis peran, dan tautan ke sistem internal. AWS AgentCore adalah salah satu contoh terkelola dalam kategori ini, dengan identitas, jaringan VPC, dan observabilitas yang disertakan. Microsoft Agent Framework mencakup area serupa untuk tim di lingkungan Azure atau .NET.
Tools untuk Membangun Sistem Agent Harness pada 2026
Sejumlah produk paling sering muncul pada pertengahan 2026. Mereka berada di titik yang berbeda pada spektrum framework-runtime-harness, dan batas-batasnya masih bergerak.
LangChain Deep Agents
LangChain Deep Agents adalah harness open-source dari LangChain, dibangun di atas LangGraph sebagai runtimenya. Ia hadir dengan tool perencanaan, virtual filesystem, pemunculan sub-agen, pemadatan konteks otomatis, serta middleware untuk persetujuan human-in-the-loop dan deteksi PII. Ia agnostik model, mendukung endpoint yang kompatibel dengan OpenAI, dan terhubung ke penyedia sandbox termasuk Modal, Runloop, dan Daytona untuk eksekusi kode.
Anthropic Agent SDK
Anthropic Agent SDK (nama paket: claude-agent-sdk) diekstrak dari Claude Code dan dirilis sebagai opsi mandiri. Ia mencakup loop agen bawaan, tools untuk eksekusi bash, baca-tulis file, penelusuran web, integrasi MCP, dan pemadatan konteks. Ia hanya bekerja dengan model Claude, melalui API Anthropic, Amazon Bedrock, Vertex AI, dan Azure.
OpenAI Agents SDK
Seperti saya sebutkan sebelumnya, OpenAI Agents SDK menyeberang dari ranah framework ke harness seiring bertambahnya fitur. Rilis April 2026 menambahkan eksekusi sandbox native, pemadatan memori, dan tools filesystem. Tersedia dalam Python dan TypeScript, SDK ini mendukung penggunaan tool, handoff antar agen, dan guardrail.
Google Agent Development Kit
Google ADK mendukung orkestrasi multi-agen dengan kelas bawaan untuk struktur agen sekuensial, paralel, dan berbasis loop. Ia menyertakan tools evaluasi, bekerja dengan Vertex AI untuk deployment terkelola, dan mendukung MCP untuk konektivitas tool. Tersedia dalam Python, Java, TypeScript, dan Go, ia dioptimalkan untuk model Gemini tetapi digambarkan sebagai agnostik model.
Microsoft Agent Framework
Microsoft Agent Framework adalah jalur migrasi Microsoft saat ini untuk proyek AutoGen. Ia mendukung Python dan .NET, bekerja dengan layanan Azure AI, dan menyertakan dukungan MCP untuk konektivitas tool.
CrewAI
CrewAI mengambil pendekatan berbasis peran untuk sistem multi-agen. Anda mendefinisikan agen dengan peran khusus, menetapkan tugas, menyusun kru, dan mengonfigurasi memori serta guardrail secara deklaratif. Ini cocok untuk masalah yang secara alami dipetakan ke tim spesialis.
Temporal dan Inngest
Ini bukan agent harness dengan sendirinya. Ini adalah platform eksekusi yang tahan lama yang menangani ketika tugas agen perlu berjalan berjam-jam atau berhari-hari tanpa kehilangan state. Saat gagal, mesinnya memutar ulang dari checkpoint terakhir yang berhasil alih-alih memulai dari awal.
Tantangan dan Trade-Off pada Agent Harness
Menambahkan harness membuat sistem dapat melakukan lebih banyak, tetapi setiap tool, izin, dan agen yang ditambahkan membuka cara lain bagi sesuatu untuk gagal. Saat tugas semakin panjang, guardrail, tracing, dan state yang tahan lama berhenti menjadi opsional dan menjadi hal utama yang menjaga jalannya proses panjang tetap dapat dipulihkan.
Ada juga risiko keterikatan (coupling) yang sering tidak disadari tim. LangChain melaporkan lonjakan 10 hingga 20 poin pada subset tau2-bench setelah menambahkan profil harness khusus model. Artificial Analysis menyampaikan poin serupa dalam Coding Agent Index: hasil agen koding bergantung pada model dan harness secara bersamaan, dengan biaya, penggunaan token, dan waktu per tugas sangat bervariasi di berbagai kombinasi. Modelnya tidak berubah. Prompt, tools, dan middleware di sekitarnya yang berubah. Profil itu sendiri adalah pekerjaan harness.
Apakah Anda Benar-Benar Membutuhkan Agent Harness?
Berikut cara langsung untuk memikirkan apakah Anda membutuhkannya.
Kemungkinan Anda membutuhkan harness jika sistem Anda memenuhi satu atau lebih kondisi berikut:
- Perlu menggunakan tools eksternal
- Perlu mengingat progres lintas sesi
- Perlu menjalankan kode dalam lingkungan nyata
- Mengkoordinasikan lebih dari satu agen
- Perlu pulih dari kegagalan parsial tanpa kehilangan pekerjaan
- Memerlukan persetujuan manusia
Kemungkinan Anda tidak memerlukan harness jika tugasnya adalah alur kerja yang dapat diprediksi di mana setiap langkah sudah ditentukan sebelumnya.
Uji yang berguna: jika tugas dapat ditangani oleh satu panggilan model, atau oleh skrip deterministik kecil dengan beberapa pernyataan kondisional, harness mungkin berlebihan. Begitu tugas mengharuskan agen untuk mengambil keputusan, menggunakan tools, dan bereaksi terhadap hasil seiring waktu, harness mulai melakukan pekerjaan nyata.
Satu pola yang sering saya lihat adalah tim terlalu cepat mengambil harness, membangun tracing dan sandboxing untuk tugas yang sebenarnya hanya sekali jalan menghasilkan teks. Kesalahan sebaliknya yang lebih menyakitkan: mengirimkan model secara langsung dan baru menyadari pada tes gagal kedua, panggilan tool ketiga, atau restart kelima bahwa tidak ada infrastruktur untuk dijadikan sandaran.
Pemikiran Akhir
Seperti saya sebutkan sebelumnya, para vendor tidak semua menggunakan kata yang sama untuk hal yang sama, dan batas antara framework, runtime, dan agent harness masih bergerak.
Untuk generasi satu kali, wrapper adalah berlebihan. Untuk agen yang harus bertindak, mengingat, dan pulih sepanjang sesi panjang, agent harness menjadi bagian utama dari sistem. Memilih yang tepat semakin menjadi keputusan terpisah dari memilih model yang tepat. Saya penasaran seberapa banyak lapisan ini akan diserap oleh generasi model berikutnya, karena beberapa langkah dari OpenAI dan Anthropic menyiratkan batasnya akan terus bergeser. Gagasannya tetap sama: agen adalah model ditambah agent harness.
Jika Anda ingin mempelajari lebih lanjut tentang membangun sistem agen, kursus Building Scalable Agentic Systems kami membahas pola di balik penggunaan tool, orkestrasi, dan alur kerja agen jangka panjang.
Saya seorang data engineer dan pembangun komunitas yang bekerja lintas pipeline data, cloud, dan perkakas AI sambil menulis tutorial praktis dan berdampak tinggi untuk DataCamp dan pengembang yang sedang berkembang.
FAQ Agent Harness
Apa perbedaan antara agent harness dan system prompt?
System prompt adalah salah satu input yang dibaca agen di awal. Agent harness adalah lapisan yang lebih luas yang mengelola tools, state, izin, dan penanganan kegagalan. Kerangka pikir paling sederhana yang saya temukan: system prompt memberi tahu model apa yang harus dilakukan, sementara agent harness mengendalikan apa yang bisa dilakukannya. Anda bisa memiliki system prompt yang rapi tanpa agent harness, dan Anda tetap berakhir dengan panggilan API tanpa state. Agent harness-lah yang mengubah prompt menjadi sebuah sistem.
Bisakah saya membangun agent harness sendiri dari nol?
Secara prinsip, ya. Dalam bentuk paling sederhana, harness adalah loop: panggil model, parse respons, eksekusi panggilan tool yang dibuatnya, kembalikan hasil, ulangi. Loop itu bisa ditulis dalam beberapa lusin baris Python dalam satu sore. Bagian sulit datang setelah loop: kelebihan konteks, kegagalan panggilan tool, kehilangan state saat restart, penegakan izin, dan tracing. Dalam praktiknya, pekerjaan pasca-loop itu selalu memakan waktu lebih lama daripada yang dianggarkan tim, itulah mengapa harness open-source terus bertambah, bukan menyusut.
Apakah model tahu bahwa ia berada di dalam harness?
Tidak secara eksplisit. Beberapa harness memberi tahu model tool apa yang tersedia melalui system prompt, tetapi model tidak memiliki konsep bahwa ada harness sebagai sistem di sekelilingnya. Ia hanya melihat konteks yang diberikan, menghasilkan respons, dan terkadang menghasilkan panggilan tool. Salah satu efek sampingnya: ketika sesuatu rusak, model sering kali tidak bisa memberi tahu Anda mengapa, karena ia tidak tahu harness itu ada. Debugging agen pada akhirnya sebagian besar adalah debugging harness, bukan model.
Bagaimana pilihan model memengaruhi harness yang sebaiknya saya gunakan?
Lebih besar dari yang orang perkirakan. Model coding terdepan kadang pasca-dilatih dengan agent harness mereka sendiri dalam loop, sehingga mengganti dengan harness berbeda bisa meninggalkan performa di meja. Heuristik praktisnya: jika tim Anda berkomitmen pada satu keluarga model, daftar pendek agent harness biasanya memilih dirinya sendiri. Kasus yang lebih sulit adalah berganti model kemudian, yang biasanya berarti menulis ulang logika harness, bukan sekadar mengubah nilai konfigurasi.
Apakah ini berbeda dari yang dulu disebut "LLM scaffolding"?
Tidak juga. Ini adalah gagasan yang sama dengan nama yang lebih baru. "LLM scaffolding," "agent wrapper," dan "execution environment" semuanya menunjuk ke arah yang sama. Pergeseran halus pada 2026 adalah bahwa "scaffolding" menyiratkan struktur sementara yang dilepas begitu model cukup baik, sedangkan "agent harness" menyiratkan sesuatu yang tetap ada di sekitar model. Itu mengubah cara tim menganggarkan pekerjaan: scaffolding dihapus, agent harness menjadi bagian dari sistem.
