Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/serac-labs/serac/acl-securitynpx skills add serac-labs/serac --skill acl-securitygit clone --depth 1 https://github.com/serac-labs/seracWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/serac-labs/serac/acl-security)<a href="https://agentmods.dev/skills/serac-labs/serac/acl-security"><img src="https://agentmods.dev/badge/skills/serac-labs/serac/acl-security.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00055 | $0.02712 |
| Opus 5 | $0.00028 | $0.01356 |
| Sonnet 5 | $0.00011 | $0.00542 |
| Haiku 4.5 | $0.00006 | $0.00271 |
Grade A, and why
acl-security scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 299 lines — stays where its author put it; the contents beside it link to each section on GitHub.
ACL Security Patterns for ServiceNow
Access Control Lists (ACLs) are the foundation of ServiceNow security. They control who can read, write, create, and delete records.
Which ACLs can apply
An ACL applies by name, and the name is literal — sys_security_acl.name holds incident.priority or *, never a glob pattern. For one field on a table that extends another, six names can each carry a rule:
| Name | Carries the rule for |
|---|---|
incident.priority |
this field on this table |
task.priority |
this field on a parent table |
*.priority |
a field of this name on any table |
incident.* |
any field on this table |
task.* |
any field on a parent table |
*.* |
any field on any table |
Alongside them are the record-level names: incident, then each parent table in the sys_db_object.super_class chain, then *.
Two of those forms are confirmed against live instances: the record-level * (the ACL probe behind sn-roles.manifest.json resolved 189 tool primitives through it) and table.field (snow_analyze_form reads field ACLs with nameSTARTSWITH<table>.). The readings above for *.priority, incident.* and *.* follow the same naming scheme but are not sourced to ServiceNow's own documentation — treat them as names worth checking, not as documented behaviour. snow_acl_explain checks all of them either way, and a name nobody uses simply returns nothing.
Look at all of them. Stopping at incident.priority names the wrong blocker in exactly the case you are debugging — when the rule carrying the roles sits on task or on a wildcard.
snow_acl_explain collects the whole set in one call: it walks sys_db_object.super_class for the parent names, reads each matching rule's required roles out of the sys_security_acl_role m2m (there is no roles column on sys_security_acl, so anything reading one reports no roles at all), and diffs those against the roles a user holds in sys_user_has_role — which already includes inherited roles, so there is no need to expand sys_user_role_contains yourself.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 299 lines · 55 tokens per session scan A e2a7a40a4460
acl-security is a skill published in the GitHub repository serac-labs/serac (78 stars, last pushed 10d ago), licensed Apache-2.0. It adds 55 tokens to every session and 2,712 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
contract-review-workflow
Trigger a deployed Mistral Workflow for contract review, poll execution status, detect human-in-the-loop checkpoints via workflowinteract(query), collect approval or changes, and resume the workflow via workflowinteract(signal). Use when the user wants to run a contract through a Mistral Workflow with oversight…
french-commit-message
Génère un message de commit git en français au format Conventional Commits à partir des changements stagés. Récupère automatiquement le diff via git diff --staged. À utiliser quand l'utilisateur demande un commit message, message de commit, ou résumé de diff en français.
french-invoice-reminder
Rédige une relance de facture B2B en français avec un ton contrôlé (poli, ferme, ou final). À utiliser quand l'utilisateur demande une relance facture, un rappel de paiement, un mail de recouvrement, ou une dunning letter en français.
shippo-support-ticket
Generate a complete, auto-classified, ready-to-paste Shippo support ticket for a single shipment or label. Use when a support agent or customer needs to escalate a shipping issue (lost/delayed package, unused-label refund, billing/rate adjustment, address exception, customs hold, carrier-account, or tracking-webhook…
redazione-contratto
Supporto alla redazione contrattuale con verifica normativa, clausole tipo e compliance GDPR. Usa quando l'utente chiede di redigere, revisionare, analizzare un contratto, verificare clausole o predisporre un accordo.
verify-product
Проверить подлинность товара по коду маркировки Честный ЗНАК.