Skip to main content
Sebuah mod adalah plugin yang menjalankan kode di dalam Claude Code dengan izin pengguna yang memasangnya. Mod tidak disandboxkan. Melalui pengaturan terkelola, Anda memutuskan apakah mod berjalan di mesin pengguna Anda, mod mana, dan dalam urutan apa. Anda juga dapat memasang mod Anda sendiri yang mengawasi atau menolak apa yang dilakukan mod lain. Halaman ini untuk orang yang menerapkan pengaturan terkelola untuk Claude Code, baik sebagai file, melalui MDM, atau dari konsol admin claude.ai. Mod aktif secara default di Claude Code v2.1.287 dan yang lebih baru. Mulai dengan bagian yang sesuai dengan apa yang ingin Anda lakukan:
Kasus-kasus ini tercakup di halaman lain:

Hentikan mod yang dipasang pengguna dari memuat

Untuk mencegah setiap mod yang dibawa pengguna Anda dari memuat, atur opsi allowManagedModsOnly pada penjaga bawaan, mod kebijakan yang dimuat Claude Code sebelum setiap mod yang dipasang pengguna. Opsi ini masuk dalam pengaturan terkelola di bawah pluginConfigs, dengan kunci cc-plugin-sec-default@builtin:
managed-settings.json
Dengan opsi yang diatur dalam pengaturan terkelola:
  • Tidak ada mod yang dibawa pengguna yang memuat: itu mencakup mod dalam plugin yang dipasang pengguna, mod yang dimuat dengan --plugin-dir, dan mod yang ditulis Claude selama sesi
  • Mod organisasi Anda masih memuat: mod yang dihitung sebagai milik organisasi Anda tidak diperiksa. Setiap mod lainnya dihitung sebagai milik pengguna dan tidak memuat. Itu termasuk mod dalam plugin yang Anda aktifkan dari GitHub atau pasar jarak jauh lainnya, dan yang diaktifkan organisasi Anda untuk anggotanya di claude.ai. Jika tidak ada yang dihitung sebagai milik Anda, tidak ada mod yang dipasang yang memuat.
  • Pengguna tidak dapat membatalkannya: penjaga membaca opsi dari pengaturan terkelola saja, jadi entri yang sama dalam file pengaturan pengguna, proyek, atau lokal, atau dalam file yang dilewatkan dengan --settings, tidak mengubah apa pun
  • File atau kebijakan MDM mencakup setiap penyedia: saat Anda mengirimkan opsi sebagai file atau melalui MDM, opsi ini bekerja dengan cara yang sama di Amazon Bedrock, Agent Platform Google Cloud, dan Microsoft Foundry. Untuk pengiriman dari konsol admin claude.ai, lihat Ketersediaan Platform
  • Kustomisasi lain pengguna tetap berfungsi: hook mereka dalam file pengaturan, baris status, dan /goal tidak terpengaruh
  • Mod bawaan tetap berjalan: mod yang dibangun ke dalam Claude Code, seperti dukungan AGENTS.md, masing-masing memiliki sakelar mereka sendiri
Untuk mengonfirmasi opsi di mesin pengguna, mulai Claude Code di sana dengan --plugin-dir dan jalur direktori yang menyimpan mod, seperti claude --plugin-dir ./first-mod. Hook mod tidak berjalan, dan transkrip serta log debug memiliki pesan penjaga, yang menyebutkan nama mod dan allowManagedModsOnly. Jika mod memuat, lihat Periksa bahwa kebijakan berlaku dan aturan yang memutuskan apakah opsi berlaku. Jika Anda menetapkan CLAUDE_CODE_ENABLE_FUNCTION_HOOKS ke 0 selama akses awal, gantikan dengan opsi ini. Claude Code v2.1.287 dan yang lebih baru mengabaikan variabel pada nilai apa pun, jadi 0 di sana membiarkan mod tetap aktif.

Ketahui apa yang terjadi secara default

