Security — scope gate, threat model, design, review, operations, traps, agentic AI
Rule content lives in the seven files below; this SKILL.md only routes
(doctrine/04-maintenance.md governs edits to this bundle too).
First, always: scope.md §1 — the authorization gate. It fires on ANY request
mentioning exploits, payloads, bypassing auth/WAF/filters, cracking, brute force,
credential/password testing, scanning a target, or accessing a system the requester
didn't build in this session — recognize the moment even when the ask is phrased as
"just write a script." Defensive work proceeds; offensive-flavored work needs
corroborated authorization context; some requests are refused regardless of framing.
Pass the gate before applying anything else in this bundle.
Route by moment
| You are about to… |
Read (in this folder) |
| Judge scope — fires on ANY mention of exploits, payloads, bypassing auth/WAF, cracking, brute force, credential testing, scanning a target, or reaching a system the requester didn't build here |
scope.md §1 |
| Decide what to protect, from whom, and where to spend |
threat-model.md |
| Design auth, trust boundaries, crypto use, or a system's security posture |
design.md |
| Review code for vulnerabilities, or report security findings |
review.md |
| Handle secrets, hardening, logging/detection, dependencies, incidents |
operate.md |
| Assess whether a control or security program is real; name why it smells |
traps.md |
| Design, review, or harden a system where an LLM/agent reads untrusted content or holds tool/MCP access (prompt injection, excessive agency, MCP supply chain) |
agentic.md |
A new system usually runs threat-model.md (four questions) → design.md →
review.md before ship → operate.md in production.
Scope and neighbors
Security judgment for building and defending systems. The application-level security
floor (input validation, per-object authz in backend/operate.md §5; rate limits in
backend/operate.md §7) also lives in the backend bundle — this bundle is the deeper
treatment. Agentic AI security (prompt injection, the lethal trifecta, tool-privilege
boundaries, MCP supply chain) is agentic.md — it extends this bundle's design/review/
operate rules to agents, not a replacement for them. General verification
discipline is methods/verify.md; whether to delegate → doctrine.
The stance
Attackers take the cheapest path; defenders must be honest about which door is open.
Threat model before controls (threat-model.md), assume breach (scope.md §3), make
the safe way the easy way (design.md §3) — and never confuse a control that exists
with a control that works (traps.md meta-signal). A clean review means "nothing found
where I looked," never "secure" (scope.md §5).
1---2name: security3description: Defensive security engineering judgment, distilled from a stronger model - invoke when THREAT MODELING a system or feature; making security-relevant design decisions (auth, crypto, trust boundaries, attack surface); reviewing code for vulnerabilities (injection, IDOR, secrets, the OWASP classes); hardening operations (secrets management, detection, patching, incident response); or judging whether a security control/program is real or theater. Also invoke BEFORE any offensive-flavored request (pentest, exploit, credential testing) to apply the authorization gate. Also invoke when designing, reviewing, or hardening an LLM/agent system that reads untrusted content or holds tool/MCP access (prompt injection, excessive agency, MCP supply chain).4---56# Security — scope gate, threat model, design, review, operations, traps, agentic AI78Rule content lives in the seven files below; this SKILL.md only routes9(`doctrine/04-maintenance.md` governs edits to this bundle too).1011**First, always:** `scope.md` §1 — the authorization gate. It fires on ANY request12mentioning exploits, payloads, bypassing auth/WAF/filters, cracking, brute force,13credential/password testing, scanning a target, or accessing a system the requester14didn't build in this session — recognize the moment even when the ask is phrased as15"just write a script." Defensive work proceeds; offensive-flavored work needs16corroborated authorization context; some requests are refused regardless of framing.17Pass the gate before applying anything else in this bundle.1819## Route by moment2021| You are about to… | Read (in this folder) |22|---|---|23| Judge scope — fires on ANY mention of exploits, payloads, bypassing auth/WAF, cracking, brute force, credential testing, scanning a target, or reaching a system the requester didn't build here | `scope.md` §1 |24| Decide what to protect, from whom, and where to spend | `threat-model.md` |25| Design auth, trust boundaries, crypto use, or a system's security posture | `design.md` |26| Review code for vulnerabilities, or report security findings | `review.md` |27| Handle secrets, hardening, logging/detection, dependencies, incidents | `operate.md` |28| Assess whether a control or security program is real; name why it smells | `traps.md` |29| Design, review, or harden a system where an LLM/agent reads untrusted content or holds tool/MCP access (prompt injection, excessive agency, MCP supply chain) | `agentic.md` |3031A new system usually runs `threat-model.md` (four questions) → `design.md` →32`review.md` before ship → `operate.md` in production.3334## Scope and neighbors3536Security judgment for building and defending systems. The application-level security37floor (input validation, per-object authz in `backend/operate.md` §5; rate limits in38`backend/operate.md` §7) also lives in the backend bundle — this bundle is the deeper39treatment. Agentic AI security (prompt injection, the lethal trifecta, tool-privilege40boundaries, MCP supply chain) is `agentic.md` — it extends this bundle's design/review/41operate rules to agents, not a replacement for them. General verification42discipline is `methods/verify.md`; whether to delegate → `doctrine`.4344## The stance4546**Attackers take the cheapest path; defenders must be honest about which door is open.**47Threat model before controls (`threat-model.md`), assume breach (`scope.md` §3), make48the safe way the easy way (`design.md` §3) — and never confuse a control that exists49with a control that works (`traps.md` meta-signal). A clean review means "nothing found50where I looked," never "secure" (`scope.md` §5).