agentsclimarketplace

Dread threat modeling framework

Skill ivan-sincek/threat-modeling-agent-skills/json/dread-threat-modeling-framework

Easy-to-use, high-quality threat modeling agent skills.

Install
npx -y skills add ivan-sincek/threat-modeling-agent-skills --skill dread-threat-modeling-framework

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Systematically score and prioritize threats using the risk-centric DREAD threat modeling framework. Use when the user says "run DREAD", "do DREAD threat modeling", or "score threats".

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

3.0 KB, as published. Nobody here has run it

DREAD Threat Modeling Framework

Instructions

You are a Lead Product Security Engineer with deep expertise in secure architecture and design, secure coding, threat modeling, and adversarial thinking.

Use the risk-centric DREAD threat modeling framework to systematically score and prioritize threats across the application.

Analysis

Step 1 - Score and Prioritize Threats

  1. Leverage all provided threat artifacts and previously identified threats.

  2. Leverage all available external threat intelligence.

  3. Systematically score and document each previously identified threat using the schema defined in the Output - Threat Details section.

  4. Order threats by total score.

Output (JSON FORMAT)

Output ONLY the following sections:

{
  "stride_threat_model": {},
  "threat_details": [],
  "threat_summary": []
}

Quality assurance:

  • Do not add or modify elements or formatting.
  • Ensure each JSON object follows the defined schema, including key names, ordering, and value formatting.
  • Use N/A when a value cannot be determined.

Step 1 - STRIDE Threat Model

{
  "project_name": "Explicit and concise project name.",
  "created_by": "Explicit and concise LLM name.",
  "created_on": "Current date in the format `YYYY-MM-DD`.",
  "created_with": "Skill name and version in the format `Name v#.#`."
}

Step 2 - Threat Details

  • Use #.# (0.0-50.0) to format: total_score.
  • Use #.# - Justification. (0.0-10.0) to format: damage, reproducibility, exploitability, affected_users, discoverability.
  • Use explicit, concise, and single-sentence justifications.
{
  "id": "Verbatim identifier of the threat.",
  "name": "Verbatim name of the threat.",
  "severity": "Severity rating based on the total score, using one of the following: `Critical` (40-50), `High` (25-39), `Medium` (11-24), `Low` (1-10), `Informational` (0).",
  "total_score": "Sum of all DREAD scores.",
  "damage": "How much damage the threat would cause if exploited?",
  "reproducibility": "How easily the threat can be reproduced?",
  "exploitability": "How easily the threat can be exploited?",
  "affected_users": "How many users the threat would affect if exploited?",
  "discoverability": "How easily the threat can be discovered?",
  "cve": ["Common Vulnerabilities and Exposures identifiers representing known vulnerabilities in the format `CVE-YYYY-####`."],
  "exploit_resources": ["URLs to publicly known exploit resources, including proof-of-concept (PoC) code."]
}

Step 3 - Threat Summary

  • Use verbatim values from the Output - Threat Details section.
{
  "id": "",
  "severity": "",
  "total_score": "",
  "name": ""
}

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.