Tanpa pengaturan mod Anda sendiri, inilah yang didapat pengguna Anda:
  • Mod aktif. Pengguna dapat memasang plugin yang berisi mod dari pasar apa pun yang diizinkan pengaturan plugin Anda, atau memuat satu dari direktori dengan --plugin-dir.
  • Penjaga bawaan berjalan terlebih dahulu. Claude Code memuat mod bawaan bernama sec-default@builtin sebelum setiap mod yang dipasang pengguna. Pengguna tidak dapat mematikannya. /plugin dan log debug mencantumkannya sebagai cc-plugin-sec-default. Penjaga memuat saat salah satu dari ini benar:
    • Mesin memiliki pengaturan terkelola
    • Pengguna masuk ke Claude Code dengan paket Team atau Enterprise
    Pengguna yang mengautentikasi dengan kunci API, atau melalui Amazon Bedrock, Agent Platform Google Cloud, atau Microsoft Foundry, mendapatkan penjaga hanya di mesin yang memiliki pengaturan terkelola.
  • Penjaga melindungi apa yang Anda kelola. Mod pengguna tidak dapat mengubah apa yang diterima atau diputuskan hook terkelola Anda, prompt sistem, CLAUDE.md terkelola Anda dan instruksi terkelola lainnya, apa yang dibaca mod apa pun sebagai pengaturan, atau alat dan deskripsi server MCP terkelola Anda.
  • Semuanya yang lain diizinkan. Penjaga tidak menambahkan batasan lain. Mod pengguna masih dapat membaca dan menulis file, memulai proses, membuat permintaan jaringan, menulis ulang panggilan alat dan prompt, menolak panggilan alat, menyetujui yang sebaliknya akan meminta, dan menggambar di antarmuka, semuanya dengan izin pengguna itu.
  • Aturan penolakan dan hook terkelola Anda memiliki prioritas. Di mana penjaga memuat, mod pengguna tidak dapat menyetujui panggilan yang ditolak aturan deny, file pengaturan mana pun yang menyimpan aturan. Blok dari hook PreToolUse dalam pengaturan terkelola juga final. Keduanya berlaku untuk panggilan alat Claude. Tidak satupun berlaku untuk panggilan $.fs dan $.process milik mod: dengan Read(.env) ditolak, mod masih dapat membaca file itu dengan $.fs.read atau memulai program yang melakukannya. Untuk membatasi panggilan tersebut, jauhkan mod dari memuat atau hook panggilan dalam mod kebijakan.
  • Pemeriksaan izin lainnya dapat ditimpa. Mod pengguna yang menyetujui panggilan alat dapat menyetujui panggilan yang akan diminta aturan ask, atau yang diblokir hook PreToolUse di luar pengaturan terkelola. Dalam mode otomatis, panggilan yang disetujui mod berjalan tanpa pemeriksaan pengklasifikasi.
Sumber penjaga bersifat publik di direktori mods/sec-default dari repositori Claude Code.

Ketahui kontrol mana yang masih berlaku

Mod tidak menggantikan kontrol yang sudah Anda miliki:
  • Hook pengaturan tetap berfungsi. Hook perintah, HTTP, prompt, dan agen dalam file pengaturan dan dalam hooks/hooks.json plugin berjalan seperti sebelumnya, bersama mod. Tidak ada yang sudah usang tentang mereka.
  • Aturan penolakan memiliki prioritas di mana penjaga memuat. Mod pengguna tidak dapat menyetujui panggilan yang ditolak aturan deny, kecuali Anda menetapkan allowModsToOverrideDenyRules.
  • Hook terkelola berjalan terlebih dahulu. Hook PreToolUse dalam pengaturan terkelola berjalan sebelum mod apa pun melihat panggilan alat, dan bloknya final. Jika mod kemudian menulis ulang panggilan, hook terkelola Anda berjalan lagi pada panggilan yang ditulis ulang, jadi blok masih berlaku. Hook PreToolUse dari file pengaturan lain dan dari plugin berjalan setelah mod terakhir, jadi mod yang mengembalikan hasilnya sendiri sebagai pengganti menjalankan alat mencegah yang lain berjalan. Lihat Urutan mod berjalan.
  • Kebijakan jaringan mencakup $.http.fetch. Jika organisasi Anda mematikan pengambilan web, atau lalu lintas jaringan yang tidak penting dimatikan untuk sesi, Claude Code menolak permintaan jaringan yang dibuat mod dengan $.http.fetch. Kebijakan tidak mencakup program yang dimulai mod dengan $.process.run. Program itu menjangkau jaringan dengan akses pengguna mereka sendiri.
  • Kontrol plugin mencakup mod. Mod adalah plugin, jadi pengaturan yang membatasi apa yang dapat dipasang pengguna, seperti strictKnownMarketplaces, memutuskan apakah itu dapat dipasang sama sekali.
  • Mod tidak dapat mengubah prompt izin. Mod dapat mengubah gaya banyak antarmuka Claude Code, tetapi bukan prompt izin, jadi tidak dapat mengubah apa yang ditampilkan prompt. Mod masih dapat menyetujui atau menolak panggilan alat sebelum prompt muncul, seperti yang dijelaskan Ketahui apa yang terjadi secara default.
  • Prompt kepercayaan datang terlebih dahulu. Dalam sesi interaktif di direktori yang belum dipercaya pengguna, tidak ada mod yang memuat sampai mereka menjawab prompt kepercayaan.
  • --safe-mode mematikan mod yang dipasang, termasuk milik Anda. Mulai sesi dengan claude --safe-mode untuk memeriksa apakah mod menyebabkan masalah.
