Kamis, 24 September 2026 | 10 min read | Andhika R
Coding Agent Dapat Membaca Repositori dan Menjalankan Perintah: Mengapa File Instruksi Proyek Kini Menjadi Batas Keamanan Baru
Selama bertahun-tahun, file dokumentasi di dalam repositori diperlakukan sebagai pelengkap. Isinya membantu developer memahami struktur aplikasi, menjalankan pengujian, atau mengikuti standar penulisan kode yang telah disepakati.
Kehadiran coding agent mengubah posisi file tersebut secara mendasar.
Coding agent tidak hanya membaca kode untuk memberikan saran. Teknologi ini dapat menelusuri repository, mengubah sejumlah file, menjalankan pengujian, memasang dependency, hingga mengeksekusi perintah melalui terminal. Sebelum melakukan semua itu, agent dapat membaca file instruksi proyek yang menjelaskan bagaimana pekerjaan harus dijalankan.
Artinya, file yang sebelumnya hanya memberikan informasi kepada manusia kini dapat memengaruhi tindakan sistem yang memiliki akses operasional. Inilah alasan file instruksi proyek perlu diperlakukan sebagai batas keamanan baru dalam penggunaan AI untuk pengembangan software.

Coding Agent Bukan Lagi Sekadar Pemberi Saran
Perubahan terbesar dalam penggunaan AI coding bukan hanya kemampuan menghasilkan kode dengan cepat. Perubahan yang lebih penting terletak pada kemampuan agent untuk bertindak di dalam lingkungan pengembangan.
Coding agent modern dapat membaca struktur proyek, mencari fungsi tertentu, memperbaiki kesalahan, menjalankan perintah build, dan memeriksa hasil pengujian. Dalam konfigurasi tertentu, agent juga dapat terhubung dengan layanan eksternal, repository lain, server pengembangan, atau platform cloud.
Kemampuan tersebut membuat coding agent lebih produktif daripada asisten kode generasi sebelumnya. Namun, produktivitas itu juga menciptakan risiko baru.
Semakin luas akses yang diberikan, semakin besar pula dampak yang mungkin terjadi apabila agent mengikuti instruksi yang keliru, tidak relevan, atau sengaja dimanipulasi.
Masalah ini tidak selalu berasal dari model AI. Risiko dapat muncul dari informasi yang dibaca oleh agent selama menyelesaikan tugas, termasuk file dokumentasi, komentar kode, issue, dependency, output tools, dan file instruksi yang tersimpan di dalam repositori.
File Instruksi Telah Berubah Menjadi Sumber Otoritas
File instruksi proyek umumnya digunakan untuk membantu coding agent memahami konteks pekerjaan. Isinya dapat mencakup struktur aplikasi, standar coding, perintah pengujian, aturan untuk direktori tertentu, serta langkah yang harus dilakukan sebelum perubahan dinyatakan selesai.
Dalam kondisi normal, file semacam ini meningkatkan konsistensi kerja. Developer tidak perlu menjelaskan aturan yang sama setiap kali memberikan tugas kepada agent.
Namun, terdapat konsekuensi yang tidak boleh diabaikan. Ketika coding agent menganggap file tersebut sebagai arahan yang sah, isinya dapat memengaruhi keputusan dan tindakan agent.
Sebuah instruksi dapat meminta agent menjalankan skrip tertentu, memasang paket tambahan, membaca konfigurasi lokal, atau mengakses direktori di luar ruang lingkup pekerjaan. Jika tindakan tersebut diizinkan oleh lingkungan pengembangan, instruksi yang tampak sederhana dapat menghasilkan dampak yang jauh lebih luas.
Karena itu, file instruksi proyek tidak lagi dapat diperlakukan seperti dokumentasi biasa. File tersebut telah menjadi bagian dari jalur kendali yang menentukan bagaimana coding agent bekerja.
Repository Kini Membawa Kode Sekaligus Instruksi
Perusahaan biasanya memiliki mekanisme review untuk source code. Setiap perubahan diperiksa sebelum digabungkan ke branch utama. Dependency dipindai, secrets dicari, dan konfigurasi deployment ditinjau.
Sayangnya, tingkat perhatian yang sama belum tentu diberikan kepada file instruksi coding agent.
File ini sering terlihat tidak berbahaya karena tidak dapat dieksekusi secara langsung. Akan tetapi, instruksi di dalamnya dapat membuat agent menjalankan komponen lain yang memiliki kemampuan eksekusi.
Risiko semakin tinggi ketika developer bekerja dengan repositori dari luar organisasi. Repositori open-source, proyek vendor, hasil fork, template aplikasi, atau proof of concept dapat membawa instruksi yang belum diverifikasi.
Developer mungkin hanya bermaksud meminta agent menjelaskan struktur proyek. Namun, agent dapat membaca instruksi tersembunyi yang mengarahkannya untuk menjalankan proses tambahan.
Dalam situasi tersebut, repositori tidak lagi hanya menjadi kumpulan source code. Repositori juga menjadi sumber perintah yang dapat memengaruhi perilaku coding agent.
Instruksi Berbahaya Tidak Selalu Tampak Mencurigakan
Instruksi yang berisiko tidak harus berisi permintaan untuk menghapus file atau mencuri kredensial secara terang-terangan. Arahan dapat disamarkan sebagai bagian dari proses instalasi, debugging, pengujian, atau validasi proyek.
Sebagai contoh, agent dapat diarahkan untuk menjalankan skrip tambahan dengan alasan mempersiapkan environment. Skrip tersebut kemudian membaca variabel lingkungan, mencari file konfigurasi, atau membuka koneksi ke layanan eksternal.
Instruksi juga dapat ditempatkan pada bagian yang jarang diperiksa, seperti komentar kode, file dokumentasi yang panjang, konfigurasi dependency, atau file khusus pada subdirektori tertentu.
Kondisi ini berkaitan dengan indirect prompt injection. Serangan tidak diberikan langsung oleh pengguna melalui kolom percakapan. Instruksi berbahaya disisipkan ke dalam sumber data yang dibaca oleh agent ketika menyelesaikan tugas.
OWASP menempatkan prompt injection sebagai salah satu risiko utama dalam penggunaan large language model. Risiko ini menjadi lebih serius pada coding agent karena model tidak hanya menghasilkan jawaban, tetapi juga dapat menggunakan tools dan menjalankan tindakan.
Sejumlah penelitian keamanan juga menunjukkan bahwa repositori, dokumentasi, dan output tools dapat menjadi media untuk mengarahkan AI agent melakukan tindakan di luar tujuan awal pengguna. Temuan tersebut memperlihatkan bahwa data yang dibaca agent tidak selalu dapat dianggap sebagai konteks yang netral.
Insiden Nyata Menunjukkan Dampaknya Tidak Lagi Teoretis
Risiko manipulasi instruksi pada AI coding bukan sekadar skenario laboratorium.
Pada 2025, ditemukan upaya memasukkan prompt berbahaya ke dalam ekstensi Amazon Q Developer melalui pull request pada repositori publik. Prompt tersebut dirancang untuk mengarahkan AI assistant menggunakan akses command line guna menghapus file lokal dan sumber daya cloud.
AWS kemudian memitigasi masalah tersebut dan menyatakan tidak ada sumber daya pelanggan yang terdampak. Meski demikian, insiden ini memperlihatkan satu persoalan penting: instruksi yang masuk melalui rantai kontribusi software dapat memengaruhi perilaku AI assistant yang memiliki akses ke sistem.
Kasus tersebut juga menunjukkan bahwa keamanan coding agent tidak dapat dipisahkan dari software supply chain. Perubahan pada file yang terlihat kecil dapat membawa konsekuensi besar apabila file tersebut dipercaya dan dijalankan dalam lingkungan yang memiliki hak akses luas.
Code Review Konvensional Belum Tentu Menjangkau Risiko Ini
Proses code review biasanya berfokus pada kualitas kode, kesalahan logika, kerentanan aplikasi, dependency, dan konfigurasi deployment. Fokus tersebut tetap penting, tetapi belum cukup untuk menghadapi risiko coding agent.
Tim perlu memeriksa bukan hanya kode yang dihasilkan, tetapi juga instruksi yang membentuk proses pembuatannya.
Pertanyaan yang perlu diajukan antara lain:
- File instruksi mana yang dibaca oleh agent?
- Siapa yang terakhir mengubah file tersebut?
- Perintah apa yang diminta untuk dijalankan?
- Direktori dan data apa yang dapat diakses?
- Apakah agent memiliki akses jaringan?
- Apakah tindakan berisiko memerlukan persetujuan manusia?
- Apakah seluruh aktivitas agent tercatat?
Tanpa visibilitas tersebut, organisasi mungkin hanya meninjau hasil akhir tanpa memahami proses yang digunakan untuk mencapainya.
Perubahan kode dapat terlihat aman, tetapi proses pembuatannya mungkin telah melibatkan pembacaan data sensitif, instalasi dependency yang tidak disetujui, atau eksekusi perintah yang tidak relevan.
Masalah Utamanya Adalah Kepercayaan yang Terlalu Luas
Coding agent sering bekerja menggunakan izin milik developer atau environment tempat agent dijalankan. Jika developer memiliki akses ke banyak repository, secrets, server, dan layanan cloud, agent berpotensi mewarisi jangkauan akses yang sama.
Kondisi ini menciptakan ambient authority, yaitu situasi ketika sebuah sistem dapat melakukan tindakan hanya karena akses tersebut tersedia, bukan karena setiap tindakan telah diperiksa dan disetujui secara khusus.
Risiko akan meningkat ketika organisasi memberikan izin luas demi mempercepat pekerjaan. Agent dapat diminta bekerja secara otomatis tanpa persetujuan untuk setiap perubahan atau perintah.
Kecepatan memang bertambah, tetapi batas antara tugas yang diminta dan tindakan yang dapat dilakukan menjadi semakin kabur.
Analisis ini sering kami temukan saat melakukan penetration testing pada perusahaan di Indonesia.
Hak akses yang terlalu luas, kredensial yang tersedia terlalu lama, serta kurangnya pemisahan environment masih menjadi faktor yang dapat memperbesar dampak sebuah kerentanan. Ketika coding agent masuk ke dalam proses pengembangan, persoalan tersebut memperoleh jalur eksploitasi baru.
File Instruksi Bukan Pengganti Kontrol Teknis
File instruksi dapat mencantumkan larangan, seperti tidak membaca secrets, tidak mengakses produksi, atau tidak menjalankan perintah tertentu. Namun, larangan dalam bentuk teks tidak sama dengan kontrol keamanan yang benar-benar ditegakkan oleh sistem.
Instruksi membantu membentuk perilaku agent. Instruksi tidak seharusnya menjadi satu-satunya perlindungan.
Batas keamanan yang sebenarnya harus diterapkan melalui sandbox, permission, pembatasan jaringan, scoped credentials, dan mekanisme approval. Dengan demikian, agent tetap tidak dapat melakukan tindakan tertentu meskipun membaca instruksi yang memintanya.
Pemisahan ini sangat penting. File instruksi menjelaskan bagaimana agent seharusnya bekerja, sedangkan kontrol teknis menentukan tindakan apa yang benar-benar dapat dilakukan.
Jika keduanya disamakan, organisasi akan bergantung pada kepatuhan model terhadap teks. Pendekatan tersebut terlalu rapuh untuk melindungi repositori dan sistem perusahaan.
Secure SDLC Harus Mulai Mengatur Coding Agent
Penggunaan coding agent perlu dimasukkan ke dalam kebijakan Secure SDLC. Organisasi tidak cukup hanya menetapkan tools AI mana yang boleh digunakan.
Kebijakan juga harus mengatur repositori yang dapat diakses, data yang boleh dibaca, perintah yang boleh dijalankan, serta kondisi yang memerlukan persetujuan manusia.
Langkah pertama adalah menginventarisasi seluruh file instruksi coding agent di dalam repositori. Organisasi perlu mengetahui lokasi, cakupan, pemilik, dan pihak yang berwenang mengubahnya.
Perubahan pada file instruksi sebaiknya dilakukan melalui pull request dan memerlukan review. Untuk repositori penting, file tersebut dapat diperlakukan sebagai protected file dengan reviewer khusus dari tim development atau keamanan.
Langkah berikutnya adalah membatasi hak akses agent. Coding agent sebaiknya hanya memperoleh akses yang relevan dengan tugas. Agent yang diminta memperbaiki antarmuka aplikasi tidak perlu membaca secrets, mengakses infrastruktur produksi, atau menggunakan kredensial cloud.
Akses jaringan juga perlu dibatasi. Jika agent tidak membutuhkan koneksi eksternal, jaringan sebaiknya dinonaktifkan. Jika koneksi dibutuhkan, tujuan yang dapat diakses perlu dikendalikan melalui daftar layanan yang telah disetujui.
Repository Asing Perlu Diperlakukan sebagai Input Tidak Tepercaya
Developer sering mengunduh repository eksternal untuk mempelajari teknologi, menjalankan demonstrasi, atau melakukan integrasi. Ketika coding agent digunakan pada repositori tersebut, prosesnya sebaiknya dilakukan dalam environment yang terisolasi.
Jangan membuka repositori asing menggunakan agent yang memiliki akses ke direktori kerja utama, kredensial perusahaan, SSH key, token cloud, atau jaringan internal.
Sebelum agent dijalankan, periksa file instruksi, skrip instalasi, konfigurasi build, dependency, dan hooks yang tersedia. Ekstensi editor serta integrasi tools juga perlu diperhatikan karena dapat memperluas akses di luar repository.
Prinsipnya sederhana: repositori yang belum diperiksa tidak boleh langsung memperoleh kepercayaan hanya karena source code-nya tersedia secara terbuka.
Open source memungkinkan kode ditinjau oleh banyak pihak, tetapi tidak menjamin bahwa setiap versi, kontribusi, dependency, atau instruksi di dalamnya aman untuk dijalankan.
Coding Agent Perlu Diperlakukan sebagai Identitas Non Manusia
Setiap coding agent yang dapat menggunakan tools pada dasarnya bertindak sebagai identitas operasional. Agent memiliki akses, menjalankan tindakan, menghasilkan perubahan, dan meninggalkan dampak pada sistem.
Karena itu, organisasi perlu menerapkan prinsip Zero Trust dan least privilege.
Setiap akses sebaiknya diberikan berdasarkan kebutuhan tugas, dibatasi durasinya, dan dapat dicabut setelah pekerjaan selesai. Kredensial permanen perlu dihindari. Organisasi dapat menggunakan token sementara dengan cakupan izin yang sempit.
Aktivitas agent juga harus dicatat. Log setidaknya perlu menunjukkan file yang dibaca, perubahan yang dibuat, perintah yang dijalankan, layanan yang diakses, serta pihak yang memberikan persetujuan.
Pencatatan tersebut membantu proses audit dan investigasi. Tanpa log, perusahaan akan kesulitan membedakan tindakan manusia, tindakan coding agent, dan proses otomatis yang dijalankan oleh pipeline.
Langkah Praktis Mengamankan Coding Agent
Perusahaan dapat memulai pengamanan melalui beberapa tindakan berikut:
- Inventarisasi seluruh coding agent yang digunakan oleh tim.
- Identifikasi file instruksi proyek di setiap repository.
- Tetapkan pemilik dan reviewer untuk file instruksi.
- Wajibkan pull request untuk setiap perubahan instruksi.
- Perlakukan repository eksternal sebagai input tidak terpercaya.
- Jalankan agent dalam sandbox atau environment terisolasi.
- Terapkan izin minimum sesuai kebutuhan tugas.
- Batasi akses ke terminal dan perintah berisiko.
- Nonaktifkan akses jaringan jika tidak diperlukan.
- Gunakan kredensial sementara dengan cakupan terbatas.
- Jauhkan secrets dari direktori yang dapat dibaca agent.
- Catat aktivitas, persetujuan, dan perubahan yang dilakukan.
- Tinjau kode sekaligus proses yang digunakan untuk menghasilkannya.
- Masukkan skenario prompt injection ke dalam security testing.
- Evaluasi kembali kontrol setiap kali tools atau integrasi baru ditambahkan.
Langkah tersebut tidak dimaksudkan untuk menghambat pemanfaatan AI. Tujuannya adalah memastikan peningkatan produktivitas tidak dibayar dengan perluasan risiko yang tidak terlihat.
Dokumentasi yang Dapat Menggerakkan Sistem Bukan Lagi Dokumentasi Biasa
Coding agent membawa efisiensi besar bagi proses pengembangan software. Tugas yang sebelumnya membutuhkan waktu berjam-jam dapat dipercepat melalui kemampuan membaca repository, memahami konteks, dan menjalankan pekerjaan secara langsung.
Namun, kemampuan bertindak selalu membawa kebutuhan akan batas yang lebih jelas.
Ketika sebuah file dapat memengaruhi agent yang memiliki akses untuk membaca, mengubah, dan mengeksekusi, file tersebut bukan lagi sekadar dokumentasi. Ia telah menjadi bagian dari permukaan serangan dan jalur kendali pengembangan software.
Perusahaan tidak harus menghentikan penggunaan coding agent. Yang diperlukan adalah memastikan instruksi tidak dipercaya secara otomatis, hak akses tidak diberikan secara berlebihan, dan setiap tindakan penting tetap berada di bawah kontrol yang dapat diverifikasi.
Pengamanan coding agent juga tidak seharusnya menunggu hingga terjadi insiden. Evaluasi perlu dilakukan sejak teknologi tersebut mulai digunakan dalam repositori perusahaan, terutama jika terhubung dengan source code penting, CI/CD pipeline, sistem internal, atau infrastruktur cloud.
Fourtrezz membantu perusahaan mengevaluasi keamanan aplikasi dan infrastruktur melalui layanan vulnerability assessment dan penetration testing. Pengujian dapat membantu mengidentifikasi kelemahan akses, konfigurasi, aplikasi, serta jalur serangan yang berpotensi dimanfaatkan sebelum menimbulkan dampak yang lebih luas.
Untuk mendiskusikan kebutuhan pengujian keamanan dan kerjasama dengan Fourtrezz, silakan menghubungi:
Hubungi Fourtrezz:
Website: www.fourtrezz.co.id
Telepon/WhatsApp: +62 857-7771-7243
Email: [email protected]
Andhika RDigital Marketing at Fourtrezz
Artikel Terpopuler
Tags: Coding Agent, Keamanan AI, Secure SDLC, Prompt Injection, Keamanan Repositori
Baca SelengkapnyaBerita Teratas
Berlangganan Newsletter FOURTREZZ
Jadilah yang pertama tahu mengenai artikel baru, produk, event, dan promosi.


