November 4, 2026
Updated:
10 min read

Kenapa Postman Diam-Diam Pasang Plugin di Coding Agent Kamu?

Postman 12.33.4 memasang plugin ke Codex dan Claude Code tanpa diminta, lalu menulis sendiri persetujuan hook-nya. Ini bukti issue #14370 dan cara memeriksanya.

Bayangkan kamu membuka Postman seperti biasa untuk menguji sebuah API. Tidak ada jendela persetujuan, tidak ada tombol instal yang kamu klik. Namun di balik layar, aplikasi itu baru saja mengubah konfigurasi dua coding agent di komputermu.

Itulah yang didokumentasikan seorang pengguna Mac dalam issue GitHub nomor 14370 pada 25 Oktober 2026. Log Postman miliknya sendiri mencatat instalasi otomatis plugin ke Codex dan Claude Code, lengkap dengan sumber pemicunya yang bernama auto-existing-upgrade.

Artikel ini menjelaskan apa yang sebenarnya terjadi, kenapa persetujuan hook yang ditulis sendiri itu masalah besar, dan apa yang harus kamu periksa hari ini. Satu hal penting sejak awal: tidak ada bukti data API terkirim ke mana pun, dan pelapornya sendiri menegaskan hal itu.

Apa yang sebenarnya terjadi di Mac itu?

Pengguna yang melapor memakai Postman desktop versi 12.33.4 di macOS. Pada 24 Oktober 2026 pukul 09.34 UTC, ia membuka Postman setelah lama tidak memakainya. Log aplikasi di main.log mencatat dua baris yang menjadi bukti utama kasus ini.

Baris pertama berbunyi PostmanAgentPluginService install script completed, diikuti data JSON berisi source auto-existing-upgrade dan results claude-code installed dan codex installed. Baris kedua mencatat autoInstall plugin existing-user finished dengan outcome installed. Artinya, ini bukan klik pengguna yang salah paham. Ini jalur upgrade untuk pengguna lama yang berjalan otomatis saat aplikasi dibuka.

Dampaknya tercatat di tiga tempat. Konfigurasi global Codex di file config.toml mendapat sumber marketplace Postman dan plugin postman at postman yang aktif. Claude Code mendapat plugin postman at claude-plugins-official versi 2.0.1. Sebuah executable Postman beserta direktori lib-nya muncul di folder .local/bin dengan waktu modifikasi yang sama dengan jendela instalasi.

Versi pluginnya pun terdokumentasi rapi: plugin Codex 1.1.0 dan plugin Claude 2.0.1, dari revisi sumber 6c8e452e di repositori postmanlabs postman-plugin. Pelapor menyematkan tautan ke revisi persis itu, sehingga siapa pun bisa memeriksa kode yang sama.

Hook yang mengubah coding agent jadi agen Postman

Plugin yang terpasang membawa sebuah hook session start. Setiap kali sesi Codex dimulai, dibersihkan, atau diringkas, hook itu mencetak sebuah instruksi ke dalam konteks agen. Isi instruksinya jauh lebih luas dari sekadar tawaran bantuan.

Instruksi itu berbunyi: sebelum merespons tugas rekayasa API apa pun yang tidak sepele, baik merancang, mengimplementasi, menguji, memantau, mendokumentasi, atau men-deploy API, muat skill postman api-engineer dan ikuti skill itu. Dengan kata lain, Postman menjadi titik masuk default untuk semua pekerjaan API, bukan hanya saat kamu menyebut namanya.

Inilah yang menjelaskan keluhan awal pelapor: Codex berulang kali mengarahkan pekerjaan API lewat skill Postman dan menampilkan peringatan autentikasi MCP. File instruksinya memang menambahkan bahwa instruksi pengguna di AGENTS.md atau CLAUDE.md lebih diutamakan. Namun prioritas bukan persetujuan, dan default yang aktif sebelum pengguna bicara tetap bekerja tanpa ditugaskan.

Konteks resminya penting di sini. Dokumentasi Postman memang mengumumkan plugin untuk Claude Code, Codex, Cursor, dan OpenCode, dan blog resminya pada 31 Maret 2026 memperkenalkan plugin Claude Code. Yang dipersoalkan bukan keberadaan plugin itu, melainkan cara ia masuk ke mesin pengguna: tanpa diminta dan tanpa persetujuan yang jelas.

Kenapa persetujuan hook yang ditulis sendiri itu masalah besar

Bagian paling sensitif dari laporan ini ada di installer plugin. Kode installer memanggil fungsi bernama approvePostmanHook setelah plugin terpasang. Fungsi itu menghitung hash hook Postman, lalu menulisnya ke penyimpanan kepercayaan Codex sebagai trusted hash.