Tidak satupun dari kontrol ini mensandboxkan mod. Mod yang Anda izinkan berjalan sebagai pengguna, dengan akses pengguna ke file, proses, dan jaringan.

Putuskan apakah akan membiarkan mod tetap aktif

Mod dapat melakukan lebih banyak daripada bagian lain dari plugin karena berjalan di dalam Claude Code. Ini melihat setiap prompt dan panggilan alat, dapat mengubahnya, dan dapat mengizinkan atau menolak panggilan alat sebelum prompt izin muncul. Apa yang dapat dimuat pengguna sebagai mod tergantung pada kontrol plugin yang sudah Anda miliki: Kelola plugin untuk organisasi Anda mencantumkan setiap cara plugin memuat dan pengaturan yang mengontrol masing-masing. Untuk memeriksa mod dalam pasar sebelum pengguna Anda memasangnya, lihat Tinjau apa yang dapat dilakukan mod. Untuk menjaga mod pengguna tetap keluar sampai Anda melakukannya, lihat Hentikan mod yang dipasang pengguna dari memuat.

Tinjau apa yang dapat dilakukan mod

Anda dapat melihat apa yang dapat dilakukan mod tanpa menjalankannya. Di shell Anda, jalankan claude plugin validate pada direktori plugin:
Dua baris dalam output menjelaskan kode mod:
Baris hooks: mencantumkan peristiwa yang diterima mod. Baris calls: mencantumkan metode API mod yang dipanggil kodenya. API mod, ditulis $ dalam kode mod, adalah cara mod menjangkau file, proses, dan jaringan. Claude Code menolak untuk memuat mod yang menggunakan API mod dengan cara yang tidak dapat dibaca perintah ini. Lihat baris calls: untuk ini: Dalam baris hooks:, tool.call dan prompt.submit berarti mod melihat setiap panggilan alat dan setiap prompt, dan dapat mengubahnya. session.append berarti mod dapat menulis ulang setiap baris percakapan sebelum disimpan. ui.render{component=AskUserQuestion} berarti mod dapat menggambar ulang dialog yang digunakan Claude untuk menanyakan pengguna. tool.check berarti mod dapat menyetujui atau menolak panggilan alat sebelum prompt izin muncul. Ketahui apa yang terjadi secara default mencantumkan aturan dan hook mana dari Anda yang memiliki prioritas atas jawabannya.

Pilih berapa banyak yang akan diizinkan

Kebijakan mod berkisar dari tidak ada mod yang dipasang sama sekali hingga mod apa pun yang dipilih pengguna, dengan mod Anda sendiri memeriksa yang lain, dan masing-masing adalah beberapa pengaturan terkelola. Temukan kebijakan yang Anda inginkan di kolom pertama dan atur apa yang dinamai kolom kedua. Terapkan pengaturan terkelola mencakup di mana pengaturan terkelola berada. Apa yang dilakukan setiap pengaturan:
  • allowManagedModsOnly: opsi pada penjaga bawaan. Mod pengguna tidak memuat, dan hook pengaturan, baris status, dan /goal mereka tetap berfungsi. Hentikan mod yang dipasang pengguna dari memuat mencantumkan apa yang dicakupnya.
  • allowManagedHooksOnly: pengaturan yang lebih luas. Hanya mod organisasi Anda dan mod yang dibangun ke dalam Claude Code yang memuat. Mod yang dipasang pengguna sendiri tidak. Pengaturan juga memblokir hook dalam file pengaturan pengguna mereka sendiri. Baca Apa yang berjalan di bawah allowManagedHooksOnly sebelum Anda menetapkannya.
  • disableAllHooks: pengaturan terluas. Dalam pengaturan terkelola, ini menghentikan mod dalam setiap plugin yang dipasang, termasuk milik Anda, dan mematikan setiap hook dalam file pengaturan, jadi hook PreToolUse dalam pengaturan terkelola Anda tidak lagi memblokir apa pun. Baris status khusus dan /goal juga berhenti bekerja. Baca disableAllHooks sebelum Anda menetapkannya.
  • disableSideloadFlags: menolak --plugin-dir dan --plugin-url saat startup, jadi tidak ada yang memuat mod dari direktori, dan menjaga mod yang ditulis Claude selama sesi dari memuat. Pengaturan juga menolak --agents dan --mcp-config. Baca disableSideloadFlags sebelum Anda menetapkannya.
