coding-agent
Catatan teknis seputar web development, DevOps, dan integrasi AI.
8 artikel
- 01.47tooling
Aturan Deny yang Diam-diam Mati Setelah Upgrade OpenCode V2
Upgrade harness membunuh config permission lama tanpa error. Cara saya menemukan deny yang mati dan membuktikannya dengan aksi nyata.
TL;DR: Setelah upgrade ke V2, saya menemukan masalah dengan frontmatter yang tidak terbaca. Perubahan schema membuat aturan lama tidak berlaku. Sekarang saya harus memeriksa setiap file frontmatter dan melakukan percobaan aksi yang ditarang setelah setiap upgrade.
#opencode#coding-agent#agent-rules - 04.45devops
Gerbang Slice yang Membaca Artefak Program Lain
Satu direktori program tertanam di cmd_slice membuat gerbang validasi lulus dengan bukti milik program lain; pembenahnya satu baris env-override.
TL;DR: Skrip gerbang slice ternyata ngecek direktori program lama, qa-backfill, bukan program yang lagi jalan, karena lokasinya nempel jadi konstanta di kode. Fix-nya cuma satu baris: baca dari env dulu, kalau kosong baru pakai bawaan. Pelajarannya: begitu alat dipakai di konteks kedua, nilai yang beda antar konteks harus naik kelas ke env.
#bash#coding-agent#validasi-input - 04.39devops
Gerbang Commit Butuh Jalur Resmi, Bukan Hanya Penolak
Hook yang menolak commit langsung baru setengah gerbang; wrapper yang tidak pernah diimplementasi mengubah keamanan menjadi gembok total.
TL;DR: Jadi gerbangnya nolak commit padahal hook-nya bener, masalahnya cmd_commit nggak pernah ditulis meski usage string ngaku ada. Fix-nya cuma 40 baris: validasi pesan dulu, lolos baru commit dieksekusi, nggak perlu bypass. Selftest kasus 19 mastiin penolakan bersih, commit pas, dan nggak dobel.
#git-hooks#coding-agent#bash - 04.32devops
Memblokir Git Commit Langsung Lewat Hook PreToolUse
Hook PreToolUse membuat git commit langsung dari sesi agen koding mustahil secara teknis, bukan sekadar dilarang di dokumen.
TL;DR: Jadi gerbang review ini dipasang sebagai hook PreToolUse di Claude Code, bukan hook Git biasa, biar commit langsung dari agen koding bisa diblokir lewat exit 2. Pendaftarannya diselipin di settings pengguna plus sembilan berkas definisi agen, jadi nggak ada celah warisan otomatis. Ujinya udah ditolak dua kali bare, bukti fail-closed-nya works.
#git-hooks#coding-agent#keamanan-proses - 02.58testing
Checksum Bukti: Angka Test Lulus Itu Klaim Sampai Di_checksum
Output mentah perintah verifikasi dibungkus checksum sha256 otomatis, dan gerbang fail-closed menolak irisan tanpa putusan review terjangkar.
TL;DR: Agen coding bilang tests passed dan coverage 42%, tapi ternyata cuma klaim, nggak ada bukti output mentahnya. Solusinya, skrip shell nyimpen bundel bukti plus checksum sha256, jadi kalau angkanya disunting, ketahuan. Ada juga gerbang fail-closed: irisan nggak boleh disebut selesai kalau review-nya belum PASS semua.
#ai-agents#testing#qa - 15.38ai
Kontrak Sebelas Agen Spesialis: Batasan Alat, Bukan Narasi
Sebelas file .claude/agents bikin saya sadar: yang mengendalikan subagen adalah field tools, model, dan hook, bukan panjang deskripsinya.
TL;DR: Ternyata yang ngatur agen bukan deskripsi panjangnya, tapi field kecil kayak tools, model, dan maxTurns yang membatasi apa yang boleh mereka sentuh. Tiap agen cuma dikasih alat yang memang dia butuh, dan laporannya wajib menyebut konsumennya biar bisa diteruskan. Gerbang kerja diikat ke cek yang bisa dijalankan, bukan cuma obrolan.
#ai-agents#claude-code#coding-agent - 13.22ai
26 Baris Aturan Agent yang Saya Hapus dari Dua Repo
Blok no-coding di dua file aturan akhirnya saya cabut. Ternyata aturan di file instruksi agent cuma konteks yang ikut termuat, bukan penjaga yang mengeksekusi.
TL;DR: Gue akhirnya hapus aturan no-coding Hermes di dua repo soalnya ternyata cuma jadi konteks doang, bukan blokir beneran dan bikin file gembung. Aturan gitu gampang kelupaan kalau context penuh, mending enforcement lewat hook sama approval gate. Sekarang tugas kecil gue kerjain langsung, yang ribet baru lempar ke Claude Code jadi lebih sat-set.
#hermes#claude-code#ai-agents - 11.06ai
OpenHands 2026: Dari CLI Menjadi Platform Agent Canvas
CLI OpenHands resmi deprecated pada 2026. Kenali penerusnya Agent Canvas, cara memakainya dengan benar, dan pola integrasinya dengan Hermes Agent.
TL;DR: Paket pip install openhands sudah deprecated; OpenHands berubah jadi platform Agent Canvas yang kini jadi antarmuka utamanya. Instalasi sekarang lewat npm global atau Docker, dengan mode Docker sebagai sandbox sejati karena akses agent dikunci ke folder PROJECTS_PATH. OpenHands berposisi sebagai outer loop untuk tugas berat berujung pull request, jadi pelengkap Hermes Agent, bukan pesaingnya.
#openhands#agent-canvas#hermes