Prompt persetujuan hook di Codex ada untuk satu alasan: mencegah pihak ketiga menjalankan kode di dalam agen tanpa sepengetahuan pengguna. Installer Postman menjawab prompt itu sendiri, atas nama pengguna, sebelum pengguna sempat melihatnya. Komentar di kode sumbernya bahkan menuliskan maksud itu secara terbuka, yaitu menyetujui hook Postman saat ini setelah instalasi.

Pelapor bersikap hati-hati di titik ini. Ia menulis bahwa catatan kepercayaan saja tidak membuktikan siapa yang membuat catatan itu, sehingga ia tidak menyajikannya sebagai bukti interaksi pengguna tertentu. Yang ia buktikan adalah niat dan mekanismenya: kode installer memang dirancang untuk menyetujui hook-nya sendiri.

Skalanya juga perlu dicatat. Menurut liputan AI Weekly, ada pull request berjudul install into every agent yang menargetkan Claude Code, Codex, Cursor, Kimi Code, dan OpenCode sekaligus. Artinya, pola yang sama dirancang untuk banyak agen, bukan hanya dua yang tertangkap di laporan ini.

Apakah data API kamu benar-benar terkirim?

Judul yang beredar di Hacker News menyebut Postman mencoba membagikan semua data API. Di titik ini, kejujuran faktual penting: laporan aslinya tidak membuktikan hal itu, dan pelapor secara eksplisit menulis bahwa ia tidak mengklaim terjadi eksfiltrasi data.

Konfigurasi plugin memang mengarahkan Codex ke server MCP jarak jauh di alamat mcp.postman.com. Namun log Codex menunjukkan koneksi itu gagal dengan pesan Auth required saat mengirim permintaan initialize. Servernya nyata, konfigurasinya terpasang, tetapi sesinya tidak pernah tersambung.

Dokumentasi resmi Postman mengonfirmasi server itu memang ada dan memang ditujukan untuk agen coding. Halaman produk MCP server Postman menyebut endpoint mcp.postman.com, dan dokumen setup remote server menjelaskan autentikasi OAuth atau API key. Jadi, endpointnya bukan rahasia dan bukan jebakan tersembunyi. Masalahnya adalah ia dikonfigurasi tanpa persetujuan, lalu gagal tersambung.

Perlu juga dicatat batas bukti yang ada. Ini laporan dari satu mesin, dan urutannya belum direproduksi di Mac bersih oleh pihak independen hingga 3 November 2026. Sampai tanggal itu, Postman belum memberikan tanggapan publik. Issue-nya sendiri mengumpulkan 99 reaksi thumbs-up, dan thread Hacker News-nya naik ke puncak front page dengan 958 poin dan 241 komentar pada 3 November 2026.

Apa yang bisa kamu periksa dan lakukan hari ini

Kalau kamu memakai Postman dan coding agent di mesin yang sama, ada beberapa berkas yang bisa kamu periksa. Di Codex, buka file config.toml dan cari bagian marketplaces.postman serta plugins postman at postman. Di Claude Code, periksa file settings.json dan installed_plugins.json.

Periksa juga apakah ada executable Postman di folder .local/bin yang tidak kamu pasang sendiri, dan apakah log Codex menampilkan kegagalan autentikasi ke mcp.postman.com. Kalau kamu menemukan plugin yang tidak kamu minta, hapus entri marketplace dan pluginnya, cabut kepercayaan hook yang terkait, dan hapus koneksi MCP-nya.

Pelapor meminta enam hal dari Postman: hentikan instalasi otomatis sampai ada opt-in eksplisit, hapus persetujuan hook oleh installer, persempit instruksi startup hanya untuk permintaan eksplisit, jelaskan rilis dan flag di balik auto-existing-upgrade, dan sediakan jalur rollback lengkap. Tuntutan itu masuk akal, karena masing-masing menyentuh batas yang berbeda: instalasi, kepercayaan, dan instruksi.

Kasus ini juga pelajaran yang lebih luas untuk era agen coding. Ketika satu aplikasi bisa menulis konfigurasi aplikasi lain, batas antar alat menjadi kabur.

Persetujuan harus datang dari pengguna, di aplikasi yang terdampak, bukan ditulis oleh installer yang diuntungkan. Kalau kamu membangun alat developer sendiri, contohnya seperti yang ada di /projects, prinsip yang sama berlaku: jangan pernah mengubah alat orang lain tanpa mereka tahu.

Postman belum menjawab sampai artikel ini ditulis, dan komunitas masih menunggu penjelasan resmi. Sampai ada jawaban itu, periksa konfigurasimu sendiri dan jangan anggap diam sebagai persetujuan.

Dimas Febriyanto - Fullstack Developer

Dimas Febriyanto

Fullstack & Mobile Developer specializing in Golang & Flutter. Aktif sebagai Junior Mobile Developer di Sagara Technology & asisten lab di Universitas Gunadarma. Passionate about building scalable algorithms & high-impact applications.

Lihat Portofolio

Liked this article?

Feel free to share it with your network or reach out if you have any questions!