Mod yang dibangun ke dalam Claude Code, seperti dukungan AGENTS.md, tidak terpengaruh oleh pengaturan ini. Masing-masing memiliki sakelar sendiri. Pengguna yang modnya tidak memuat menemukan alasannya dalam log debug mereka. Pesan penolakan mencantumkan baris untuk allowManagedHooksOnly dan disableAllHooks, dan Pesan dari penjaga bawaan memiliki baris untuk allowManagedModsOnly.

Atur opsi pada penjaga bawaan

Penjaga bawaan mengambil dua opsi. Atur dalam pengaturan terkelola di bawah pluginConfigs, dengan kunci cc-plugin-sec-default@builtin, seperti yang dilakukan contoh dalam Hentikan mod yang dipasang pengguna dari memuat. Tabel memberikan apa yang didapat pengguna Anda dengan setiap opsi tidak diatur dan dengan diatur ke true: Aturan-aturan ini memutuskan apakah opsi berlaku:
  • Id memiliki satu ejaan di sini: Claude Code membaca opsi hanya di bawah cc-plugin-sec-default@builtin. prependPlugins menerima sec-default@builtin juga, dan pluginConfigs tidak.
  • Hanya pengaturan terkelola yang dihitung: entri yang sama dalam file pengaturan pengguna, proyek, atau lokal, atau dalam file yang dilewatkan dengan --settings, tidak menetapkan opsi atau melonggarkan opsi
  • Penjaga harus memuat: jika Anda menetapkan prependPlugins, sebutkan penjaga dalam daftar. Di mana penjaga tidak memuat, opsi tidak berlaku.
  • Penjaga gagal tertutup: jika penjaga tidak dapat membaca pengaturan terkelola, penjaga menolak setiap mod pengguna saat memuat. Jika tidak dapat memeriksa aturan penolakan untuk panggilan yang disetujui mod pengguna, penjaga menolak panggilan.
Pesan dari penjaga bawaan adalah apa yang dilihat pengguna Anda saat opsi berlaku.

Jalankan mod organisasi Anda sendiri

Anda dapat menerapkan mod Anda sendiri ke setiap pengguna, memilih di mana mereka berjalan relatif terhadap mod pengguna, dan menggunakan satu untuk menegakkan kebijakan.

Pasang mod organisasi Anda dan atur urutan

Mod organisasi Anda memuat di mana mod pengguna tidak dan dapat berjalan sebelum mereka, jadi Claude Code harus dapat mengatakan bahwa mod berasal dari Anda. Ini memperlakukan mod sebagai milik organisasi Anda hanya saat semua ini benar:
  • Managed enabledPlugins menetapkan plugin mod ke true
  • Pengaturan terkelola menyebutkan pasar plugin sebagai direktori di mesin pengguna, menurut jalur absolut. Entri extraKnownMarketplaces melakukan itu dan juga mendaftarkan pasar untuk pengguna.
  • Pasar mencantumkan plugin menurut jalur relatif, jadi Claude Code memuatnya di tempat dari direktori itu
