Install
$ agentstack add skill-crewforth-crewforth-threat-model ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Threat Model
Trigger phrases: "threat model", "attack surface", "scope the audit", "trust boundary"
Scope first, scan second. A security scan with no map produces noise; a threat model tells the scanner (and security-scan) where to look and what matters — the single biggest lever on false positives.
The one idea to keep — the litmus test: if patching one line of code makes an entry disappear, it was a vulnerability, not a threat. Threats survive patching (they name what an attacker wants and the surface they arrive through); a vulnerability is only evidence that raises a threat's likelihood.
> Crewforth adaptation (local, .claude/): crew-security-expert runs this to scope before security-scan. Output > docs/THREAT_MODEL.md is internal (§4.3). Stack-agnostic. §4 Prohibitions apply.
When
- Before a first
security-scanof a system, or when scan output is noisy / unscoped. - After a significant new surface — a new API, a new integration, a new trust boundary.
Two modes
- interview — the owner is available: ask the four questions below, one at a time.
- bootstrap — no owner: derive the model from code + past advisories, then flag what only the owner can confirm.
Method — the four questions (Shostack), one at a time
Never dump a questionnaire; ask, capture into the schema, move on. Mirror the user's language.
- What are we building? system context, assets worth protecting, entry points and trust boundaries.
- What can go wrong? open-ended first; then, per entry point, fall back to STRIDE; derive **5-8
domain-specific attack classes** at the right granularity — "IDOR on dataset rows", "integer overflow on length fields" — not "web vulnerabilities".
- What are we doing about it? impact · residual likelihood · status · controls per threat; "accept the
risk, with a written reason" (risk_accepted) is a valid answer.
- Did we do a good job? read the ranked table back; coverage-check that every entry point appears.
Tag every fact [Code-verified] or [Owner-states]; each owner claim that moves a score becomes an open question with a "Verify by:" note.
Output
Write docs/THREAT_MODEL.md to the parseable contract in references/schema.md (fixed sections; a threats table with enumerated columns; residual-likelihood scoring; class-level mitigations). The interview flow, the STRIDE table, and the bootstrap steps live in references/interview.md.
Principles
- Evidence raises likelihood; it is not the threat. Score the residual likelihood after current controls;
a stated-but-unverified control does not lower it — it becomes an open question.
- Prefer a control that survives the next bug over a patch for the last one (class-level mitigations).
- Feeds forward:
security-scanreadsTHREAT_MODEL.mdto scope its fronts and bias severity.
DoD
docs/THREAT_MODEL.mdexists; every entry point covered; each threat scored; provenance tagged; scope handed tosecurity-scan.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: crewforth
- Source: crewforth/crewforth
- License: MIT
- Homepage: https://crewforth.com/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.