threat-model

Derives security controls from assets, actors, and trust boundaries through a structured threat interview.

Updated Jun 14, 2026
One-click install
npx skills add https://github.com/AdamKrysztopa/architectural-decisions --skill threat-model-adamkrysztopa
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: threat-model
Source: https://github.com/AdamKrysztopa/architectural-decisions/tree/main/skills/threat-model
Command: npx skills add https://github.com/AdamKrysztopa/architectural-decisions --skill threat-model-adamkrysztopa

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Security decisions are often made by copying checklists, buying controls nobody justified, or trusting scanners that were never run. This Skill forces every security control to be derived from a named asset, a reachable actor, and a trust boundary, so each finding names an impact, the cheapest control that closes it, and that control's cost. ## Core Features & Use Cases - Boundary-first threat interview (greenfield): Walks 15 gates across identity and access, data protection, secrets, and supply chain, closing gates explicitly with reopening signals rather than padding the report. - Security review of existing systems (refactoring): Inspects authentication middleware, authorization placement, tenant isolation, secret handling, and CI release paths, then recommends exactly one highest-leverage move. - Evidence binding instead of scanning: Never enumerates CVEs, hunts secrets by eye, or simulates taint analysis — it binds each claim to a scanner the repository already runs (gitleaks, semgrep, osv-scanner) and says plainly when no binding exists. - Agent permission overlay: When the system contains an LLM agent, six additional gates cover tool permission scoping, blast radius, human approval, prompt injection, credential scope, and audit trails. - Use Case: Ask "is this design safe to expose to the internet?" and receive a threat model with assets, actors, boundaries, findings with costs, closed gates, and one primary recommendation — persisted as a decision file. ## Quick Start Ask the agent to threat model your service or review the security of your architecture, for example by saying "threat model this service before we expose it to the internet".

Frequently Asked Questions about threat-model

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I threat model a new service before launch?

Describe the service and its boundaries, and the Skill walks a boundary-first interview: naming assets, actors, and trust boundaries before any control is proposed. Each surviving control is bound to an evidence class and recorded as a decision file with its cost and reopening signal.

How to review the security of an existing architecture?

Point the Skill at the repository and it inspects authentication middleware, per-route authorization, tenant identity derivation, secret handling, and CI release triggers. It returns exactly one highest-leverage move, and a clean bill of health is a valid outcome.

Does this threat modeling skill scan for vulnerabilities or CVEs?

No. It never enumerates CVEs, grades dependency versions, or searches for secrets by eye. Instead it binds each claim to a scanner the repository already runs, such as gitleaks or semgrep, and states plainly when no binding exists.

Can it assess what an LLM agent's tools are allowed to do?

Yes. When the system contains an agent or tool-calling loop, an agency overlay adds six gates covering tool permission scoping, blast radius of autonomous actions, human approval on irreversible actions, prompt injection, credential scope, and audit trails.

When should I use threat-model instead of decide-architecture or agentic-patterns?

Use threat-model for trust boundaries, authorization placement, secrets, and what an agent's credentials may reach. Hand off system structure and topology questions to decide-architecture, and agent control-flow or autonomy design to agentic-patterns.

What are the limitations of this security review approach?

It produces no maturity score, percentage, or checklist output, and it cannot verify claims that require a scanner the repository does not run. Conclusions about systems whose code is unavailable are provisional and marked as resting on the user's description.