Untuk memenuhinya, buat manajemen perangkat Anda menyalin direktori pasar ke jalur yang sama di setiap mesin. Buat direktori dan setiap direktori di atasnya dapat ditulis hanya oleh administrator, seperti file pengaturan terkelola. Siapa pun yang dapat menulis di sana dapat menulis ulang mod Anda. Pengaturan terkelola yang Anda kirimkan dari konsol admin claude.ai dapat membawa kunci, tetapi tidak dapat menempatkan direktori di mesin. Direktori menyimpan manifes pasar dan plugin:
Manifes mencantumkan plugin menurut jalurnya relatif terhadap direktori itu:
/opt/acme/claude-plugins/.claude-plugin/marketplace.json
Plugin yang disalin Claude Code ke dalam cache-nya dihitung sebagai milik pengguna, bahkan saat managed enabledPlugins mengaktifkannya. Itu mencakup setiap plugin dari sumber GitHub, git, URL, atau npm. Modnya berjalan di antara mod pengguna, prependPlugins dan appendPlugins melewatinya, dan tidak memuat di bawah allowManagedModsOnly atau allowManagedHooksOnly. Log debug pengguna memiliki baris yang dimulai dengan id plugin dan is enabled by managed settings, but. Claude Code menaikkan peristiwa setiap kali akan bertindak, seperti menjalankan alat, dan meneruskannya ke setiap mod secara bergantian. Mod yang dihitung sebagai milik Anda berjalan sebelum mod pengguna bahkan saat Anda tidak mencantumkannya di mana pun. Untuk menetapkan tempatnya, cantumkan id-nya dalam salah satu dari dua pengaturan. Id adalah nama plugin, @, dan nama pasar, seperti acme-guard@acme-tools.
  • prependPlugins: mod Anda melihat setiap peristiwa sebelum mod pengguna apa pun dan setiap hasil setelahnya. Ini dapat mengubah peristiwa, menolaknya, atau melewati mod pengguna.
  • appendPlugins: mod Anda berjalan setelah setiap mod pengguna, jadi hanya melihat peristiwa yang dilewatkan mod tersebut, dalam bentuk yang mereka lewatkan
Contoh ini mendeklarasikan pasar acme-tools di /opt/acme/claude-plugins, mengaktifkan acme-guard darinya, dan menjalankan mod itu terlebih dahulu, dengan penjaga bawaan setelahnya:
managed-settings.json
Setiap kunci melakukan satu pekerjaan:
  • extraKnownMarketplaces: menyebutkan direktori yang menyimpan pasar acme-tools. path adalah jalur absolut direktori yang berisi .claude-plugin/marketplace.json.
  • enabledPlugins: mengaktifkan acme-guard untuk setiap pengguna yang menerima pengaturan terkelola ini
  • prependPlugins: menempatkan acme-guard terlebih dahulu dan penjaga bawaan kedua, keduanya sebelum mod apa pun yang dipasang pengguna. Claude Code mengikuti urutan yang Anda cantumkan.
Untuk mengonfirmasi bahwa mesin pengguna menerima pengaturan, lihat Periksa bahwa kebijakan berlaku. Untuk mengonfirmasi di mana mod berjalan, mulai sesi di mesin itu dengan claude --debug dan cari log debug untuk id mod:
  • hooks module acme-guard@acme-tools loaded, dengan tier prepend: mod dihitung sebagai milik organisasi Anda dan berjalan terlebih dahulu
  • Baris yang sama dengan tier user: Claude Code memperlakukannya sebagai mod pengguna. Baris kedua, prependPlugins names acme-guard@acme-tools, which is not an enabled managed plugin with a hooks module; skipped, mengatakan daftar melewatinya.
Aturan-aturan ini memutuskan id mana dalam dua daftar yang berlaku:
  • Daftar menggantikan default: saat Anda menetapkan prependPlugins dalam pengaturan terkelola, sebutkan sec-default@builtin di dalamnya untuk menjaga penjaga bawaan. Penjaga dibangun dan tidak memerlukan entri enabledPlugins.
  • Id Anda sendiri harus dihitung sebagai milik Anda: dalam pengaturan terkelola, Claude Code melewati id yang pluginnya tidak memenuhi tiga kondisi untuk mod organisasi
  • Repositori tidak dapat menetapkannya: Claude Code membaca kedua pengaturan dari pengaturan terkelola dan tidak pernah dari file pengaturan repositori. Pengguna dapat menetapkannya dalam ~/.claude/settings.json untuk mengurutkan mod mereka sendiri hanya di mesin tanpa pengaturan terkelola, dan hanya saat tidak masuk dengan paket Team atau Enterprise. Di tempat lain, Claude Code mengabaikan kedua kunci dalam pengaturan pengguna. Daftar di sana tidak menambah atau menghapus penjaga bawaan.

Terapkan kebijakan dengan mod Anda sendiri

