一键导入
threat-model-quickdraw
Use when designing a new feature or reviewing an architectural change. STRIDE-lite, fits in a single sitting, produces a written artifact.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when designing a new feature or reviewing an architectural change. STRIDE-lite, fits in a single sitting, produces a written artifact.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Creates distinctive editorial art direction for kernel.chat issues before implementation. Use when choosing an issue's visual concept, typography, composition, cover system, media grammar, responsive transformation, or motion intent; when a page feels generic or lacks character; or when original image and video assets need one coherent visual language.
Audits kernel.chat pages for responsive visual craft, accessibility, motion safety, interaction truth, runtime health, and production rendering. Use when reviewing an issue or artifact, checking whether a design is finished, comparing desktop and mobile, validating reduced motion or print, finding overflow and broken media, or proving that a published route matches the build.
Guides the design, layout, styling, and interactivity of kernel.chat editorial spreads and standalone artifact editions. Use this skill when editing or creating pages, React components, CSS files, or single-file HTML artifacts in the kernel.chat project to enforce the POPEYE-inspired bilingual design grammar and the interaction-language/artifact-language laws.
Use this skill to generate well-branded editorial interfaces and assets for kernel.chat ("Magazine for City Coders" — an independent magazine that is an unnamed homage to POPEYE), either for production or throwaway prototypes/mocks/etc. Contains essential design guidelines, colors, type, fonts, assets, and editorial UI components for prototyping.
Hand off a model from Blender (via BlenderMCP) into Unity (via MCP for Unity) — export the current Blender model, import it through import_model_file, and place it in the open scene. Use when the user has BlenderMCP and MCP for Unity both connected and wants to bring a Blender model into Unity. Does NOT drive Blender's own generators; BlenderMCP owns how the model got into Blender.
Generate images/videos/3D assets/audio via Higgsfield AI. Defaults: GPT Image 2 for image/design/text, Seedance 2.0 for video, Nano Banana 2/Lite/Pro for character/reference images, Marketing Studio for ads, Seed Audio 1.0 for audio. Use when: "generate an image", "make a video", "animate this photo", "image-to-video", "edit/stylize/remix this image", "reframe this video", "edit this video from a sketch", "create a 3D model/GLB", "create a sound effect", "make music", "text-to-audio", "create an ad", "make a UGC video", "unboxing", "presenter video", "import product from URL", or "analyze video virality". Supports image-to-3D (`multi_image_to_3d`), text-to-audio/music (`seed_audio`), workflow generation (`draw_to_video`, `reframe`), Marketing Studio, and Virality Predictor (`brain_activity`). Chain with higgsfield-soul-id for face/identity consistency. NOT for: Soul Character training (use higgsfield-soul-id), product photoshoots, marketplace listing cards, text/chat/TTS tasks.
| name | threat-model-quickdraw |
| description | Use when designing a new feature or reviewing an architectural change. STRIDE-lite, fits in a single sitting, produces a written artifact. |
| version | 1.0.0 |
| author | kbot |
| license | MIT |
| metadata | {"kbot":{"tags":["security","threat-model","design-review","stride"],"related_skills":["local-vulnerability-hunt","dependency-audit","ship-pipeline"]}} |
A real threat model takes a week and a whiteboard. A quickdraw takes thirty minutes and a markdown file. Most features deserve the latter; very few warrant the former.
Skip when the change is internal-only, has no user input, and touches no secrets.
EVERY EXTERNAL INPUT IS HOSTILE UNTIL PROVEN OTHERWISE.
EVERY TRUST BOUNDARY GETS A NAMED CHECK.
EVERY MITIGATION GETS A TEST.
A box-and-arrow diagram in ASCII or markdown. Five-minute exercise. Include:
If you cannot draw it in five minutes, the feature is too big — split it.
For each component and each flow, ask the six questions in order:
| Letter | Threat | Sample question |
|---|---|---|
| S | Spoofing | Can someone claim to be a different actor? |
| T | Tampering | Can data be modified in transit or at rest? |
| R | Repudiation | Can an actor deny they took the action? |
| I | Information disclosure | Can secrets or PII leak via this path? |
| D | Denial of service | Can an attacker exhaust this resource cheaply? |
| E | Elevation of privilege | Can an actor gain rights they shouldn't have? |
For each "yes," write a one-line threat and a one-line mitigation. Park "maybe" entries in an Open Questions section.
Rank threats by (likelihood × impact). Address the top third now; ticket the middle third; document the bottom third as accepted risk with a name attached.
Output goes to docs/threat-models/<feature>.md checked into the repo, plus a JSONL trail at ~/.kbot/security-audits/<session-id>/threat-model.jsonl.
# Threat Model — <feature> — <date>
## Diagram
<ascii box-and-arrow>
## Trust boundaries
1. <boundary name> — <check enforced>
2. ...
## Threats (STRIDE)
| ID | Letter | Component | Threat | Likelihood | Impact | Mitigation | Status |
|---|---|---|---|---|---|---|---|
| T-001 | S | login API | session token guessable | M | H | rotate to 256-bit random | now |
| T-002 | I | logs | PII written to stdout | H | H | redact in formatter | now |
| ... | | | | | | | |
## Accepted risks
- <risk> (rationale, owner)
## Open questions
- <question> (assigned to)
kbot --plan — read-only mode for the diagram phasekbot_write — produce the markdown artifactlocal-vulnerability-hunt — once the model exists, audit the implementation against itship-pipeline — gate releases on the threat model existing