diff --git a/AGENTS.md b/AGENTS.md
index 6a9d052b62..f7f7d4d866 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -276,6 +276,41 @@ manager. Prefer these, in this order:
that is HTML by contract and outside the CMS's control (plugin event results, `phpinfo()`,
registered client scripts).
+### CSRF rules for manager actions
+
+Manager routes run through `EvolutionCMS\Middleware\VerifyCsrfToken` (registered in the `mgr`
+group in `core/config/app.php`). It **fails closed**: once a manager session exists, every
+non-GET request must present a `_token` that matches `$_SESSION['_token']`, or it is rejected
+with 403. Adding a state-changing entry point without a token does not degrade quietly — it
+breaks.
+
+When you add or change a manager action, work through this:
+
+| If you are adding… | You must |
+|---|---|
+| A form that changes anything | Emit `@csrf` (Blade) or `= csrf_field() ?>` (legacy `.php` / `.phtml`) inside the `