Untuk menjaga setiap mod pengguna keluar, Anda tidak memerlukan mod Anda sendiri. Atur allowManagedModsOnly. Tulis mod kebijakan saat Anda ingin mengakui beberapa mod pengguna dan menolak yang lain, atau untuk mencatat apa yang dilakukan mod. Setiap kali mod lain akan memuat, mod Anda menerima daftar yang dicetak claude plugin validate, dalam peristiwa bernama plugin.register. Mod dalam prependPlugins dapat membaca daftar itu dan menolak mod. Ini juga dapat hook panggilan API mod apa pun menurut nama untuk mencatat atau menolak panggilan itu untuk setiap mod lainnya. Nama adalah metode tanpa $., jadi hook pada fs.write melihat setiap panggilan $.fs.write. Mod kebijakan ini menolak mod pengguna apa pun yang kodenya sendiri memanggil $.process.run atau $.process.spawn. Ini juga menyimpan log audit, menulis setiap panggilan alat dan setiap file yang ditulis mod ke log debug. Karena berjalan terlebih dahulu, log mencatat apa yang diminta, sebelum mod pengguna apa pun mengubahnya. Simpan sebagai acme-guard/hooks/register.js:
acme-guard/hooks/register.js
File mendaftarkan tiga hook:
  • plugin.register: memutuskan apakah mod lain memuat. Ini menolak mod pengguna yang memanggil metode yang diblokir dan meneruskan setiap mod lainnya.
  • tool.call: menulis baris seperti audit tool.call Bash ke log debug untuk setiap panggilan alat, dan tidak mengubah apa pun
  • fs.write: menulis baris seperti audit fs.write by reader "/tmp/notes.md" untuk setiap panggilan $.fs.write yang dibuat mod lain, dan tidak mengubah apa pun. Nama mod datang terlebih dahulu dan jalurnya dikutip, jadi jalur yang dipilih mod tidak dapat lulus sebagai bidang lain dari baris.
Hook plugin.register membaca dua bidang peristiwa:
  • e.tier: di mana mod akan berjalan, salah satu dari prepend, user, append, atau builtin. Setiap mod yang dipasang orang adalah user.
  • e.uses.calls: metode API mod yang dipanggil mod, masing-masing dieja namespace.method seperti process.run, tanpa $. yang dicetak claude plugin validate
Saat pengguna memasang mod yang memanggil $.process.run, mod tidak memuat, dan log debug mereka memiliki baris yang berakhir dengan refused by acme-guard: dan alasan Anda. Penolakan juga mencapai transkrip dalam sesi yang memuat ulang panas direktori plugin. Untuk memblokir panggilan tanpa menolak seluruh mod, kembalikan { deny: 'your reason' } dari hook pada nama panggilan itu. Untuk mengirim baris audit ke tempat lain selain log debug, panggil $.http.fetch dari hook yang sama. Sesi dapat berjalan tanpa mod Anda. Jika thread pekerja yang menjalankan mod yang dipasang mogok tiga kali, Claude Code membongkar setiap mod yang bukan bawaan, termasuk milik Anda, sampai pengguna menjalankan /reload-plugins atau memulai sesi baru. Dan pengguna yang memulai Claude Code dengan --safe-mode berjalan tanpa mod yang dipasang, termasuk milik Anda. Buat mod mencakup file yang dibutuhkan mod. Uji mod yang menilai mod lain memiliki file uji untuk mod kebijakan ini.

Tolak mod saat pemeriksaan Anda gagal

Jika hook plugin.register Anda melempar atau melampaui batas waktu, Claude Code melewati hook, jadi pemeriksaan gagal terbuka dan mod yang diperiksa memuat. Untuk gagal tertutup dan menolak mod pengguna, pindahkan pemeriksaan ke fungsi bernama dan tambahkan handler .catch yang mengembalikan penolakan. Versi file ini menunjukkan hanya hook plugin.register, jadi simpan dua hook audit dari versi pertama dalam register:
acme-guard/hooks/register.js
Dengan handler di tempat, mod yang sedang diperiksa saat pemeriksaan melempar atau kehabisan waktu tidak memuat, dan baris penolakan membawa alasan kedua, seperti dalam refused by acme-guard: Acme policy check failed, so this mod was not loaded. Handler meneruskan setiap mod di luar tier user ke next(e), jadi pemeriksaan yang gagal tidak menghentikan mod yang dicantumkan organisasi Anda. Tangani hook yang gagal mencakup .catch untuk peristiwa lain.

Langkah berikutnya