stride-threat-model
Proactive threat identification methodology. Use when reviewing code that handles authentication, authorization, data storage, or external communication.
$ npx -y skills add notque/vexjoy-agent --agent claude-codeHow it fires
How this agent gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
Context preview
The summary Claude sees to decide when to auto-load this agent.
Proactive threat identification methodology. Use when reviewing code that handles authentication, authorization, data storage, or external communication.
Agent definition
stride-threat-model.mdSTRIDE Threat Modeling Reference
Proactive threat identification methodology. Use when reviewing code that handles authentication, authorization, data storage, or external communication.
When to Apply
- New service or API endpoint
- Auth logic changes
- Data storage or transmission changes
- External service integration
- User input handling modified
The STRIDE Framework
For each component or data flow, check all 6 categories:
S — Spoofing (Identity)
| Check | What to Look For | |-------|-----------------| | Authentication bypass | Missing auth on endpoints, default credentials | | Token forgery | Weak JWT signing, no signature verification | | Session hijacking | Session IDs in URLs, missing secure/httponly flags | | Certificate spoofing | Missing TLS validation, self-signed cert acceptance |
T — Tampering (Data Integrity)
| Check | What to Look For | |-------|-----------------| | Input manipulation | Missing validation on bodies, params, headers | | Database tampering | SQL injection, mass assignment, unparameterized queries | | File tampering | Path traversal, arbitrary file write, symlink attacks | | Message tampering | Missing HMAC/signature on webhooks |
R — Repudiation (Accountability)
| Check | What to Look For | |-------|-----------------| | Missing audit logs | State-changing ops without who/what/when | | Log tampering | Logs writable by app user, no integrity checks | | Unsigned transactions | Financial/permission changes without audit trail | | Missing request IDs | No correlation ID across services |
I — Information Disclosure
| Check | What to Look For | |-------|-----------------| | Error message leakage | Stack traces, SQL errors, internal paths | | Verbose logging | PII, tokens, passwords in logs | | Insecure storage | Plaintext passwords, unencrypted PII at rest | | Side channels | Timing differences in auth | | Directory listing | Exposed .git/, .env, backup files |
D — Denial of Service
| Check | What to Look For | |-------|-----------------| | Resource exhaustion | Unbounded queries, missing pagination, no size limits | | Algorithmic complexity | ReDoS, quadratic parsing, hash collision attacks | | Connection exhaustion | Missing pool limits, no timeouts on external calls | | Storage exhaustion | Unbounded uploads, log flooding, cache poisoning |
E — Elevation of Privilege
| Check | What to Look For | |-------|-----------------| | Broken access control | IDOR, missing ownership checks | | Role escalation | User modifies own role, missing role validation | | Privilege inheritance | Child resources inheriting permissions incorrectly | | Default permissions | New resources with overly permissive defaults |
Threat Assessment Output
Threat: [description]
Category: [S/T/R/I/D/E]
Asset: [what's at risk]
Attack Vector: [exploitation method]
Impact: [1-5]
Likelihood: [1-5]
Risk Score: Impact x Likelihood [1-25]
Mitigation: [specific fix]
Risk Scoring
| Score | Classification | Action | |-------|---------------|--------| | 15-25 | Critical | Block PR, fix immediately | | 10-14 | High | Fix before merge | | 5-9 | Medium | Track, fix in next sprint | | 1-4 | Low | Accept or defer |
Read more
STRIDE Threat Modeling Reference
Proactive threat identification methodology. Use when reviewing code that handles authentication, authorization, data storage, or external communication.
When to Apply
- New service or API endpoint
- Auth logic changes
- Data storage or transmission changes
- External service integration
- User input handling modified
The STRIDE Framework
For each component or data flow, check all 6 categories:
S — Spoofing (Identity)
| Check | What to Look For | |-------|-----------------| | Authentication bypass | Missing auth on endpoints, default credentials | | Token forgery | Weak JWT signing, no signature verification | | Session hijacking | Session IDs in URLs, missing secure/httponly flags | | Certificate spoofing | Missing TLS validation, self-signed cert acceptance |
T — Tampering (Data Integrity)
| Check | What to Look For | |-------|-----------------| | Input manipulation | Missing validation on bodies, params, headers | | Database tampering | SQL injection, mass assignment, unparameterized queries | | File tampering | Path traversal, arbitrary file write, symlink attacks | | Message tampering | Missing HMAC/signature on webhooks |
R — Repudiation (Accountability)
| Check | What to Look For | |-------|-----------------| | Missing audit logs | State-changing ops without who/what/when | | Log tampering | Logs writable by app user, no integrity checks | | Unsigned transactions | Financial/permission changes without audit trail | | Missing request IDs | No correlation ID across services |
I — Information Disclosure
| Check | What to Look For | |-------|-----------------| | Error message leakage | Stack traces, SQL errors, internal paths | | Verbose logging | PII, tokens, passwords in logs | | Insecure storage | Plaintext passwords, unencrypted PII at rest | | Side channels | Timing differences in auth | | Directory listing | Exposed .git/, .env, backup files |
D — Denial of Service
| Check | What to Look For | |-------|-----------------| | Resource exhaustion | Unbounded queries, missing pagination, no size limits | | Algorithmic complexity | ReDoS, quadratic parsing, hash collision attacks | | Connection exhaustion | Missing pool limits, no timeouts on external calls | | Storage exhaustion | Unbounded uploads, log flooding, cache poisoning |
E — Elevation of Privilege
| Check | What to Look For | |-------|-----------------| | Broken access control | IDOR, missing ownership checks | | Role escalation | User modifies own role, missing role validation | | Privilege inheritance | Child resources inheriting permissions incorrectly | | Default permissions | New resources with overly permissive defaults |
Threat Assessment Output
Threat: [description] Category: [S/T/R/I/D/E] Asset: [what's at risk] Attack Vector: [exploitation method] Impact: [1-5] Likelihood: [1-5] Risk Score: Impact x Likelihood [1-25] Mitigation: [specific fix]
Risk Scoring
| Score | Classification | Action | |-------|---------------|--------| | 15-25 | Critical | Block PR, fix immediately | | 10-14 | High | Fix before merge | | 5-9 | Medium | Track, fix in next sprint | | 1-4 | Low | Accept or defer |
Essays and writing behind this toolkit live at vexjoy.com. AI agents skip steps. "Looks correct" replaces running tests. "Trivial change" replaces verification.
Repo: notque/vexjoy-agent
Other agents on vexjoy-agent.
- ansible-automation-engineer
Ansible automation: playbooks, roles, collections, Molecule testing, Vault security.
Open agent - modules
**Scope**: Module selection patterns, builtin vs command/shell decisions, collection modules, and version-specific module changes **Version range**: ansible-core 2.14+ / Ansible Collections (community.general 7.0+) **Generated**: 2026-04-04 — verify against current Ansible
Open agent - testing
**Scope**: Molecule test scenarios, ansible-lint rules, idempotency validation, and check-mode patterns **Version range**: Molecule 6.0+ / ansible-lint 6.0+ / ansible-core 2.14+ **Generated**: 2026-04-04 — verify against current Molecule and ansible-lint documentation
Open agent - base-instructions
Universal operational rules injected by /do at agent dispatch. Domain-specific rules live in each agent's .md file.
Open agent - communication-patterns
**Scope**: Failure modes in agent output style — over-reporting, self-congratulation, verbose narration, and hedging. Covers what to detect and how to fix each. **Version range**: all versions **Generated**: 2026-05-11
Open agent - combat-effects-upgrade
Zero-dependency combat visual upgrades: CSS particle replacement, Framer Motion combat juice, CSS 3D card transforms.
Open agent

